Note that specifying a minor mode as a local variables enables that
[bpt/emacs.git] / src / ChangeLog
CommitLineData
e42bdf01
CY
12009-08-17 Chong Yidong <cyd@stupidchicken.com>
2
3 * process.c (status_notify): Don't perform redisplay.
4 (Fdelete_process, list_processes_1, process_send_signal):
5 Expliticly perform redisplay.
6 (wait_reading_process_output): Always check process status, but
7 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
8
4230ab74
KR
92009-08-17 Ken Raeburn <raeburn@raeburn.org>
10
f601cdf3
KR
11 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the
12 value.
13 (XFLOAT_INIT): New macro for storing a float value.
14 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
15 * fns.c (sxhash): Copy out the value of a float in order to
16 examine its bytes.
17 * dbusbind.c (xd_append_arg): Likewise.
18
4230ab74
KR
19 * emacs.c (main): Don't call syms_of_data twice.
20
a0645cdd
MA
212009-08-16 Michael Albinus <michael.albinus@gmx.de>
22
23 * dbusbind.c (xd_initialize): Add connection file descriptor to
24 input_wait_mask, in order to let select() detect, whether a new
25 message has been arrived.
ca4f31ea 26 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 27
485db0ba
MA
282009-08-15 Michael Albinus <michael.albinus@gmx.de>
29
30 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages): New
31 functions.
32
33 * lisp.h (xd_pending_messages): Declare.
34
35 * keyboard.c (readable_events): Call xd_pending_messages.
36
b5b98ff4
CY
372009-08-15 Chong Yidong <cyd@stupidchicken.com>
38
84b17ab0
CY
39 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc
40 fix (Bug#3936).
41
f8354c6e
CY
42 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
43
b5b98ff4
CY
44 * buffer.c (set_buffer_internal_1)
45 (swap_out_buffer_local_variables): Check for unbound local
46 variables (Bug#4138).
47
8b9fc636
EZ
482009-08-14 Eli Zaretskii <eliz@gnu.org>
49
50 * process.c (create_pty): Fix last change.
51
ce959360
CY
522009-08-13 Chong Yidong <cyd@stupidchicken.com>
53
54 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
55 (xbm_load_image): Caller changed.
64b807c9 56 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 57
c7baf7e9
NR
582009-08-13 Nick Roberts <nickrob@snap.net.nz>
59
60 * process.c (create_pty): New function.
61 (Fstart_process): Use it to allow Emacs to just associate a pty
62 with the buffer. See associated change in gdb-mi.el.
63 (list_processes_1): Deal with no program name.
64 (start_process_unwind): Use pid == -2 to mean no process.
65
1ac9108a
SM
662009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
67
68 * cmds.c (nonundocount): New global variable.
69 (keys_of_cmds): Initialize it.
70 (Fself_insert_command): Use it to combine upto 20 sequential chars
71 into a single undo entry, just like the Qself_insert_command code in
72 keyboard.c does.
73 Call frame_make_pointer_invisible, also like the Qself_insert_command
74 code in keyboard.c does.
75 * keyboard.c (command_loop_1): Use the new global nonundocount rather
76 than its own local replacement for it.
77
e267324c
KR
782009-08-10 Ken Raeburn <raeburn@raeburn.org>
79
1ac9108a 80 * fns.c (concat): Don't re-set string length to its current value.
77437343 81
1ac9108a
SM
82 * coding.h (decode_coding_string, encode_coding_string):
83 Use SBYTES macro.
f0bed503 84
1ac9108a 85 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
86 (doprnt): Merge with doprnt1, discarding lispstrings code.
87 * lisp.h (doprnt_lisp): Don't declare.
88
416e006d
JL
892009-08-07 Juri Linkov <juri@jurta.org>
90
91 * puresize.h (BASE_PURESIZE): Increase to 1270000.
92
6f7d5780
DN
932009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
94
95 * print.c (syms_of_print): Undo previous change.
96
f19a0f5b
TZ
972009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
98
99 * lread.c (read1, syms_of_lread): Read hashtables back from the
100 readable format.
101
102 * print.c (print_preprocess, print_object): Print hashtables fully
103 and readably.
104 (syms_of_print): Provide 'hashtable-print-readable.
105
b9173dc2
AR
1062009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
107
108 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
109 no family set.
110 (nsfont_open): Handle case when entity has no family.
111
1586503c
AR
1122009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
113
114 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
115 element, not a list, for match case.
116
087048cd
KH
1172009-07-28 Kenichi Handa <handa@m17n.org>
118
119 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
120 rigidly.
121
122 * xfont.c (xfont_list_pattern): Don't ignore the return value of
123 font_parse_xlfd. Check font properties more rigidly.
124
780c2506
DN
1252009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
126
127 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in bsd-common.h
128
a8c0cc18
KH
1292009-07-27 Kenichi Handa <handa@m17n.org>
130
131 * xfaces.c (face_with_height): Call font_clear_prop.
132
4fbe2306
CY
1332009-07-26 Chong Yidong <cyd@stupidchicken.com>
134
111d9af3
CY
135 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
136
137 * xterm.c (x_term_init): Use Qx.
138
4fbe2306
CY
139 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
140
1ac9108a 141 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
142 (ns_get_color): Revert 2009-07-16 change.
143
beb0b7f9
EZ
1442009-07-25 Eli Zaretskii <eliz@gnu.org>
145
146 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 147 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 148
2baf5e76
KR
1492009-07-25 Ken Raeburn <raeburn@raeburn.org>
150
1ac9108a
SM
151 * coding.h (decode_coding_string, encode_coding_string):
152 Use SCHARS macro.
8890e5f5 153
2baf5e76 154 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 155 (load_depth): Delete.
2baf5e76
KR
156 (Qload_in_progress): New variable.
157 (load_unwind): Don't reference load_depth or load_in_progress.
158 (Fload): Likewise; specbind Qload_in_progress instead.
159 (init_lread): Don't initialize load_depth.
160 (syms_of_lread): Initialize and protect Qload_in_progress.
161
1395c6f5
AR
1622009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
163
164 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
165
4e2f36cf
AR
1662009-07-23 Yavor Doganov <yavor@gnu.org>
167
168 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
169
5dd9a6f7
AR
1702009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
171
172 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
173 Bugs 3792, 3720, 2402.
174 (ns_lookup_indexed_color): Check for bad index.
175 (ns_index_color): Init unused slot to 0.
176 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
177 Bug 3714, possibly 3082.
5dd9a6f7 178
c902b920
JR
1792009-07-22 Jason Rumney <jasonr@gnu.org>
180
1ac9108a
SM
181 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
182 Position IME window at cursor (Bug#2570).
c902b920
JR
183 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
184 (globals_of_w32fns): Dynamically load functions required above.
185
186 * w32term.c (w32_draw_window_cursor): Send message to reposition
187 any IME window.
188
090101cf
CY
1892009-07-21 Chong Yidong <cyd@stupidchicken.com>
190
191 * fileio.c: Revert 2009-07-16 changes.
192 (Vauto_save_include_big_deletions): New variable.
193 (Fdo_auto_save): Disable auto-save only if
194 auto-save-include-big-deletions is nil.
195
e6583e3d
CY
1962009-07-21 Chong Yidong <cyd@stupidchicken.com>
197
198 * xdisp.c (move_it_to): For continued lines ending in a tab, take
199 the overflowed pixels into account (Bug#3879).
200
ece435a5
KR
2012009-07-21 Ken Raeburn <raeburn@raeburn.org>
202
203 * lread.c (load_depth): New variable.
204 (Fload, load_unwind, init_lread): Set it to the load recursion
205 depth; set load_in_progress as a simple boolean based on the
206 current load_depth. (Bug#3892)
207
40b2d973
AR
2082009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
209
210 * nsfont.m (ns_has_attribute): Remove.
211 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
212
10be7e0d
JL
2132009-07-18 Juri Linkov <juri@jurta.org>
214
215 * process.c (Fset_process_query_on_exit_flag): Mention killing
216 a buffer in docstring.
217
fa055055
KH
2182009-07-17 Kenichi Handa <handa@m17n.org>
219
220 * casetab.c (shuffle): Fix the logic of setting up the cycle.
221
042f7b69
YM
2222009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
223
224 * nsfns.m (Fns_set_alpha): Remove function.
225 (syms_of_nsfns): Don't defsubr it.
226
227 * nsterm.m (ns_get_color): Remove incompatible color formats.
228 (ns_color_to_lisp): Generate #rrggbb color format string.
229
4be941e3
RS
2302009-07-16 Richard Stallman <rms@gnu.org>
231
232 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
233 (Fset_buffer_auto_saved): Handle save_length = -2.
234
4e6b227d
CY
2352009-07-16 Chong Yidong <cyd@stupidchicken.com>
236
237 * xterm.c (Qx_gtk_map_stock): New var.
238
239 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
240 of calling intern each time.
241
a1856973
YM
2422009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
243
244 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
245 does tiling.
246
247 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
248
497e54d8
KH
2492009-07-14 Kenichi Handa <handa@m17n.org>
250
72d36834
KH
251 * font.c (font_vconcat_entity_vectors): New function.
252 (struct font_sort_data): New member font_driver_preference.
253 (font_compare): Check font_driver_preference.
254 (font_sort_entities): The format of the first argument changed.
255 (font_delete_unmatched): Likewise.
256 (font_list_entities): The return type changed.
257 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
258 (font_find_for_lface): Adjuste for the above changes.
259 Don't suppress the checking of C even if the repertory supports it.
260 (Flist_fonts): Adjust for the above changes.
72d36834 261
1ac9108a
SM
262 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
263 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
264 Reject a font who has adstyle property that is different from a
265 langname derived from registry property.
1ac9108a 266 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 267
b6046155
EZ
2682009-07-13 Eli Zaretskii <eliz@gnu.org>
269
270 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
271 local copy of dirfilename.
272
fb6b6049
KH
2732009-07-13 Kenichi Handa <handa@m17n.org>
274
e2402a5e
KH
275 * chartab.c (sub_char_table_ref_and_range): Fix the range check
276 against max_char.
277
fb6b6049
KH
278 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
279 calling XSYMBOL (sym).
280
65156807
EZ
2812009-07-11 Eli Zaretskii <eliz@gnu.org>
282
1ac9108a
SM
283 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
284 New function.
285 (directory_files_internal) [WINDOWSNT]:
286 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
287 the filesystem of the directory is fast or slow.
288
289 * w32.c (logon_network_drive): Don't assume PATH is an absolute
290 file name.
291 (is_slow_fs): New function.
292 (stat): Use it to determine whether to issue more system calls to
293 get accurate file attributes, when w32-get-true-file-attributes is
294 `local'.
295
e0ab5fcf
JD
2962009-07-10 Jan Djärv <jan.h.d@swipnet.se>
297
298 * xfns.c (Fx_select_font): Remember last font selected in
299 x_last_font_name and use that the next time. Also try the frame
300 parameter font-parameter as default to the font dialog.
301
784ceded
KH
3022009-07-10 Kenichi Handa <handa@m17n.org>
303
304 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
305
fb8edc0b
EZ
3062009-07-09 Eli Zaretskii <eliz@gnu.org>
307
1ac9108a 308 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 309
fb8edc0b
EZ
310 * w32.c (stat): Treat UNC file names as residing on remote
311 drives. (Bug#3542)
312
635c75b1
KH
3132009-07-09 Kenichi Handa <handa@m17n.org>
314
315 * fontset.c (fontset_find_font): Fix previous change.
316
c1d5ce94
MA
3172009-07-08 Michael Albinus <michael.albinus@gmx.de>
318
319 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
320 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
321 error flag.
322
edb61b39
KH
3232009-07-08 Kenichi Handa <handa@m17n.org>
324
374bf7e4
KH
325 * fontset.c (fontset_find_font): Fix the logic of handling
326 charset_matched.
327 (font_for_char): Delete unused var.
328 (generate_ascii_font_name): Delete it.
329
edb61b39
KH
330 * coding.h (JIS_TO_SJIS2): Fix the code range check.
331
332 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
333 (encode_coding_sjis): Fix the code range check.
334
0f3f018c
CY
3352009-07-07 Chong Yidong <cyd@stupidchicken.com>
336
337 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
338 (Fexpand_file_name): Copy string data properly (Bug#3772).
339
fcaf6f3a
JD
3402009-07-07 Jan Djärv <jan.h.d@swipnet.se>
341
342 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
343 first MapNotify.
344
6809ca75
KH
3452009-07-07 Kenichi Handa <handa@m17n.org>
346
347 * character.h (unibyte_has_multibyte_table): Delete extern.
348 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
349
350 * charset.c (Fset_charset_priority): Update charset_unibyte.
351 (syms_of_charset): Initialize charset_unibyte.
352
353 * character.c (unibyte_has_multibyte_table): Delete it.
354 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
355 charset_unibyte.
356 (multibyte_char_to_unibyte_safe): Likewise.
357 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
358
1ac9108a 359 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
360 (x_produce_glyphs): Likewise.
361
362 * .gdbinit (xcharset): Fix the treating $arg0.
363
ad9e2d54
EZ
3642009-07-04 Eli Zaretskii <eliz@gnu.org>
365
366 Emulation of `getloadavg' on MS-Windows.
367 * w32.c: Include float.h
368 (g_b_init_get_native_system_info, g_b_init_get_system_times)
369 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
370 (get_native_system_info, get_system_times): New functions.
371 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
372 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
373 (globals_of_w32): Initialize g_b_init_get_native_system_info,
374 g_b_init_get_system_times, and num_of_processors.
375
0a3472c7
JR
3762009-07-03 Jason Rumney <jasonr@gnu.org>
377
378 * w32term.c (w32_initialize): Use standard types.
379
80904120
EZ
3802009-07-03 Eli Zaretskii <eliz@gnu.org>
381
382 * dired.c (Ffile_attributes): Decode user and group names by the
383 locale's encoding. (Bug#3443)
384
6978862d
DN
3852009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
386
f8d23104
DN
387 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
388 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
389
390 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
391
392 * term.c (init_tty): Remove spurious #ifdef.
393
6978862d
DN
394 * m/mips.h: Mention this file is also used for netbsd.
395 * m/pmax.h: Remove file.
396
e044e4fc
JD
3972009-07-03 Jan Djärv <jan.h.d@swipnet.se>
398
399 * xterm.h (struct x_display_info): Add invisible_cursor.
400 (struct x_output): Add current_cursor.
401
402 * xterm.c (XTtoggle_invisible_pointer): New function.
403 (x_define_frame_cursor): Don't define cursor if invisible or the
404 same as before. Set current_cursor.
405 (x_create_terminal): Set toggle_invisible_pointer_hook.
406
407 * xfns.c (make_invisible_cursor): New function.
408 (x_set_mouse_color): Call make_invisible_cursor.
409 Set current_cursor.
410 (x_window): Set current_cursor.
411
412 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
413
414 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
415 inserting a character.
416 (read_avail_input): Call frame_make_pointer_visible.
417
418 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
419 (frame_make_pointer_invisible, frame_make_pointer_visible):
420 New functions.
e044e4fc
JD
421 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
422
423 * frame.h: Declare frame_make_pointer_invisible and
424 frame_make_pointer_visible.
425 (struct frame): Add pointer_invisible.
426
574c8efa
JD
4272009-07-02 Jan Djärv <jan.h.d@swipnet.se>
428
7b507248
JD
429 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
430 frame isn't visible.
431 (xg_frame_resized): If width/height is -1, get size of window
432 from X server.
433
434 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
435 for MapNotify.
436
835bdaa7
JD
437 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
438 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 439 (flush_and_sync): Reintroduce.
574c8efa 440
3f1c6666 4412009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 442
acd51077
JD
443 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky
444
445 * xterm.c (x_handle_net_wm_state): Also look for sticky.
446 (x_term_init): Initialize Xatom_net_wm_state_sticky.
447
448 * frame.h: Declare Qsticky.
449
cad9ef74
JD
450 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
451
452 * nsfns.m (ns_frame_parm_handlers): Ditto.
453
454 * frame.c: Declare Qsticky.
455 (frame_parms): Add sticky.
456
457 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
458
459 * xterm.h: Declare x_set_sticky.
460
461 * xterm.c (x_set_sticky): New function.
462
69b16610
JD
463 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
464 (xg_tool_bar_menu_proxy): Attach enter/leave events to
465 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
466
467 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
468
469 * frame.c: Qmaximized is new.
470 (x_set_frame_parameters): Do not handle fullscreen specially.
471 Only set width and height if explicitly set.
472 (x_set_fullscreen): Handle Qmaximized.
473 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
474 (syms_of_frame): Initialize Qmaximized.
475
1ac9108a
SM
476 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
477 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
478
479 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
480 for Expose event. Add call to x_check_fullscreen for MapNotify event.
481 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
482 set gravity to NorthWestGravity when USE_GTK.
483 (set_wm_state): New function.
484 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
485 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
486 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
487 or the case when no window manager is running. That means remove calls
488 to x_real_positions and x_fullscreen_adjust.
489
490 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
491 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
492 flush_and_sync.
493 (xg_height_changed): New function.
494 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
495 and gtk_window_set_policy. Set frame gravity after parsing the
496 geometry string.
3f1c6666
JD
497 (xg_update_frame_menubar, free_frame_menubar)
498 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
499 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
500 Remove calls to xg_frame_set_char_size.
501
fd503d99
KH
5022009-07-01 Kenichi Handa <handa@m17n.org>
503
504 * keyboard.c (decode_keyboard_code): New function.
505 (tty_read_avail_input): Decode the input bytes if necessary.
506
1ac9108a
SM
507 * coding.c (setup_coding_system):
508 Initialize coding->carryover_bytes to 0.
fd503d99
KH
509 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
510 use Qno_conversion.
511
24ed93fb
YM
5122009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
513
514 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
515
99061dfc
CY
5162009-06-30 Chong Yidong <cyd@stupidchicken.com>
517
1ac9108a 518 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 519
ff90fbde
JR
5202009-06-30 Jason Rumney <jasonr@gnu.org>
521
522 * w32term.c (w32_initialize): Use GetModuleHandle for library that
523 is already loaded.
524 Set user model ID if supported (bug#1849).
525
5f445726
JM
5262009-06-29 Jim Meyering <meyering@redhat.com>
527
528 Remove useless if-before-xfree test.
529 * nsfont.m (nsfont_close): Remove useless test.
530 * term.c (delete_tty): Likewise.
531 * w32.c (system_process_attributes): Likewise.
532 * w32font.c (w32font_close): Likewise.
533 * xfaces.c (x_free_gc): Likewise.
534 * xselect.c (buffer): Likewise.
535
b9607587
AS
5362009-06-28 Andreas Schwab <schwab@linux-m68k.org>
537
538 * process.c (send_process): Keep decoded string in a local
539 variable and protect it from GC. (Bug#3521)
540
89ba96f4
EZ
5412009-06-28 Eli Zaretskii <eliz@gnu.org>
542
543 * term.c (create_tty_output) [MSDOS]: #ifdef away.
544 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
545
098a1589
CY
5462009-06-28 Chong Yidong <cyd@stupidchicken.com>
547
485422be
CY
548 * xdisp.c (start_display, handle_face_prop)
549 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
550 (redisplay_window, try_window_id, produce_image_glyph):
551 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 552
098a1589
CY
553 * xterm.c (x_update_window_begin, x_new_focus_frame)
554 (x_scroll_bar_handle_click, handle_one_xevent)
555 (handle_one_xevent, XTread_socket, x_focus_on_frame)
556 (x_make_frame_visible, x_make_frame_invisible)
557 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
558 code chunks that are now obsolete.
559
78c38319
MA
5602009-06-28 Michael Albinus <michael.albinus@gmx.de>
561
562 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
563 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
564 for hours, when optimzation is enabled.
565 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
566 (xd_read_message): Make them static.
567
4189ed40
CY
5682009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
569
570 * term.c (turn_on_face): Allow simultaneously bold and dim
571 terminal faces (Bug#3530).
572
cd9b5e16
CY
5732009-06-27 Chong Yidong <cyd@stupidchicken.com>
574
4e23bedb
CY
575 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
576
cd9b5e16
CY
577 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
578 truncation glyphs (Bug#3686).
579
07cc3c35
GM
5802009-06-27 Glenn Morris <rgm@gnu.org>
581
582 * m/pmax.h: Restore file, with only netbsd portions.
583
25c5550f
DR
5842009-06-26 David Reitter <david.reitter@gmail.com>
585
cd9b5e16 586 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 587
42d4a64f
KH
5882009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
589
590 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
591 the arg FORCE_SYMBOL.
592
930fe55b 5932009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
594
595 * fontset.c (fontset_find_font): When a usable rfont_def is found
596 in a fallback font-group, make it the first element of the group.
597
57ebc3fd
CY
5982009-06-24 Chong Yidong <cyd@stupidchicken.com>
599
600 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
601
f084f942
KH
6022009-06-24 Kenichi Handa <handa@m17n.org>
603
604 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
605 set for C.
606 (fontset_font): Record the availability of a font for C both in
607 the realized fontsets of the current one and the default one.
608
2f686c87
DN
6092009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
610
611 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
612 conditional, it is always defined on AIX.
613
666e158e
MB
6142009-06-23 Miles Bader <miles@gnu.org>
615
616 * window.c (Vrecenter_redisplay): New variable.
617 (syms_of_window): Initialize it.
618 (Qtty): New extern declaration.
619 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
620
c6da7cd2
JM
6212009-06-23 Jim Meyering <meyering@redhat.com>
622
1ac9108a
SM
623 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
624 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 625 pointer dereferences are guaranteed to be valid.
c6da7cd2 626
678dca3d
KH
6272009-06-23 Kenichi Handa <handa@m17n.org>
628
74d75424
KH
629 * emacs.c (main): Call init_font ().
630
631 * font.h (Vfont_log): Extern it.
632 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
633
634 * font.c (font_sort_entities, font_list_entities)
635 (font_matching_entity, font_open_entity)
636 (font_close_object): Change font_add_log to FONT_ADD_LOG.
637 (Vfont_log): Delete static.
638 (font_log_env_checked): Delete this variable.
639 (font_add_log): Don't check font_log_env_checked.
640 (font_deferred_log): Check Vfont_log.
641 (init_font): New function.
642
678dca3d
KH
643 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
644
645 * w32font.c: Change font_add_log to FONT_ADD_LOG.
646
647 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
648
649 * xfont.c: Change font_add_log to FONT_ADD_LOG.
650
651 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
652 (face_for_char): Don't call font_deferred_log here.
653 (font_for_char): Likewise.
654
8a668709
CY
6552009-06-22 Chong Yidong <cyd@stupidchicken.com>
656
9a01ee33
CY
657 * w32term.c (x_draw_glyph_string): Use the glyph string's width
658 rather than its background_width for drawing the overline and
659 underline (Bug#489).
660
661 * xterm.c (x_draw_glyph_string): Use the glyph string's width
662 rather than its background_width for drawing the overline and
663 underline (Bug#489).
ec7c9926
CY
664 (xg_default_icon_file): New variable.
665 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
666 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 667
8a668709
CY
668 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
669 (load_overlay_strings): Remove externs.
670 (fast_find_position): Function deleted.
671 (mouse_face_from_buffer_pos): New function, based on
672 fast_find_position. Correctly handle before-strings,
673 display-strings, and after-strings (Bug#1220).
674 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
675
4d4c02d8
CY
6762009-06-21 Chong Yidong <cyd@stupidchicken.com>
677
1ac9108a 678 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
679 (move_it_in_display_line_to, move_it_in_display_line_to)
680 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
681
70243478
CY
6822009-06-21 Chong Yidong <cyd@stupidchicken.com>
683
684 * Branch for 23.1.
685
13087e59
JR
6862009-06-21 Jason Rumney <jasonr@gnu.org>
687
688 * w32term.c (keyboard_codepage): New static variable.
689 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
690 (w32_read_socket) [WM_CHAR]: Use it to decode character
691 input (bug#3237).
692 (w32_initialize): Initialize it.
693 (codepage_for_locale): New function.
694
4735b74e
KR
6952009-06-20 Ken Raeburn <raeburn@raeburn.org>
696
697 * process.c (status_message): Pass Faset index argument as a lisp
698 object, so as to work with USE_LISP_UNION_TYPE.
699
0e727afa
YM
7002009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
701
702 * coding.c (Ffind_coding_systems_region_internal):
703 Cache checked characters.
704
cf299835
KH
7052009-06-18 Kenichi Handa <handa@m17n.org>
706
1ac9108a 707 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 708
90f20d94
AS
7092009-06-18 Andreas Schwab <aschwab@redhat.com>
710
711 * xdisp.c (redisplay_internal): Check that the frame is still
712 live after redisplay of its windows.
713 (redisplay_windows): Check that the window is still live.
714
7f1faf1c
KH
7152009-06-17 Andreas Schwab <schwab@linux-m68k.org>
716
717 * coding.c (detect_coding_utf_16): Fix previous change.
718
cc13543e
KH
7192009-06-16 Kenichi Handa <handa@m17n.org>
720
721 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
722 UTF-16 by checking the dispersion of Eth and Oth bytes.
723
977b85f4
AS
7242009-06-15 Andreas Schwab <schwab@linux-m68k.org>
725
726 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
727
66bd43d1
KH
7282009-06-15 Kenichi Handa <handa@m17n.org>
729
730 * process.c (status_message): Fix previous change. Be sure to
731 decode a localized string.
732
cb5ca9c5
YM
7332009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
734
735 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
736 add comment explaining why.
737
ec7709ba 7382009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 739
ec7709ba 740 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 741
4b7f335c
AR
7422009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
743
744 * nsfont.m (ns_attribute_value): Remove.
745 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
746 (ns_has_attribute): Shrink the normal range.
747 (ns_findfonts): Don't worry about requested spec in determining
748 need for synthItal.
e41820ee 749 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 750
73b26103
SZ
7512009-06-14 Seiji Zenitani <zenitani@mac.com>
752
753 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
754
5753e4da
KH
7552009-06-11 Kenichi Handa <handa@m17n.org>
756
757 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
758 overhang for the static composition case.
759
3561b671
KH
7602009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
761
5753e4da
KH
762 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
763 overhang for the automatic composition case.
764
3561b671
KH
765 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
766 composition case.
767
852bbd41
CY
7682009-06-10 Chong Yidong <cyd@stupidchicken.com>
769
770 * xdisp.c (get_next_display_element): When handling wrap-prefix
771 and line-prefix, treat \n as a control character (bug#3502).
772
9903d1e6
KH
7732009-06-10 Kenichi Handa <handa@m17n.org>
774
775 * font.c (font_parse_family_registry): Fix for one-char foundry.
776 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
777
0bcbaaaa
CY
7782009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
779
780 * process.c (status_message): Fix handling of multibyte signal
781 string (Bug#3499).
782
40aa3f13
JM
7832009-06-09 Jim Meyering <meyering@redhat.com>
784
1f80c7e2
CY
785 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
786 color name is missing.
40aa3f13 787
72d51285
KH
7882009-06-09 Kenichi Handa <handa@m17n.org>
789
790 * charset.c (Fmap_charset_chars): In docstring, state clearly that
791 FROM-CODE and TO-CODE are codepoints of CHARSET.
792
c1d04d84
AR
7932009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
794
795 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
796
7972009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
798
799 Changes to support :script/:lang/:otf in NS font driver.
800 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
801 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
802 indicate not part of font driver interface, and change callers.
803 (ns_get_family): Remove pointless null check.
804 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
805 ns_spec_to_descriptor, ns_descriptor_to_entity.
806 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
807 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
808 (ns_spec_to_descriptor, ns_descriptor_to_entity)
809 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
810 (ns_get_req_script, ns_accumulate_script_ranges)
811 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
812 New functions.
813 (nsfont_list, nsfont_match): Use ns_findfonts.
814 (nsfont_open): Use font descriptor instead of traits.
815 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
816 (dump_glyphstring): Rename to ns_dump_glyphstring.
817
c7eb9816
AR
818 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
819
c1d04d84
AR
820 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
821
822 * fontset.c (fontset_from_font): Remove NS-specific code.
823
ec7709ba 8242009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
825
826 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
827 nonactive windows.
828
8292009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
830
1ac9108a 831 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 832
68852c13 8332009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
834
835 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
836
6756cd1d
CY
8372009-06-07 Chong Yidong <cyd@stupidchicken.com>
838
839 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
840 account for the overflowing of newlines into the last glyph on the
841 display line (Bug#3482).
842
28bf482a
DR
8432009-06-05 David Reitter <david.reitter@gmail.com>
844
ec7709ba
JB
845 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
846 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
847 Fns_selection_exists_p, Fns_selection_owner_p.
848
fdb55376
JR
8492009-06-03 Jason Rumney <jasonr@gnu.org>
850
851 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
852 available. (Bug#3379)
853
05129fbe
KH
8542009-05-29 Kenichi Handa <handa@m17n.org>
855
1ac9108a
SM
856 * coding.c (get_translation_table):
857 Check Venable_character_translation.
05129fbe 858
ec7709ba 8592009-05-26 David Reitter <david.reitter@gmail.com>
15891144 860
ec7709ba
JB
861 * nsterm.m (ns_raise_frame): Only raise frame if visible.
862 (x_make_frame_visible): Move frame to front rather than calling
15891144 863 ns_raise_frame().
ec7709ba 864 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 865 isn't key window.
ec7709ba 866 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
867 drawRect may be called by NSView even if the frame is hidden.
868
ec7709ba
JB
869 * nsfns.m (Fx_create_frame): Follow other ports in
870 determining visibility; default to t. Ensure async_visible is set.
15891144 871
21f73755
EZ
8722009-05-23 Eli Zaretskii <eliz@gnu.org>
873
874 * dired.c (Ffile_attributes): Doc fix.
875
34001e41
CY
8762009-05-22 Chong Yidong <cyd@stupidchicken.com>
877
878 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
879
46306a17
SM
8802009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
881
882 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
883 and xfont_scratch_props.
884 (syms_of_xfont): Do it here instead.
885 (xfont_find_ccl_program): Delete, unused.
886 (xfont_open): Delete unused var `i'.
887
ef6e0694
KH
8882009-05-21 Kenichi Handa <handa@m17n.org>
889
890 * fontset.c (Qlatin): Don't make it static.
891
46306a17
SM
892 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
893 New functions.
ef6e0694
KH
894 (xfont_scripts_cache, xfont_scratch_props): New variables.
895 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
896 (xfont_list_pattern): Argument changed. Callers changed.
897 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
898 (xfont_list): Don't reject a font spec with :script property.
899 (xfont_has_char): Fix setting of encoding.
900 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
901 xfont_scratch_props.
902
9032009-05-19 Kenichi Handa <handa@m17n.org>
904
46306a17 905 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
906 Callers changed.
907
9082009-05-18 Kenichi Handa <handa@m17n.org>
909
910 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
911
ac71ced7
SM
9122009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
913
914 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
915 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
916
1c6d1051
YM
9172009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
918
919 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
920 (x_delete_terminal): Dissociate resource database from display and
921 then call XrmDestroyDatabase before closing display.
922
9b9b779c
AR
9232009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
924
925 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
926 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
927 whether selected frame is viable before raising it (based on patch
928 by David Reitter), and improve commentary.
929 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 930
cccd42d5
KH
9312009-05-15 Kenichi Handa <handa@m17n.org>
932
933 * font.c (Ffont_spec): Check arguments.
934
337fbd17
CY
9352009-05-14 Chong Yidong <cyd@stupidchicken.com>
936
937 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
938 weight when testing attributes (Bug#3282).
939
47a6002f
JD
9402009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
941
942 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
943 what we expect to get in the next ConfigureNotify event.
944
9cb363db
YM
945 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
946 before Xft one (Bug#1696).
947
b9126609
CY
9482009-05-07 David Reitter <david.reitter@gmail.com>
949
950 * nsfns.m (Fx_display_planes): Compute bitplanes using
951 NSBitsPerPixelFromDepth (Bug#3207).
952
27a69fd9
CY
9532009-05-10 Chong Yidong <cyd@stupidchicken.com>
954
955 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
956
00f37552
TTN
9572009-05-10 Ulrich Mueller <ulm@gentoo.org>
958
959 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
960
2d82a920
DR
9612009-05-07 David Reitter <david.reitter@gmail.com>
962
ec7709ba
JB
963 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
964 Respect mouse face background.
2d82a920 965
46b0d52d
DR
9662009-05-07 David Reitter <david.reitter@gmail.com>
967
ec7709ba
JB
968 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
969 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
970 in ns_update_begin and ns_update_end.
971
ce1b23bb
SM
9722009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
973
5996e1b7
SM
974 * nsfns.m (ns_get_screen): Rewrite.
975 Don't presume selected-frame is of type `ns'.
976
ba98e3a0
SM
977 * font.c (font_update_drivers): Sanity fallback to avoid disabling
978 all drivers.
979
ce1b23bb
SM
980 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
981
bcda200f
YM
9822009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
983
984 * keyboard.h (add_user_signal): Fix typo in extern.
985
986 * lisp.h (add_user_signal): Remove extern.
987
988 * unexelf.c (unexec): Consider a section to precede the .bss section
989 if its addresses overlap that of .bss.
990 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
991 instead of dumping process.
992
864660a2
SM
9932009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
994
995 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
996
50da4e56
SM
9972009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
998
999 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
1000
51520a1a
DN
10012009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
1002
1003 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
1004 any statements.
1005
409ea3a1
AS
10062009-05-02 Andreas Schwab <schwab@linux-m68k.org>
1007
59c4c60f
AS
1008 * process.c (read_process_output): Make sure the current buffer is
1009 always restored.
1010
409ea3a1
AS
1011 * coding.c (record_conversion_result): Don't modify
1012 Vlast_code_conversion_error for successful result.
1013 (alloc_destination): Don't clobber conversion result. (Bug#1650)
1014
56f00ed2
KH
10152009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
1016
1017 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 1018 (load_charset_map): Remove unnecessary code.
56f00ed2 1019
4491c9d2
DR
10202009-04-30 David Reitter <david.reitter@gmail.com>
1021
35f5b128 1022 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
1023 through f24.
1024
6970f632
CY
10252009-04-30 Chong Yidong <cyd@stupidchicken.com>
1026
1027 * xfaces.c (face_at_buffer_position): New arg base_face_id.
1028
1029 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
1030 face_at_buffer_position.
1031 (face_before_or_after_it_pos, get_next_display_element)
1032 (note_mouse_highlight): Update face_at_buffer_position call.
1033
1034 * term.c (term_mouse_highlight):
1035 * msdos.c (IT_note_mouse_highlight):
1036 * fontset.c (Finternal_char_font):
35f5b128 1037 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
1038
1039 * dispextern.h (face_at_buffer_position): Update prototype.
1040
0c616f63
KH
10412009-04-30 Kenichi Handa <handa@m17n.org>
1042
35f5b128 1043 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 1044
ad3aaf33
AS
10452009-04-29 Andreas Schwab <schwab@linux-m68k.org>
1046
1047 * callproc.c (Fcall_process): Fix GC protection. Make sure
1048 current buffer is always restored.
1049
c3c963a0
YM
10502009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1051
1052 * atimer.c (init_atimer): Also clear stopped_atimers.
1053
1054 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
1055
7e3386cb
YM
1056 * process.c (create_process): Clean up merger residues of
1057 2008-07-17 change.
1058
91f68422
CY
10592009-04-29 Ulrich Mueller <ulm@gentoo.org>
1060
1061 * lread.c (Vread_circle): New variable.
1062 (read1): Disable recursive read if Vread_circle is nil.
1063
24b34550
KH
10642009-04-29 Kenichi Handa <handa@m17n.org>
1065
1066 * fontset.h (set_default_ascii_font): Delete extern.
1067
1068 * fontset.c (set_default_ascii_font): Delete this unused function.
1069
1070 * frame.c (x_set_font): When ARG is a font-object, check if the
1071 font-object matches with the ASCII font-spec of the frame's
9c358bda 1072 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 1073
77bf07e1
AS
10742009-04-28 Andreas Schwab <schwab@linux-m68k.org>
1075
1076 * fns.c (Flocale_info): Protect vector from GC during decoding.
1077
1078 * process.c (Fstart_process): Protect argv strings from GC during
1079 encoding.
1080
2c55aacf
AS
10812009-04-27 Andreas Schwab <schwab@linux-m68k.org>
1082
1083 * sysdep.c: Include <ctype.h>.
1084
b892d3c9
DR
10852009-04-27 David Reitter <david.reitter@gmail.com>
1086
35f5b128 1087 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
1088 Remove commented-out code.
1089
9d0644c4
JB
10902009-04-26 Johan Bockgård <bojohan@gnu.org>
1091
1092 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
1093
b7053016
JR
10942009-04-25 Jason Rumney <jasonr@gnu.org>
1095
1096 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
1097
4e8231f3
YM
10982009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1099
1100 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
1101 Swap bytes in short integer if fringe bitmap width > 8.
1102
493dcf2c
KH
11032009-04-23 Kenichi Handa <handa@m17n.org>
1104
1105 * xfaces.c (Fx_list_fonts): If a font size is specified in
1106 PATTERN, set it in returned scalable fonts.
1107
401e9e57
CY
11082009-04-22 Chong Yidong <cyd@stupidchicken.com>
1109
708e05dc
CY
1110 * keyboard.c (Fset_input_meta_mode): Doc fix.
1111
1112 * dispnew.c (Fsend_string_to_terminal): Doc fix.
1113
1ac9108a 1114 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
1115
1116 * coding.c (Fterminal_coding_system): Doc fix.
1117
1118 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
1119 (Fx_display_pixel_height, Fx_display_planes)
1120 (Fx_display_color_cells, Fx_server_max_request_size)
1121 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1122 (Fx_display_mm_height, Fx_display_mm_width)
1123 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
1124 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
1125 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
1126 (check_x_display_info): Handle terminal objects instead of
1127 terminal ids.
1128
401e9e57
CY
1129 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
1130 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
1131 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
1132 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 1133
df80c7f0
KH
11342009-04-21 Kenichi Handa <handa@m17n.org>
1135
5a8f12af 1136 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 1137 (font_score): Check AVGWIDTH too.
908567ef 1138
df80c7f0
KH
1139 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
1140 worst case.
1ac9108a
SM
1141 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
1142 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 1143
705af33f
JR
11442009-04-19 Jason Rumney <jasonr@gnu.org>
1145
1146 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 1147 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
1148
1149 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
1150 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
1151 get_phys_cursor_geometry.
1152
b71ac3dd 1153 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
1154 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
1155 using get_phys_cursor_geometry.
1156
1157 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
1158 correctly calculated.
1159
dc2933eb
JD
11602009-04-19 Jan Djärv <jan.h.d@swipnet.se>
1161
1ac9108a
SM
1162 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
1163 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
1164 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
1165 is deprecated.
1166
973e7849
AS
11672009-04-18 Andreas Schwab <schwab@linux-m68k.org>
1168
1169 * font.c (font_put_frame_data): Use xfree instead of free.
1170
314d66f4
JB
11712009-04-17 Juanma Barranquero <lekktu@gmail.com>
1172
1173 * w32font.c (Qja, Qko): Remove declarations.
1174 (syms_of_w32font): Don't DEFSYM them.
1175
cf702558
CY
11762009-04-17 Chong Yidong <cyd@stupidchicken.com>
1177
1178 * font.c (Qja, Qko): Move definitions here from ftfont.c.
1179
1180 * font.h (Qja, Qko): Extern them.
1181
1182 * ftfont.c (Qja, Qko): Remove declarations.
1183
1184 * xfont.c (Qja, Qko): Remove declarations.
1185
b50504f5
KH
11862009-04-17 Kenichi Handa <handa@m17n.org>
1187
bde25748
KH
1188 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
1189 string from a vector to handle Latin-1 characters correctly.
1190
b50504f5
KH
1191 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
1192 entity even if the cache hits.
1193
f4646fff
AS
11942009-04-16 Andreas Schwab <schwab@linux-m68k.org>
1195
1196 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 1197 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 1198
e7deaab0
AS
1199 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
1200 * lisp.h: Adjust prototypes.
1201
0a0e7d49
CY
12022009-04-16 Chong Yidong <cyd@stupidchicken.com>
1203
1204 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
1205 change (Bug#3003).
1206
3c908a57
KH
12072009-04-16 Kenichi Handa <handa@m17n.org>
1208
1ac9108a 1209 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
1210
1211 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
1212 adstyle.
1213
1214 * ftfont.c (Qja, Qko): Don't make them static.
1215 (enum ftfont_cache_for): New enum.
1216 (fc_charset_table): Undo the previous change.
1217 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
1218 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
1219 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
1220 non-scarable font, try to get AVERAGE_WIDTH.
1221 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
1222 Change ft_face_cache from a list of a hash-table. Don't check
1223 `ja' and `ko' adstyle here.
1224 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
1225 FTFONT_CACHE_FOR_CHARET.
1226 (ftfont_get_charset): Undo the previous change.
1ac9108a 1227 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
1228 (ftfont_close): Likewise.
1229 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
1230
1231 * font.c (font_sort_entites): Change the meaning of the arg
1232 BEST-ONLY. Don't optimize for VEC of lenght 1.
1233 (font_select_entity): Just return the value of font_sort_entites.
1234
1235 * xfaces.c (merge_face_vectors): Reflect font properties in
1236 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
1237 font_clear_prop if a face attribute doesn't change.
1238
3c908a57
KH
1239 * charset.h (charset_ksc5601): Extern it.
1240
1241 * charset.c (charset_ksc5601): New variable.
1242 (Fdefine_charset_internal): Set charset_ksc5601.
1243 (init_charset_once): Initialize charset_ksc5601 to -1.
1244
d65859c3
DN
12452009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1246
1247 * fileio.c (history_delete_duplicates): Remove unused declaration.
1248
1249 * callint.c (history_delete_duplicates): New declaration.
1250 (Fcall_interactively): Remove command history duplicates when
1251 history_delete_duplicates is true.
1252
3ba010e5
EZ
12532009-04-14 Eli Zaretskii <eliz@gnu.org>
1254
1255 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
1256
06f19b91
KH
12572009-04-14 Kenichi Handa <handa@m17n.org>
1258
1259 * font.c (Ffont_info): Fix docstring. Fix the second element of
1260 the returned value (bug#2949).
1261
2cce8bfc
CY
12622009-04-14 Chong Yidong <cyd@stupidchicken.com>
1263
1264 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
1265
d156542d
KH
12662009-04-14 Kenichi Handa <handa@m17n.org>
1267
1268 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
1269 encoding charset is ascii_compatible.
1270
1271 * charset.c (Fdefine_charset_internal): Make charset
1272 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
1273 code_offset is 0, and covers all ASCII characters.
1274
86fa089e
SM
12752009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1276
1277 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
1278 (ns_string_to_pasteboard_internal):
1279 * nsmenu.m (process_dialog):
1280 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
1281 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
1282 * lisp.h (Fx_load_color_file): Declare.
1283
a8a3728b
KH
12842009-04-13 Kenichi Handa <handa@m17n.org>
1285
1ac9108a 1286 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
1287 (font_select_entity): Suppress the code to optimize for the same
1288 kind of fonts.
1289 (font_load_for_lface): Get a font that supports at least ASCII
1290 characters.
1291
1292 * ftfont.c (Qja, Qko): New variables.
1293 (fc_charset_table): Delete uniquifier data for iso8859-1.
1294 (ftfont_get_latin1_charset): New function.
1295 (get_adstyle_property): New function.
1296 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
1297 bitmap fonts.
1298 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
1299 Delete iso-8859-1 range from the charset of fonts whose adstyle is
1300 `ko' or `ja'.
1301 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 1302 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
1303 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
1304 property.
1305 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
1306 (syms_of_ftfont): DEFSYM Qja and Qko.
1307
483670b5
KH
13082009-04-09 Kenichi Handa <handa@m17n.org>
1309
12b55765
KH
1310 * charset.c (map_charset_chars): For a charset of `superset'
1311 method, fix calculation of code range.
1312
483670b5
KH
1313 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
1314 from the list of extra properties.
1315 (font_clear_prop): Be sure to delete `:name' font property.
1316
57d3b93b
KH
13172009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1318
b4b2c2ca
YM
1319 * dispnew.c (redraw_overlapping_rows): Fix detection of
1320 overlapping for topmost and bottommost rows.
1321
1ac9108a 1322 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 1323
472c3609
JR
13242009-04-06 Jason Rumney <jasonr@gnu.org>
1325
1326 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
1327
ab193662
KH
13282009-04-06 Kenichi Handa <handa@m17n.org>
1329
1330 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
1331
1332 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
1333
0c26f026
KH
13342009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1335
1336 * ftfont.c (ftfont_open): Fix checking of the return value of
1337 FT_Load_Char. Fix setting font->underline_thickness.
1338
e173bbce
CY
13392009-04-04 Chong Yidong <cyd@stupidchicken.com>
1340
1341 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
1342 (Fterminal_parameters, Fterminal_parameter)
1343 (Fset_terminal_parameter): In doc string, refer to terminal
1344 objects rather than terminal ids.
1345
693a2698
EZ
13462009-04-04 Eli Zaretskii <eliz@gnu.org>
1347
1348 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
1349 ret_lim_data. (Bug#2867)
1350
d5221487
CY
13512009-04-03 Chong Yidong <cyd@stupidchicken.com>
1352
1353 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
1354 so they don't get wider than the window, matching 2006-01-23
1355 change to the partner function in xdisp.c (Bug#2800).
1356
223509a3
KH
13572009-04-03 Kenichi Handa <handa@m17n.org>
1358
1359 * print.c (print_object): Make each lowest sub_char_table start a
1360 new line (Bug#2866).
1361
74fcd0b1
KH
13622009-04-02 Kenichi Handa <handa@m17n.org>
1363
1364 * fontset.c (fontset_font): Record no-font when a fontset
1365 explicitly tells not to try another font-specs.
1366
c542407d
SM
13672009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
1368
1369 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
1370
e3869731
KH
13712009-03-30 Kenichi Handa <handa@m17n.org>
1372
d8d2f142
KH
1373 * fontset.c (fontset_from_font): Specify only registry in a
1374 font-spec for all characters supported by that registry.
1375
e3869731
KH
1376 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
1377 even if HAVE_M17N_FLT is not defined.
1378
5da5f805
CY
13792009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
1380
1381 * ftfont.c: Conditionalize prototyping and use of
1382 ftfont_variation_glyphs.
1383
ab226c50
SM
13842009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1385
9628fed7
SM
1386 * frame.c (delete_frame): Work around compiler bug.
1387
1388 * editfns.c (general_insert_function): Adjust to insdel.c changes.
1389 * insdel.c (prepare_to_modify_buffer, signal_before_change):
1390 Some more EMACS_INT.
1391 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
1392
1393 * xdisp.c (dump_glyph): Fix typo.
1394
ae19ba7c
SM
1395 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
1396 (adjust_markers_gap_motion, adjust_markers_for_delete)
1397 (adjust_markers_for_insert, adjust_point)
1398 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
1399 (make_gap, copy_text, count_size_as_multibyte, insert)
1400 (insert_and_inherit, insert_before_markers)
1401 (insert_before_markers_and_inherit, insert_1)
1402 (count_combining_before, count_combining_after, insert_1_both)
1403 (insert_from_string, insert_from_string_before_markers)
1404 (insert_from_string_1, insert_from_gap, insert_from_buffer)
1405 (insert_from_buffer_1, adjust_after_replace)
1406 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
1407 (replace_range_2, del_range, del_range_1, del_range_byte)
1408 (del_range_both, del_range_2, modify_region)
1409 (prepare_to_modify_buffer, signal_before_change)
1410 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
1411 for buffer positions and sizes.
1412 * lisp.h: Adjust prototypes accordingly.
1413
1414 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
1415 (non_regular_inserted, non_regular_nbytes, read_non_regular)
1416 (Finsert_file_contents): Use EMACS_INT for buffer positions.
1417
ab226c50
SM
1418 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
1419
46dfb8fb
JD
14202009-03-27 Jan Djärv <jan.h.d@swipnet.se>
1421
1422 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
1423 lines and columns so we keep the same pixel height and width.
1424
1425 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
1426 the property _NET_WM_STATE has changed.
46dfb8fb
JD
1427 (x_handle_net_wm_state): New function to update frame parameter
1428 fullscreen.
1429 (x_term_init): Initialize atoms for _NET_WM_STATE.
1430
1431 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
1432
d347e494
SM
14332009-03-27 Kevin Ryde <user42@zip.com.au>
1434
1435 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
1436 Gpm_GetEvent as an error that justifies closing the filedescriptor.
1437 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
1438 (Fgpm_mouse_stop): Pass that new parameter.
1439 * termhooks.h (close_gpm): Adjust prototype.
1440
84db11d6
SM
14412009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
1442
c95a5008
SM
1443 * lisp.h (Fx_focus_frame): Declare.
1444
84db11d6
SM
1445 * callint.c (Fcall_interactively): For '^' just delegate the work to
1446 handle-shift-selection.
1447 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
1448
0a1958d6
CY
14492009-03-24 Chong Yidong <cyd@stupidchicken.com>
1450
0bfdff23
CY
1451 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
1452
0a1958d6
CY
1453 * data.c (Qinteractive_form): New variable.
1454 (Finteractive_form): Use it.
1455
1456 * eval.c (Fcommandp): Use Qinteractive_form.
1457
58aec0d6
JR
14582009-03-24 Jason Rumney <jasonr@gnu.org>
1459
1460 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
1461 Calculate total size precisely. Decode environment variables
1462 before substituting. (Bug#38)
1463
553dd618
KH
14642009-03-24 Kenichi Handa <handa@m17n.org>
1465
1466 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 1467 encoding (Bug#2722).
553dd618 1468
c39ea606
JD
14692009-03-23 Jan Djärv <jan.h.d@swipnet.se>
1470
1471 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
1472 that gdpy is set.
1473
bc9b2b5e
AM
14742009-03-22 Alan Mackenzie <acm@muc.de>
1475
1476 * callint.c (Finteractive): Clarify the doc string - even
1477 promptless elements need \n separators.
1478
9f995a76
JR
14792009-03-22 Jason Rumney <jasonr@gnu.org>
1480
1481 * w32term.c (syms_of_w32term): Doc fix for
1482 x-use-underline-position-properties.
1483
22749e9a
EZ
14842009-03-21 Eli Zaretskii <eliz@gnu.org>
1485
1486 * w32.c (getpwuid): Change argument type to unsigned.
1487 (struct w32_id): Change type of `rid' member to unsigned.
1488 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
1489 argument ID to unsigned. All callers changed.
1490 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
1491
e00553bf
EZ
14922009-03-20 Eli Zaretskii <eliz@gnu.org>
1493
1494 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
1495 negative, produce a float value.
1496
1497 * dired.c (make_uid, make_gid): New functions.
1498 (Ffile_attributes): Use them to avoid negative UID and GID.
1499
f761d6b6
JB
15002009-03-20 Juanma Barranquero <lekktu@gmail.com>
1501
1502 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
1503 (syms_of_keyboard) <command-hook-internal, input-method-function>:
1504 Fix typos in docstrings.
1505
d507f8d7
KH
15062009-03-19 Kenichi Handa <handa@m17n.org>
1507
1508 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
1509 changed, use font_load_for_lface to get a new font object.
1510 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
1511
1512 * frame.c (x_set_font): Handle the case that ARG is a cons.
1513
c68845e0
GM
15142009-03-19 Glenn Morris <rgm@gnu.org>
1515
1516 * fileio.c (Fsubstitute_in_file_name): Doc fix.
1517
bfa49dd1
CY
15182009-03-19 Chong Yidong <cyd@stupidchicken.com>
1519
1520 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
1521
8458d4c1
KH
15222009-03-19 Kenichi Handa <handa@m17n.org>
1523
1524 * charset.c (load_charset_map_from_file): When a mapfile can't be
1525 loaded, signal an error.
1526
78e7d1fe
EZ
15272009-03-18 Eli Zaretskii <eliz@gnu.org>
1528
1529 * dired.c (Ffile_attributes): Make sure UID and GID are always
1530 positive, even if the value is too large for a positive EMACS_INT.
1531 Doc fix.
1532
1533 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
1534
5da9fdfa
YM
15352009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1536
1537 * xmenu.c (xdialog_show): Move Fredisplay call ...
1538 (Fx_popup_dialog): ... here.
1539
7519c40d
SM
15402009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
1541
1542 * dired.c (file_name_completion): Disable the first optimization just
1543 installed, since it is not implemented correctly.
1544
2cd298e2
SM
15452009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1546
1547 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 1548 only if the entry can affect bestmatch.
2cd298e2
SM
1549 Stop the search early, as Ftry_completion already does.
1550
48d37adf
CY
15512009-03-17 Chong Yidong <cyd@stupidchicken.com>
1552
e10c9c93 1553 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 1554
9286b16a
CY
15552009-03-15 Chong Yidong <cyd@stupidchicken.com>
1556
1557 * keyboard.c (parse_menu_item): Don't display remappings as menu
1558 equivalent bindings (Bug#788).
1559
f7b146dc
JR
15602009-03-15 Jason Rumney <jasonr@gnu.org>
1561
1562 * w32term.h (WM_EMACS_PAINT): New message.
1563 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
1564 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
1565 before passing to lisp thread. (Bug#950)
1566
f761d6b6 15672009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 1568
d93f9575
CY
1569 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
1570 variable as it was never reset.
1571 (ns_term_init): Remove initialization of Lisp-settable defaults
1572 and ns_expand_space.
1573 (-setPanelFromDefaultValues): Remove ns_expand_space.
1574 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
1575 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
1576 i.e. no additional spacing, similar to Carbon port.
1577
d93f9575
CY
1578 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
1579 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 1580
305018ec
JD
15812009-03-14 Jan Djärv <jan.h.d@swipnet.se>
1582
1583 * sound.c (alsa_configure): Remove call to deprecated
1584 snd_pcm_sw_params_set_xfer_align.
1585
f761d6b6 15862009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
1587
1588 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
1589 after clicking in a detached tool bar.
1590 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
1591
46e722a9
SM
15922009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
1593
348db3dd
SM
1594 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
1595 int/Lisp_Object mixup).
46e722a9 1596
a3d16f39
KH
15972009-03-13 Kenichi Handa <handa@m17n.org>
1598
1599 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 1600 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
1601 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
1602 (set_fontset_font): Change ARG to a vector. Handle range_list in
1603 ARG correctly.
1604 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 1605 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
1606 the above change.
1607 (fontset_from_font): Fix previous change.
fe24f56a 1608 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
1609 entry. If FONTSET is the default fontset, don't set the extra
1610 slot of the returning char-table.
1611
b066e6b6
JB
16122009-03-12 Juanma Barranquero <lekktu@gmail.com>
1613
1614 * nsfns.m (Fx_close_connection): Doc fix.
1615 (Fns_do_applescript): Reflow docstring.
1616 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
1617 (Fx_display_pixel_width, Fx_display_pixel_height)
1618 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
1619 Fix typos in docstrings.
1620 (Fns_set_alpha): Fix typos in error messages.
1621
d472514e 16222009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 1623
d472514e 1624 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
1625 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
1626 were used for such events.
1627
d472514e
JB
1628 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
1629 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 1630
d472514e 1631 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
1632 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
1633
fb930676
KH
16342009-03-11 Kenichi Handa <handa@m17n.org>
1635
ff85581a
KH
1636 * font.h (font_open_by_spec): Extern it.
1637
c50b7e98
KH
1638 * font.c (font_open_by_spec): New function.
1639 (font_open_by_name): Use font_open_by_spec.
1640
fb930676
KH
1641 * frame.c (x_set_font): When ARG is a font-object, don't alter the
1642 fontset of the frame.
1643
1644 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
1645 modify the default font of frames that use this fontset.
1646 (num_auto_fontsets): New variable.
1647 (fontset_from_font): Use num_auto_fontsets to decide a fontset
1648 name. Be sure to set FONTSET_ASCII to the correct font name.
1649 (update_auto_fontset_alist): New function.
1650
df4e8455
JB
16512009-03-11 Juanma Barranquero <lekktu@gmail.com>
1652
1653 * makefile.w32-in: Update dependencies.
1654
0a375797
AR
16552009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
1656
1657 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
1658
61313fa3
SM
16592009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
1660
1661 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
1662
b55103fb
CY
16632009-03-10 Chong Yidong <cyd@stupidchicken.com>
1664
1665 * lread.c (Feval_buffer): Doc fix.
1666
dde2559c
KH
16672009-03-09 Kenichi Handa <handa@m17n.org>
1668
1669 * charset.c (Qfile_name_handler_alist): Extern it.
1670 (load_charset_map_from_file): Temporarily bind
1671 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
1672
df4e8455 16732009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 1674
47f588bb
GM
1675 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
1676 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 1677
4ddf94bd
AR
16782009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
1679
4c9bdfc2
AR
1680 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
1681 (x_set_window_size): Change back to calculated method of setting
1682 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
1683 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
1684 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
1685
fe41ae9e
AR
1686 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
1687
4c9bdfc2
AR
1688 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
1689 accelerator in parens under GNUstep.
1690
825d0875
KH
16912009-03-06 Kenichi Handa <handa@m17n.org>
1692
1693 These changes are to detect incorrect composition sequence without
f3b3be74 1694 looking ahead the source. (Bug#2370)
825d0875
KH
1695
1696 * coding.h: Include "composite.h".
1697 (enum compisition_state): New enum.
1698 (struct compisition_status): New struct.
1699 (struct iso_2022_spec): New member cmp_status.
1700 (struct emacs_mule_spec): New struct.
1701 (struct coding_system): New members ctext_extended_segment_len and
1702 embedded_utf_8. Change the union member
1703 spec.emacs_mule_full_support to spec.emacs_mule.
1704
1705 * coding.c (CODING_ISO_CMP_STATUS): New macro.
1706 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 1707 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
1708 (ADD_COMPOSITION_DATA): New arg nbytes.
1709 (emacs_mule_char): New arg cmp_status.
1710 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
1711 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
1712 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
1713 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
1714 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
1715 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
1716 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
1717 (EMACS_MULE_COMPOSITION_END): New macro.
1718 (emacs_mule_finish_composition): New function.
1719 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
1720 (decode_coding_emacs_mule): Avoid long looking ahead while
1721 handling composition.
1722 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
1723 (ENCODE_COMPOSITION_RULE): New macro.
1724 (finish_composition): New function.
1725 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
1726 (DECODE_COMPOSITION_START): New implementation.
1727 (DECODE_COMPOSITION_END): Likewise.
1728 (STORE_COMPOSITION_RULE): New macro.
1729 (decode_coding_iso_2022): Avoid long looking ahead while handling
1730 composition, CTEXT extended segment, and embedded UTF-8.
1731 (setup_coding_system): For a coding of type iso-2022, reset
1732 CODING_ISO_EXTSEGMENT_LEN (coding) and
1733 CODING_ISO_EMBEDDED_UTF_8 (coding).
1734 (get_translation): Delete arguments last_block, from_nchars,
1735 to_nchars. Callers changed.
1736 (produce_chars): Don't modify charbuf. Adjusted for the change of
1737 get_translation.
98a326f7 1738 (produce_composition): Adjust for the new annotation sequence.
825d0875 1739 (handle_composition_annotation): Likewise.
98a326f7 1740 (consume_chars): Adjust for the change of get_translation.
825d0875 1741
ccbc4452
AR
17422009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
1743
4ddf94bd 1744 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 1745
988a7ddb
KH
17462009-03-05 Kenichi Handa <handa@m17n.org>
1747
1748 * font.c (font_select_entity): New function.
1749 (font_find_for_lface): Use font_select_entity to select a font.
1750
1751 * fontset.c (fontset_find_font): If a font found without
a8a3728b 1752 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
1753 font with C restriction.
1754
98a326f7 17552009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 1756
be1bce46 1757 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 1758
10ea2b82
JR
17592009-03-04 Jason Rumney <jasonr@gnu.org>
1760
2c93b248 1761 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 1762 characters that have already been read. (Bug#2569)
2c93b248 1763
10ea2b82
JR
1764 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
1765 Log an error message if check_image_size failed.
1766 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 1767 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 1768
71a0c011
EZ
17692009-03-02 Eli Zaretskii <eliz@gnu.org>
1770
1771 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
1772 when decoding process output.
1773
2f63bba8
RS
17742009-03-01 Richard M Stallman <rms@gnu.org>
1775
1776 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
1777
1778 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
1779
0a9564cb
EZ
17802009-02-28 Eli Zaretskii <eliz@gnu.org>
1781
1782 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
1783 (decode_coding_emacs_mule, decode_coding_iso_2022)
1784 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
1785 (decode_coding_raw_text, decode_coding_charset)
1786 (setup_coding_system, decode_eol, decode_coding, consume_chars):
1787 Honor inhibit-eol-conversion. (Bug #2186)
1788
449148b3
JR
17892009-02-28 Jason Rumney <jasonr@gnu.org>
1790
1791 * coding.c (detect_coding_charset): If not checking latin extra,
1792 fail on characters between 0x80 and 0xA0. (Bug#2354)
1793
a4aee864
EZ
17942009-02-28 Eli Zaretskii <eliz@gnu.org>
1795
1796 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 1797 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 1798
d88bee5a
GM
17992009-02-27 Glenn Morris <rgm@gnu.org>
1800
1801 * callint.c (Finteractive): Doc fix.
1802
a808f22d
KH
18032009-02-27 Kenichi Handa <handa@m17n.org>
1804
1805 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
1806
caf8d60c
CY
18072009-02-27 Chong Yidong <cyd@stupidchicken.com>
1808
1809 * font.c (font_style_to_value): Set value for unknown symbols to
1810 100 instead of 255.
b61137ea
CY
1811 (weight_table, slant_table, width_table): Treat "unspecified" as
1812 the default value.
caf8d60c 1813
1a0de25c
JB
18142009-02-26 Juanma Barranquero <lekktu@gmail.com>
1815
1816 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
1817
8fc45744
JB
18182009-02-25 Juanma Barranquero <lekktu@gmail.com>
1819
107bd7d1
JB
1820 * lread.c (Fload): Stop checking Vloads_in_progress and signal
1821 error as soon as a recursive load is detected.
8fc45744 1822
f097e223
AR
18232009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1824
1825 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
1826 before caching.
1827
8810a12f
KH
18282009-02-24 Kenichi Handa <handa@m17n.org>
1829
1830 * fontset.c (fontset_find_font): Fix the condition for checking
1831 unavailable font.
1832
2c7d1565
GM
18332009-02-24 Glenn Morris <rgm@gnu.org>
1834
1835 * xfaces.c (Finternal_set_font_selection_order): Remove leading
1836 whitespace that confuses documentation.
1837
a20878b6
MB
18382009-02-23 Miles Bader <miles@gnu.org>
1839
1840 * process.c (Flist_system_processes, Fprocess_attributes)
1841 (syms_of_process): Rename `system-process-attributes' to
1842 `process-attributes'.
1843
b3b58c01
AS
18442009-02-22 Andreas Schwab <schwab@linux-m68k.org>
1845
1b3b981b
AS
1846 * coding.h (struct coding_system): Make safe_charsets a pointer to
1847 unsigned char.
1848 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
1849 being 255.
1850 (SAFE_CHARSET_P): Likewise.
1851 (setup_iso_safe_charsets): Properly setup safe_charsets.
1852 (Fdefine_coding_system_internal): Likewise.
1853 (setup_coding_system): Likewise. Remove unneeded casts.
1854 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
1855 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
1856 unneeded casts.
1857
b3b58c01
AS
1858 * insdel.c (del_range_2): Don't modify gap contents when called
1859 from decode_coding_object. (Bug#1809)
1860
0b6f228c
CY
18612009-02-21 Chong Yidong <cyd@stupidchicken.com>
1862
1863 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
1864 Qfont_object.
1865 (Ftype_of): Recognize font objects.
1866
1867 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
1868
1869 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
1870 moved to data.c.
1871
52f8870b
AR
18722009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
1873
1874 * nsterm.m (x_make_frame_invisible): Unset async_visible,
1875 async_iconified. Based on a patch by Christian Lynbech
1876 <christian.lynbech@tieto.com>.
1877 (EmacsView-windowDidMiniaturize:): Unset async_visible.
1878
7087d5e9
GM
18792009-02-20 Glenn Morris <rgm@gnu.org>
1880
1881 * syntax.c (Fskip_chars_forward): Fix doc typo.
1882
41d2ceef
CY
18832009-02-20 Chong Yidong <cyd@stupidchicken.com>
1884
1885 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
1886
1a3b7ca6
CY
18872009-02-19 Chong Yidong <cyd@stupidchicken.com>
1888
1889 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
1890
73cce38d
KH
18912009-02-19 Kenichi Handa <handa@m17n.org>
1892
1893 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 1894 Don't overflow coding->carryover. (Bug#2370)
73cce38d 1895
a51092ee
DN
18962009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
1897
1898 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
1899
c423ecca
KH
19002009-02-18 Kenichi Handa <handa@m17n.org>
1901
1902 * font.c (font_check_otf_features): Fix handling of `nil' element.
1903 (Ffont_spec): Describe :lang and :otf in the docstring.
1904
4c1958f4
AS
19052009-02-16 Andreas Schwab <schwab@suse.de>
1906
1907 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
1908 string.
1909
5704f39a
KH
19102009-02-16 Kenichi Handa <handa@m17n.org>
1911
1912 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 1913 (Bug#1723)
5704f39a 1914
8f0085aa
CY
19152009-02-14 Chong Yidong <cyd@stupidchicken.com>
1916
a057d86a 1917 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
1918
1919 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
1920 (handle_line_prefix): Suppress wrapping of wrap prefixes.
1921
aff01dd9
EZ
19222009-02-14 Eli Zaretskii <eliz@gnu.org>
1923
1924 * msdos.c (MAX_SCREEN_BUF): New macro.
1925 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
1926 Encode the entire run of glyphs sharing the same face, instead of
1927 doing that one glyph at a time (fixes a bug with displaying
1928 double-size characters).
1929
ba301db3
AR
19302009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
1931
1932 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
1933
1934 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
1935 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 1936 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
1937
1938 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 1939 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 1940
51d861de
SM
19412009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
1942
1943 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
1944 invisible areas.
1945
7fed8996
JR
19462009-02-12 Jason Rumney <jasonr@gnu.org>
1947
631ea4fb
JR
1948 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
1949 (add_font_entity_to_list): Call check_face_name even when family
1950 is unspecified.
1951
cb4a3e42
JR
1952 * w32term.c (x_display_pixel_height, x_display_pixel_width):
1953 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 1954 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 1955
7fed8996 1956 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 1957 raster fonts. (Bug#2219)
7fed8996 1958
895416e3
KH
19592009-02-12 Kenichi Handa <handa@m17n.org>
1960
1961 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
1962 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
1963 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 1964 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
1965 (find_automatic_composition): While looking forward and backward,
1966 check static composition. Fix where to stop looking forward.
1967 (composition_adjust_point): Fix checking of static composition.
1968 (Fcomposition_get_gstring): Pay attention to
1dacf998 1969 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
1970
1971 * lisp.h (fast_looking_at): Extern it.
1972
1973 * search.c (fast_looking_at): New function.
1974
51d861de 1975 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
1976 <struct glyph>.u.cmp.to.
1977 (append_composite_glyph): Likewise.
1978
51d861de 1979 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
1980 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
1981 composition.
51d861de 1982 (append_composite_glyph): Adjust for the change of
895416e3
KH
1983 <strcut glyph>.u.cmp.to.
1984
8510724d
JB
19852009-02-11 Juanma Barranquero <lekktu@gmail.com>
1986
1987 * casetab.c (init_casetab_once):
1988 * coding.c (ALLOC_CONVERSION_WORK_AREA):
1989 * font.c (font_update_lface):
1990 * fontset.c (Fnew_fontset):
1991 * ftfont.c (ftfont_drive_otf):
1992 * xfont.c (xfont_open):
1993 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
1994
294fa707
SM
19952009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
1996
1997 * fileio.c (Fwrite_region): !NILP -> CONSP.
1998
b5bfebec
AS
19992009-02-10 Andreas Schwab <schwab@suse.de>
2000
2001 * process.c (send_process): Properly relocate pointer into data
adab88bd 2002 when using encoded data. (Bug#2272)
b5bfebec 2003
cb84a2be
KH
20042009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
2005
2006 * coding.c (detect_coding_charset): Fix previous change.
2007
89e09428
JR
20082009-02-08 Jason Rumney <jasonr@gnu.org>
2009
2010 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 2011 disappeared while hourglass was displayed. (Bug #2193)
89e09428 2012
4470a277
AS
20132009-02-07 Andreas Schwab <schwab@suse.de>
2014
2015 * unexelf.c (unexec): Fix error message.
2016
3175b12a
AR
20172009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
2018
2019 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 2020 when modal window is active. (Bug #2152)
3175b12a
AR
2021 (applicationShouldTerminate:): Remove now-unneeded while loop
2022 around NSRunAlertPanel.
2023
2024 * nsmenu.m (popupSession): New file-global variable.
2025 (pop_down_menu): End the popupSession before closing dialog.
2026 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
2027 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
2028 don't query NSApp for events (just sleep instead).
2029
8434d0b8
EZ
20302009-02-07 Eli Zaretskii <eliz@gnu.org>
2031
51d861de
SM
2032 * coding.c (syms_of_coding) <translation-table-for-input>:
2033 Modify doc string to discourage use for character code unification.
8434d0b8 2034
aa82edfd
CY
20352009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2036
2037 * atimer.c (run_timers): Update pending_atimers.
2038
2d283c7c
CY
20392009-02-06 Chong Yidong <cyd@stupidchicken.com>
2040
eb306cab
CY
2041 * image.c (svg_load_image): Fix last change.
2042
2d283c7c
CY
2043 * xfns.c (Fx_create_frame): Signal an error if no font is
2044 found (Bug#2147).
2045
4d8e170e
JB
20462009-02-05 Juanma Barranquero <lekktu@gmail.com>
2047
2048 * character.c (syms_of_character) <script-representative-chars>:
2049 Fix typo in docstring.
2050
c96169a0
AR
20512009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2052
2053 * nsmenu.m (pop_down_menu): New function.
2054 (ns_popup_dialog): Call it on unwind.
2055 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
2056 call timer_check() (Bug#2154).
2057 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
2058 handling_signal is set.
2059 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
2060
2061 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G
2062
2063 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
2064
2065 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
2066
51d861de
SM
2067 * keyboard.c (poll_for_input_1, handle_async_input):
2068 Set handling_signal under HAVE_NS.
c96169a0 2069
aacd8ba1
GM
20702009-02-04 Glenn Morris <rgm@gnu.org>
2071
2072 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
2073
4cb75c4b
KH
20742009-02-04 Kenichi Handa <handa@m17n.org>
2075
2076 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
2077
2078 * charset.c (Fchar_charset): New optional arg restriction.
2079
2080 * coding.h (coding_system_charset_list): Extern it.
2081
2082 * coding.c (coding_system_charset_list): New function.
2083
2084 * composite.c: Include coding.h and termhooks.h.
2085 (composition_gstring_p): Fix for the terminal case.
2086 (composition_gstring_width): Likewise.
2087 (fill_gstring_body): Likewise.
2088 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
2089 the frame.
2090 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
2091 is within a composition.
867d4bb3 2092 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
2093
2094 * term.c (encode_terminal_code): Fix handling of composition.
2095 (produce_composite_glyph): For static composition, get pixel_width
2096 from struct composition.
2097
826ba17e
AS
20982009-02-02 Andreas Schwab <schwab@suse.de>
2099
2100 * unexelf.c (unexec): Handle unaligned bss offset.
2101
8ad093db
AR
21022009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2103
2104 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
2105 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 2106
8ad093db
AR
2107 * keyboard.c (handle_interrupt): Don't call
2108 quit_throw_to_read_char() under NS.
d0a76a6e 2109
8ad093db
AR
2110 * blockinput.h: Remove NS-specific code.
2111
4d18a7a2
DN
21122009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
2113
db878925
DN
2114 * dispnew.c (window_change_signal): Don't try to get the size of a
2115 suspended tty frame.
2116 * term.c (Fresume_tty): Resize if the size has changed while the
2117 tty was suspended.
2118
4d18a7a2
DN
2119 * alloc.c (mark_stack): Properly conditionalize previous change.
2120
8984df7c
JB
21212009-01-30 Juanma Barranquero <lekktu@gmail.com>
2122
2123 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
2124 * w32term.c (w32_read_socket) [SYNC_INPUT]:
2125 Remove; this code is not used on Windows.
2126
75f4f1ac
EZ
21272009-01-30 Eli Zaretskii <eliz@gnu.org>
2128
2129 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
2130 EOLs that also has stray ^M characters.
2131
07a1e794
JB
21322009-01-30 Juanma Barranquero <lekktu@gmail.com>
2133
2134 * atimer.c (run_timers, alarm_signal_handler):
2135 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
2136 * w32inevt.c (w32_console_read_socket):
2137 * w32term.c (w32_read_socket):
2138 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
2139
a8b11cc9
CY
21402009-01-30 Chong Yidong <cyd@stupidchicken.com>
2141
2142 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
2143 Initialize it as a relative filename pattern.
2144 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
2145 (Fcall_process_region): Simplify temp file creation using
2146 temporary-file-directory.
2147
c279587b
EZ
21482009-01-29 Eli Zaretskii <eliz@gnu.org>
2149
2150 * msdos.c: Rename pending_signals to msdos_pending_signals.
2151 (sig_suspender, sigprocmask): Adjust.
2152
a8fe3242
CY
21532009-01-29 Chong Yidong <cyd@stupidchicken.com>
2154
2155 * keyboard.c (pending_signals): New var.
2156 (poll_for_input, input_available_signal, init_keyboard): Set it.
2157 (process_pending_signals): New function.
2158
2159 * lisp.h (QUIT): Check pending_signals instead of
2160 interrupt_input_pending. Use process_pending_signals.
2161
51d861de 2162 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 2163
51d861de 2164 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
2165
2166 * sysdep.c (emacs_write): Use process_pending_signals.
2167
2168 * xterm.c (XTread_socket): Update pending_signals.
2169
2170 * w32term.c (w32_read_socket): Update pending_signals.
2171
2172 * w32inevt.c (w32_console_read_socket): Update pending_signals.
2173
6570a1c4
KH
21742009-01-29 Kenichi Handa <handa@m17n.org>
2175
2176 * xftfont.c (xftfont_has_char): New function.
2177 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
2178
d72a4afa
AR
21792009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2180
2181 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
2182 under GNUstep.
2183 (ns_query_color): New declaration.
2184
2185 * nsterm.m (ns_confirm_quit): New variable.
2186 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
2187 (EmacsApp-applicationShouldTerminate:): Use it.
2188 (EmacsPrefsController): Let user set it.
2189 (ns_query_color): New function.
2190 (ns_defined_color): Use it.
2191 (ns_initialize): Drop.
2192 (ns_term_init): Add two lines from ns_initialize(), and set
2193 input_interrupt_mode to nil.
2194
2195 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 2196 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 2197
9fe78804
KH
21982009-01-28 Kenichi Handa <handa@m17n.org>
2199
2200 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
2201 (fontset_get_font_group): Remember that no font-group is specified
2202 for C.
9fe78804 2203
fa57de36
CY
22042009-01-27 Chong Yidong <cyd@stupidchicken.com>
2205
930600e9
CY
2206 * fns.c (concat): Check for string overflow (bug#1787).
2207
fa57de36
CY
2208 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
2209 Quadruple undo limits (bug#1501).
2210
7179ce7b
KH
22112009-01-27 Kenichi Handa <handa@m17n.org>
2212
2213 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
2214 directly use GT_Get_Char_index.
2215
2216 * xftfont.c (struct xftfont_info): New member `index'.
2217
2218 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 2219 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 2220
5be8fcc0
CY
22212009-01-26 Kenichi Handa <handa@m17n.org>
2222
2223 * fontset.c (fontset_find_font): Fix handling of non-cons return
2224 value of fontset_get_font_group.
2225 (fontset_font): Revert last change.
2226
19ae3e61
JR
22272009-01-26 Jason Rumney <jasonr@gnu.org>
2228
2229 * w32font.c (w32font_list_internal): Return quickly if registry is
2230 unknown. Simplify final return.
2231 (add_font_entity_to_list): Break complex logic down into more
2232 manageable chunks. Move unknown registry check to
2233 w32font_list_internal.
2234
8612b71a
AR
22352009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
2236
2237 Changes to remove Feval calls from GUI under NS.
2238
d8038940
JB
2239 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
2240 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
2241 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
2242
2243 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
2244 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
2245 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
2246 instead of NON_ASCII_KEYSTROKE_EVENT.
2247 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
2248 (EmacsApp-applicationShouldTerminate:): Query user.
2249 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
2250 instead of Feval.
2251
2252 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
2253
2254 * keyboard.c (kbd_buffer_get_event): Check for it.
2255 (keys_of_keyboard): Define lispy keys for
2256 ns-put/unput-working-text.
2257
2258 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
2259 versions.
2260 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
2261
6288ae55
CY
22622009-01-25 Chong Yidong <cyd@stupidchicken.com>
2263
2264 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 2265 setting current_buffer directly. (Bug#2044)
6288ae55 2266
289e7f8f
CY
22672009-01-24 Chong Yidong <cyd@stupidchicken.com>
2268
5ce87308 2269 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 2270 any work. (Bug#1952, bug#1990).
5ce87308 2271
64cc3cf6 2272 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 2273
b3243e6f
AR
22742009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2275
2276 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
2277 (ns_no_defaults): New declaration.
2278 (main): Use it.
e0d2e69a 2279
d900b2af 2280 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 2281
d900b2af 2282 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 2283
d900b2af
AR
2284 * nsterm.m (ns_no_defaults): New variable.
2285 (ns_initialize): Don't read defaults when ns_no_defaults.
2286 (EmacsView-readSelectionFromPasteboard:)
2287 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 2288 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
2289 (ns_dumpglyphs_stretch): New function.
2290 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 2291 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 2292
e0d2e69a
AR
2293 * nsimage.m (setPixmapData:): Set to ignore image DPI.
2294
3ac71f5d
CY
22952009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
2296
2297 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
2298 call for Sparc64.
2299
3fe53a83
AR
23002009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2301
2302 * nsfns.m:
2303 * nsgui.h:
2304 * nsmenu.m:
2305 * nsselect.m:
2306 * nsterm.h:
2307 * nsterm.m: Remove '23' comments that indicated code added during
2308 update from emacs-20 -> emacs-23.
2309
10f87c6f 23102009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
2311
2312 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 2313 ns_alternate_modifier. (Bug#1217)
a3b53a85 2314
c7cef62d
AR
2315 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
2316 Display all shortcuts, including those w/o super modifier.
2317
575fb8bd
AR
2318 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
2319
918b848b
CY
23202009-01-22 Chong Yidong <cyd@stupidchicken.com>
2321
2322 * fileio.c (Vwrite_region_post_annotation_function)
2323 (Vwrite_region_annotation_buffers): New vars.
2324 (build_annotations_unwind): Just reset
2325 Vwrite_region_annotation_buffers.
2326 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
2327 Call write-region-post-annotation-function.
2328 (build_annotations): Add to Vwrite_region_annotation_buffers if
2329 buffer changes.
2330
a39e2539
AR
23312009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2332
2333 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
2334 Tiger.
51d861de
SM
2335 * nsfns.m (ns_do_applescript):
2336 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 2337
35ed44db
AR
23382009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
2339
2340 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
2341
cbe0b5bf
AR
23422009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2343
2344 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 2345
6049d3a0
AR
2346 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
2347
2348 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
2349 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
2350 handle Ctrl-tab. (Bug#1841)
2351 (ns_get_color): Use unsigned long long for scanned hex string value.
2352 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 2353 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 2354 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 2355 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 2356 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 2357 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 2358 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 2359
d3810c21 2360 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 2361 DPI. (Bug#1316)
d3810c21
AR
2362 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
2363 values in onTiger section.
4c7077c3 2364
e301e634
CY
23652009-01-19 Chong Yidong <cyd@stupidchicken.com>
2366
7f82490b
CY
2367 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
2368 Check return value of font_spec_from_name.
64cc3cf6 2369 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
2370
2371 * font.c (font_spec_from_name): Return Qnil if font name could not
2372 be parsed.
2373 (font_parse_name): Treat a `?' character as part of an XLFD.
2374
e301e634
CY
2375 * fns.c (Fsubstring): Doc fix.
2376
1c0db158
KH
23772009-01-19 Kenichi Handa <handa@m17n.org>
2378
51d861de 2379 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
2380 (ftfont_list): Likewise.
2381
acf20901
JB
23822009-01-18 Juanma Barranquero <lekktu@gmail.com>
2383
fff4e459
JB
2384 * dbusbind.c (Fdbus_register_signal):
2385 * process.c (conv_sockaddr_to_lisp):
2386 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
2387
acf20901
JB
2388 * callproc.c (Fgetenv_internal): Doc fix.
2389
e7abcdfb
CY
23902009-01-16 Chong Yidong <cyd@stupidchicken.com>
2391
2392 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
2393 it is not even used.
2394
b60861e6
GM
23952009-01-16 Glenn Morris <rgm@gnu.org>
2396
2397 * font.c (Ffont_variation_glyphs): Silence compiler.
2398
8db52afe
JB
23992009-01-15 Juanma Barranquero <lekktu@gmail.com>
2400
2401 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
2402 Reported by David Robinow <drobinow@gmail.com>.
2403
4cddb209
KH
24042009-01-15 Kenichi Handa <handa@m17n.org>
2405
51d861de 2406 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 2407
f247f67b
JR
24082009-01-14 Jason Rumney <jasonr@gnu.org>
2409
2410 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 2411 never a fontset. (Bug#1562)
f247f67b 2412
f56a4450
KH
24132009-01-14 Kenichi Handa <handa@m17n.org>
2414
2415 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 2416 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 2417
4e99855e
CY
24182009-01-13 Chong Yidong <cyd@stupidchicken.com>
2419
2420 * font.c (font_clear_prop): If clearing the family, clear the font
2421 width index too.
2422
fff4e459 2423 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 2424
24f01470
JB
24252009-01-12 Juanma Barranquero <lekktu@gmail.com>
2426
2427 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
2428 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
2429 functions, use sizeof.
2430
a41240a3
MR
24312009-01-12 Martin Rudalics <rudalics@gmx.at>
2432
2433 * keyboard.c (read_char): Fix case where last_nonmenu_event
2434 returned a bad value with submenus. (Bug#447)
2435
944636b8
CY
24362009-01-12 Chong Yidong <cyd@stupidchicken.com>
2437
2438 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
2439 family, clear the font width index too.
2440
0dad7c6f
JR
24412009-01-11 Jason Rumney <jasonr@gnu.org>
2442
2443 * keyboard.c (cmd_error_internal): Exit when errors occur before
2444 frame creation and not in daemon mode. (Bug#1836)
2445
7c2363af
CY
24462009-01-10 Chong Yidong <cyd@stupidchicken.com>
2447
2448 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
2449 of a display vector, backtrack.
2450 (try_window_reusing_current_matrix): Check glyph type before
2451 referencing charpos member.
2452
97b1b294
EZ
24532009-01-10 Eli Zaretskii <eliz@gnu.org>
2454
2455 Fix Bug #876:
2456
2457 * coding.c (inhibit_null_byte_detection): New variable.
2458 (detect_coding, detect_coding_system): Don't pay attention to null
2459 bytes if inhibit_null_byte_detection is non-zero.
51d861de 2460 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
2461 <inhibit-iso-escape-detection>: Doc fix.
2462
4624b6e3
JR
24632009-01-09 Jason Rumney <jasonr@gnu.org>
2464
2465 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 2466 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
2467 Only report Unicode Plane 2 fonts as unicode-sip.
2468
323b840c
CY
24692009-01-09 Chong Yidong <cyd@stupidchicken.com>
2470
51d861de
SM
2471 * xfaces.c (Fx_font_family_list): Delete function.
2472 Move compatibility version to faces.el.
323b840c 2473
51d861de 2474 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 2475
eba7400d
MR
24762009-01-09 Martin Rudalics <rudalics@gmx.at>
2477
2478 * frame.c (x_set_frame_parameters): Remember requested value for
2479 fullscreen before it's reset by the parameter handler.
2480
4b09796d
GM
24812009-01-09 Glenn Morris <rgm@gnu.org>
2482
2483 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 2484 (last_command_event): ... and update all users.
4b09796d
GM
2485 (last_input_char): For clarity, rename to...
2486 (last_input_event): ... and update all users.
2487 (last-command-char, last-input-char): Move to subr.el as aliases.
2488 * cmds.c, commands.h: Update for last_command_char rename.
2489
14ccea62
CY
24902009-01-08 Chong Yidong <cyd@stupidchicken.com>
2491
51d861de 2492 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 2493
5f004711
JR
24942009-01-08 Jason Rumney <jasonr@gnu.org>
2495
2496 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
2497 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
2498 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
2499 Don't declare.
fff4e459 2500 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
2501 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
2502
b71f6f73
KH
25032009-01-07 Kenichi Handa <handa@m17n.org>
2504
50b06221 2505 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 2506 remember the coding system used for decoding in
50b06221
KH
2507 coding_system (Bug#1039).
2508
b71f6f73 2509 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 2510 breaking the loop. (Bug#870)
b71f6f73
KH
2511 (decode_coding_utf_16, decode_coding_emacs_mule)
2512 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
2513 (decode_coding_charset): Likewise.
2514
56f668f7
MR
25152009-01-05 Martin Rudalics <rudalics@gmx.at>
2516
2517 * frame.c (x_set_frame_parameters): Make sure height (width) get
2518 applied when fullwidth (fullheight) is set. (Bug#1522)
2519
5da9424d
JB
25202009-01-04 Juanma Barranquero <lekktu@gmail.com>
2521
2522 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
2523 (utc_base): Declare as ULONGLONG, not long double.
2524 (convert_time_raw): Delete.
2525 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
2526 (initialize_utc_base): New function.
2527 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
2528 (convert_from_time_t): Use initialize_utc_base; compute result with
2529 64-bit arithmetic.
2530 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
2531
c4605e09
EZ
25322009-01-03 Eli Zaretskii <eliz@gnu.org>
2533
9acef61c 2534 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
2535 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
2536 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
2537 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
2538 [!subprocesses]: Define.
2539 (syms_of_process) [!subprocesses]: Intern and staticpro them.
2540 (Flist_system_processes, Fsystem_process_attributes)
2541 [!subprocesses]: Call list_system_processes and
2542 system_process_attributes instead of returning Qnil.
2543
9acef61c
JB
2544 * dosfns.c (system_process_attributes, list_system_processes):
2545 New functions.
c4605e09
EZ
2546
2547 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
2548
2549 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
2550 Don't use the default (no-op) implementation.
2551
8b7d0a16
JR
25522009-01-03 Jason Rumney <jasonr@gnu.org>
2553
a6d46bc1
JR
2554 * keyboard.c (parse_modifiers_uncached): Wheel events are
2555 clicks (bug#687).
2556
8b7d0a16
JR
2557 * w32term.c (x_query_colors, x_query_color): New functions.
2558
2559 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
2560 (svg_load_image): Cast returned pointers from dynamically loaded
2561 functions. Eliminate W32 specific code.
2562
bfe11752
DN
25632009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
2564
89e2438a
DN
2565 * nsfns.m (x_set_foreground_color, x_set_background_color)
2566 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
2567 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
2568 x_ prefix instead of ns_. Update references.
2569 (syms_of_nsfns): Add a FIXME comment.
2570
2571 * nsterm.m (x_set_cursor_type): New prototype.
2572 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
2573
bfe11752
DN
2574 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
2575 for Solaris instead of incorrectly providing Qutime and Qcutime.
2576
031da700
EZ
25772009-01-02 Eli Zaretskii <eliz@gnu.org>
2578
2579 * w32.c (process_times): Compute sum of utime and stime.
2580 (system_process_attributes): Add Qtime to the alist.
2581
2582 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
2583 and add them to the alist.
2584
2585 * process.c (top level) <Qtime, Qctime>: New variables.
2586 (syms_of_process): staticpro them.
2587 (Fsystem_process_attributes): Add their documentation to the doc
2588 string.
2589
2590 * process.h: Declare Qtime and Qctime.
2591
df23bf08
JR
25922009-01-02 Jason Rumney <jasonr@gnu.org>
2593
9acef61c 2594 * image.c (Qgobject): New symbol.
df23bf08
JR
2595 (syms_of_image): Initialize it.
2596 (init_svg_functions): Load some functions from gobject library.
2597
5bbdf7aa
DN
25982009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
2599
2600 * frame.c (make_terminal_frame): Remove redundant code and useless
2601 block.
2602
63136da6
AS
26032009-01-01 Andreas Schwab <schwab@suse.de>
2604
2605 * process.c (conv_sockaddr_to_lisp): Add workaround for
2606 getsockname bug on BSD.
2607
9ef69046
CY
26082009-01-01 Chong Yidong <cyd@stupidchicken.com>
2609
d6fafbe0
CY
2610 * xfns.c (x_create_tip_frame): Set border width of the X window.
2611
51d861de 2612 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 2613
f9c34147
JR
26142009-01-01 Jason Rumney <jasonr@gnu.org>
2615
9acef61c 2616 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
2617 Don't block input, as per earlier xterm.c changes.
2618
f5497e45
AR
26192008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
2620
2621 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
2622 (ns_appkit_version_int): New function.
2623 (x-server-version): Use ns_appkit_version_int and follow 21+
2624 convention of returning 3 integers.
2625
c19cab20
KH
26262008-12-30 Kenichi Handa <handa@m17n.org>
2627
2628 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
2629 (CHAR_SURROGATE_PAIR_P): New macro.
2630
2631 * font.h (struct font_driver): New member get_variation_glyphs.
2632
9acef61c 2633 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
2634 (Ffont_variation_glyphs): New function.
2635 (syms_of_font): Defsubr it.
2636
2637 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
2638 ftfont_variation_glyphs.
2639 (setup_otf_gstring): New function.
2640 (ftfont_drive_otf): Use it.
2641 (ftfont_shape_by_flt): Handle variation selector.
2642 (ftfont_variation_glyphs): New function.
2643
28cd591f
MR
26442008-12-30 Martin Rudalics <rudalics@gmx.at>
2645
2646 * frame.c (Vemacs_iconified): Remove.
2647
7f714baf
JR
26482008-12-30 Jason Rumney <jasonr@gnu.org>
2649
2650 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 2651 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 2652
9d2d22ab
CY
26532008-12-30 Chong Yidong <cyd@stupidchicken.com>
2654
2655 * indent.c (Fvertical_motion): Don't advance iterator if we have
2656 reseated to the desired position.
2657
2658 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
2659 checking for pos match.
2660
545312c2
KH
26612008-12-30 Kenichi Handa <handa@m17n.org>
2662
1ede3eb6
KH
2663 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
2664 just get the low 8-bit of the code.
2665
545312c2
KH
2666 * font.c (font_intern_prop): Validate str as multibyte.
2667
bd7bbf29
DN
26682008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
2669
31e0750e
DN
2670 * dispextern.h (struct face): Move lface and hash from the middle
2671 of bitfields.
2672
bd7bbf29
DN
2673 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
2674
b5672e7c
DN
26752008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
2676
2677 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
2678 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
2679 instead of intervals.h.
2680
d704470f
AS
26812008-12-26 Andreas Schwab <schwab@suse.de>
2682
2683 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
2684 cons.
2685
54b33868
MR
26862008-12-26 Martin Rudalics <rudalics@gmx.at>
2687
2688 * textprop.c (Qminibuffer_prompt): New variable.
2689 (syms_of_textprop): Initialize it.
2690 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
2691 in minibuffer-prompt face. (Bug#1662)
2692
40b615d6
JR
26932008-12-25 Jason Rumney <jasonr@gnu.org>
2694
2695 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
2696
baae5c2d
JR
26972008-12-24 Jason Rumney <jasonr@gnu.org>
2698
2699 * ralloc.c (r_alloc_reset_variable): New function.
2700
2701 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 2702 record of what points where. (Bug#716)
baae5c2d 2703
a9051c88
DN
27042008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
2705
2706 * minibuf.c (read_minibuf): Follow the non-interactive case when
2707 running as a daemon, before detaching.
2708
8b146312
AS
27092008-12-22 Andreas Schwab <schwab@suse.de>
2710
2711 * buffer.c (init_buffer): Use realloc instead of xrealloc.
2712 * gtkutil.c (free_widget_value): Use xfree instead of free.
2713
56f2de10
MR
27142008-12-22 Martin Rudalics <rudalics@gmx.at>
2715
2716 * frame.c (delete_frame): New function derived from
2717 Fdelete_frame to handle Qnoelisp value for FORCE argument.
2718 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
2719 (Fdelete_frame): Call delete_frame. Remove line from doc-string
2720 saying that FORCE non-nil doesn't run `delete-frame-functions'.
2721 * frame.h: Extern delete_frame.
2722 * window.c (window_loop):
2723 * terminal.c (delete_terminal):
2724 * xterm.c (x_connection_closed):
2725 * xfns.c (Fx_hide_tip):
9acef61c 2726 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 2727
1fc200d6
JR
27282008-12-21 Jason Rumney <jasonr@gnu.org>
2729
2730 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
2731 when character maps to .notdef character.
2732
5e252df2
SM
27332008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
2734
2735 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
2736
99b72cc4
JR
27372008-12-20 Jason Rumney <jasonr@gnu.org>
2738
2739 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 2740 a graphical frame on Windows. (Bug#1325)
99b72cc4 2741
acc49a52
JD
27422008-12-20 Jan Djärv <jan.h.d@swipnet.se>
2743
2744 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
2745
6ea15123
CY
27462008-12-20 Chong Yidong <cyd@stupidchicken.com>
2747
2748 * minibuf.c (Fread_buffer): Doc fix.
2749
b2dab6c8
JR
27502008-12-20 Jason Rumney <jasonr@gnu.org>
2751
54ea0c87 2752 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 2753 server name in UNC paths. (Bug#719)
54ea0c87 2754
b2dab6c8 2755 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 2756 charbuf. (Bug#1035)
b2dab6c8 2757
6d1921be
DN
27582008-12-19 Daniel Engeler <engeler@gmail.com>
2759
2760 * sysdep.c (serial_configure): Fix typo.
2761
53934c98
DN
27622008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
2763
2764 * sysdep.c: Include alloca.h.
f4f634e8
DN
2765 (system_process_attributes): Add implementation for Solaris.
2766
2767 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 2768
06e111a6
DN
27692008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
2770
2771 Reorganize implementation of Flist_system_processes and
2772 Fsystem_process_attributes. No functional changes.
2773 * process.c: Don't #include pwd.h, grp.h and limits.h.
2774 (Flist_system_processes): Just call list_system_processes.
2775 (Fsystem_process_attributes): Just call system_process_attributes.
2776 (procfs_list_system_processes, time_from_jiffies)
2777 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
2778 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
2779
2780 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
2781 (list_system_processes): Rename from
2782 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
2783 Provide a do nothing implementation.
2784 (system_process_attributes): Rename from
2785 procfs_list_system_processes.
2786 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 2787 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
2788
2789 * w32.c (list_system_processes): Rename from
2790 w32_list_system_processes.
2791 (system_process_attributes): Rename from
2792 w32_system_process_attributes.
2793
2794 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
2795
2796 * process.h (w32_list_system_processes)
2797 (w32_system_process_attributes): Remove.
2798 (list_system_processes, system_process_attributes): New
2799 prototypes.
2800
6a705b23
KH
28012008-12-19 Kenichi Handa <handa@m17n.org>
2802
2803 * xfont.c (xfont_decode_coding_xlfd): New function.
2804 (xfont_encode_coding_xlfd): New function.
2805 (xfont_list_pattern): Decode XLFD by iso-8859-1.
2806 (xfont_list): Decode and encode XLFD by iso-8859-1.
2807 (xfont_match): Likewise.
2808 (xfont_list_family): Likewise.
2809 (xfont_open): Likewise.
2810
d66c0241 2811 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
2812 names are utf-8.
2813
d66c0241 2814 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
2815 names are utf-8.
2816
5a130941
JD
28172008-12-18 Jan Djärv <jan.h.d@swipnet.se>
2818
2819 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
2820 changed.
bfd20325
JD
2821 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
2822 clicked on a detached tool bar button.
5a130941 2823
fd95644b
DN
28242008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
2825
2826 * emacs.c (main): Print and error and exit when no data is read
2827 from the pipe.
2828
e6eee6ae
JR
28292008-12-17 Jason Rumney <jasonr@gnu.org>
2830
2831 * w32font.c (w32font_has_char): Always return -1.
2832
a35dd56b
KH
28332008-12-16 Kenichi Handa <handa@m17n.org>
2834
2835 * font.c (font_open_entity): Fix previous change.
2836
0e3635c2
DN
28372008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
2838
2839 * process.c: Include <limits.h>.
2840
d4835507 28412008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
2842
2843 * font.c (font_update_drivers): Fix mistake in reconstructing the
2844 driver list.
2845
28462008-12-16 Chong Yidong <cyd@stupidchicken.com>
2847
2848 * font.c (font_clear_cache): Fix format of font cache data.
2849
e2cbc401
CY
28502008-12-15 Chong Yidong <cyd@stupidchicken.com>
2851
2852 * xftfont.c (xftfont_open): Free Xft font pattern if
2853 XftFontOpenPattern fails.
2854
2855 * xterm.c (x_free_frame_resources): Remove extraneous call to
2856 free_frame_faces.
2857
b131d535
CY
28582008-12-13 Chong Yidong <cyd@stupidchicken.com>
2859
2860 * xterm.c (x_delete_display): Move xim_close_dpy call to
2861 x_delete_terminal.
2862 (x_delete_terminal): Call xim_close_dpy.
2863
e6df5336
JR
28642008-12-13 Jason Rumney <jasonr@gnu.org>
2865
2866 * w32font.c (intern_font_name): New function.
2867 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
2868 (w32font_open_internal, Fx_select_font): Decode font name.
2869 (fill_in_logfont, list_all_matching_fonts): Encode font name.
2870
2871 * w32font.h (intern_font_name): Declare new function.
2872
2873 * w32uniscribe.c (add_opentype_font_name_to_list):
2874 Use intern_font_name.
2875
20d68145
CY
28762008-12-13 Chong Yidong <cyd@stupidchicken.com>
2877
9f2554de
CY
2878 * frame.c (Fdelete_frame): Call free_font_driver_list.
2879
3d9bec9a
CY
2880 * font.c (free_font_driver_list): Implement missing function.
2881
20d68145
CY
2882 * w32term.c (w32_term_init): Don't initialize the image cache
2883 here; it will be done in init_frame_faces.
2884
2885 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
2886 (struct x_display_info): Remove unused member null_pixel. New
2887 member xim_callback_data.
2888
2889 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
2890 (xim_initialize): Save pointer to callback function data.
2891 (xim_close_dpy): Free callback function data. Call XCloseIM,
2892 reverting 2008-11-04 change by David Smith.
2893 (x_term_init): Don't initialize the image cache here; it will be
2894 done in init_frame_faces. Remove ancient "null_pixel" cruft.
2895 (x_delete_display): Free x_dnd_atoms member.
2896
96f9306b
KH
28972008-12-13 Kenichi Handa <handa@m17n.org>
2898
6dec9044
JB
2899 * font.c (font_rescale_ratio): Moved from xfaces.c.
2900 Argument type changed. Handle a font-spec too.
96f9306b 2901 (font_score): Check Vface_font_rescale_alist.
6dec9044 2902 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
2903
2904 * xfaces.c (font_rescale_ratio): Moved to font.c.
2905
8d5b4964
CY
29062008-12-13 Chong Yidong <cyd@stupidchicken.com>
2907
2908 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
2909
e6df5336
JR
29102008-12-12 Jason Rumney <jasonr@gnu.org>
2911
2912 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
2913 Vwindow_system_version to the real w32 major version.
2914
97c6058a
DN
29152008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
2916
2917 * term.c (init_tty): Move setting the terminal name before the
2918 potential user: maybe_fatal.
2919
ec4e88d7
CY
29202008-12-11 Chong Yidong <cyd@stupidchicken.com>
2921
d4835507
JB
2922 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
2923 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 2924
b4233ec9
JR
29252008-12-11 Jason Rumney <jasonr@gnu.org>
2926
8ec71e23 2927 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 2928 SYMBOL_CHARSET. (Bug#547)
8ec71e23 2929
b4233ec9 2930 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 2931 size for surrogates. (Bug#1096, bug#872)
b4233ec9 2932
011a0143
JB
29332008-12-11 Juanma Barranquero <lekktu@gmail.com>
2934
2935 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
2936
3c309f34
JB
29372008-12-11 Juanma Barranquero <lekktu@gmail.com>
2938
2939 * process.c (Fsystem_process_attributes, syms_of_process):
2940 Fix typo in name of Ssystem_process_attributes.
2941 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
2942
fedc6ab5
JB
29432008-12-11 Juanma Barranquero <lekktu@gmail.com>
2944
2945 * syntax.c (Fmodify_syntax_entry): Doc fix.
2946
ba3de0e8
JB
29472008-12-10 Juanma Barranquero <lekktu@gmail.com>
2948
2949 * font.c (Ffont_spec): Move usage to end of docstring.
2950
174f1c74
JR
29512008-12-10 Jason Rumney <jasonr@gnu.org>
2952
2953 * w32font.c (Qcham): New symbol.
2954 (font_supported_scripts): Add cham, and comments for other new
2955 scripts in bitfield from OpenType spec.
9d32f818
JR
2956 (add_font_entity_to_list): Limit unicode-sip fonts to those that
2957 contain characters beyond the bmp.
174f1c74 2958
7b649478
KH
29592008-12-10 Kenichi Handa <handa@m17n.org>
2960
2961 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 2962 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
2963 Qunicode_sip.
2964
2133e2d1
JB
29652008-12-10 Juanma Barranquero <lekktu@gmail.com>
2966
2967 * coding.c (QCdefault_char): Rename from QCdefalut_char.
2968 (Fcoding_system_put): Use QCdefault_char.
2969 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
2970
9af886ee
CY
29712008-12-09 Chong Yidong <cyd@stupidchicken.com>
2972
74d819eb
CY
2973 * xftfont.c (syms_of_xftfont): Fix typo.
2974
4ccfa1c0 2975 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 2976
7c19d3ae
DN
29772008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
2978
2979 * emacs.c (main): Close daemon_pipe on exec.
2980
567826bb
CY
29812008-12-08 Chong Yidong <cyd@stupidchicken.com>
2982
2983 * termchar.h (struct tty): New members termcap_term_buffer and
2984 termcap_strings_buffer.
2985
2986 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 2987 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
2988 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
2989 All callers changed.
2990 (init_tty): Store termcap data and string buffers in new struct
2991 tty members termcap_term_buffer and termcap_strings_buffer.
2992 (delete_tty): Free them.
4ccfa1c0 2993 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 2994
aa96c42b
SZ
29952008-12-07 Seiji Zenitani <zenitani@mac.com>
2996
2997 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 2998 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 2999
b7e1d896
CY
30002008-12-06 Chong Yidong <cyd@stupidchicken.com>
3001
3002 * coding.c (make_conversion_work_buffer): Disable buffer
3003 modification hooks in the work buffer.
3004
b5ec91a5
EZ
30052008-12-05 Eli Zaretskii <eliz@gnu.org>
3006
3007 * process.c (procfs_system_process_attributes): If `nread' has a
3008 negative value, assign zero to it.
3009
a5d2a52b
CY
30102008-12-05 Chong Yidong <cyd@stupidchicken.com>
3011
68c5540b 3012 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 3013
7bf1bb21
KH
30142008-12-05 Kenichi Handa <handa@m17n.org>
3015
3016 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
3017 second character is a combining character.
3018
2fdc7d00
EZ
30192008-12-05 Eli Zaretskii <eliz@gnu.org>
3020
3021 * process.c (procfs_system_process_attributes): Don't use cmd,
3022 cmdsize, and q without initializing them first.
3023
bf6bfba8
JR
30242008-12-04 Jason Rumney <jasonr@gnu.org>
3025
3026 * w32font.c (w32font_draw): Initialize orig_clip before getting
3027 it, and delete it when finished.
3028
a3b1a468
DN
30292008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
3030
3031 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
3032 case when running as a daemon before detaching.
3033
8b8be8eb
JB
30342008-12-03 Juanma Barranquero <lekktu@gmail.com>
3035
805f2638 3036 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 3037
b1bde622
KH
30382008-12-03 Kenichi Handa <handa@m17n.org>
3039
e500c47d
KH
3040 * font.c (font_at): Set `multibyte' at first.
3041
ca516334
KH
3042 * coding.c (decode_coding_charset): Check type of an element of
3043 vector VALIDS.
7bf1bb21 3044 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 3045
4ccfa1c0 3046 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
3047 (font_for_char): Likewise.
3048
1e5ecd37
CY
30492008-12-03 Chong Yidong <cyd@stupidchicken.com>
3050
d5b01609 3051 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
3052 (font_update_lface): Handle fonts with corrupted size specs,
3053 i.e. non-int and non-float.
d5b01609 3054
11e3a6e4 3055 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 3056 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 3057 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 3058
ab06788b
CY
3059 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
3060
1e5ecd37 3061 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 3062 underline_minimum_offset for underline position.
1e5ecd37 3063
63c125ab
DN
30642008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
3065
3066 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
3067
3068 * character.c (c_string_width): Specify the type for LEN.
3069
3a8406e1
KH
30702008-12-03 Kenichi Handa <handa@m17n.org>
3071
4ccfa1c0 3072 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 3073 (decode_coding_utf_8): Likewise.
4ccfa1c0 3074 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 3075 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 3076
651df7d9
CY
30772008-12-02 Chong Yidong <cyd@stupidchicken.com>
3078
3079 * keyboard.c (make_lispy_position): Only use PT if the selected
3080 window is current.
3081
1f625c6c
AS
30822008-12-02 Andreas Schwab <schwab@suse.de>
3083
f7741ce9
AS
3084 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
3085
1f625c6c
AS
3086 * doprnt.c (doprnt1): Fix size of charbuf.
3087
92bc2678
CY
30882008-12-02 Chong Yidong <cyd@stupidchicken.com>
3089
3090 * keyboard.c (timer_check): Revert last change.
3091
93b9e8cc
JB
30922008-12-02 Juanma Barranquero <lekktu@gmail.com>
3093
3094 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
3095
fd7a37d5
JB
30962008-12-01 Juanma Barranquero <lekktu@gmail.com>
3097
3098 * makefile.w32-in: Update dependencies.
3099 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
3100
c115043b
AS
31012008-12-01 Andreas Schwab <schwab@suse.de>
3102
3103 * font.c (register_font_driver): Use xmalloc.
3104 (font_put_frame_data): Likewise.
3105
f5668d2a
CY
31062008-12-01 Chong Yidong <cyd@stupidchicken.com>
3107
860d96be
CY
3108 * xfaces.c (realize_x_face): Make abort condition clearer.
3109
f5668d2a
CY
3110 * gtkutil.c (update_frame_tool_bar): Initialize variable.
3111
379c17e7
CY
31122008-11-30 Chong Yidong <cyd@stupidchicken.com>
3113
3114 * keyboard.c (timer_check): After a timer runs, ensure that the
3115 selected window's buffer is current.
3116
35f36d65
JB
31172008-11-30 Juanma Barranquero <lekktu@gmail.com>
3118
f952c61c
JB
3119 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
3120 It was accidentally restored by the Unicode merge.
3121
35f36d65
JB
3122 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
3123
b23077df
JB
31242008-11-29 Juanma Barranquero <lekktu@gmail.com>
3125
3126 * w32proc.c: Include "coding.h".
3127 (Fw32_short_file_name): Encode filename passed to Windows API.
3128 (Fw32_long_file_name): Encode filename passed to Windows API and
3129 decode back the result. (Bug#1433)
3130
b8ebe9dd
KH
31312008-11-29 Kenichi Handa <handa@m17n.org>
3132
8cc53f96
KH
3133 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
3134 not before accessing it.
3135
b8ebe9dd
KH
3136 * charset.c (Fdefine_charset_internal): After calculating
3137 min_char, max_char, and fastmap, copy the charset structure again.
3138 (encode_char): Fix the previous change.
3139
59bc82c0
SZ
31402008-11-28 Seiji Zenitani <zenitani@mac.com>
3141
3142 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
3143
3144 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
3145
3146 * nsterm.m (x_set_frame_alpha): New function.
3147
32247e3d
EZ
31482008-11-27 Eli Zaretskii <eliz@gnu.org>
3149
3150 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
3151
b003e5ff
JB
31522008-11-27 Juanma Barranquero <lekktu@gmail.com>
3153
3154 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
3155 pointer to check_face_name.
3156
708550f5
KH
31572008-11-27 Kenichi Handa <handa@m17n.org>
3158
3159 * category.h (SET_CATEGORY_SET): Call set_category_set.
3160 (set_category_set): Extern it.
3161
3162 * category.c (hash_get_category_set): New function.
3163 (Fmodify_category_entry): Adjusted for the change of
3164 char_table_ref_and_range. Call hash_get_category_set to get a
3165 category set to store in the table.
3166
3167 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
3168 Funify_charset.
3169
2ae37cf0 3170 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
3171 (DECODE_CHAR): Check if the decoder vector is ready.
3172 (ENCODE_CHAR): Check if the encoder char-table is ready.
3173 (maybe_unify_char): Extern it.
3174
3175 * charset.c (Vchar_unified_charset_table): Delete it.
3176 (inhibit_load_charset_map): New variable.
3177 (temp_charset_work): New variable.
3178 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
3179 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
3180 New macros.
3181 (load_charset_map): Meaning of control_flag changed. If
3182 inhibit_load_charset_map is nonzero, setup a table in
3183 temp_charset_work.
3184 (load_charset): New argument control_flag.
3185 (map_charset_for_dump): New function.
3186 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
3187 map_charset_for_dump.
3188 (Fdefine_charset_internal): If the charset method is MAP, load
3189 mapping tables by calling load_charset.
3190 (Funify_charset): Don't load a mapping table but directly set
3191 Vchar_unify_table.
3192 (maybe_unify_char): New function.
3193 (decode_char): Don't handle the deleted method MAP_DEFERRED.
3194 Handle the case of inhibit_load_charset_map being nonzero.
3195 (encode_char): Don't handle the deleted method MAP_DEFERRED.
3196 Handle the case of inhibit_load_charset_map being nonzero.
3197 (Fclear_charset_maps): Just free temp_charset_work.
3198 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
3199 variable.
3200
3201 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
3202 change of char_table_ref_and_range.
3203 (char_table_ref_and_range): Change the meaning of argument FROM
3204 and TO. Now the caller must provide initial values for *FROM
3205 and *TO.
3206
3207 * fontset.c (fontset_add): Adjusted for the change of
3208 char_table_ref_and_range.
3209 (fontset_get_font_group): Likewise.
3210 (Ffontset_info): Likewise.
3211
3212 * keymap.c (describe_vector): Adjusted for the change of
3213 char_table_ref_and_range. For char-table, put boundary between
3214 non-ASCII and 8-bit characters.
3215
3216 * print.c (print_object): For bool-vector, delete unnecessary
3217 check of ASCII_BYTE_P.
3218
9196133b
JR
32192008-11-26 Jason Rumney <jasonr@gnu.org>
3220
3221 * w32font.c (w32font_open_internal): Don't include external
9acef61c 3222 leading in font height. (Bug#879)
9196133b 3223
9f688acf
GM
32242008-11-26 Glenn Morris <rgm@gnu.org>
3225
3226 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
3227 redefinition with ifdef. (Bug#1383)
3228
90d19aff
AR
32292008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3230
3231 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
3232
4ccfa1c0 32332008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
3234
3235 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
3236 New EmacsView methods.
3237 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
3238 Fixes bug #1048,1357,1414.
3239
32402008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3241
3242 Fix bug #1362.
3243 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
3244 is not an indexed color.
3245 * nsterm.m (free_indexed_color): Add argument checking.
3246 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
3247
e7d5ecb3
CY
32482008-11-24 Chong Yidong <cyd@stupidchicken.com>
3249
3250 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
3251 Document confirm-after-completion value for
3252 minibuffer-completion-confirm.
3253
c285743c
JR
32542008-11-24 Jason Rumney <jasonr@gnu.org>
3255
3256 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
3257 warning.
3258
b0857706
JR
32592008-11-23 Jason Rumney <jasonr@gnu.org>
3260
3261 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
3262 restored before returning.
3263
3264 * w32font.c (check_face_name): New function.
3265 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 3266 fonts. (Bug#642)
b0857706 3267
ee50ff07
MR
32682008-11-22 Martin Rudalics <rudalics@gmx.at>
3269
3270 * buffer.c (Fswitch_to_buffer): Reword and mention new option
3271 confirm-nonexistent-file-or-buffer in doc-string.
3272
b8ff72fa
SM
32732008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
3274
3275 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
3276 Fix copy/paste typo. Add checks.
3277
cee53ed4
KH
32782008-11-21 Kenichi Handa <handa@m17n.org>
3279
3280 * coding.c (detect_coding_iso_2022): Reject invalid composition
3281 sequence.
3282 (DECODE_COMPOSITION_START): If the current source is the last
3283 block, and the current composition doesn't end, regard this
3284 sequence as invalid.
3285 (decode_coding_iso_2022): Handle invalid composition sequence.
3286
f6ef1e65
MR
32872008-11-20 Martin Rudalics <rudalics@gmx.at>
3288
3289 * window.c (coordinates_in_window): Don't return
3290 ON_VERTICAL_BORDER for the rightmost position of a mode/header
3291 line when the window is not the rightmost one. (Bug#1372)
3292
e08b1705
MR
32932008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
3294
3295 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
3296
ad98e89f
EZ
32972008-11-15 Eli Zaretskii <eliz@gnu.org>
3298
3299 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
3300 and bright_bg if noninteractive is non-zero.
3301
fb098a4b
CY
33022008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3303
3304 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
3305 x_draw_glyph_string_background.
3306
3307 * w32term.c (x_draw_glyph_string): Likewise.
3308
ce952b6e
CY
33092008-11-15 Chong Yidong <cyd@stupidchicken.com>
3310
3311 * xterm.c (x_draw_glyph_string): Stop drawing the background of
3312 the next glyph string once past the overhang width.
3313
3314 * nsterm.m (ns_draw_glyph_string): Likewise.
3315
3316 * w32term.c (x_draw_glyph_string): Likewise.
3317
26ea7079
CY
33182008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
3319
3320 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
3321 double file close.
3322
1c33c906
MR
33232008-11-14 Martin Rudalics <rudalics@gmx.at>
3324
3325 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
3326 dedicated status of window before attempting to display another
3327 buffer in it.
3328
8fc29035
JB
33292008-11-14 Juanma Barranquero <lekktu@gmail.com>
3330
3331 * msdos.c (Fmsdos_long_file_names):
3332 (syms_of_msdos) <dos-unsupported-char-glyph>:
3333 * dosfns.c (Fint86): Fix typos in docstrings.
3334
55fb4286
EZ
33352008-11-14 Eli Zaretskii <eliz@gnu.org>
3336
3337 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
3338
3fda0315
KY
33392008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
3340
3341 * puresize.h (BASE_PURESIZE): Increase to 1260000.
3342
7e849c17
CY
33432008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
3344
3345 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
3346
3347 * frame.h: Negative alpha means "don't touch".
3348
3349 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
3350
3351 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
3352
b9fd67bd
DN
33532008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
3354
3355 * hftctl.c:
3356 * chpdef.h:
3357 * acldef.h: Remove files used only for systems no longer supported.
3358
3359 * Makefile.in: Fix .o alphabetical ordering.
3360 (hftctl.o): Remove dependency, file removed.
3361 (keymap.o, print.o): Depend on charset.h.
3362
d5998e03
KH
33632008-11-10 Kenichi Handa <handa@m17n.org>
3364
2ae37cf0 3365 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 3366
be70e183
CY
33672008-11-08 Chong Yidong <cyd@stupidchicken.com>
3368
3369 * dired.c (file_name_completion): If completion_ignore_case is
3370 enabled, ignore case when checking completion-regexp-list.
3371
7cf94eac
EZ
33722008-11-08 Eli Zaretskii <eliz@gnu.org>
3373
3374 * vm-limit.c (get_lim_data): Fix last change.
3375
ee107a89
KH
33762008-11-08 Kenichi Handa <handa@m17n.org>
3377
3378 * character.c (Fget_byte): New function.
3379 (syms_of_character): Defsubr Fget_byte.
3380
5fd15622
CY
33812008-11-07 Chong Yidong <cyd@stupidchicken.com>
3382
3383 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
3384 cursor position is valid after scrolling.
3385
13d62fad
JB
33862008-11-06 Juanma Barranquero <lekktu@gmail.com>
3387
3388 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
3389
a1dd2936
GM
33902008-11-06 Glenn Morris <rgm@gnu.org>
3391
3392 * xterm.c (handle_one_xevent): Don't let popup menus cause
3393 mouse-autoselect-window related window switching. (Bug#1261)
3394
860cd236
CY
33952008-11-04 David Smith <davidsmith@acm.org> (tiny change)
3396
3397 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
3398
653a3150
AS
33992008-11-04 Andreas Schwab <schwab@suse.de>
3400
3401 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
3402
870f5cac
CY
34032008-11-03 Chong Yidong <cyd@stupidchicken.com>
3404
3405 * xfns.c (Fx_wm_set_size_hint): New function.
3406
1e02f3cb
MR
34072008-11-03 Martin Rudalics <rudalics@gmx.at>
3408
3409 * textprop.c (Fprevious_single_char_property_change): Return 0
3410 when there's no change in a string. (Bug#1301)
3411
e630dfc6
MR
34122008-11-02 Martin Rudalics <rudalics@gmx.at>
3413
3414 * frame.c (do_switch_frame): New argument NORECORD passed to
3415 Fselect_window.
3416 (Fselect_frame): New argument NORECORD passed to
3417 do_switch_frame.
3418 (Fset_frame_selected_window): New argument NORECORD passed to
3419 Fselect_frame.
3420 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
3421 in call of do_switch_frame.
3422 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
3423 Handle NORECORD argument in call of Fselect_frame.
3424 * lisp.h (do_switch_frame, Fselect_frame)
3425 (Fset_frame_selected_window): Adjust declarations.
3426 * window.c (select_frame_norecord): New function.
3427 (run_window_configuration_change_hook): Use it and call
3428 Fselect_frame with NORECORD set.
3429 (Fselect_window): Pass NORECORD to Fselect_frame.
3430 (Fset_window_configuration): Handle NORECORD argument in call of
3431 do_switch_frame.
3432 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
3433 Fset_frame_selected_window.
3434 * keyboard.c (command_loop_1): Handle NORECORD in call of
3435 Fselect_frame (currently ifdefd).
3436
9020b223
GM
34372008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
3438
3439 * emacs.c (USAGE2): Untabify.
3440
793ffee8
SM
34412008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
3442
3443 * composite.c (fill_gstring_header): Fix copy/paste typo.
3444
ab6d1131
MR
34452008-10-31 Martin Rudalics <rudalics@gmx.at>
3446
3447 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
3448 (Fother_window): Rename argument and rewrite doc-string.
3449 (select_window_norecord): Fix return value. (Bug#1276)
3450
601a9cf1
JB
34512008-10-30 Juanma Barranquero <lekktu@gmail.com>
3452
3453 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
3454 new frames overriding foreground for tooltips. Based on similar patch
3455 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
3456
813b0652
CY
34572008-10-29 Chong Yidong <cyd@stupidchicken.com>
3458
3459 * emacs.c (Fdaemon_initialized): Initialize nfd.
3460
4414f58f
MR
34612008-10-29 Martin Rudalics <rudalics@gmx.at>
3462
3463 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
3464 (Fwindow_text_height): Clarify doc-strings.
3465 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
3466 doc-string of window-scroll-functions.
3467
ecdcaa09
RS
34682008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
3469
3470 * category.c (syms_of_category): Fix typo in docstring.
3471
23fe745a
JB
34722008-10-28 Juanma Barranquero <lekktu@gmail.com>
3473
3474 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
3475 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
3476 Fix typos in docstrings.
3477
ff808935
DN
34782008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
3479
3480 * emacs.c (daemon_pipe): Make non-static.
3481 (IS_DAEMON): Move definition ...
3482 * lisp.h (IS_DAEMON): ... here.
3483 (daemon_pipe): Declare.
3484 (is_daemon): Remove.
3485 * dispnew.c (init_display): Use IS_DAEMON.
3486
fc012771
SM
34872008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
3488
3489 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
3490 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
3491
3492 * emacs.c (is_daemon): Remove.
3493 (main): Don't set is_daemon.
3494 (IS_DAEMON): New macro.
3495 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 3496 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
3497 parent exits.
3498 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
3499
d8bdbe6f
CY
35002008-10-27 Chong Yidong <cyd@stupidchicken.com>
3501
d1a072bf
CY
3502 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
3503 over-sized glyph, draw it with the default glyph width.
3504
e2e325aa
CY
3505 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
3506 glyph, draw it with the default glyph width.
3507
3508 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
3509 glyph, draw it with the default glyph width.
3510
d8bdbe6f
CY
3511 * xdisp.c (try_scrolling): When computing the distance from the
3512 scroll margin to PT, try moving some distance past the window
3513 bottom before giving up.
3514
7bfac547
MR
35152008-10-27 Martin Rudalics <rudalics@gmx.at>
3516
3517 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
3518 (Fset_window_buffer): Explain in doc-string that a window can be
3519 "strongly" dedicated to its buffer.
3520
4ff029f6
DN
35212008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
3522
3523 * emacs.c (daemon_name): New variable.
3524 (main): Deal with --daemon=SERVER_NAME.
3525 (Fdaemonp): Return a name if one was passed to --daemon.
3526
5790ef40
DN
35272008-10-26 Romain Francoise <romain@orebokech.com>
3528
f9bd0df9 3529 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
3530 (main): Create a pipe before forking, make the parent exit only after
3531 the child has closed its end of the pipe. Move closing the
3532 descriptors ...
3533 (Fdaemon_initialized): ... here. New function.
3534
f5385255
SM
35352008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
3536
4d632321
SM
3537 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
3538 the previous unoptimized table.
3539
f5385255
SM
3540 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
3541 the distinction between non-nil and non-t value of `dedicated'.
3542
6c56a0f3
CY
35432008-10-25 Chong Yidong <cyd@stupidchicken.com>
3544
3545 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 3546 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 3547
fec89261
MR
35482008-10-25 Martin Rudalics <rudalics@gmx.at>
3549
3550 * window.c (Fget_buffer_window, Fdelete_windows_on)
3551 (Freplace_buffer_in_windows): Make buffer argument optional and
3552 rename to buffer_or_name.
3553
34fcddd0
CY
35542008-10-24 Chong Yidong <cyd@stupidchicken.com>
3555
f5385255
SM
3556 * xdisp.c (handle_single_display_spec, handle_display_prop):
3557 Undo 2005-05-16 change.
34fcddd0
CY
3558 (handle_stop): Pop iterator if it's loaded with an empty string.
3559 (get_overlay_strings_1): Don't save iterator if it's loaded with
3560 an empty string (bug#1201).
3561
064766f2
KH
35622008-10-24 Kenichi Handa <handa@m17n.org>
3563
3564 * ftfont.c (ftfont_otf_features): Fix previous change.
3565 (ftfont_otf_capability): Check FeatureList.FeatureCount before
3566 calling ftfont_otf_features.
3567
f9bd0df9 35682008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
3569
3570 * font.c (font_match_p): Fix for the case that a vector of
3571 characters is in script-representative-chars.
3572
1dae9197
MA
35732008-10-24 Michael Albinus <michael.albinus@gmx.de>
3574
3575 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 3576 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
3577 (xd_read_queued_messages): Catch Qdbus_error from the macros.
3578 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
3579 macro. (Bug#1186).
3580
f9bd0df9 35812008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
3582
3583 * s/sol2-10.h: New file.
3584
878a4584
JB
35852008-10-23 Juanma Barranquero <lekktu@gmail.com>
3586
3587 * xdisp.c (fill_glyph_string): Fix typo in source (though the
3588 poor beast has survived 9+ years and the jump from xterm.c!).
3589
cd265ca6
MR
35902008-10-23 Martin Rudalics <rudalics@gmx.at>
3591
3592 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
3593 Reword doc-string.
f5385255 3594 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 3595
472a4dc9
JB
35962008-10-23 Juanma Barranquero <lekktu@gmail.com>
3597
3598 * character.c (syms_of_character) <script-representative-chars>:
3599 <unicode-category-table>: Doc fixes.
3600
159bd5a2
NF
36012008-10-23 Noah Friedman <friedman@splode.com>
3602
3603 * coding.c (make_conversion_work_buffer): Check that
3604 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
3605 Fget_buffer_create.
3606
49f9c344
KH
36072008-10-23 Kenichi Handa <handa@m17n.org>
3608
3609 * font.c (font_add_log): Check the values of extra properties.
3610
12bb3111
MR
36112008-10-22 Martin Rudalics <rudalics@gmx.at>
3612
3613 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
3614 Reword doc-string.
3615 (Fset_window_parameter): Use NILP.
3616 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 3617 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 3618
bbeb4e99
JB
36192008-10-22 Juanma Barranquero <lekktu@gmail.com>
3620
3621 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
3622
36232008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
3624
3625 * nsfns.m (ns_appkit_version): New function.
3626 (x-server-version): Use it.
3627 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
3628 (x-server-vendor): Don't check_ns().
3629
3630 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
3631
a9b555d3
JB
36322008-10-22 Juanma Barranquero <lekktu@gmail.com>
3633
3634 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
3635 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
3636
4626499f
KH
36372008-10-22 Kenichi Handa <handa@m17n.org>
3638
e3681952
KH
3639 * syntax.c (scan_words): Call word_boundary_p instead of comparing
3640 scripts.
3641
4626499f
KH
3642 * category.c (word_boundary_p): Check scripts instead of charset.
3643 Handle nil value in word-separating-categories and
3644 word-combining-categories.
3645 (syms_of_category): Fix docstrings of word-separating-categories
3646 and word-combining-categories.
3647
1560f91a
EZ
36482008-10-21 Eli Zaretskii <eliz@gnu.org>
3649
3650 * coding.c (Fencode_coding_region, Fdecode_coding_region)
3651 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
3652
f4668441
MR
36532008-10-21 Martin Rudalics <rudalics@gmx.at>
3654
3655 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
3656 Rename arg "buffer" to "buffer_or_name".
3657 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
3658 it optional.
3659 (no_switch_window): Remove since the return value is not used.
a9b555d3 3660 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
3661 Consider window as dedicated when Fwindow_dedicated_p returns a
3662 non-nil value.
3663 * lisp.h: Remove prototype for no_switch_window.
3664
fd75ddb2
JD
36652008-10-21 Jan Djärv <jan.h.d@swipnet.se>
3666
3667 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 3668 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 3669
07295713
KH
36702008-10-21 Kenichi Handa <handa@m17n.org>
3671
3672 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
3673 check Vlatin_extra_code_table.
3674
712adc82
EZ
36752008-10-20 Eli Zaretskii <eliz@gnu.org>
3676
3677 * fileio.c (Fset_file_modes): Doc fix.
3678
f549eb0b
MA
36792008-10-19 Michael Albinus <michael.albinus@gmx.de>
3680
3681 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
3682 in arrays.
3683
aac0c6e3
MR
36842008-10-19 Martin Rudalics <rudalics@gmx.at>
3685
3686 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
3687 Mention kill-buffer in doc-string.
3688 (Fset_window_buffer): Reinsert tem check removed in last commit.
3689 (Fenlarge_window, Fshrink_window): Have argument names and
3690 doc-string follow Elisp manual more closely.
3691
36922008-10-18 Eli Zaretskii <eliz@gnu.org>
3693
3694 * fileio.c (Fset_file_modes): Doc fix.
3695
36962008-10-18 Martin Rudalics <rudalics@gmx.at>
3697
3698 * window.c (Fwindow_width, Fset_window_start)
3699 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
3700 (Fdelete_windows_on, Freplace_buffer_in_windows):
3701 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
3702 (Fwindow_dedicated_p): Make window argument optional.
3703 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
3704 (Fset_window_buffer): Respect any non-nil dedicated value for
3705 window. Rename "buffer" argument to "buffer_or_name".
3706
37072008-10-18 Ulrich Mueller <ulm@gentoo.org>
3708
3709 * m/sh3.h: New file, machine description for SuperH.
3710
37112008-10-17 Martin Rudalics <rudalics@gmx.at>
3712
3713 * window.c (Fsplit_window): Rename arg horflag to horizontal.
3714
37152008-10-17 Kenichi Handa <handa@m17n.org>
3716
3717 * ftfont.c (ftfont_otf_features): Fix indexing
3718 gsub_gpos->FeatureList.Feature. Check the validity of indices.
3719
37202008-10-16 Magnus Henoch <mange@freemail.hu>
3721
3722 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
3723 (Fdbus_call_method_asynchronously): Ditto.
3724 This change makes C-h f display the argument list.
3725
37262008-10-16 Chong Yidong <cyd@stupidchicken.com>
3727
3728 * fileio.c (Fexpand_file_name): Doc fix.
3729
3730 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
3731 of :foreground and :background equivalent to unspecified (20.x
3732 compatibility).
3733
37342008-10-15 Eli Zaretskii <eliz@gnu.org>
3735
3736 * buffer.c (syms_of_buffer): Doc fix.
3737
37382008-10-14 Kenichi Handa <handa@m17n.org>
3739
3740 * font.c (font_clear_prop): When clearing font width, clear the
3741 average width field too.
3742
37432008-10-12 Andreas Schwab <schwab@suse.de>
3744
3745 * ftfont.c (ftfont_shape_by_flt): Make static.
3746 * ftfont.h (ftfont_shape_by_flt): Don't declare.
3747
3748 * font.c: Don't include <m17n-flt.h>.
3749
37502008-10-10 Eli Zaretskii <eliz@gnu.org>
3751
3752 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
3753
37542008-10-09 Eli Zaretskii <eliz@gnu.org>
3755
3756 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
3757 away code.
3758
37592008-10-09 Chong Yidong <cyd@stupidchicken.com>
3760
3761 * dispnew.c (update_text_area): Avoid looping due to large glyph
3762 overhangs (bug#1070).
3763
37642008-10-09 Kenichi Handa <handa@m17n.org>
3765
3766 * fontset.c (face_for_char): If face->fontset is negative, just
3767 return ascii_face.
3768
f5385255
SM
3769 * font.c (font_delete_unmatched): Fix previous change.
3770 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
3771
37722008-10-09 Martin Rudalics <rudalics@gmx.at>
3773
3774 * frame.c (Fraise_frame): On text-only terminals select frame in
3775 order to make it visible. (Bug#1061)
3776
37772008-10-08 Chong Yidong <cyd@stupidchicken.com>
3778
3779 * fontset.c (fontset_find_font): Check frame validity.
3780
37812008-10-07 Chong Yidong <cyd@stupidchicken.com>
3782
a9b555d3 3783 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
3784 (xg_display_close): Allow Emacs to close all displays (bug#985).
3785
37862008-10-06 Andreas Schwab <schwab@suse.de>
3787
f5385255 3788 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
3789
37902008-10-06 Chong Yidong <cyd@stupidchicken.com>
3791
f5385255 3792 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 3793
a9b555d3 3794 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
3795
3796 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
3797 during initialization.
3798
37992008-10-04 Eli Zaretskii <eliz@gnu.org>
3800
3801 * xdisp.c (redisplay_internal): If frame switched, redisplay the
3802 whole thing on MSDOS frames as well as on a TTY.
3803
3804 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
3805 well as for TTY.
3806 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
3807 well as on a TTY.
3808
3809 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
3810 as well as for TTY.
3811
3812 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
3813
3814 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
3815 MSDOS frames as well.
3816
38172008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
3818
3819 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
3820 correct arguments.
b71ac3dd 3821 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
3822
38232008-10-03 Glenn Morris <rgm@gnu.org>
3824
3825 * emacs.c (USAGE1): Add --daemon.
3826
38272008-10-02 Eli Zaretskii <eliz@gnu.org>
3828
3829 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
3830 100, so it's in percents as advertised.
3831
38322008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
3833
3834 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
3835 (ns_output.current_cursor, ns_output.desired_cursor)
3836 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
3837 (FRAME_NEW_CURSOR_COLOR): Remove.
3838
3839 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 3840 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
3841 enumeration (HOLLOW_BOX_CURSOR, etc.).
3842
3843 * nsterm.m (ns_frame_rehighlight): Remove commented code.
3844 (draw_window_cursor): Simplify code.
f5385255
SM
3845 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
3846 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 3847 updates manually.
a9b555d3
JB
3848 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
3849 Use core Emacs cursor types.
aac0c6e3 3850
b8ff72fa 3851 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
3852
38532008-10-02 Martin Rudalics <rudalics@gmx.at>
3854
3855 * process.c (Faccept_process_output): Fix doc-string.
3856
38572008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
3858
3859 * gmalloc.c (__sbrk): Also define for uClibc.
3860
3861 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
3862 for uClibc.
3863
38642008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3865
3866 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
3867 styles.
3868 (nsfont_open): Reenable the cache.
3869
38702008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3871
3872 * font.c (font_matching_entity): Reflect ATTRS in font selection.
3873 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
3874
38752008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
3876
3877 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
3878 a suspended terminal.
3879
38802008-09-30 Michael Albinus <michael.albinus@gmx.de>
3881
3882 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
3883
38842008-09-30 Eli Zaretskii <eliz@gnu.org>
3885
3886 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
3887
38882008-09-30 Chong Yidong <cyd@stupidchicken.com>
3889
3890 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
3891 in a continued line coincides with a line beginning.
3892
38932008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3894
3895 * nsfont.m (nsfont_trait_distance): Fix bug.
3896 (nsfont_list): Return a list rather than a vector (syncs with Handa
3897 changes of 2008-05-14).
3898 (nsfont_open): Improve logging.
3899
39002008-09-29 Andreas Schwab <schwab@suse.de>
3901
3902 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
3903
39042008-09-28 Martin Rudalics <rudalics@gmx.at>
3905
3906 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
3907 name as char-resolve-modifiers.
3908 Reported by: Markus Triska <markus.triska@gmx.at>
3909
39102008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
3911
3912 * dispnew.c (init_display): Return earlier when running as a daemon.
3913
39142008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3915
3916 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
3917
39182008-09-27 Eli Zaretskii <eliz@gnu.org>
3919
3920 * composite.c (Fcomposition_get_gstring)
3921 (Fcompose_region_internal, Fcompose_string_internal)
3922 (Ffind_composition_internal): Doc fix.
3923 (syms_of_composite) <compose-chars-after-function>: Doc fix.
3924 (syms_of_composite) <auto-composition-function>: Doc fix.
3925 (syms_of_composite) <composition-function-table>: Doc fix.
3926
39272008-09-25 Chong Yidong <cyd@stupidchicken.com>
3928
3929 * search.c (wordify): New argument for lax word-ends.
3930 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
3931
39322008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
3933
3934 * lisp.h (is_daemon): Declare.
3935 * dispnew.c (init_display): Do not try to initialize the terminal
3936 when running as a daemon.
3937
39382008-09-22 Chong Yidong <cyd@stupidchicken.com>
3939
3940 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
3941 x_display_pixel_height.
3942
39432008-09-22 Martin Rudalics <rudalics@gmx.at>
3944
3945 * undo.c (record_point): Don't call Fundo_boundary for first
3946 change. (Bug#731)
3947
39482008-09-22 Juanma Barranquero <lekktu@gmail.com>
3949
3950 * emacs.c (Fdaemonp): Doc fix.
3951
39522008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
3953
3954 * emacs.c (main): Place #ifdef in the proper place.
3955
39562008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
3957
3958 * emacs.c (standard_args): Add --daemon.
3959 (main): Disconnect from the terminal when --daemon is passed.
3960 (is_daemon): New variable.
3961 (Fdaemonp): New function.
3962 (syms_of_emacs): Defsubr it.
3963
39642008-09-20 Chong Yidong <cyd@stupidchicken.com>
3965
3966 * xdisp.c (get_next_display_element): Handle string display
3967 correctly when checking for the end of a box run.
3968
39692008-09-20 Glenn Morris <rgm@gnu.org>
3970
3971 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
3972 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
3973 (Frename_file): Avoid copying to trash if a rename involves
3974 a delete. (Bug#964).
3975
39762008-09-20 Eli Zaretskii <eliz@gnu.org>
3977
3978 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
3979 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
3980 frames as well as termcap frames.
3981 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
3982 get_named_tty.
3983
39842008-09-19 Eli Zaretskii <eliz@gnu.org>
3985
3986 * process.c (procfs_system_process_attributes): Fix cmdline in
3987 case /proc/PID/cmdline is empty.
3988
3989 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
3990 x_display_pixel_height.
3991
39922008-09-19 Juanma Barranquero <lekktu@gmail.com>
3993
3994 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
3995
3996 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
3997 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
3998
39992008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
4000
4001 * dispextern.h (struct it): Move line_wrap away from the middle of
4002 bitfields. Move voffset in struct iterator_stack_entry after the
4003 bitfields. Move tab_width near after another short.
4004
40052008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
4006
4007 * frame.h (struct frame): Move alpha from the middle of bitfields.
4008
4009 * window.h (struct window): Move frozen_window_start_p after the
4010 rest of the bitfields to reduce padding.
4011
40122008-09-18 Chong Yidong <cyd@stupidchicken.com>
4013
4014 * xterm.h (x_display_info): Remove `height' and `width' members.
4015
4016 * nsterm.h (ns_display_info): Remove `height' and `width' members.
4017
4018 * w32term.h (w32_display_info): Remove `height', `width',
4019 `height_in', and `width_in' members.
4020
b8ff72fa
SM
4021 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4022 New functions.
aac0c6e3
MR
4023 (x_calc_absolute_position): Use them.
4024 (x_term_init): Omit removed `height' and `width' members.
4025
b8ff72fa
SM
4026 * w32term.c (x_display_pixel_height, x_display_pixel_width):
4027 New functions.
aac0c6e3
MR
4028 (w32_read_socket, x_calc_absolute_position): Use them.
4029 (w32_initialize_display_info, w32_term_init): Omit removed members
4030 of w32_display_info.
4031
b8ff72fa
SM
4032 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
4033 New functions.
4034 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 4035
b8ff72fa
SM
4036 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4037 New functions.
aac0c6e3
MR
4038 (x_calc_absolute_position): Use them.
4039 (x_term_init): Omit removed `height' and `width' members.
4040
4041 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
4042 (compute_tip_xy):
4043 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
4044 * xmenu.c (menu_position_func): Use x_display_pixel_height and
4045 x_display_pixel_width.
4046
40472008-09-18 Kenichi Handa <handa@m17n.org>
4048
4049 * composite.c (fill_gstring_header): Don't check FROM and TO here.
4050 (composition_compute_stop_pos): Fix handling of static composition.
4051 (Fcomposition_get_gstring): Check FROM and TO at first.
4052
40532008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
4054
46e722a9 4055 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
4056 mixup (YAILOM).
4057
40582008-09-17 Chong Yidong <cyd@stupidchicken.com>
4059
4060 * indent.c (Fvertical_motion): Use position reported by iterator
4061 instead of PT for determining screen motion (bug#943).
4062
40632008-09-17 Romain Francoise <romain@orebokech.com>
4064
4065 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
4066
40672008-09-17 Kenichi Handa <handa@m17n.org>
4068
4069 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
4070
4071 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
4072 if necessary.
4073
40742008-09-16 Kenichi Handa <handa@m17n.org>
4075
4076 * coding.c (make_conversion_work_buffer): Avoid calling
4077 Fget_buffer_create if it is not necessary.
4078
40792008-09-15 Martin Rudalics <rudalics@gmx.at>
4080
4081 * window.c (Fselect_window): Don't update window_select_count and
4082 use_time when norecord is not nil.
4083
40842008-09-14 Kenichi Handa <handa@m17n.org>
4085
4086 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
4087 specpdl_ptr.
4088
40892008-09-12 Kenichi Handa <handa@m17n.org>
4090
4091 * indent.c (scan_for_column): Don't handle automatic composition
4092 if the current buffer is not associated with a window.
4093
4094 * composite.c (composition_reseat_it): If the current buffer is
4095 not associated with a window, ignore the automatic composition.
4096 (find_automatic_composition): Likewise.
4097
40982008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4099
4100 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
4101 (Fgpm_mouse_stop): Use it.
4102 * termhooks.h (close_gpm): Declare.
4103 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
4104 connection if Gpm_GetEvent fails.
4105
4106 * window.c (set_window_buffer): Always preserve current-buffer.
4107
41082008-09-12 Glenn Morris <rgm@gnu.org>
4109
4110 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
4111
41122008-09-11 Glenn Morris <rgm@gnu.org>
4113
4114 * charset.c (charset-map-path): Doc fix.
4115
41162008-09-10 Kenichi Handa <handa@m17n.org>
4117
4118 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
4119
4120 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
4121 compose a grapheme cluster with the preceding base glyph.
4122
4123 * composite.c (composition_compute_stop_pos): Fix previous change.
4124 Reset cmp_it->id to -1 at first.
4125
41262008-09-10 Glenn Morris <rgm@gnu.org>
4127
4128 * Makefile.in (character.o, chartab.o): Fix config.h typo.
4129
41302008-09-09 Chong Yidong <cyd@stupidchicken.com>
4131
4132 * keyboard.c (read_key_sequence): Reapply translation maps when
4133 switching keyboards.
4134
41352008-09-09 Kenichi Handa <handa@m17n.org>
4136
4137 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
4138 characters.
4139
4140 * composite.c (FORWARD_CHAR): Fix calculation
4141 of (POSITION).pos_byte.
4142 (composition_compute_stop_pos): Limit the search of composition to
4143 at most 500 characters ahead. If we reach the limit or find a
4144 newline, set cmp_it->ch to -2 and return 0.
4145 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
4146
41472008-09-08 Kenichi Handa <handa@m17n.org>
4148
4149 * indent.c (Fvertical_motion): Be sure to set
4150 it_overshoot_expected if it.cmp_it.id is non-negative.
4151
41522008-09-07 Andreas Schwab <schwab@suse.de>
4153
4154 * callproc.c (Fcall_process): Don't hold references to string data
4155 across garbage collection. Move initialisation of new_argv down
4156 to avoid compiler bug.
4157
41582008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4159
4160 * process.c (Fsystem_process_attributes): Doc fix.
4161
41622008-09-07 Chong Yidong <cyd@stupidchicken.com>
4163
4164 * callproc.c (Fcall_process): Canonicalize current directory name.
4165
4166 * xdisp.c (move_it_to): When moving by vpos, ensure that the
4167 iterator advances to the next line if the current line ends in a
4168 continued tab.
4169
41702008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
4171
4172 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
4173 member to point to cmp_from.
4174
4175 * xdisp.c: Doc fix for references to gidx data member.
4176
41772008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
4178
4179 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
4180
41812008-09-07 Kenichi Handa <handa@m17n.org>
4182
4183 * composite.c (FORWARD_CHAR): Check STOP after
4184 incrementing (POSITION).pos.
4185
41862008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4187
4188 * process.c (Fsystem_process_attributes): Doc fix.
4189
41902008-09-06 Chong Yidong <cyd@stupidchicken.com>
4191
4192 * keyboard.c (Ftop_level): Doc fix.
4193
41942008-09-06 Eli Zaretskii <eliz@gnu.org>
4195
4196 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
4197 minibuffer, don't let lower part of menu invade the echo area.
4198
4199 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
4200 "char *q" to access menu text and advance through it. Revert the
4201 change that displayed ">" instead of ASCII character 0x10.
4202
42032008-09-05 Eli Zaretskii <eliz@gnu.org>
4204
4205 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
4206 toggle boxes and radio buttons on MS-DOS as well.
4207
42082008-09-05 Kenichi Handa <handa@m17n.org>
4209
4210 * composite.c (autocmp_chars): Check lookback count.
4211 (composition_compute_stop_pos): Set cmp_it->lookback.
4212 (composition_reseat_it): Check lookback count.
4213 (struct position_record): New struct.
4214 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
4215 (find_automatic_composition): New function.
4216 (composition_adjust_point): Use find_automatic_composition.
4217
4218 * dispextern.h (struct composition_it): New member lookback.
4219
42202008-09-02 Chong Yidong <cyd@stupidchicken.com>
4221
4222 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
4223 if moving by a single line.
4224
42252008-09-02 Andreas Schwab <schwab@suse.de>
4226
4227 * xterm.c (x_delete_display): Fix merge error.
4228
4229 * fileio.c (Fexpand_file_name): Remove unused variables.
4230
42312008-09-02 Eli Zaretskii <eliz@gnu.org>
4232
4233 * fileio.c (Fexpand_file_name): Copy argument `name' into local
4234 storage on all platforms, not just on DOS_NT.
4235
42362008-09-02 Jason Rumney <jasonr@gnu.org>
4237
b8ff72fa
SM
4238 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
4239 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
4240
42412008-09-01 Chong Yidong <cyd@stupidchicken.com>
4242
4243 * xfaces.c (Finternal_set_alternative_font_family_alist)
4244 (Finternal_set_alternative_font_registry_alist): Properly copy
4245 entire alist structure.
4246
42472008-09-01 Kenichi Handa <handa@m17n.org>
4248
d66c0241 4249 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 4250 representative chars of the script is a vector.
d66c0241
JB
4251 (ftfont_list): Handle the case where the representative chars of
4252 the script is a vector.
aac0c6e3
MR
4253
4254 * character.c (syms_of_character): Docstring of
4255 script-representative-chars fixed.
4256
42572008-08-31 Eli Zaretskii <eliz@gnu.org>
4258
4259 * msdos.c (BUILD_CHAR_GLYPH): New macro.
4260 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
4261 the menu. Allocate larger buffer for `text', to account for
4262 possible ^C characters.
4263
42642008-08-31 Martin Rudalics <rudalics@gmx.at>
4265
4266 * xdisp.c (prepare_menu_bars): Don't call
4267 Vwindow_size_change_functions with arg Qt.
4268
42692008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
4270
4271 * font.h (font_range):
4272 * fileio.c (report_file_error):
46e722a9
SM
4273 * composite.c (composition_update_it): Yet another int/Lisp_Object
4274 mixup (YAILOM).
aac0c6e3
MR
4275
42762008-08-30 Glenn Morris <rgm@gnu.org>
4277
4278 * data.c (Fmake_variable_frame_local): Doc fix.
4279
4280 * frame.c (Fmodify_frame_parameters): Doc fix.
4281
42822008-08-30 Eli Zaretskii <eliz@gnu.org>
4283
4284 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
4285 needed by GetTokenInformation.
4286 (w32_system_process_attributes): Check return values of all system
4287 APIs.
4288
4289 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
4290 only when the state changes.
4291 (IT_update_begin, IT_update_end): Add termscript trace.
4292
4293 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
4294 clipboard is unavailable. Set dst to NULL if it doesn't point to
4295 malloc'ed data.
4296 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
4297 passing random values to xfree.
4298
4299 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 4300 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
4301
43022008-08-29 Jason Rumney <jasonr@gnu.org>
4303
4304 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
4305
43062008-08-29 Eli Zaretskii <eliz@gnu.org>
4307
4308 * composite.c (fill_gstring_body): Avoid compiler warnings.
4309
4310 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
4311 LGLYPH_SET_CODE to avoid compiler warnings.
4312
2ae37cf0 4313 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
4314
4315 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
4316
4317 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
4318 LGLYPH_SET_CODE.
4319
43202008-08-29 Kenichi Handa <handa@m17n.org>
4321
4322 * fileio.c (report_file_error): Don't downcase the first character
4323 of errstring if it is still unibyte.
4324
43252008-08-29 Kenichi Handa <handa@m17n.org>
4326
4327 These changes are to re-implement the automatic composition so
4328 that it doesn't use text properties.
4329
4330 * Makefile.in (ftfont.o): Depend on composite.h.
4331 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
4332
4333 * character.h (Vunicode_category_table): Extern it.
4334
4335 * character.c (Vunicode_category_table): New variable.
4336 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
4337
4338 * chartab.c (optimize_sub_char_table): Perform more greedy
4339 optimization.
4340
b8ff72fa
SM
4341 * composite.h (enum composition_method):
4342 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
4343 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
4344 (Vcomposition_function_table): Extern it.
4345 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
4346 (composition_gstring_put_cache, composition_gstring_from_id)
4347 (composition_gstring_p, composition_gstring_width)
4348 (composition_compute_stop_pos, composition_reseat_it)
4349 (composition_update_it, composition_adjust_point): Extern them.
4350 (Fcomposition_get_gstring): EXFUN it.
4351
d66c0241 4352 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
4353 (Vcomposition_function_table)
4354 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
4355 (gstring_hash_table, gstring_work, gstring_work_headers):
4356 New variables.
aac0c6e3
MR
4357 (gstring_lookup_cache, composition_gstring_put_cache)
4358 (composition_gstring_from_id, composition_gstring_p)
4359 (composition_gstring_width, fill_gstring_header)
4360 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
4361 (composition_reseat_it, composition_update_it)
b8ff72fa 4362 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
4363 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
4364 and gstring_work_headers. DEFVAR_LISP composition-function-table.
4365 Defsubr compostion_get_gstring.
4366
4367 * dispextern.h (struct glyph): New union u.cmp. Delete the member
4368 cmp_id.
4369 (struct glyph_string): Delete the member gidx. New members
4370 cmp_id, cmp_from, and cmp_to.
4371 (enum it_method): Delete GET_FROM_COMPOSITION.
4372 (struct composition_it): New struct.
4373 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
4374 Delete c, len, cmp_id, cmp_len in u.comp.
4375
4376 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 4377 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 4378 (enum lglyph_indices): Likewise.
b8ff72fa 4379 (font_range): Adjust extern.
aac0c6e3
MR
4380 (font_fill_lglyph_metrics): Extern it.
4381
4382 * font.c (QCf): New variable.
4383 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4384 (font_prepare_composition): Delete this function.
4385 (font_range): Type and arguments changed.
4386 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
4387 (font_fill_lglyph_metrics): New function.
b8ff72fa 4388 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 4389 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
4390 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
4391 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
4392
4393 * fontset.h (font_for_char): Extern it.
4394
4395 * fontset.c (font_for_char): New function.
4396
4397 * ftfont.c: Include composite.h.
4398 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 4399 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
4400
4401 * indent.c: Include composite.h and dispextern.h.
4402 (check_composition): Delete this function.
4403 (scan_for_column): Handle composition by
4404 composition_compute_stop_pos, composition_reseat_it, and
4405 composition_update_it.
4406 (compute_motion): Likewise.
4407 (Fvertical_motion): Fix checking of composition.
4408
4409 * keyboard.c (adjust_point_for_property): Check composition by
4410 composition_adjust_point.
4411
b8ff72fa 4412 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
4413 struct glyph_string.
4414
b8ff72fa
SM
4415 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
4416 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
4417 struct glyph.
4418 (produce_composite_glyph): Likewise.
4419
b8ff72fa
SM
4420 * w32term.c (x_draw_composite_glyph_string_foreground):
4421 Adjust for the change of struct glyph_string.
aac0c6e3
MR
4422 (x_draw_glyph_string): Likewise.
4423
4424 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
4425 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4426
4427 * xdisp.c: Include font.h.
4428 (it_props): Delete the entry for Qauto_composed.
4429 (init_iterator): Initialize it->cmp_it.id to -1.
4430 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 4431 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
4432 (handle_auto_composed_prop): Delete it.
4433 (handle_composition_prop): Handle only static composition.
4434 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
4435 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 4436 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
4437 (pop_it): Likewise.
4438 (get_next_element): Delete next_element_from_composition.
4439 (CHAR_COMPOSED_P): New macro.
4440 (get_next_display_element): For automatic composition, get a face
4441 from the font in the glyph-string.
4442 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 4443 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
4444 (next_element_from_string): Check if the character at the current
4445 position is composed by CHAR_COMPOSED_P.
4446 (next_element_from_buffer): Likewise.
d66c0241
JB
4447 (next_element_from_composition): Adjust for the change of struct it.
4448 Update it->cmp_it.
b8ff72fa
SM
4449 (dump_glyph): Adjust for the change of struct glyph.
4450 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
4451 it and struct glyph. Don't handle automatic composition here.
4452 (fill_gstring_glyph_string): New function.
4453 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 4454 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
4455 (BUILD_GSTRING_GLYPH_STRING): New macro.
4456 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
4457 automatic composition.
b8ff72fa 4458 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 4459 struct glyph.
b8ff72fa 4460 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 4461
b8ff72fa 4462 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
4463 the change of struct glyph_string.
4464 (x_draw_glyph_string): Likewise.
4465
44662008-08-29 Glenn Morris <rgm@gnu.org>
4467
4468 * buffer.c (word-wrap): Doc fix.
4469 * xdisp.c (truncate-partial-width-windows): Doc fix.
4470 Increase default to 50.
4471
44722008-08-29 Chong Yidong <cyd@stupidchicken.com>
4473
4474 * xdisp.c (update_tool_bar_unwind): New function.
4475 (update_tool_bar): Temporarily set selected frame before building
4476 tool-bar items.
4477
44782008-08-28 Michael Albinus <michael.albinus@gmx.de>
4479
4480 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
4481 snprintf, respectively.
4482 (xd_append_arg): Convert strings with Fstring_make_unibyte.
4483
44842008-08-28 Chong Yidong <cyd@stupidchicken.com>
4485
4486 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
4487 LDFLAGS to GNUstep CC invocation.
4488
44892008-08-27 Chong Yidong <cyd@stupidchicken.com>
4490
4491 * indent.c (Fvertical_motion): Revert last change. Handle the
4492 general case where we are moving forward, and PT spans multiple
4493 screen lines.
4494
4495 * eval.c (find_handler_clause): Temporarily increase
4496 max-lisp-eval-depth while printing the backtrace buffer, to
4497 guarantee that help-mode code can run.
4498
44992008-08-27 Eli Zaretskii <eliz@gnu.org>
4500
4501 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
4502 colors under -rv.
4503 (IT_set_frame_parameters): Don't swap foreground and background
4504 colors if `(reverse . t)' is present in the frame properties.
4505 (internal_terminal_init): Call init_frame_faces only for the
4506 initial frame.
4507
45082008-08-27 Andreas Schwab <schwab@suse.de>
4509
4510 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
4511
45122008-08-27 Andreas Schwab <schwab@suse.de>
4513
4514 * search.c (search_buffer): Set char_base to zero only at the end.
4515
45162008-08-27 Kenichi Handa <handa@m17n.org>
4517
b8ff72fa 4518 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
4519
45202008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
4521
4522 * xterm.c (x_term_init): Temporarily hide the partially
4523 initialized terminal while calling vendor-specific-keysyms.
4524
45252008-08-26 Eli Zaretskii <eliz@gnu.org>
4526
4527 * msdos.c (internal_terminal_init): Most initializations done only
4528 once, especially initial_screen_colors[] and termscript open.
4529
45302008-08-26 Chong Yidong <cyd@stupidchicken.com>
4531
4532 * eval.c (Fcondition_case): Doc fix.
4533
4534 * widgetprv.h (EmacsFramePart): Change font member to the new font
4535 struct.
4536
4537 * widget.c: Include character.h and font.h for XSETFONT.
4538 (setup_frame_gcs): Compute X font id from font struct, just once.
4539
45402008-08-26 Eli Zaretskii <eliz@gnu.org>
4541
4542 * term.c (get_named_tty): Fix last change.
4543
45442008-08-26 Chong Yidong <cyd@stupidchicken.com>
4545
4546 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 4547 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
4548
45492008-08-25 Eli Zaretskii <eliz@gnu.org>
4550
4551 * frame.c (do_switch_frame): Mark previously displayed frame as
4552 obscured for FRAME_MSDOS_P frames as well.
4553
45542008-08-24 Eli Zaretskii <eliz@gnu.org>
4555
4556 * frame.c (make_terminal_frame): Initialize f->terminal,
4557 f->terminal->reference_count, and scroll bars on MS-DOS as well.
4558 Set the top frame to newly created frame.
4559 (Fmake_terminal_frame): Reuse the_only_display_info.
4560
4561 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
4562 estimating available memory.
4563
b97439ce 45642008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
4565
4566 * nsterm.m (ns_draw_window_cursor): Don't call
4567 NSDisableScreenUpdates and NSEnableScreenUpdates on
4568 non-NS_IMPL_COCOA systems.
4569
45702008-08-23 Andreas Schwab <schwab@suse.de>
4571
4572 * process.c (procfs_system_process_attributes): Fix use of
4573 uninitialized variables.
4574
45752008-08-23 Eli Zaretskii <eliz@gnu.org>
4576
4577 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
4578
4579 * dispnew.c (init_display): Remove MS-DOS specific conditions for
4580 calling tty-set-up-initial-frame-faces.
4581
b8ff72fa
SM
4582 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
4583 Allow MSDOS frames along with X frames.
aac0c6e3
MR
4584
4585 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
4586 addition to output_termcap.
4587
4588 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
4589
4590 * termchar.h (FRAME_TTY): Support output_msdos_raw.
4591 (struct tty_display_info) [MSDOS]: Add fields related to mouse
4592 highlight.
4593
4594 * process.c [!subprocesses]: Define QCname.
4595 (syms_of_process): Intern and staticpro it.
4596
4597 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
4598 Adjust for changes in encoding/decoding routines.
4599 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
4600 encode_coding and decode_coding.
4601
b8ff72fa 4602 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
4603
4604 * dosfns.c: Include frame.h before termhooks.h.
4605 (dos_cleanup): Use CURTTY ()->termscript instead of a global
4606 variable termscript.
4607
4608 * s/msdos.h (USER_FULL_NAME): Define.
4609 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
4610
4611 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
4612 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
4613 pw->pw_gecos.
4614
4615 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
4616 SELECTED_FRAME as additional (1st) argument.
4617 (tty_read_avail_input): Handle output_msdos_raw in
4618 addition to output_termcap.
4619
4620 * msdos.c: Include frame.h before termhooks.h.
4621 (mouse_on, mouse_off, mouse_moveto, mouse_init)
4622 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
4623 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
4624 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
4625 (IT_set_terminal_modes, IT_reset_terminal_modes)
4626 (IT_set_frame_parameters): Use tty->termscript instead of a global
4627 variable termscript.
4628 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
4629 global variable terminal_coding. Don't refer to
4630 Vnonascii_translation_table.
4631 (internal_terminal_init): Set Vwindow_system in current_kboard.
4632 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
4633 Announce date and time of session start, if termscript is open.
4634 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
4635 term.c:init_tty). Open termscript only of not already open.
4636 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
4637 here instead of dos_ttraw. Don't initialize display if this is an
4638 initial tty. Don't set FRAME_FONT.
4639 (Vwindow_system_version): Bump to 23.
4640 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
4641 is available, set up mouse_position_hook.
4642 (dos_ttraw, IT_set_terminal_modes): If called with initial
4643 terminal, do nothing.
4644 (IT_set_frame_parameters): Handle the Qtty_type frame
4645 parameter by calling internal_terminal_init.
4646 (dos_set_window_size, show_mouse_face)
4647 (clear_mouse_face, IT_note_mode_line_highlight)
4648 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
4649 (dos_rawgetc): Use tty_display_info instead of x_display_info.
4650 (initialize_msdos_display): New function.
4651 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
4652 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
4653 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
4654 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 4655 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
4656 (request_sigio, unrequest_sigio): Don't define, now defined on
4657 sysdep.c.
4658 (IT_write_glyphs): Rewrite to use encode_terminal_code.
4659
4660 * term.c [MSDOS]: Include msdos.h.
4661 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
4662 conditional to DOS_NT. Allow only one call to this function in a
4663 session. Don't allocate a new struct tty_display_info; instead,
4664 reuse the_only_display_info. Call get_tty_size to get screen
4665 dimensions. Call init_baud_rate to set bad_rate.
4666 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
4667 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 4668 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
4669 (get_tty_terminal, get_named_tty, Ftty_type)
4670 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
4671 output_termcap.
b8ff72fa
SM
4672 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
4673 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 4674 only when subprocesses are supported.
aac0c6e3
MR
4675
4676 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
4677 f->output_data.x.
4678 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
4679 terminal devices.
4680
5582fbc7 4681 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
4682 x_output.
4683 (FRAME_FONT): Use output_data.tty.
4684 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
4685 (struct x_display_info): Rename from display_info. Update all users in
4686 msdos.c.
aac0c6e3 4687 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 4688 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
4689 (dos_ttraw): Update prototype.
4690
4691 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
4692 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
4693
46942008-08-23 Jason Rumney <jasonr@gnu.org>
4695
4696 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
4697 (fn_TIFFSetDirectory): New library function used.
4698 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
4699 (tiff_load): Use :index to select among multiple images. Set count
4700 property when multiple images exist.
4701 (gif_format): Use :index, not :image.
4702
47032008-08-23 Chong Yidong <cyd@stupidchicken.com>
4704
4705 * xdisp.c (try_scrolling): Check INT_MAX instead of
4706 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
4707 to obtain INT_MAX.
4708
47092008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
4710
4711 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
4712
47132008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
4714
4715 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
4716 GNUstep library location.
4717
47182008-08-21 Chong Yidong <cyd@stupidchicken.com>
4719
4720 * xfaces.c (x_update_menu_appearance): Check validity of menu font
4721 before using it.
4722
4723 * puresize.h (BASE_PURESIZE): Increase to 1250000.
4724
47252008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4726
4727 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
4728 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
4729 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
4730 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
4731 (EmacsApp-cursor_blink_handler): Remove declaration.
4732 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
4733 match 01 Feb 2008 changes in xterm.c.
4734 (ns_read_socket): Add cast to avoid warning.
4735 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
4736 GNUstep.
4737
47382008-08-20 Chong Yidong <cyd@stupidchicken.com>
4739
4740 * xselect.c (x_get_foreign_selection): Return nil if desired
4741 selection could not be obtained, instead of signalling an error.
4742
47432008-08-20 David Reitter <david.reitter@gmail.com>
4744
4745 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
4746 * nsterm.m: Remove ns-specific code for cursor blinking.
4747 (ns_draw_window_cursor): Clear cursor properly rather than
4748 redrawing the area. Respect width of bar cursors.
4749 These changes enable the use of generic blink-cursor-mode and
4750 generic cursor types in NS and support smooth cursor movements (do
4751 not blink off after command).
4752 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
4753 Nextstep, too.
4754
47552008-08-19 Kenichi Handa <handa@m17n.org>
4756
4757 * font.c (Vfont_log_deferred): New variable.
4758 (font_add_log): Check Vfont_log_deferred.
4759 (font_deferred_log): New function.
4760
4761 * font.h (font_deferred_log): Extern it.
4762
4763 * fontset.c (reorder_font_vector): Use encoding charset of fonts
4764 for sorting.
4765 (face_for_char): Use deferred log.
4766
47672008-08-18 Kenichi Handa <handa@m17n.org>
4768
4769 * fontset.c (face_for_char): Add font log.
4770
4771 * font.c (font_add_log): Add the font properties :script, :lang,
4772 and :otf in the log.
4773
47742008-08-17 Chong Yidong <cyd@stupidchicken.com>
4775
4776 * xdisp.c: Remove dead code.
4777 (handle_invisible_prop, next_overlay_string): Defer call to
4778 setup_for_ellipsis.
4779 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
4780
47812008-08-15 Chong Yidong <cyd@stupidchicken.com>
4782
4783 * xfaces.c (lookup_derived_face): Properly handle possible zero
4784 return value of get_lface_attributes.
4785 (merge_faces): Don't tell lookup_derived_face to signal an error
4786 if face is not found.
4787
4788 * dired.c (Fdirectory_files): Doc fix.
4789
4790 * process.c (make_process): Initialize kill_without_query struct
4791 member.
4792
47932008-08-15 Eli Zaretskii <eliz@gnu.org>
4794
4795 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
4796 Alternative calculation of totphys for Visual Studio 6.
4797
4798 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
4799
4800 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
4801 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
4802 All users changed.
4803 (stat): Only root directory passed to GetDriveType. Allow RAM
4804 disk as well as local fixed disk when w32-get-true-file-attributes
4805 is set to `local'.
4806 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
4807 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
4808 (w32_cached_id, w32_add_to_cache): New functions.
4809 (get_name_and_id): Look account names in the cache before calling
4810 lookup_account_sid.
4811 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
4812 New initialization flags.
4813 (globals_of_w32): Initialize them to zero.
4814 (w32_system_process_attributes): Use w32_cached_id and
4815 w32_add_to_cache.
4816
48172008-08-14 Lawrence Mitchell <wence@gmx.li>
4818
4819 * lread.c (Fread_char, Fread_char_exclusive): If no character
4820 event is read before timeout is reached, return nil, rather than
4821 converting to a number.
4822
48232008-08-14 Chong Yidong <cyd@stupidchicken.com>
4824
4825 * fns.c (use_dialog_box): Doc fix.
4826
4827 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
4828 on OS X.
4829
48302008-08-13 Chong Yidong <cyd@stupidchicken.com>
4831
4832 * frame.c (Qns_parse_geometry): New var.
4833 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
4834
48352008-08-11 Chong Yidong <cyd@stupidchicken.com>
4836
4837 * xdisp.c (x_produce_glyphs): Handle the case when font has no
4838 space character in calculating tabs.
4839
48402008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
4841
4842 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
4843
48442008-08-10 Glenn Morris <rgm@gnu.org>
4845
4846 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
4847 silence gcc "limited range of data type" warnings in some
4848 make_fixnum_or_float calls.
4849
48502008-08-09 Eli Zaretskii <eliz@gnu.org>
4851
4852 * w32.c (w32_system_process_attributes): If the process does not
4853 exist, return nil.
4854
4855 * w32.c: Include thelp32.h, psapi.h and coding.h.
4856 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
4857 declarations.
4858 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
4859 (Process32Next_Proc): New typedefs.
4860 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
4861 (g_b_init_process32_next, g_b_init_open_thread_token)
4862 (g_b_init_impersonate_self, g_b_init_revert_to_self)
4863 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
4864 (g_b_init_get_process_working_set_size)
4865 (g_b_init_global_memory_status_ex): New static variables.
4866 (globals_of_w32): Initialize them.
4867 (create_toolhelp32_snapshot, process32_first, process32_next)
4868 (open_thread_token, impersonate_self, revert_to_self)
4869 (get_process_memory_info, get_process_working_set_size)
4870 (global_memory_status, global_memory_status_ex): New wrapper
4871 functions.
4872 (w32_list_system_processes, w32_system_process_attributes)
4873 (enable_privilege, restore_privilege, ltime, process_times):
4874 New functions.
4875 (convert_time_raw): New function.
4876 (convert_time): Remove conversion of FILETIME into time in 100
4877 nsec units, call convert_time_raw instead.
4878
4879 * process.h (w32_list_system_processes, w32_system_process_attributes):
4880 Add prototypes.
4881 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
4882 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
4883 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
4884 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
4885
4886 * process.c (Fsystem_process_attributes): Doc fix.
4887
48882008-08-08 Chong Yidong <cyd@stupidchicken.com>
4889
4890 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
4891 a continued multi-char glyph; if so, advance to the actual glyph.
4892
48932008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
4894
4895 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
4896
4897 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
4898 (.m.o): Use it.
4899 * config.in: Regenerate.
4900
49012008-08-07 Chong Yidong <cyd@stupidchicken.com>
4902
4903 * xdisp.c (redisplay_window): Revert last change.
4904 (try_window): Check bottom scroll margin too.
4905
49062008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
4907
4908 * config.in: Regenerate.
4909
4910 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
4911 -list-load-path-shadows'.
4912 (nsgui.h): Reduce number of things depending on it.
4913
49142008-08-06 Chong Yidong <cyd@stupidchicken.com>
4915
4916 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
4917 instead of window-end which does the wrong thing at eob.
4918 (try_cursor_movement): Minor optimization.
4919 (redisplay_window): If scroll margin is defined, don't assume
4920 window doesn't need scrolling.
4921
49222008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
4923
4924 * config.in: Regenerate.
4925
4926 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
4927 (mostlyclean): Don't delete *.d under NS.
4928
4929 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
4930
49312008-08-06 Kenichi Handa <handa@m17n.org>
4932
4933 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
4934
49352008-08-06 Andreas Schwab <schwab@suse.de>
4936
4937 * config.in: Regenerate.
4938
49392008-08-05 Chong Yidong <cyd@stupidchicken.com>
4940
4941 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
4942 forcing a window start.
4943
4944 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
4945 (auto_save_1): Update modtime when auto-save-list-file-name is on.
4946
49472008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4948
4949 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
4950 argument.
4951
49522008-08-05 Juanma Barranquero <lekktu@gmail.com>
4953
4954 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
4955 <scroll-down-aggressively, before-change-functions>:
4956 <after-change-functions>: Reflow docstrings.
4957
49582008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4959 Ken Raeburn <raeburn@gnu.org>
4960
4961 Dock menu customization, based on a patch by Ken Raeburn, plus some
4962 other fixes.
4963 * nsmenu.m (dockMenu): New variable.
4964 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
4965
4966 * nsterm.h (dockMenu): Declare.
4967
4968 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
4969 (ns_term_init): Initialize dockMenu.
4970 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
4971 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
4972 left.
4973
4974 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
4975
49762008-08-04 Chong Yidong <cyd@stupidchicken.com>
4977
4978 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
4979
4980 * config.in: Regenerate.
4981
49822008-08-04 Seiji Zenitani <zenitani@mac.com>
4983
4984 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
4985
49862008-08-04 Chong Yidong <cyd@stupidchicken.com>
4987
4988 * nsterm.h (find_and_call_menu_selection): Fix prototype.
4989
49902008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4991
4992 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
4993
4994 * keyboard.h: Comment an #endif.
4995
4996 * lisp.h (have_menus_p): Adjust comment.
4997
4998 * menu.c (find_and_return_menu_selection): Fix comparison with
4999 client_data.
5000
5001 * nsmenu.m (popup_activated_flag): New variable.
5002 (popup_activated): New function.
5003 (menu-or-popup-active-p): New exported lisp definition.
5004 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
5005 when popup done.
5006 (ns_popup_dialog): Set popup_activated_flag.
5007
5008 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
5009 version for GNUstep (handled by conditional typedef in nsterm.m).
5010 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
5011 in rgb.txt).
5012
5013 * process.c (init_process): Use DARWIN_OS, not DARWIN.
5014
5015 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
5016
5017 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
5018
5019 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
5020 shortcircuit if popup_activated like GTK and X toolkit.
5021
5022 * m/inter386.h: Change DARWIN to DARWIN_OS.
5023
5024 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
5025 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
5026 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
5027 comment on NO_SOCK_SIGIO.
5028
50292008-08-03 Chong Yidong <cyd@stupidchicken.com>
5030
5031 * nsterm.m (windowDidResize): Remove stopModal call.
5032
50332008-08-03 Andreas Schwab <schwab@suse.de>
5034
5035 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
5036 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
5037
50382008-08-02 Chong Yidong <cyd@stupidchicken.com>
5039
5040 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
5041 Don't use uninitialized pointer variable when using getrlimit.
5042
50432008-08-02 Jason Rumney <jasonr@gnu.org>
5044
5045 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
5046
50472008-08-02 Eli Zaretskii <eliz@gnu.org>
5048
5049 * alloc.c (NSTATICS): Bump to 0x640.
5050
5051 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
5052
5053 * lisp.h: Add prototype for directory_files_internal.
5054
5055 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
5056 New functions.
5057 (syms_of_process): Defsubr them. Add initializations for various
5058 Q* symbols used in procfs_system_process_attributes.
5059 (procfs_list_system_processes, procfs_system_process_attributes)
5060 [HAVE_PROCFS]: New functions.
5061 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
5062 (procfs_get_total_memory): New functions.
5063
50642008-08-01 Juanma Barranquero <lekktu@gmail.com>
5065
5066 * xfaces.c (Fx_load_color_file): Fix previous change;
5067 it is #ifdef WINDOWSNT, not WINDOWS_NT.
5068
50692008-08-01 Michael Albinus <michael.albinus@gmx.de>
5070
5071 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
5072
50732008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5074
5075 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
5076
50772008-08-01 Chong Yidong <cyd@stupidchicken.com>
5078
5079 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
5080
5081 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
5082 define NSApplicationDelegateReplySuccess.
5083 (EmacsView -converstationIdentifier): Use long instead of
5084 NSInteger for GNUstep, since it doesn't have NSInteger.
5085
5086 * xmenu.c: Revert last change.
5087
5088 * keyboard.h: Fix last change.
5089
50902008-08-01 Juanma Barranquero <lekktu@gmail.com>
5091
5092 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
5093 on Windows.
5094
50952008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5096
5097 Warning clearing and clean-up in NS port.
5098 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
5099 Add prototypes.
5100 * nsgui.h (FACE_DEFAULT): Remove, unused.
5101 (XGCValues): Change colors to unsigned long.
5102 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
5103 nsterm.m.
5104 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
5105 (ns_list_fonts): Remove, unused.
5106 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
5107 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
5108 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
5109 (nsfont_draw): Compare face colors to 0, not nil.
5110 * nsmenu.m (struct widget_value): Drop unneeded declaration.
5111 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
5112 (-addSubmenuWithTitle:): Use NSMenuItem class.
5113 (ns_popup_menu): Use NO, not NULL, for enabled setting.
5114 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
5115 (ns_clip_to_row): Make gc arg a BOOL.
5116 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
5117 ns_clip_to_row() call.
5118 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
5119 used). Cast FRAME_FONT assignments.
5120 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
5121 (ns_string_to_lispmod): Change arg to const char.
5122 (ns_term_init): Use NSMenuItem class.
5123 (EmacsApp -openFile:): Move to different section of file.
5124 (EmacsApp -application:openFiles:): Don't return a value, call
5125 -replyToOpenOrPrint:.
5126 (EmacsView -keyDown:): Fix up cast.
5127 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
5128 (EmacsView -menuDown:): Cast tag in call to
5129 find_and_call_menu_selection().
5130 (ns_list_fonts): Remove, unused.
5131 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
5132 (ns_fontname_to_xlfd): Make static.
5133 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
5134 Remove prototypes (now in keyboard.h).
5135 (next_menubar_widget_id): Remove, unused.
5136 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
5137 Remove prototypes (now in keyboard.h).
5138 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
5139
51402008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
5141
5142 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
5143 (floatfns.o): Depend on syssignal.h.
5144 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
5145
5146 * systty.h: Fix previous change that removed BSD_TERMIOS.
5147 Add comments to #ifdefs.
5148
51492008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5150
5151 * w32fns.c (w32-load-color-file): Remove.
5152 (x-open-connection): Use renamed Fx_load_color_file.
5153 * xfaces.c (x-load-color-file): Add.
5154 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
5155 Emacs.clr.
5156 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
5157
51582008-07-31 Michael Albinus <michael.albinus@gmx.de>
5159
5160 * dbusbind.c (Fdbus_call_method_asynchronously)
5161 (Fdbus_method_error_internal): New defuns.
5162 (xd_read_message): Handle also reply messages.
5163 (Vdbus_registered_functions_table): Extend docstring.
5164
51652008-07-31 Juanma Barranquero <lekktu@gmail.com>
5166
5167 * keyboard.c (gobble_input): Fix previous change.
5168
51692008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5170
5171 * bitmaps/README:
5172 * xfns.c:
5173 * termcap.c:
5174 * term.c:
5175 * syswait.h:
5176 * systty.h:
5177 * systime.h:
5178 * syssignal.h:
5179 * sysdep.c:
5180 * process.h:
5181 * process.c:
5182 * print.c:
5183 * ndir.h:
5184 * lread.c:
5185 * keyboard.c:
5186 * getpagesize.h:
5187 * floatfns.c:
5188 * fileio.c:
5189 * emacs.c:
5190 * doc.c:
5191 * dispnew.c:
5192 * dired.c:
5193 * data.c:
5194 * callproc.c:
5195 * buffer.c:
5196 * README:
5197 * Makefile.in:
5198 * s/template.h:
5199 * s/msdos.h:
5200 * m/vax.h: Remove VMS support.
5201 * s/vms.h:
5202 * vlimit.h:
5203 * uaf.h:
5204 * temacs.opt:
5205 * param.h:
5206 * ioctl.h: Remove file.
5207
52082008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5209
5210 * s/ms-w32.h (MULTI_KBOARD): Remove.
5211 * xterm.c:
5212 * xselect.c:
5213 * xfns.c:
5214 * window.c:
5215 * w32term.c:
5216 * w32fns.c:
5217 * terminal.c:
5218 * termhooks.h:
5219 * term.c:
5220 * sysdep.c:
5221 * keyboard.h:
5222 * keyboard.c:
5223 * frame.h:
5224 * frame.c:
5225 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
5226 * config.in: Regenerate.
5227
52282008-07-30 Jason Rumney <jasonr@gnu.org>
5229
5230 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
5231
5232 * w32font.c (w32font_encode_char): Leave as unicode if in range.
5233 (w32font_open_internal): Get unicode version of textmetrics.
5234 Don't enable or disable glyph indices here.
5235 (w32font_open): Disable use of glyph indices.
5236
5237 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
5238
52392008-07-30 Chong Yidong <cyd@stupidchicken.com>
5240
5241 * minibuf.c (Vread_buffer_function): Doc fix.
5242
52432008-07-30 John Paul Wallington <jpw@pobox.com>
5244
5245 * minibuf.c (read_buffer_completion_ignore_case): New var.
5246 (Fread_buffer): Use it.
5247
52482008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
5249
5250 * systty.h (sensemode): Remove empty #if. Remove reference to
5251 BSD_TERMIOS, unused.
5252
5253 * sysdep.c: Remove reference to DGUX.
5254 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
5255
5256 * config.in: Regenerate.
5257
52582008-07-30 Jason Rumney <jasonr@gnu.org>
5259
5260 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
5261
52622008-07-29 Jason Rumney <jasonr@gnu.org>
5263
5264 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
5265 is populated.
5266 (uniscribe_encode_char): Always use uniscribe.
5267 Avoid using context if cache is populated.
5268
52692008-07-29 Jan Djärv <jan.h.d@swipnet.se>
5270
5271 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
5272 open menu.
5273
5274 * gtkutil.c (menu_nav_ended): Remove.
5275 (create_menus): Remove signal connect for menu_nav_ended.
5276
52772008-07-28 Chong Yidong <cyd@stupidchicken.com>
5278
5279 * xdisp.c (redisplay_window): Check return value of
5280 compute_window_start_on_continuation_line before forcing a window
5281 start.
5282
52832008-07-28 Jason Rumney <jasonr@gnu.org>
5284
5285 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
5286
5287 * w32term.c (w32_enable_unicode_output, cleartype_active):
5288 Remove obsolete display options.
5289 (x_draw_glyph_string_background): Don't use old cleartype_active
5290 workaround.
5291 (w32_initialize): Remove cleartype_active initialization.
5292 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
5293
52942008-07-28 Andreas Schwab <schwab@suse.de>
5295
5296 * lisp.h (init_weak_hash_tables, syms_of_font)
5297 (xd_read_queued_messages, syms_of_dbusbind): Declare.
5298 (remove_hash_entry): Don't declare.
5299 * eval.c (maybe_call_debugger): Make static and move before use.
5300 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
5301 * xdisp.c: Include "gtkutil.h" if USE_GTK.
5302 * xterm.h (x_set_frame_alpha): Declare.
5303
53042008-07-28 Jan Djärv <jan.h.d@swipnet.se>
5305
5306 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
5307 (create_menus): Connect selection-done to menu_nav_ended.
5308
53092008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5310
5311 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
5312 Set Vx_resource_name to a fallback. Replace read of 'buffered'
5313 parameter with read of 'alpha' one.
5314 (Qns_frame_parameter): Remove.
5582fbc7 5315 * nsselect.m (selection-coding-system)
aac0c6e3
MR
5316 (next-selection-coding-system, Vselection_coding_system)
5317 (Vnext_selection_coding_system): Drop.
5318
53192008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5320
5321 * nsfns.m (do-applescript, do_applescript): Rename to
5322 ns-do-applescript, ns_do_applescript, and move within file.
5323
53242008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
5325
5326 Remove support for Mac Carbon.
5327 * mactoolbox.c:
5328 * macterm.h:
5329 * macterm.c:
5330 * macselect.c:
5331 * macmenu.c:
5332 * macgui.h:
5333 * macfns.c:
5334 * mac.c: Remove file.
5335 * s/darwin.h:
5336 * m/intel386.h:
5337 * xfaces.c:
5338 * xdisp.c:
5339 * window.c:
5340 * tparam.c:
5341 * termhooks.h:
5342 * termcap.c:
5343 * term.c:
5344 * syssignal.h:
5345 * sysselect.h:
5346 * sysdep.c:
5347 * process.c:
5348 * lread.c:
5349 * lisp.h:
5350 * keyboard.c:
5351 * image.c:
5352 * fringe.c:
5353 * frame.h:
5354 * frame.c:
5355 * fontset.c:
5356 * font.h:
5357 * font.c:
5358 * fns.c:
5359 * fileio.c:
5360 * emacs.c:
5361 * dispnew.c:
5362 * dispextern.h:
5363 * config.in:
5364 * atimer.c:
2ae37cf0 5365 * Makefile.in: Remove code for Carbon.
aac0c6e3 5366
f0131492 53672008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
5368
5369 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
5370
53712008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5372
5373 * macterm.h (kCGBitmapByteOrder32Host): New define for
5374 non-universal SDKs.
5375
5376 * image.c (mac_create_cg_image_from_image, image_load_image_io)
5377 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5378
5379 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
5380 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5381
53822008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
5383
5384 * w32inevt.c: Include dispextern.h.
5385
53862008-07-26 Andreas Schwab <schwab@suse.de>
5387
5388 * print.c (print_object): Fix off-by-one in last change.
5389
53902008-07-25 Juanma Barranquero <lekktu@gmail.com>
5391
5392 * term.c (syms_of_term): Don't initialize default_orig_pair,
5393 default_set_foreground and default_set_background on Windows.
5394
53952008-07-25 Jason Rumney <jasonr@gnu.org>
5396
5397 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
5398 ScriptItemize. Clean up return value checking. Remove unused
5399 variables.
5400 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
5401 shaping engine.
5402
5403 * w32font.c (w32font_has_char): Handle the case where we can't
5404 determine the script for a character.
5405
54062008-07-25 Chong Yidong <cyd@stupidchicken.com>
5407
5408 * term.c (syms_of_term): Initialize default_orig_pair,
5409 default_set_foreground, and default_set_background.
5410
5411 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
5412 clash (bug#86).
5413 (getloadavg): Callers changed.
5414
5415 * image.c (svg_load_image): Fix last change.
5416 (svg_load_image): Use rsvg_handle_get_dimensions to check that
5417 image size is valid. Use g_object_unref instead of deprecated
5418 rsvg_handle_free to free rsvg handle.
5419 (x_from_xcolors): Don't initialize pixmap (silence compiler).
5420
54212008-07-25 Jason Rumney <jasonr@gnu.org>
5422
5423 * w32font.c (w32font_encode_char): Encode characters outside BMP as
5424 surrogates before looking up glyph index.
5425 (w32font_text_extents): Encode as surrogates if falling back to
5426 functions that need UTF-16 wide chars.
5427
5428 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
5429 BMP as surrogates before looking up glyph index.
5430
54312008-07-25 Chong Yidong <cyd@stupidchicken.com>
5432
5433 * image.c (svg_load_image): Check for failure in return value of
5434 rsvg_handle_get_pixbuf. Free rsvg handle when done.
5435
54362008-07-25 Jason Rumney <jasonr@gnu.org>
5437
5438 * w32font.c (Fx_select_font): Reverse sense of second arg.
5439
54402008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
5441
5442 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
5443 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
5444
5445 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
5446 (PURESIZE): Use it.
5447
54482008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
5449
5450 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
5451 * m/alpha.h (TEXT_END):
5452 * m/ibmrs6000.h (TEXT_END):
5453 * m/macppc.h (TEXT_END):
5454 * s/darwin.h (TEXT_END):
5455 * s/msdos.h (TEXT_END): Remove, unused.
5456 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
5457 * s/cygwin.h: Remove comment.
5458
5459 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
5460 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
5461 * m/intel386.h (DOT_GLOBAL_START):
5462 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
5463 (USG): Remove, file not used on USG platforms.
5464
5465 * Makefile.in (HAVE_X11): Remove empty #else.
5466
54672008-07-24 Andreas Schwab <schwab@suse.de>
5468
5469 * fileio.c (Finsert_file_contents): Properly adjust undo list
5470 after format conversion.
5471
54722008-07-24 Jan Djärv <jan.h.d@swipnet.se>
5473
5474 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
5475 (menu_nav_ended): Remove.
5476 (create_menus): Remove signal connect for menu_nav_ended.
5477 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
5478 create_menus.
5479 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
5480
54812008-07-23 Jason Rumney <jasonr@gnu.org>
5482
5483 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
5484 with opened font.
5485 (w32font_open): Set font type to gdi.
5486
5487 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
5488
54892008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
5490
5491 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
5492 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
5493 defines it.
5494 * unexec.c (ADDR_CORRECT): Define unconditionally.
5495
5496 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
5497
5498 * unexec.c: Remove code depending on !COFF and USG, the file is
5499 not used for such systems.
5500
5501 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
5502 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
5503 (LD_SWITCH_SYSTEM_1): Remove, update users.
5504
5505 * s/darwin.h (DATA_END):
5506 * m/intel386.h (DATA_END):
5507 * m/ibmrs6000.h (DATA_END):
5508 * m/alpha.h (DATA_END): Remove, unused.
5509
5510 * config.in: Regenerate.
5511 * s/ms-w32.h (subprocesses): Define unconditionally.
5512 * s/template.h (subprocesses): Update comment.
5513 * s/vms.h (subprocesses):
5514 * s/usg5-4.h (subprocesses):
5515 * s/hpux10-20.h (subprocesses):
5516 * s/gnu-linux.h (subprocesses):
5517 * s/cygwin.h (subprocesses):
5518 * s/bsd-common.h (subprocesses):
5519 * s/aix4-2.h (subprocesses):
5520 * s/darwin.h (subprocesses): Do not define, defined by default now.
5521
5522 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
5523 Remove all references.
5524 (temacs): Add GNUstep specific ld flags.
5525
5526 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
5527 similarly to what X does.
5528
55292008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5530
5531 * nsfns.m (x-list-fonts): Remove.
5532 (syms_of_nsfns): Drop the x-list-fonts declaration.
5533 * nsterm.m: Get rid of remaining "//" comments.
5534
55352008-07-22 Chong Yidong <cyd@stupidchicken.com>
5536
5537 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
5538
5539 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
5540 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
5541 (Fns_own_selection_internal, Fx_disown_selection_internal)
5542 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
5543
5544 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
5545 ... */' style of docstrings. Doc fixes.
5546
55472008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
5548
5549 * terminfo.c (UP, BC, PC): Undo previous change.
5550
5551 * nsfns.m: Rename ns prefixed functions/variables to the
5552 corresponding x versions. Update references.
5553
55542008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
5555
5556 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
5557
55582008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
5559
5560 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
5561 Remove forwarding functions.
5562 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
5563 non-static.
5564 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
5565 non-static.
5566 (ns_frame_parm_handlers): Use the new names.
5567 (syms_of_nsfns): Move to the end of file.
5568
5569 * nsterm.m (syms_of_nsterm): Move to the end of file.
5570
5571 * dispnew.c (init_display): Remove code for X10.
5572
55732008-07-22 Jason Rumney <jasonr@gnu.org>
5574
5575 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
5576 bare drive.
5577
55782008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5579
5580 * nsterm.m (syms_of_nsterm): Remove debugging println.
5581
55822008-07-22 David Reitter <david.reitter@gmail.com>
5583
5584 * nsfns.m (do_applescript, F_do_applescript): NS version of the
5585 Carbon implementation of the same functionality: execute arbitrary
5586 AppleScript code.
5587
55882008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
5589
5590 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
5591 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
5592 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5593 (Fx_display_mm_height, Fx_display_mm_width)
5594 (Fx_display_backing_store, Fx_display_visual_class)
5595 (Fx_display_save_under, Fx_open_connection)
5596 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
5597 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
5598 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
5599 (Fx_display_pixel_width, Fx_display_pixel_height)
5600 (Fx_display_usable_bounds, Fx_display_planes)
5601 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
5602 ... */' style of docstrings.
5603
56042008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
5605
5606 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
5607 on this platform.
5608 (mips):
5609 * m/iris4d.h (mips): Do not define.
5610 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
5611
5612 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
5613
5614 * image.c:
5615 * nsfns.m:
5616 * nsselect.m:
5617 * nsterm.h:
5618 * nsterm.m: Rename ns prefixed functions/variables to the
5619 corresponding x versions. Update references.
5620
5621 * m/ibms390x.h (NO_REMAP): Do not undefine.
5622
5623 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
5624
56252008-07-21 Chong Yidong <cyd@stupidchicken.com>
5626
5627 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
5628 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
5629 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
5630 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
5631 (Fns_display_mm_height, Fns_display_mm_width)
5632 (Fns_display_backing_store, Fns_display_visual_class)
5633 (Fns_display_save_under, Fns_open_connection)
5634 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
5635 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
5636 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
5637 (Fns_display_pixel_width, Fns_display_pixel_height)
5638 (Fns_display_usable_bounds, Fx_display_planes)
5639 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
5640
56412008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
5642
5643 * print.c (print_object): Check print_depth before searching for
5644 circularities.
5645
56462008-07-21 Michael Albinus <michael.albinus@gmx.de>
5647
5648 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
5649 only sprintf.
5650
56512008-07-21 Kenichi Handa <handa@m17n.org>
5652
5653 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
5654
56552008-07-20 Andreas Schwab <schwab@suse.de>
5656
5657 * syntax.c (find_start_pos, find_start_value)
5658 (find_start_value_byte, find_start_begv, find_defun_start)
5659 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
5660
56612008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
5662
5663 * s/sol2-3.h: Insert contents of s/sol2.h.
5664 (LD_SWITCH_SYSTEM): Remove redundant definition.
5665 * s/sol2.h: Remove, unused.
5666
56672008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5668
5669 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
5670
56712008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5672
5673 * Makefile.in (ns_appdir): Fix typo in find command.
5674
56752008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
5676
5677 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
5678
5679 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
5680 added not supported anymore.
5681
5682 * s/usg5-4-2.h (LIBS_SYSTEM):
5683 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
5684
5685 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
5686 * s/lynxos.h (GETPGRP_NO_ARG):
5687 * s/hpux10-20.h (NO_SIOCTL_H):
5688 * s/gnu.h (GETPGRP_NO_ARG):
5689 * s/gnu-linux.h (NO_SIOCTL_H):
5690 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
5691 * s/cygwin.h (GETPGRP_NO_ARG):
5692 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
5693 (C_DEBUG_SWITCH): Remove duplicate definition.
5694
5695 * m/ibms390.h: Remove boilerplate comments.
5696
5697 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
5698
5699 * process.c (HAVE_SERIAL): Consolidate ifdefs.
5700 (wait_reading_process_output): Remove code for SunOS, platform not
5701 supported anymore. Use SOLARIS2 instead of sun.
5702
57032008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5704
5705 * font.c (font_open_by_name): Under NS, default lface height to zero.
5706 (font_open_for_lface): Under NS, set size based on frame fontsize.
5707 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
5708 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
5709
57102008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5711
5712 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
5713 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
5714 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
5715 YES/NO.
5716 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
5717 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
5718 * Makefile.in (clean): Clear out build destination dir.
5719
57202008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5721
5722 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
5723 xterm, xselect.
5724 * lisp.h: Remove declaration of hash_remove.
5725 * nsgui.h: Remove redefinitions of hash_remove.
5726 * fns.c (hash_remove): Rename to hash_remove_from_table.
5727
57282008-07-19 Seiji Zenitani <zenitani@mac.com>
5729
5730 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
5731 strdup() the family UTF8String before modifying it.
5732
57332008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5734
5735 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
5736 NS_FACE_BACKGROUND with 0 instead of nil.
5737 * nsfont.m (nsfont_draw): Same.
5738
57392008-07-19 Chong Yidong <cyd@stupidchicken.com>
5740
5741 * nsfns.m (ns_set_background_color): Fix crash.
5742
57432008-07-18 Chong Yidong <cyd@stupidchicken.com>
5744
5745 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
5746
57472008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
5748
5749 * puresize.h (BASE_PURESIZE): Increase to 1240000.
5750
57512008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5752
5753 * gtkutil.c: Include <config.h> instead of "config.h".
5754
5755 * lisp.h (Foverlay_buffer): Add EXFUN.
5756
5757 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
5758 child process to complete child_setup. Undo 2005-09-21 change.
5759
5760 * s/darwin.h: Mention setsid after vfork.
5761
57622008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5763
5764 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
5765 Depend on macgui.h.
5766
5767 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
5768 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
5769
5770 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
5771 and f19.
5772 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
5773
5774 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
5775 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
5776 Remove enumerators.
5777
5778 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
5779 Check if FACE_FROM_ID returns NULL.
5780
57812008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
5782
5783 * w32inevt.c (change_frame_size): Remove extern declaration.
5784 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
5785 change_frame_size.
5786
57872008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
5788
5789 * getloadavg.c: Revert last change (2008-07-15).
5790
57912008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
5792
5793 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
5794 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
5795 from configure.
5796
57972008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
5798
5799 * s/sol2.h:
5800 * s/sol2-4.h: Reorganize conditionals.
5801
5802 * ecrt0.c: Remove code depending on m68000, not used anymore.
5803
5804 * fns.c (hash_remove): Make static.
5805 * lisp.h (hash_remove): Don't prototype.
5806
5807 * m/ibmrs6000.h:
5808 * m/ibms390x.h:
5809 * m/macppc.h: Remove boilerplate comments.
5810
5811 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
5812 Solaris, which does not need them.
5813
5814 * m/vax.h: Remove comments about unsupported systems.
5815
5816 * s/darwin.h: Reorganize ifdefs.
5817
58182008-07-17 Andreas Schwab <schwab@suse.de>
5819
5820 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
5821
58222008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
5823
5824 Use SDATA. Follow coding convention of placing operators at
5825 beginning of next line rather than end of previous line, and placing
5826 spaces around infix operators.
5827
5828 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
5829 in case it was defined already.
5830 USE @GNUSTEP_MAKEFILES@ rather than envvars.
5831 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
5832 ns_default.
5833 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
5834 Lisp_Objects.
5835 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
5836 (ns_defined_color, ns_color_to_lisp): Declare.
5837 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
5838 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
5839 it's accepted even with USE_LISP_UNION_TYPE.
5840 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
5841 (update_frame_tool_bar): Remove apparently obsolete tests for
5842 non-integerness of f->tool_bar_lines.
5843 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
5844 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
5845 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
5846 (nsfont_open): Don't confuse NULL for Qnil.
5847 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
5848 * menu.h (find_and_call_menu_selection):
5849 * menu.c (find_and_call_menu_selection): Use just int for vector size.
5850 (find_and_return_menu_selection): Always return something.
5851 * frame.h: Include dispextern.h for Display_Info.
5852 (display_x_get_resource): Declare.
5853
58542008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
5855
5856 * syntax.c: Remove stdio.h include accidentally introduced in
5857 Emacs.app commit.
5858 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
5859 NS_IMPL_COCOA.
5860 * keyboard.c (handle_async_input, input_available_signal): Remove
5861 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
5862
58632008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
5864
5865 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
5866 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
5867 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
5868 Use SDATA.
5869
5870 * keymap.c: Remove all NS-specific code.
5871 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
5872 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
5873 where_is_preferred_modifier, return a different value depending on how
5874 preferred is the binding.
5875 (where_is_internal): Adjust accordingly.
5876 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
5877 Adjust to new preferred_sequence_p.
5878 (syms_of_keymap): Declare `where-is-preferred-modifier'.
5879 * keyboard.c (parse_solitary_modifier): Not static any more.
5880 * keyboard.h (parse_solitary_modifier): Declare.
5881
58822008-07-16 Andreas Schwab <schwab@suse.de>
5883
5884 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
5885 of easymenu.
5886
58872008-07-16 Chong Yidong <cyd@stupidchicken.com>
5888
5889 * xdisp.c (move_it_in_display_line): Account for word wrap, so
5890 that we don't move off the line.
5891
58922008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
5893
5894 * keyboard.c (Qsuper): Remove.
5895 (parse_menu_item): Don't call where_is_internal specially for NS.
5896
58972008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
5898
5899 * s/gnu-linux.h: Remove boilerplate comments.
5900
5901 * m/alpha.h (__ELF__): Consolidate conditions.
5902
5903 * m/m68k.h (linux): Use GNU_LINUX instead.
5904 Remove boilerplate comments.
5905
5906 * m/intel386.h: Undo refactoring from previous change.
5907 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
5908 too, remove dead code.
5909 (linux): Use GNU_LINUX instead.
5910
59112008-07-16 Jason Rumney <jasonr@gnu.org>
5912
5913 * w32gui.h: Repeat 26 June changes lost by last change.
5914
59152008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
5916
5917 * systty.h: Remove code for Aix on 386, unsupported platform.
5918
5919 * s/ms-w32.h: Remove boilerplate comments.
5920 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
5921
5922 * s/gnu-linux.h (TERM): Remove support.
5923 (HAVE_SYSVIPC): Remove, unused.
5924 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
5925 for this system.
5926
5927 * process.c: Remove support for IRIS, unused.
5928 Remove support for TERM, not relevant anymore.
5929
5930 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
5931 used with the definition.
5932
5933 * s/aix4-2.h (static): Do not undef.
5934
5935 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
5936 only used on Aix.
5937 (HAVE_SYSVIPC): Remove, unused.
5938
5939 * m/hp800.h (CANNOT_DUMP): Do not undef.
5940
5941 * m/alpha.h: Fix comment.
5942
5943 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
5944 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
5945 used by this configuration.
5946 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
5947 * unexec.c: Remove code depending on HPUX and
5948 USG_SHARED_LIBRARIES, not used with this file. Remove code
5949 depending on IRIS, unused. Remove if 0-ed code.
5950
5951 * s/template.h: Remove comments about static.
5952
5953 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
5954 Remove if 0-ed code.
5955 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
5956 were the same as the default.
5957 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
5958 Remove boilerplate comments.
5959 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
5960 (HAVE_SYSVIPC): Remove, unused.
5961 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
5962
5963 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
5964 Remove boilerplate comments.
5965 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
5966 Remove boilerplate comments.
5967 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
5968 Remove boilerplate comments.
5969 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
5970
5971 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
5972 USG systems which do not use DATA_SEG_BITS.
5973 Refactor code. Remove boilerplate comments.
5974
5975 * m/ibms390.h:
5976 * m/m68k.h:
5977 * s/bsd-common.h:
5978 * s/cygwin.h:
5979 * s/darwin.h:
5980 * s/freebsd.h:
5981 * s/gnu.h:
5982 * s/msdos.h: Remove boilerplate comments.
5983
5984 * m/iris4d.h: Remove boilerplate comments and code for systems that
5985 do not use this file.
5986 (IRIS_4D): Remove, unused.
5987
5988 * m/mips.h: Remove boilerplate comments and code for systems that
5989 do not use this file.
5990 (SIGN_EXTEND_CHAR):
5991 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
5992 * unexmips.c: Remove file, unused.
5993
5994 * editfns.c (Fuser_full_name): Replace the only use of
5995 USER_FULL_NAME with its value.
5996 * config.in: Regenerate.
5997
59982008-07-16 David Reitter <david.reitter@gmail.com>
5999
6000 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
6001 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
6002
60032008-07-16 Glenn Morris <rgm@gnu.org>
6004
6005 * emacs.c (system-type): Doc fix.
6006
60072008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
6008
6009 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
6010 If the cache doesn't work, let's fix it, rather than work around it.
6011
60122008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6013
6014 * Makefile.in: Correct additions for nsfont.o in last commit.
6015 * nsfont.m: New file (forgot last commit).
6016
60172008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6018
6019 * callproc.c (set_initial_environment): Initialize
6020 Vprocess_environment under CANNOT_DUMP (fixes crash when
6021 batch-compiling for bootstrap).
6022
60232008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6024 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6025
6026 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
6027 fix crash due to different init order.
6028
60292008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6030
6031 Changes and additions for NeXTstep windowing system (Cocoa and
6032 GNUstep) support.
6033
6034 * Makefile.in:
6035 * config.in: Support defines and build commands for NS port.
6036 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
6037 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
6038 * dispextern.h: Include nsgui.h and add needed typedefs under NS
6039 windowing.
6040 (struct face): Add synth_ital field.
6041 * dispnew.c: Include nsterm.h when compiling under NS windowing.
6042 (init_display): Initialize Vinitial_window_system to "ns" when so
6043 compiled.
6044 * emacs.c: Include GSConfig.h when compiling under GNUstep.
6045 (display_arg): Use under NS.
6046 (main): Under NS, allocate autorelease pool and handle command line
6047 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
6048 (standard_args): Add NS-specific args.
6049 (shut_down_emacs): Shut down NS terminal if compiled under NS.
6050 * font.c (DEFAULT_ENCODING): New variable.
6051 (font_find_for_lface): Use it.
6052 (syms_of_font): Load syms_of_nsfont under NS.
6053 * font.h: Declare nsfont_driver when compiled under NS.
6054 * fontset.c: When compiling under NS, include nsterm.h.
6055 (fontset_from_font): Autoconstruct fontset under NS.
6056 * frame.c (various): Under NS, include nsterm.h, add Qns window system
6057 symbol, document and use it.
6058 (do_switch_frame): When for_deletion under Cocoa, add
6059 Fraise_frame(Qnil).
6060 (x_set_frame_parameters): Ensure font attribute changes are picked up.
6061 (x_get_arg): Allow "yes" and "no" as boolean values.
6062 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
6063 Qright under Cocoa.
6064 (focus-follows-mouse): Default to 0 under NS.
6065 * frame.h (enum output_method): Add output_ns.
6066 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
6067 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
6068 (FRAME_WINDOW_P): NS-specific definition.
6069 * fringe.c (max_used_fringe_bitmap): Make public.
6070 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
6071 (getloadavg): Use NeXT code under descendant OS's.
6072 * image.c (includes and header section, x_create_bitmap_from_data)
6073 (x_create_bitmap_from_file, free_bitmap_record, image_background)
6074 (image_background_transparent, x_clear_image_1)
6075 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
6076 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
6077 (x_to_xcolors, x_from_xcolors, x_disable_image)
6078 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
6079 other GUIs, including XPM support using code originally written for
6080 Carbon GUI.
6081 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
6082 using NS API.
6083 (image_ascent): Use font metrics macros instead of direct struct field
6084 access.
6085 * keyboard.c (includes): Add nsterm.h when compiling under NS.
6086 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
6087 Also, handle NS as GTK for menu bar purposes.
6088 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
6089 toolkit where they differ.
6090 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
6091 use cachelist, still needed under NS.
6092 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
6093 (struct widget_value): Define it here for menu.c.
6094 * keymap.c (includes): Include modifier internals.
6095 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
6096 NS.
6097 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
6098 support for preferring sequences using certain modifiers, specified by
6099 the FIRSTONLY argument.
6100 * lisp.h (hash_remove): Rename to avoid name clash when compiling
6101 under NS GNUstep implementation.
6102 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
6103 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
6104 * menu.c: Include nsterm.h under NS.
6105 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
6106 (free_menubar_widget_tree_value, update_submenu_strings)
6107 (find_and_call_menu_selection): Treat NS as X and NT.
6108 (find_and_return_menu_selection): New function, used for popup menus.
6109 * nsgui.h:
6110 * nsterm.h:
6111 * nsfns.m:
6112 * nsimage.m:
6113 * nsmenu.m:
6114 * nsselect.m:
6115 * nsterm.m: New files.
6116 * process.c (wait_reading_process_output): Under NS, call ns_select()
6117 instead of plain select().
6118 * syntax.c (char_quoted): Under NS, avoid a crash when called near
6119 beginning of buffer.
6120 * sysselect.h (init_process): Rename when compiling under Cocoa to
6121 avoid name conflict.
6122 * termhooks.h (display_info): Add ns_display_info to union.
6123 * terminal.c (Fterminal_live_p): Add ns to terminal types.
6124 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
6125 COCOA environment.
6126 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
6127 unexec() signature. (Note, this will dump, but the resulting file
6128 crashes; unexosx is used instead; keeping around for reference and
6129 possible aid in getting dump working under GNUstep.)
6130 * w32gui.h (button_type, widget_value): Remove definitions (now in
6131 keyboard.h).
6132 * window.c: Include nsterm.h when compiling under NS.
6133 * xdisp.c (includes): Include nsterm.h when compiling under NS.
6134 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
6135 other GUI windowing systems.
6136 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
6137 GTK.
6138 (x_consider_frame_title): Under NS, set icon type and frame
6139 modified-state indicator; use ns_set_name_as_filename() when using
6140 formatted title.
6141 (update_window_cursor): Make public when compiling under NS.
6142 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
6143 (hourglass_atimer, Vhourglass_delay
6144 * xfaces.c (header section, init_frame_faces, clear_font_table)
6145 (defined_color, unload_color, x_face_list_fonts)
6146 (prepare_face_for_display): Add NS support parallel to other GUIs.
6147 Emulate GCs like other non-X GUIs.
6148 (split_font_name): Don't lowercase font name under NS.
6149 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
6150 under NS.
6151 * s/darwin.h: Add support for compilation under NS.
6152
61532008-07-15 Jason Rumney <jasonr@gnu.org>
6154
6155 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
6156 (w32_show_hourglass): Rename from show_hourglass.
6157 (w32_hide_hourglass): Rename from hide_hourglass.
6158 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
6159 (Vhourglass_delay): Declare extern.
6160 (hourglass_started): Remove.
6161
6162 * xdisp.c (Vhourglass_delay): Remove static.
6163 (hourglass_started, start_hourglass, cancel_hourglass):
6164 Don't include these versions on WINDOWSNT.
6165
61662008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6167
6168 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
6169 variables (formerly in xfns.c).
6170 (show_hourglass, hide_hourglass): New prototypes (same).
6171 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
6172 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
6173 in xfns.c).
6174 (syms_of_xdisp): Declare/initialize display-hourglass,
6175 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
6176 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
6177 formerly in xfns.c.
6178 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6179 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6180 (start_hourglass, cancel_hourglass): Remove.
6181 (show_hourglass, hide_hourglass): Remove prototypes and static
6182 modifiers.
6183 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
6184 hourglass_atimer, hourglass_shown_p declaration/initialization.
6185 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6186 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6187 (start_hourglass, cancel_hourglass): Remove.
6188 (show_hourglass, hide_hourglass): Remove prototypes and static
6189 modifiers.
6190 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
6191 hourglass_atimer, hourglass_shown_p declaration/initialization.
6192 * w32fns.c (display_hourglass_p, Vhourglass_delay)
6193 (DEFAULT_HOURGLASS_DELAY): Remove.
6194 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
6195 hourglass_shown_p declaration/initialization.
6196
61972008-07-14 Jason Rumney <jasonr@gnu.org>
6198
6199 * w32fns.c (w32_get_arg): Remove wrapper function.
6200 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
6201 directly.
6202 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
6203
62042008-07-14 Kenichi Handa <handa@m17n.org>
6205
6206 * xfont.c (xfont_open): Add workaround for X's bug.
6207
62082008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
6209
6210 * fontset.c: Include <stdio.h> unconditionally.
6211
62122008-07-13 Michael Albinus <michael.albinus@gmx.de>
6213
6214 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
6215 for filtering.
6216
62172008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
6218
6219 * s/vms.h: Use __GNUC__ instead of _GNUC_.
6220
6221 * m/macppc.h:
6222 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
6223
6224 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
6225 (SPECIAL_EMACS_INT):
6226 * m/ia64.h (SPECIAL_EMACS_INT):
6227 * m/amdx86-64.h (SPECIAL_EMACS_INT):
6228 * s/gnu.h (NLIST_STRUCT):
6229 * s/aix4-2.h (X11R5_INHIBIT_I18N):
6230 * s/gnu-linux.h (LINUX):
6231 * s/msdos.h (HAVE_FACES):
6232 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
6233
6234 * systty.h:
6235 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
6236 anymore.
6237
62382008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
6239
6240 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
6241 always defined as int.
6242
6243 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
6244 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
6245 * s/gnu-linux.h (HAVE_WAIT_HEADER):
6246 * s/freebsd.h (HAVE_WAIT_HEADER):
6247 * s/bsd-common.h (HAVE_UNION_WAIT):
6248 * s/aix4-2.h (HAVE_WAIT_HEADER):
6249 * m/mips.h (HAVE_UNION_WAIT):
6250 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
6251 (COFF, static): Do not define, they are undefined later in the file.
6252
6253 * process.c (update_status): Don't use a union.
6254 (status_convert):
6255 (sigchld_handler): Use int instead of WAITTYPE.
6256
62572008-07-12 Chong Yidong <cyd@stupidchicken.com>
6258
6259 * indent.c (Fvertical_motion): Restore hscroll before moving to
6260 goal column.
6261
62622008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6263
6264 * lisp.h: Remove left over code.
6265
62662008-07-11 Andreas Schwab <schwab@suse.de>
6267
6268 * lisp.h: Fix logic in last change.
6269
6270 * menu.h: New file.
6271 * menu.c: Include it.
6272 * xmenu.c: Likewise.
6273 * Makefile.in: Update dependencies.
6274
62752008-07-11 Kenichi Handa <handa@m17n.org>
6276
6277 * fontset.c (fontset_from_font): Cancel the previous change.
6278
62792008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6280
6281 * lisp.h:
6282 * w32heap.c:
6283 * emacs.c:
6284 * alloc.c: Replace all references of NO_UNION_TYPE with
6285 USE_LISP_UNION_TYPE.
6286
6287 * m/xtensa.h (NO_UNION_TYPE):
6288 * m/vax.h (NO_UNION_TYPE):
6289 * m/template.h (NO_UNION_TYPE):
6290 * m/sparc.h (NO_UNION_TYPE):
6291 * m/mips.h (NO_UNION_TYPE):
6292 * m/macppc.h (NO_UNION_TYPE):
6293 * m/m68k.h (NO_UNION_TYPE):
6294 * m/iris4d.h (NO_UNION_TYPE):
6295 * m/intel386.h (NO_UNION_TYPE):
6296 * m/ibms390x.h (NO_UNION_TYPE):
6297 * m/ibms390.h (NO_UNION_TYPE):
6298 * m/ibmrs6000.h (NO_UNION_TYPE):
6299 * m/ia64.h (NO_UNION_TYPE):
6300 * m/hp800.h (NO_UNION_TYPE):
6301 * m/arm.h (NO_UNION_TYPE):
6302 * m/amdx86-64.h (NO_UNION_TYPE):
6303 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
6304 defining it the same.
6305
63062008-07-10 Chong Yidong <cyd@stupidchicken.com>
6307
6308 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
6309
63102008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6311
6312 * fileio.c:
6313 * sysdep.c
6314 * systty.h:
6315 * m/ibmrs6000.h:
6316 * m/iris4d.h:
6317 * s/aix4-2.h:
6318 * s/freebsd.h:
6319 * s/gnu-linux.h:
6320 * s/hpux10-20.h:
6321 * s/hpux11.h:
6322 * s/netbsd.h:
6323 * s/sol2-3.h:
6324 * s/sol2-4.h:
6325 * s/sol2.h:
6326 * s/usg5-4.h:
6327 * s/vms.h: Remove references to unused variables.
6328
63292008-07-10 Andreas Schwab <schwab@suse.de>
6330
6331 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
6332 pattern before matching the generic family.
6333
63342008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6335
6336 * unexec.c:
6337 * s/vms.h:
6338 * s/usg5-4-2.h:
6339 * s/sol2-5.h:
6340 * s/freebsd.h:
6341 * s/darwin.h: Remove dead code.
6342
6343 * m/template.h:
6344 * m/sparc.h:
6345 * m/mips.h:
6346 * m/m68k.h:
6347 * m/iris4d.h:
6348 * m/intel386.h:
6349 * m/ibms390x.h:
6350 * m/ibms390.h:
6351 * m/ia64.h:
6352 * m/hp800.h:
6353 * m/arm.h:
6354 * m/amdx86-64.h: Remove dead code and references to unused
6355 and compiler defined symbols.
6356
6357 * unexmips.c:
6358 * unexelf.c: Remove references to desupported systems.
6359
6360 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
6361
6362 * m/powermac.h: Remove boilerplate comments.
6363 (NO_REMAP): Remove unused definition.
6364
6365 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
6366 define them.
6367
63682008-07-10 Kenichi Handa <handa@m17n.org>
6369
6370 * xfont.c (xfont_open): Log the reason of failure.
6371
63722008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
6373
6374 * fontset.c (fontset_get_font_group):
6375 * font.c (font_check_otf): Specify argument types.
6376
63772008-07-09 Kenichi Handa <handa@m17n.org>
6378
6379 * coding.c (detect_coding_utf_8): Set detect_info->found only when
6380 non-ASCII char is found.
6381
6382 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
6383 (reorder_font_vector): Change the arg preferred_family to font.
6384 Prefer the spec matching with font.
6385 (fontset_get_font_group): New function.
6386 (fontset_find_font): Change the format of an element of a realized
6387 fontset. Use fontset_get_font_group.
6388 (fontset_font): Try the current fontset, the default fontset, the
6389 fallbacks of the current fontset, and the fallbacks of the default
6390 fontset in this order.
6391 (face_for_char): Delete the shortcut to use the current font.
6392 (fontset_from_font): Don't set fonts for Latin in the fontset.
6393
6394 * font.h (font_make_object, font_match_p): Adjust prototypes.
6395
6396 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
6397
6398 * font.c (font_make_object): New arg entity and pixelsize.
6399 (font_check_otf_features, font_check_otf): New functions.
6400 (font_match_p): Check :lang, :script, and :otf properties.
6401
6402 * xfont.c (xfont_open): Adjust it for the change of
6403 font_make_object.
6404 (xfont_text_extents): Fix initial setting of metrics.
6405
6406 * ftfont.c (struct ftfont_info): New member index, delete member
6407 fc_charset_idx. Make the member order compatible with struct
6408 xftfont_info.
6409 (fc_charset_table): Change charset names to registry names.
6410 (ftfont_pattern_entity): Delete the args registry and
6411 fc_charset_idx. Change the value of :font-entity property
6412 to (FONTNAME . INDEX). Always set :registry property to
6413 `iso10646-1'.
6414 (struct ftfont_cache_data): New struct.
6415 (ftfont_lookup_cache): New arg for_face.
6416 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
6417 (ftfont_driver): Set the member otf_capability.
6418 (ftfont_get_charset): Adjust it for the change of
6419 fc_charset_table.
6420 (OTF_TAG_SYM): New macro.
6421 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
6422 for the change of fc_charset_table.
6423 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
6424 ftfont_pattern_entity. Add FC_INDEX to objset.
6425 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
6426 and ftfont_pattern_entity.
6427 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
6428 font_make_object, struct ftfont_info.
6429 (ftfont_has_char): Use ftfont_get_fc_charset.
6430 (ftfont_otf_features, ftfont_otf_capability): New functions.
6431 (ftfont_shape): Use ftfont_get_otf.
6432 (ftfont_text_extents): Fix initial setting of metrics.
6433
6434 * xftfont.c (struct xftfont_info): New member ft_size. Make the
6435 member order compatible with struct ftfont_info.
6436 (xftfont_open): Add FC_CHARSET to the pattern. Set
6437 xftfont_info->ft_size. Don't unlock the face. Check BDF
6438 properties if appropriate.
6439 (xftfont_close): Unlock the face.
6440 (xftfont_anchor_point, xftfont_shape): Deleted.
6441 (syms_of_xftfont): Don't set members anchor_point and shape of
6442 xftfont_driver.
6443
6444 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
6445 font_make_object.
6446
6447 * w32font.c (w32font_open): Adjust it for the change of
6448 font_make_object.
6449 (w32font_open_internal): Don't set properties of font_object here.
6450
64512008-07-08 Chong Yidong <cyd@stupidchicken.com>
6452
6453 * macfns.c (x_create_tip_frame):
6454 * w32fns.c (x_create_tip_frame):
6455 * xfns.c (x_create_tip_frame): Pass parameter argument to
6456 face-set-after-frame-default.
6457
6458 * xfaces.c (Finternal_merge_in_global_face): Save merged
6459 attributes for the default face back into the face vector.
6460
64612008-07-08 Andreas Schwab <schwab@suse.de>
6462
6463 * fontset.h: Declare fontset_from_font. Don't declare
6464 new_fontset_from_font and fontset_from_font_name.
6465 * xterm.c: Include "fontset.h".
6466 * Makefile.in (xterm.o): Update dependencies.
6467
64682008-07-08 Glenn Morris <rgm@gnu.org>
6469
6470 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
6471 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
6472
64732008-07-07 Chong Yidong <cyd@stupidchicken.com>
6474
6475 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
6476 (x_set_frame_parameters): Don't bind it.
6477
64782008-07-07 Juanma Barranquero <lekktu@gmail.com>
6479
6480 * w32fns.c (map_w32_filename): Declare extern.
6481
64822008-07-07 Jason Rumney <jasonr@gnu.org>
6483
6484 * w32term.c (WS_EX_LAYERED): Define if not already.
6485
64862008-07-06 Chong Yidong <cyd@stupidchicken.com>
6487
6488 * xfaces.c (set_font_frame_param): Don't try to set the font
6489 parameter if it is still unspecified in the lface.
6490
64912008-07-05 Chong Yidong <cyd@stupidchicken.com>
6492
6493 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
6494 face if it didn't already exist.
6495
6496 * xdisp.c (try_window_id): Give up if word-wrapping is on.
6497
64982008-07-05 Andreas Schwab <schwab@suse.de>
6499
6500 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
6501
65022008-07-05 Chong Yidong <cyd@stupidchicken.com>
6503
6504 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
6505 word-wrapping.
6506 (IT_DISPLAYING_WHITESPACE): New macro.
6507 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
6508 when word-wrapping. Simplify word-wrapping logic. Use correct
6509 pixel positions when saving copies of the iterator.
6510 (display_line): Use proper wrap point if the last character on a
6511 line was preceded by whitespace.
6512
65132008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
6514
6515 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
6516
65172008-07-04 Kenichi Handa <handa@m17n.org>
6518
6519 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
6520
6521 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
6522
65232008-07-02 Jason Rumney <jasonr@gnu.org>
6524
6525 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 6526 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
6527
6528 * xdisp.c (next_element_from_display_vector): Move assignment out
6529 of if statement.
6530
65312008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
6532
6533 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
6534
6535 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
6536 (syms_of_fileio): Initialize and export them.
6537 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
6538
6539 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
6540 (Fsystem_move_file_to_trash): New function.
6541 (syms_of_w32fns): Export it to lisp.
6542
65432008-07-01 Jason Rumney <jasonr@gnu.org>
6544
6545 * w32font.c (w32font_text_extents): Don't count overhang as part
6546 of width.
6547
65482008-06-30 Miles Bader <miles@gnu.org>
6549
6550 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
6551 Add `avoid_cursor_p' field.
6552
6553 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
6554 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
6555 (append_glyph, append_composite_glyph, produce_image_glyph)
6556 (append_stretch_glyph): Initialize avoid_cursor_p.
6557 (get_it_property): Rename from `get_line_height_property'.
6558 (x_produce_glyphs): Use get_it_property.
6559 (handle_line_prefix, push_display_prop): New functions.
6560 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
6561 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
6562 New variables.
6563 (syms_of_xdisp): Initialize them.
6564
65652008-06-30 Kenichi Handa <handa@m17n.org>
6566
6567 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
6568 XftDefaultSubstitute (they are called in XftFontMatch).
6569 (xftfont_open): Fix args to ftfont_font_format.
6570
6571 * ftfont.c (fc_charset_table): New member lang.
6572 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 6573 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
6574 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
6575 (ftfont_open): Fix args to ftfont_font_format.
6576 (ftfont_font_format): New arg filename.
6577
65782008-06-30 Chong Yidong <cyd@stupidchicken.com>
6579
6580 * xfaces.c (Finternal_merge_in_global_face): If default face was
6581 modified, realize it again. Update the font face attribute.
6582
65832008-06-29 Jason Rumney <jasonr@gnu.org>
6584
6585 * w32term.c (x_set_frame_alpha): Fix logic.
6586
65872008-06-29 Kenichi Handa <handa@m17n.org>
6588
6589 * fontset.c (Finternal_char_font): Return font-object instead of
6590 font-name.
6591
6592 * composite.c (get_composition_id): Fix the width calculation for TAB.
6593
65942008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
6595
6596 * indent.c (Fvertical_motion): Properly handle float column arg.
6597
65982008-06-28 Jason Rumney <jasonr@gnu.org>
6599
6600 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
6601 (pfnSetLayeredWindowAttributes): New function pointer.
6602 (w32_initialize): Initialize it when supported.
6603 (x_set_frame_alpha): New function.
6604
6605 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
6606 (w32_frame_parm_handlers): Set alpha handler.
6607
6608 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
6609
66102008-06-27 Jason Rumney <jasonr@gnu.org>
6611
6612 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
6613 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
6614 (w32_to_x_charset, x_to_w32_charset)
6615 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
6616 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
6617 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
6618 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
6619 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
6620 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
6621 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
6622 (Qw32_charset_unicode): Remove.
6623 (syms_of_w32fns): Update for above changes.
6624
6625 * w32font.c (w32_to_x_charset, x_to_w32_charset)
6626 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
6627 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
6628 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
6629 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
6630 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
6631 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
6632 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
6633 (syms_of_w32font): Update for above changes.
6634
66352008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
6636
6637 * s/usg5-4.h: Fix previous change: keep the correct branch of a
6638 removed #if.
6639 (USG_SHARED_LIBRARIES): Remove duplicate definition.
6640
66412008-06-26 Juanma Barranquero <lekktu@gmail.com>
6642 Eli Zaretskii <eliz@gnu.org>
6643
6644 * makefile.w32-in (LOCAL_FLAGS):
6645 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
6646
6647 * sysdep.c (_spawnlp, _getpid):
6648 Declare with explicit _cdecl instead of _CRTAPI1.
6649
6650 * editfns.c (Fget_internal_run_time):
6651 Check for WINDOWSNT with #ifdef, not #if.
6652
66532008-06-26 Jason Rumney <jasonr@gnu.org>
6654
6655 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
6656
6657 * w32term.c (x_draw_glyph_string_foreground)
6658 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
6659 Use FONT_HANDLE macro.
6660 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
6661
6662 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
6663 (uniscribe_encode_char): Use FONT_HANDLE macro.
6664
6665 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
6666 (w32font_text_extents): Use precast w32_font.
6667 (w32font_close): Free cached metrics.
6668 (w32font_open_internal): Allocate space for name on stack.
6669
66702008-06-26 Chong Yidong <cyd@stupidchicken.com>
6671
6672 * xdisp.c (extend_face_to_end_of_line): Fix last change.
6673
66742008-06-26 Jason Rumney <jasonr@gnu.org>
6675
6676 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
6677 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
6678
66792008-06-26 Juanma Barranquero <lekktu@gmail.com>
6680
6681 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
6682
66832008-06-26 Jason Rumney <jasonr@gnu.org>
6684
6685 * w32bdf.c, w32bdf.h: Remove obsolete files.
6686
6687 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
6688
6689 * w32gui.h: Don't include w32bdf.h.
6690 (XCharStruct, enum w32_char_font_type, W32FontStruct):
6691 Remove obsolete font support.
6692
6693 * w32font.h (struct w32font_info): Remove compat_w32_font.
6694 Add hfont member.
6695 (FONT_COMPAT): Remove obsolete macro.
6696
6697 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
6698 (w32font_encode_char, w32font_text_extents): Use new hfont member.
6699 (w32font_open_internal): Remove compat code. Set new hfont member.
6700 (Fx_select_font): Use new hfont member.
6701
6702 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
6703 (uniscribe_encode_char): Use new hfont member.
6704
6705 * w32term.c (x_draw_glyph_string_foreground)
6706 (x_draw_composite_glyph_string_foreground): Use new hfont member.
6707 (x_draw_glyph_string): Use metrics in w32font_info.
6708
67092008-06-26 Kenichi Handa <handa@m17n.org>
6710
6711 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
6712
67132008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
6714
6715 * unexnext.c:
6716 * m/ews4800.h:
6717 * m/hp9000s300.h:
6718 * m/ibm370aix.h:
6719 * m/mips-siemens.h:
6720 * m/ncr386.h:
6721 * m/next.h:
6722 * m/pmax.h:
6723 * m/powerpcle.h:
6724 * m/tandem-s2.h:
6725 * s/386bsd.h:
6726 * s/bsd386.h:
6727 * s/bsd4-1.h:
6728 * s/bsd4-2.h:
6729 * s/bsdos2-1.h:
6730 * s/bsdos2.h:
6731 * s/bsdos3.h:
6732 * s/bsdos4.h:
6733 * s/nextstep.h:
6734 * s/ultrix4-3.h:
6735 * s/usg5-0.h:
6736 * s/usg5-2-2.h:
6737 * s/usg5-2.h:
6738 * s/usg5-4-3.h:
6739 * s/ux4800.h:
6740 * s/uxpds.h:
6741 * s/uxpv.h: Remove support for obsolete systems.
6742 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 6743 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
6744 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
6745 Remove, insert contents in s/aix4-2.h.
6746 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
6747 * s/bsd4-3.h: Rename to ...
6748 * s/bsd-common.h: ... this.
6749 * data.c:
6750 * doc.c:
6751 * ecrt0.c:
6752 * emacs.c:
6753 * fileio.c:
6754 * floatfns.c:
6755 * keyboard.c:
6756 * mem-limits.h:
6757 * print.c:
6758 * process.c:
6759 * sysdep.c:
6760 * syssignal.h:
6761 * systty.h:
6762 * syswait.h:
6763 * term.c:
6764 * unexec.c:
6765 * unexelf.c:
6766 * unexhp9k800.c:
6767 * m/hp800.h:
6768 * m/ibmrs6000.h:
6769 * m/mips.h:
6770 * m/vax.h:
6771 * s/darwin.h:
6772 * s/freebsd.h:
6773 * s/gnu.h:
6774 * s/ms-w32.h:
6775 * s/msdos.h:
6776 * s/netbsd.h:
6777 * s/template.h: Remove references to obsolete variables.
6778
6779 * Makefile.in: Add dependencies for all unexec files.
6780 (admindir): Remove unused variable.
6781 (UNEXEC_SRC): Remove references.
6782
67832008-06-25 Chong Yidong <cyd@stupidchicken.com>
6784
6785 * xfns.c (x_default_font_parameter): If Xft is available, first
6786 try Monospace-12 for the default font.
6787
67882008-06-25 Jason Rumney <jasonr@gnu.org>
6789
6790 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
6791
67922008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
6793
6794 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
6795
6796 * buffer.c (syms_of_buffer): Remove default-word-wrap.
6797
67982008-06-25 Juanma Barranquero <lekktu@gmail.com>
6799
6800 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
6801 <scroll-conservatively>: Fix typo in docstring.
6802
6803 * xselect.c (Fx_send_client_event): Doc fix.
6804
68052008-06-25 Kenichi Handa <handa@m17n.org>
6806
6807 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
6808
6809 * font.c (font_parse_fcname): Remove unused variables.
6810 (font_sort_entites): Delete the arg SPEC. Caller changed.
6811 Fix for the case of ! best_only.
6812 (font_delete_unmatched): Check DPI and AVGWIDTH too.
6813
6814 * lisp.h (Fstring_to_unibyte): EXFUN it.
6815
6816 * character.h (str_to_unibyte): Extern it.
6817
6818 * character.c (str_to_unibyte): New function.
6819
6820 * fns.c (Fstring_to_unibyte): New function.
6821 (syms_of_fns): Defsubr it.
6822
68232008-06-24 Kenichi Handa <handa@m17n.org>
6824
6825 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
6826 DPI too.
6827 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
6828
68292008-06-24 Andreas Schwab <schwab@suse.de>
6830
6831 * Makefile.in (${lispsource}loaddefs.el): Rename from
6832 ../lisp/loaddefs.el.
6833 (bootstrap-clean): Do what distclean does but don't remove
6834 Makefile.
6835 (distclean): Depend on bootstrap-clean and remove Makefile.
6836
68372008-06-24 Chong Yidong <cyd@stupidchicken.com>
6838
6839 * buffer.h (struct buffer): New member word_wrap.
6840
6841 * buffer.c (syms_of_buffer): New variables default-word-wrap and
6842 word-wrap.
6843 (init_buffer_once): Initialize them.
6844
6845 * dispextern.h (struct it): Replace bool truncate_lines_p with a
6846 line_wrap enum possessing three possible values.
6847
6848 * termopts.h: Replace truncate_partial_width_windows with
6849 Vtruncate_partial_width_windows.
6850
6851 * dispnew.c (direct_output_for_insert): Avoid direct output when
6852 inserting a space with word wrap on.
6853
6854 * indent.c (compute_motion): Obey integer values of
6855 truncate-partial-width-windows.
6856
6857 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
6858 replacing truncate_partial_width_windows.
6859 (init_iterator): If Vtruncate_partial_width_windows is an integer,
6860 truncate only if the window width is below that integer.
6861 (start_display, resize_mini_window, produce_stretch_glyph)
6862 (display_string, move_it_in_display_line_to): Use line_wrap.
6863 (back_to_previous_visible_line_start, reseat_1): Reset
6864 string_from_display_prop_p.
6865 (display_line): Extend default face to end of line when wrapping.
6866
68672008-06-24 Kim F. Storm <storm@cua.dk>
6868
6869 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
6870 to wrap continued lines at word boundaries.
6871
68722008-06-24 Jason Rumney <jasonr@gnu.org>
6873
6874 * font.c (Ffont_face_attributes): Multiply pixel size before point
6875 conversion to avoid multiplying rounding error.
6876
68772008-06-23 Jason Rumney <jasonr@gnu.org>
6878
6879 * w32term.c (x_draw_glyph_string_background)
6880 (x_draw_glyph_string): Remove old bdf font code.
6881
6882 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
6883
68842008-06-22 Kenichi Handa <handa@m17n.org>
6885
6886 * font.c (font_find_for_lface): Try the adstyle specified in
6887 the property of LFACE_FONT of LFACE (if any).
6888
68892008-06-21 Seiji Zenitani <zenitani@mac.com>
6890 Ryo Yoshitake <ryo@shiftmode.net>
6891
6892 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
6893
68942008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
6895
6896 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
6897 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
6898 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
6899 (witness-emacs): Remove.
6900 (lisp, shortlisp): Move loaddefs.el earlier.
6901 (mostlyclean): Forget about witness-emacs.
6902
69032008-06-22 Glenn Morris <rgm@gnu.org>
6904
6905 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
6906 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
6907
69082008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
6909
6910 * Makefile.in (PRECOMP): Remove.
6911 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
6912 (witness-emacs): Run `compile-first'.
6913 (.el.elc): Use the new compile-onefile target.
6914
69152008-06-21 Kenichi Handa <handa@m17n.org>
6916
6917 * xftfont.c (xftfont_open): Handle QCembolden only when
6918 FC_EMBOLDEN is defined.
6919
69202008-06-21 Andreas Schwab <schwab@suse.de>
6921
6922 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
6923 (.el.elc): Likewise.
6924
69252008-06-21 Miles Bader <miles@gnu.org>
6926
6927 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
6928 build dir, not the lisp source dir.
6929
69302008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
6931
6932 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
6933 (bootstrapclean): Remove.
6934 (.el.elc): New rule.
6935 (PRECOMP): New var.
6936 (../lisp/subdirs.el): Remove.
6937 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
6938 (witness-emacs): New target.
6939 (mostlyclean): Remove witness-emacs as well.
6940 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
6941 Add witness-emacs dependency.
6942
69432008-06-20 Chong Yidong <cyd@stupidchicken.com>
6944
6945 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
6946 defined by the font.
6947
69482008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
6949
6950 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
6951 (bootstrap-clean): New target that keeps TAGS around.
6952 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
6953 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
6954
69552008-06-20 Jason Rumney <jasonr@gnu.org>
6956
6957 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
6958 Remove obsolete font code.
6959
6960 * w32font.c (font_matches_spec): Use csb bitfield from font signature
6961 to determine language support.
6962
69632008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
6964
6965 * sysdep.c (cfsetspeed): New fun extracted from the code.
6966 (cfmakeraw): Move before first use.
6967
69682008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
6969
6970 * sysdep.c (cfmakeraw): Provide fallback implementation.
6971 (serial_configure): Provide fallback implementation of cfsetspeed.
6972
69732008-06-20 Kenichi Handa <handa@m17n.org>
6974
6975 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
6976 the pattern.
6977
6978 * fontset.c (fontset_from_font): Copy font_spec before changing
6979 the elements.
6980
6981 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
6982
69832008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
6984
6985 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
6986 for explicit `font' parameters.
6987
6988 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
6989
69902008-06-19 Kenichi Handa <handa@m17n.org>
6991
6992 * frame.c: Include <ctype.h>.
6993 (x_set_font_backend): Allow spacing characters in the X resource
6994 for FontBackend.
6995
69962008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
6997
6998 * w32fns.c, xfns.c (Qfont_param): New var.
6999 (syms_of_w32fns): Initialize it.
7000 (x_default_font_parameter): Record explicit `font' into
7001 `font-parameter'.
7002
70032008-06-18 Kenichi Handa <handa@m17n.org>
7004
7005 * font.c (font_parse_xlfd): Fix previous change.
7006 (font_parse_fcname): Don't use :fc-unknown-spec.
7007 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
7008 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
7009 (font_add_log): Prepend the driver name to the resulting fonts.
7010
7011 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
7012 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
7013 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
7014
7015 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
7016 (QCembolden): New variables.
7017 (syms_of_xftfont): DEFSYM them.
7018 (xftfont_open): Call XftFontMatch. Don't trust the result of
7019 XftTextExtents8 if the pixel_size is less than 5.
7020
70212008-06-18 Andreas Schwab <schwab@suse.de>
7022
7023 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
7024 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
7025
70262008-06-18 Jason Rumney <jasonr@gnu.org>
7027
7028 * w32font.c (w32font_list, w32font_match): Add logging.
7029
7030 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
7031
70322008-06-17 Chong Yidong <cyd@stupidchicken.com>
7033
7034 * font.c (font_parse_fcname): Store divider characters for
7035 unknown-spec list. For known key symbols, intern using correct
7036 symbol name.
7037
70382008-06-17 Kenichi Handa <handa@m17n.org>
7039
7040 * xfaces.c (realize_default_face): If the frame is not on window
7041 system, set the fontset of face to nil.
7042
70432008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7044
7045 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
7046
70472008-06-16 Juanma Barranquero <lekktu@gmail.com>
7048
7049 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
7050 (build_font_name_from_vector): Delete externs.
7051
7052 * xfaces.c (struct font_name): Don't declare.
7053
70542008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
7055
7056 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
7057
70582008-06-16 Chong Yidong <cyd@stupidchicken.com>
7059
7060 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
7061
70622008-06-16 Juanma Barranquero <lekktu@gmail.com>
7063
7064 * font.c (Ffont_spec): Fix usage in docstring.
7065 (Ffont_face_attributes): Doc fix.
7066
70672008-06-16 Andreas Schwab <schwab@suse.de>
7068
7069 * font.c (Ffont_face_attributes): Fix definition.
7070
70712008-06-16 Jason Rumney <jasonr@gnu.org>
7072
7073 * font.h (font_style_symbolic_from_value): Remove.
7074
7075 * font.c (font_style_symbolic_from_value): Remove.
7076 (font_style_symbolic): Revert to pre 2008-06-13 version.
7077
7078 * w32font.c (w32_to_fc_weight): New function.
7079 (w32font_full_name, logfont_to_fcname): Use it.
7080
70812008-06-16 Kenichi Handa <handa@m17n.org>
7082
7083 * font.c (font_check_object): Delete it.
7084 (font_clear_cache): Check if a font-object is alive.
7085 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
7086 font-object to nil.
7087 (font_close_object): Don't check FONT_CLOSE_OBJECT.
7088 (font_at): Don't call font_check_object.
7089 (Ffont_get): Return a symbol for :weight, :slant, and :width.
7090
70912008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
7092
7093 * puresize.h (BASE_PURESIZE): Increase to 1230000.
7094
70952008-06-16 Chong Yidong <cyd@stupidchicken.com>
7096
7097 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
7098
70992008-06-15 Chong Yidong <cyd@stupidchicken.com>
7100
7101 * font.c (font_parse_fcname): Only one decimal point.
7102 (font_unparse_fcname): Handle data in family and foundry indices
7103 as symbols, not strings.
7104 (font_unparse_gtkname, Ffont_face_attributes): New functions.
7105
7106 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
7107
7108 * font.h (font_unparse_gtkname): Add prototype.
7109
71102008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7111
7112 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
7113
71142008-06-15 Andreas Schwab <schwab@suse.de>
7115
7116 * font.c (font_update_drivers): Fix crash when no drivers match.
7117
71182008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
7119
7120 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
7121 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
7122
71232008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
7124
7125 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
7126
71272008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
7128
7129 * process.c (Fserial_process_configure, Fprocess_send_eof):
7130 Use EQ to compare Lisp_Objects.
7131
71322008-06-13 Jason Rumney <jasonr@gnu.org>
7133
7134 * w32fns.c (Fw32_select_font): Remove old font API function.
7135
7136 * w32font.c (logfont_to_fcname): New function.
7137 (Fx_select_font): New font dialog function compatible with
7138 GTK/fontconfig version.
7139
7140 * font.c (font_style_symbolic_from_value): New function.
7141 (font_style_symbolic): Use it.
7142
7143 * font.h (font_style_symbolic_from_value): Declare new function.
7144
71452008-06-13 Juanma Barranquero <lekktu@gmail.com>
7146
7147 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
7148 <font-width-table>: Fix typos in docstrings.
7149
71502008-06-13 Daniel Engeler <engeler@gmail.com>
7151
7152 These changes add serial port access.
7153 * process.c: Add HAVE_SERIAL.
7154 (Fdelete_process, Fprocess_status, Fset_process_buffer)
7155 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
7156 (list_processes_1, select_wrapper, Fstop_process)
7157 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
7158 (status_notify): Modify to handle serial processes.
7159 [HAVE_SERIAL] (Fserial_process_configure)
7160 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
7161 New functions.
7162 * process.h (struct Lisp_Process): Add `type'.
7163 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
7164 New functions.
7165 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
7166 serial ports.
b71ac3dd 7167 (serial_open, serial_configure): New functions.
aac0c6e3
MR
7168 * w32.h: Add FILE_SERIAL.
7169 (struct _child_process): Add ovl_read, ovl_write.
7170
71712008-06-13 Kenichi Handa <handa@m17n.org>
7172
7173 * dispextern.h (enum lface_attribute_index): New member
7174 LFACE_FOUNDRY_INDEX.
7175
7176 * font.c (font_score): Delete arg alternate_families. Check only
7177 weight, slant, width, and size. Ignore the difference of alias
7178 style symbols.
7179 (font_sort_entites): Adjust for the above change. Reflect the
7180 order of font-driver to scores.
7181 (font_list_entities): Don't check alternate_familes here.
7182 (font_clear_prop): Handle foundry.
7183 (font_update_lface): Don't parse "foundry-family" form here.
7184 Handle FONT_FOUNDRY_INDEX.
7185 (font_find_for_lface): Likewise. Handle alternate families here.
7186 If registry is nil, try iso8859-1 and ascii-0.
7187 (font_open_for_lface): Pay attention to size in ENTITY.
7188 (font_open_by_name): Simplify by calling font_load_for_lface.
7189 (free_font_driver_list): Delete it.
7190 (font_update_drivers): Preserve the order of backends.
7191 (syms_of_font): Setting of sort_shift_bits adjusted for the change
7192 of font_score and font_sort_entites.
7193 (font_update_sort_order): Likewise.
7194
7195 * xfaces.c (LFACE_FOUNDRY): New macro.
7196 (check_lface_attrs): Check foundry.
7197 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
7198 (merge_face_vectors): Check foundry.
7199 (merge_face_ref): Likewise.
7200 (Finternal_set_lisp_face_attribute): Likewise.
7201 (x_update_menu_appearance): Likewise.
7202 (Finternal_get_lisp_face_attribute): Likewise.
7203 (lface_hash): Likewise.
7204 (lface_same_font_attributes_p): Likewise.
7205 (x_supports_face_attributes_p): Likewise.
7206 (tty_supports_face_attributes_p): Likewise.
7207 (Finternal_set_alternative_font_family_alist): Intern strings.
7208 (Finternal_set_alternative_font_registry_alist): Downcase strings.
7209 (realize_default_face): Set LFACE_FOUNDRY (lface).
7210
7211 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
7212 font-driver at first.
7213
7214 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
7215
72162008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7217
7218 * lread.c (Fload): Use xfree, not free on saved_doc_string.
7219
72202008-06-12 Jim Meyering <meyering@redhat.com>
7221
7222 Make unexec_free handle NULL the same way free does.
7223 * unexmacosx.c (unexec_free): Ignore a NULL argument.
7224
72252008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
7226
7227 * character.h (CHAR_TO_BYTE_SAFE): New macro.
7228 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
7229 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
7230 (WEAK_ALIAS): Simplify.
7231 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
7232 when searching a unibyte buffer.
7233
72342008-06-12 Chong Yidong <cyd@stupidchicken.com>
7235
7236 * xfns.c (Fx_select_font): Rename from x-font-dialog.
7237
72382008-06-12 Juanma Barranquero <lekktu@gmail.com>
7239
7240 * w32font.c: Include ctype.h.
7241
72422008-06-11 Jason Rumney <jasonr@gnu.org>
7243
7244 * w32font.c (w32font_encode_char): Detect missing glyphs that are
7245 misreported as space.
7246 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
7247 as aliases for registry iso10646-1.
7248
72492008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
7250
7251 * buffer.c (clone_per_buffer_values): Skip `name'.
7252
72532008-06-11 Chong Yidong <cyd@stupidchicken.com>
7254
7255 * font.c (font_parse_fcname): Fix last change; accept decimal
7256 points in font size.
7257
72582008-06-10 Jason Rumney <jasonr@gnu.org>
7259
7260 * w32uniscribe.c (add_opentype_font_name_to_list):
7261 Skip non unicode fonts.
7262
72632008-06-10 Chong Yidong <cyd@stupidchicken.com>
7264
7265 * xfns.c (Fx_font_dialog): New function.
7266
7267 * gtkutil.c (xg_dialog_response_cb): Rename from
7268 xg_file_response_callback.
7269 (pop_down_dialog): Rename from pop_down_file_dialog.
7270 (xg_get_file_name): Callers changed.
7271 (xg_get_font_name): New function.
7272
7273 * gtkutil.h (xg_get_font_name): Insert prototype.
7274
72752008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7276
7277 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
7278 x_underline_minimum_display_offset.
7279 (syms_of_xdisp): Declare it here rather than in xterm.c.
7280 * dispextern.h (underline_minimum_offset): Declare it.
7281 * w32term.c (x_draw_glyph_string): Use it.
7282 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
7283 (syms_of_xterm): Don't declare it any more.
7284 (x_draw_glyph_string): Adjust to the new name.
7285
72862008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
7287
7288 * xterm.c (x_underline_minimum_display_offset): New var.
7289 (x_draw_glyph_string): Use it.
7290 (syms_of_xterm): Declare it.
7291
72922008-06-10 Chong Yidong <cyd@stupidchicken.com>
7293
7294 * font.c (font_parse_fcname): Accept GTK-style font names too.
7295
72962008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7297
7298 * dired.c (file_name_completion): Don't return t if the match is exact
7299 but with different capitalization.
7300 * minibuf.c (Ftry_completion): Simplify.
7301
7302 * window.c (Vwindow_point_insertion_type): New var.
7303 (set_window_buffer): Use it.
7304 (syms_of_window): Init and export it to Lisp.
7305
73062008-06-10 Kenichi Handa <handa@m17n.org>
7307
7308 * font.h (font_intern_prop): Prototype adjusted.
7309
7310 * font.c (font_intern_prop): New arg force_symbol.
7311 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
7312 Adjust for the change of font_intern_prop.
7313
7314 * ftfont.c (ftfont_pattern_entity):
7315 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
7316 (w32_registry):
7317 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
7318 the change of font_intern_prop.
7319
73202008-06-09 Juanma Barranquero <lekktu@gmail.com>
7321
7322 * w32menu.c (digest_single_submenu): Declare extern.
7323
73242008-06-09 Jason Rumney <jasonr@gnu.org>
7325
7326 * w32term.c (x_make_frame_visible): Use alternate restore flags.
7327
7328 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
7329 (parse_single_submenu): Remove.
7330 (digest_single_submenu): Remove.
7331 (syms_of_w32menu): Don't initialise variables that have moved
7332 to menu.c.
7333 (set_frame_menubar): Sync with version in xmenu.c.
7334 (w32_menu_show): Sync with xmenu_show in xmenu.c.
7335
7336 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
7337 Make static again.
7338
73392008-06-09 Jason Rumney <jasonr@gnu.org>
7340
7341 Changes to w32 files related to the move of common menu code
7342 to menu.c on 2008-06-08 by Chong Yidong.
7343
7344 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
7345 defs to w32gui.h.
7346 (single_keymap_panes, push_menu_item, push_menu_pane):
7347 Make globally visible.
7348
7349 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
7350 (local_free, malloc_widget_value, free_widget_value)
7351 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
7352 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
7353 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
7354 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
7355 (menu_items, menu_items_allocated, menu_items_used)
7356 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
7357 (init_menu_items, finish_menu_items, discard_menu_items)
7358 (grow_menu_items, push_submenu_start, push_submenu_end)
7359 (push_left_right_boundary, push_menu_pane, push_menu_item)
7360 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
7361 (free_menubar_widget_tree_value, parse_single_submenu)
7362 (update_submenu_strings): Remove functions.
7363 (xmalloc_widget_value): Remove and declare extern.
7364
7365 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
7366 (OBJ1): Build it.
7367
7368 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
7369 (local_heap, local_alloc, local_free, malloc_widget_value)
7370 (free_widget_value): Define here.
7371
73722008-06-09 Kenichi Handa <handa@m17n.org>
7373
7374 * font.h (Qascii_0): Extern it.
7375
7376 * font.c (Qascii_0): New variable.
7377 (syms_of_font): DEFSYM it.
7378 (font_open_by_name): If the registry "iso8859-1" fails, try also
7379 "ascii-0".
7380
7381 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
7382
73832008-06-08 Kenichi Handa <handa@m17n.org>
7384
7385 * .gdbinit (xfont): New command.
7386
73872008-06-08 Andreas Schwab <schwab@suse.de>
7388
7389 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
7390 * Makefile.in (menu.o): Update dependencies.
7391
7392 * Makefile.in (obj): Always add menu.o.
7393 * emacs.c (main): Always call syms_of_menu.
7394 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
7395
73962008-06-08 Chong Yidong <cyd@stupidchicken.com>
7397
7398 * Makefile.in: Compile menu.c.
7399
7400 * lisp.h: Declare syms_of_menu.
7401
7402 * emacs.c (main): Call syms_of_menu.
7403
7404 * keyboard.h: Relocate platform-independent menu definitions from
7405 xmenu.c.
7406
7407 * menu.c: New file. Relocate platform-independent menu
7408 definitions from xmenu.c. Suggested by Adrian Robert.
7409
7410 * xmenu.c: Remove platform-independent menu definitions.
7411 (menu_items menu_items_inuse, menu_items_allocated)
7412 (menu_items_used, menu_items_n_panes)
7413 (menu_items_submenu_depth): Move to keyboard.h.
7414 (init_menu_items, finish_menu_items, unuse_menu_items)
7415 (discard_menu_items, restore_menu_items, save_menu_items)
7416 (grow_menu_items, push_submenu_start, push_submenu_end)
7417 (push_left_right_boundary, push_menu_pane, push_menu_item)
7418 (keymap_panes, single_keymap_panes, single_menu_item)
7419 (list_of_panes, list_of_items, find_and_call_menu_selection)
7420 (xmalloc_widget_value, free_menubar_widget_value_tree)
7421 (parse_single_submenu, digest_single_submenu)
7422 (update_submenu_strings): Move to menu.c.
7423
74242008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
7425
7426 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
7427
74282008-06-06 Miles Bader <miles@gnu.org>
7429
7430 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
7431 face, not frame default.
7432
74332008-06-05 Martin Rudalics <rudalics@gmx.at>
7434
7435 * window.c (pop_up_windows, pop_up_frames)
7436 (display_buffer_reuse_frames, Vpop_up_frame_function)
7437 (Vdisplay_buffer_function, Veven_window_heights)
7438 (Vspecial_display_buffer_names, Vspecial_display_regexps)
7439 (Vspecial_display_function, Vsame_window_buffer_names)
7440 (Vsame_window_regexps, split_height_threshold)
7441 (Vsplit_window_preferred_function): Move those vars to window.el.
7442 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
7443 (Fdisplay_buffer): Move those functions to window.el.
7444 (syms_of_window): Remove corresponding declarations.
7445 (display_buffer): New function.
7446 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
7447 * dispnew.c (Flast_nonminibuf_frame): New function.
7448 * buffer.c (Fpop_to_buffer): Move to window.el.
7449
74502008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7451
7452 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
7453
74542008-06-05 Kenichi Handa <handa@m17n.org>
7455
7456 * coding.c (detect_coding): Fix previous change.
7457 (detect_coding_system): Likewise.
7458
74592008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7460
7461 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
7462
7463 * keymap.c (Vminibuffer_local_filename_must_match_map):
7464 Rename from Vminibuffer_local_must_match_filename_map.
7465 (syms_of_keymap):
7466 * minibuf.c (Fcompleting_read): Adjust accordingly.
7467 * commands.h: Rename declaration as well.
7468
74692008-06-05 Kenichi Handa <handa@m17n.org>
7470
7471 * font.c (Ffont_spec): Don't use font_parse_family_registry for
7472 family name.
7473 (Ffont_put): Likewise.
7474
7475 * fontset.c (fontset_find_font): Call font_open_for_lface with the
7476 current font-spec.
7477
7478 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
7479 is unspecified.
7480
7481 * xfaces.c (realize_x_face): If the font-related face attributes
7482 are the same as those of default face, realize a new fontset from
7483 default->fontset.
7484 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
7485
74862008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7487
7488 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
7489 (move_it_in_display_line): New wrapper.
7490
7491 * window.c (window_scroll_pixel_based_preserve_x)
7492 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
7493 (window_scroll_pixel_based, window_scroll_line_based):
7494 Use them to preserve column positions.
7495 (syms_of_window): Initialize them.
7496
7497 * indent.c (Fvertical_motion): Extend first arg to allow passing an
7498 (HPOS . VPOS) pair.
7499
7500 * dispextern.h (move_it_in_display_line): Declare.
7501
75022008-06-05 Juanma Barranquero <lekktu@gmail.com>
7503
7504 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
7505 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
7506 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
7507
75082008-06-04 Juanma Barranquero <lekktu@gmail.com>
7509
7510 * window.c (Fset_window_parameter): Doc fix.
7511 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
7512
75132008-06-04 Joakim Verona <joakim@verona.se>
7514
7515 * window.h (struct window): Add new member window_parameters.
7516
7517 * window.c (Fwindow_parameters, Fwindow_parameter)
7518 (Fset_window_parameter): New defuns.
7519 (syms_of_window): Defsubr the new defuns.
7520 (make_window): Initialize window_parameters to nil.
7521
75222008-06-04 John Paul Wallington <jpw@pobox.com>
7523
7524 * eval.c (Fdefmacro): Doc fix.
7525
75262008-06-04 Kenichi Handa <handa@m17n.org>
7527
7528 * coding.c (detect_coding): Fix handling of coding->head_ascii.
7529 Be sure to call setup_coding_system when we find a proper coding system.
7530 (detect_coding_system): Fix handling of coding->head_ascii.
7531
75322008-06-03 Andreas Schwab <schwab@suse.de>
7533
7534 * font.c (font_prop_validate_spacing): Fix last change.
7535
75362008-06-03 Kenichi Handa <handa@m17n.org>
7537
7538 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
7539 (font_parse_fcname): Fix handling of unknown key.
7540
7541 * xfont.c (xfont_list): Try an alias.
7542
7543 * charset.c (char_charset): Return NULL if the arg charset_list is
7544 specified and C doesn't belong to any of them.
7545
75462008-06-02 Chip Coldwell <coldwell@redhat.com>
7547
7548 * font.c (font_pixel_size): Don't take cdr of an integer.
7549
75502008-06-02 Jim Meyering <meyering@redhat.com>
7551
7552 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
7553 * alloc.c (xfree): Return right away for a NULL arg.
7554 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
7555 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
7556 * mac.c (create_apple_event_from_event_ref): Likewise.
7557 (create_apple_event_from_drag_ref, cfstring_create_normalized):
7558 Likewise.
7559 * doprnt.c (doprnt1): Likewise.
7560 * frame.c (frame): Likewise.
7561 * keyboard.c (wipe_kboard): Likewise.
7562 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
7563 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
7564 * term.c (tty_default_color_capabilities, maybe_fatal)
7565 (delete_tty): Likewise.
7566 * w16select.c (string): Likewise.
7567 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
7568 * w32bdf.c (w32_free_bdf_font): Likewise.
7569 * w32fns.c (w32_unload_font): Likewise.
7570 * w32font.c (w32font_close): Likewise.
7571 * window.c (size_window): Likewise.
7572 * xselect.c (receive_incremental_selection): Likewise.
7573 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
7574 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
7575 * w32.c (stat): Likewise.
7576
7577 Remove useless if-before-free tests.
7578 * editfns.c (Fset_time_zone_rule): Likewise.
7579 * lread.c (nosuffix): Likewise.
7580 * ralloc.c (get_bloc): Likewise.
7581 * regex.c (reg_free): Likewise.
7582 * xftfont.c (xftfont_open, xftfont_close): Likewise.
7583 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
7584 * xsmfns.c (smc_save_yourself_CB): Likewise.
7585
75862008-06-02 Kenichi Handa <handa@m17n.org>
7587
7588 * font.c (font_find_for_lface): Handle float font size.
7589 (font_open_for_lface): Likewise.
7590
7591 * xfaces.c (x_supports_face_attributes_p): Check face->font before
7592 comparing the properties.
7593
75942008-06-01 Jason Rumney <jasonr@gnu.org>
7595
7596 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
7597 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
7598 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
7599 Don't add empty script list.
7600 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
7601
76022008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
7603
7604 * Makefile.in (dot, dotdot): Remove, update users.
7605 ".." has been used elsewhere in the file for a long time.
7606 (LIBXT_STATIC): Remove conditional based on unused variable.
7607
76082008-06-01 Miles Bader <miles@gnu.org>
7609
7610 * xfaces.c (Vface_remapping_alist): New variable.
7611 (syms_of_xfaces): Initialize it.
7612 (enum named_merge_point_kind): New type.
7613 (struct named_merge_point): Add `named_merge_point_kind' field.
7614 (push_named_merge_point): Make cycle detection respect different
7615 named-merge-point kinds.
7616 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
7617 Remove face-name alias resolution.
7618 (lface_from_face_name): New definition using
7619 `lface_from_face_name_no_resolve'.
7620 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
7621 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
7622 (get_lface_attributes): New definition that layers face-remapping on
7623 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
7624 (lookup_basic_face): New function.
7625 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
7626 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
7627 `get_lface_attributes'.
7628 (face_at_buffer_position): Use `lookup_basic_face' to lookup
7629 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
7630 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
7631
7632 * xdisp.c (init_iterator): Pass base_face_id through
7633 `lookup_basic_face' when we actually use it as a face-id.
7634 (handle_single_display_prop): Use `lookup_basic_face' to lookup
7635 DEFAULT_FACE_ID.
7636
7637 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
7638 lookup the initial face-id.
7639
7640 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
7641
76422008-06-01 Juanma Barranquero <lekktu@gmail.com>
7643
7644 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
7645 (Fremove_text_properties): Fix typos in docstrings.
7646
76472008-05-31 Kenichi Handa <handa@m17n.org>
7648
7649 * font.c (font_list_entities): Fix the car part of data to be
7650 stored in the cache.
7651
7652 * ftfont.c (ftfont_font_format): Don't use strcasestr.
7653
76542008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
7655
7656 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
7657 Add a `test' argument so another predicate than `equal' can be used.
7658 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
7659 (map_char_table): Remove unused vars `c' and `i'.
7660 * lisp.h (Foptimize_char_table): Adjust declaration.
7661 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
7662
76632008-05-30 Kenichi Handa <handa@m17n.org>
7664
7665 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
7666 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
7667 defined.
7668
76692008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
7670
7671 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
7672 (Fmake_variable_frame_local): Disallow mixing buffer-local and
7673 frame-local settings for the same variable.
7674
76752008-05-30 Kenichi Handa <handa@m17n.org>
7676
7677 * fontset.c (Ffont_info): Move to font.c.
7678 (syms_of_fontset): Delete defsubr of Sfont_info.
7679
7680 * font.c (font_style_to_value, font_score): Delete casting of the
7681 args to xstcasecmp.
7682 (register_font_driver): Increment num_font_drivers only when
7683 registering the driver globally.
7684 (Ffont_info): Move from fontset.c. Handle a font object too.
7685 (syms_of_font): Defsubr Sfont_info.
7686
76872008-05-29 Kenichi Handa <handa@m17n.org>
7688
7689 * coding.h (enum define_coding_utf8_arg_index): New enum.
7690 (enum coding_attr_index): Change coding_attr_utf_16_bom to
7691 coding_attr_utf_bom.
7692 (enum utf_bom_type): Rename from utf_16_bom_type.
7693 (struct utf_16_spec): Adjust for the above change.
7694 (struct coding_system): Add utf_8_bom in `spec' union.
7695
7696 * coding.c (CODING_UTF_8_BOM): New macro.
7697 (enum coding_category): Delete coding_category_utf_8, add
7698 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
7699 coding_category_utf_8_sig.
7700 (CATEGORY_MASK_UTF_8): Delete it.
7701 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
7702 (CATEGORY_MASK_UTF_8_SIG): New macros.
7703 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
7704 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
7705 CATEGORY_MASK_UTF_8_SIG.
7706 (CATEGORY_MASK_UTF_8): New macro.
7707 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
7708 (detect_coding_utf_8): Check BOM.
7709 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
7710 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
7711 (encode_coding_utf_16): Likewise.
7712 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
7713 (detect_coding, detect_coding_system): Handle utf-8-auto.
7714 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
7715 (syms_of_coding): Fix setting up of Vcoding_category_table.
7716
77172008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
7718
7719 * process.c (Faccept_process_output): If `millisec' is non-nil,
7720 `seconds' default to 0.
7721 (wait_reading_process_output): Also return non-nil if we read output
7722 from a non-running process.
7723
77242008-05-29 Jason Rumney <jasonr@gnu.org>
7725
7726 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
7727 `raster' specified.
7728 (add_font_entity_to_list): Allow non-opentype truetype fonts back
7729 in the uniscribe backend, but disallow any font that has no
7730 unicode subrange support.
7731
77322008-05-29 Juanma Barranquero <lekktu@gmail.com>
7733
7734 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
7735 Fix typos in docstrings.
7736
77372008-05-29 Kenichi Handa <handa@m17n.org>
7738
7739 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
7740 (Fx_family_fonts): Set frame correctly.
7741
77422008-05-28 Jason Rumney <jasonr@gnu.org>
7743
7744 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
7745
77462008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7747
7748 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
7749 calling build_annotations.
7750
77512008-05-28 Juanma Barranquero <lekktu@gmail.com>
7752
7753 * coding.c (Fdecode_coding_region, Fencode_coding_region)
7754 (Fencode_coding_string):
7755 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
7756 <latin-extra-code-table>: Fix typos in docstrings.
7757 (syms_of_coding) <coding-system-alist>: Doc fix.
7758 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
7759
77602008-05-28 Kenichi Handa <handa@m17n.org>
7761
7762 * fontset.c (Ffont_info): Don't call font_close_object.
7763
7764 * font.c (font_parse_family_registry): Use Ffont_put to validate
7765 foundry and family.
7766 (font_delete_unmatched): Don't check spacing.
7767 (font_list_entities): Add spacing to the spec to list fonts.
7768
7769 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
7770 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
7771
7772 * coding.c (encode_coding_raw_text): Fix previous change.
7773 (encode_coding_object): When the dst_object is a buffer and is
7774 different from src_object, move gap to PT.
7775
77762008-05-27 Chong Yidong <cyd@stupidchicken.com>
7777
7778 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
7779
77802008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
7781
7782 * coding.c (encode_coding_raw_text): Set coding->produced_char for
7783 all branches. Compute it differently.
7784
7785 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
7786
77872008-05-27 Juanma Barranquero <lekktu@gmail.com>
7788
7789 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
7790 into "else if () ... else ...".
7791
77922008-05-27 Jason Rumney <jasonr@gnu.org>
7793
7794 * w32font.c (w32font_open_internal): Determine if glyph indices
7795 are likely to work here.
7796
77972008-05-27 Chong Yidong <cyd@stupidchicken.com>
7798
7799 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
7800 draw overlap glyphs with appropriate highlighting.
7801
78022008-05-27 Kenichi Handa <handa@m17n.org>
7803
7804 * xfont.c (xfont_open): Fix calculation of font->average_width.
7805
78062008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
7807
7808 * casefiddle.c (casify_object): Try to guess better whether the
7809 argument is a byte or a char.
7810
78112008-05-26 Andreas Schwab <schwab@suse.de>
7812
7813 * xselect.c (x_reply_selection_request): Properly handle format == 32.
7814 Always send multiples of format size.
7815
7816 * xterm.c (x_set_frame_alpha): Fix type mismatch.
7817
78182008-05-26 Jason Rumney <jasonr@gnu.org>
7819
7820 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
7821 (compute_metrics): Don't set failure if we just cleared the cache.
7822 (w32_weight_table): Remove unused variable.
7823 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
7824 backwards compatibility.
7825
78262008-05-25 Kenichi Handa <handa@m17n.org>
7827
7828 * w32term.c (x_draw_glyph_string):
7829 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
7830
7831 * xfaces.c: Delete unused function prototypes.
7832 (xstrlwr, font_frame): Delete them.
7833 (clear_face_cache): Delete unused variable.
7834
7835 * xftfont.c (xftfont_open): Delete unused variable.
7836 If underline_thickness is not 1, adjust underline_position.
7837
7838 * ftxfont.c (ftxfont_open): Delete unused variable.
7839
7840 * fontset.c (face_for_char): Optimize for the case of no charset
7841 property.
7842
7843 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
7844 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
7845 (otf_open, font_otf_capability, generate_otf_features)
7846 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
7847 Comment out by surrounding "#if 0" and "#endif" for the moment.
7848 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
7849 (syms_of_font): Codes for accessing above commented out.
7850
78512008-05-24 Eli Zaretskii <eliz@gnu.org>
7852
7853 * w32proc.c: Include dispextern.h.
7854
7855 * w32.c: Include dispextern.h.
7856
78572008-05-23 Juanma Barranquero <lekktu@gmail.com>
7858
7859 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
7860 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
7861 Fix typos in docstrings.
7862
78632008-05-23 Jason Rumney <jasonr@gnu.org>
7864
7865 * xsmfns.c: Remove includes that are already included by config.h.
7866
78672008-05-23 Kenichi Handa <handa@m17n.org>
7868
7869 * charset.c (Qemacs, charset_emacs): New variables.
7870 (char_charset): Fix for non-Unicode characters.
7871 (syms_of_charset): Define charset_emacs.
7872
7873 * w32term.c (x_draw_glyph_string): Be sure to update
7874 s->underline_thickness and s->underline_position. Be sure to draw
7875 underline within the current line area.
7876
7877 * xterm.c (x_draw_glyph_string): Be sure to update
7878 s->underline_thickness and s->underline_position. Be sure to draw
7879 underline within the current line area.
7880
7881 * fontset.c: Delete unused variables and add casting for char *
7882 throughout the file.
7883 (fontset_font): Try the fallback fonts of the current fontset
7884 before consulting the default fontset.
7885
7886 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
7887
7888 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
7889
78902008-05-22 Jason Rumney <jasonr@gnu.org>
7891
7892 * font.c: Don't include strings.h.
7893
7894 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
7895
7896 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
7897 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
7898 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
7899 to call xstrcasecmp.
7900
7901 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
7902
7903 * fontset.c (fs_query_fontset): Use xstrcasecmp.
7904
7905 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
7906
7907 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
7908
79092008-05-22 Kenichi Handa <handa@m17n.org>
7910
7911 * puresize.h (BASE_PURESIZE): Increase to 1220000.
7912
7913 * font.c (font_prop_validate_style): Adjust for the format
7914 change of font_style_table.
7915
7916 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
7917 two args.
7918
7919 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
7920 two args.
7921
79222008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
7923
7924 * minibuf.c (keys_of_minibuf): Delete.
7925 * lisp.h (keys_of_minibuf): Delete.
7926 * emacs.c (main): Don't call keys_of_minibuf.
7927
79282008-05-22 Kenichi Handa <handa@m17n.org>
7929
7930 * ftfont.c (ftfont_resolve_generic_family): Rename from
7931 ftfont_list_generic_family. Return a single family for each
7932 generic family.
7933 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
7934 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
7935 Call font_add_log.
7936 (ftfont_match): Call font_add_log.
7937
7938 * font.h (Ffont_xlfd_name): EXFUN adjusted.
7939 (FONT_DEBUG): Define it.
7940 (font_add_log): Extern it.
7941 (font_assert): Rename from xassert.
7942
7943 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
7944 (xfont_list_family): Call font_add_log.
7945 (xfont_match): Likewise.
7946 (memq_no_quit): Delete.
7947
7948 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
7949 call of Ffont_xlfd_name.
7950
7951 * xfaces.c (struct table_entry, slant_table, weight_table)
7952 (swidth_table): Move to font.c.
7953
7954 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
7955 xassert are changed to font_assert. Delete many unused variables.
7956 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
7957 New variables.
7958 (struct table_entry): Move from xfaces.c and modified.
7959 (weight_table, slant_table, width_table): Move from xfaces.c and
7960 contents adjusted for the change of struct table_entry.
7961 (font_style_to_value, font_style_symbolic): Adjust for the
7962 format change of font_style_table.
7963 (font_parse_family_registry): Don't overwrite existing foundry and
7964 family of font_spec.
7965 (font_score): Fix calculation of diff for sizes.
7966 (font_sort_entites): Call font_add_log.
7967 (font_delete_unmatched): Return a newly created list.
7968 (font_list_entities): Fix previous change. Call font_add_log.
7969 (font_matching_entity, font_open_entity, font_close_entity):
7970 Call font_add_log.
7971 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
7972 (Finternal_set_font_style_table): Delete.
7973 (BUILD_STYLE_TABLE): New macro.
7974 (build_style_table): New function.
7975 (Vfont_log, font_log_env_checked): New variables.
7976 (font_add_log): New function.
7977 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
7978 Declare Lisp variables "font-weight-table", "font-slant-table",
7979 "font-width-table", and "font-log". Initialize font_style_table.
7980
79812008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
7982
7983 * xterm.c (x_set_frame_alpha): Move declarations before statements.
7984
79852008-05-21 Seiji Zenitani <zenitani@mac.com>
7986 Ryo Yoshitake <ryo@shiftmode.net>
7987
7988 * frame.c (Qalpha): Add a new frame parameter `alpha'.
7989 (Vframe_alpha_lower_limit): New variable.
7990 (x_set_alpha): New function.
7991
7992 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
7993
7994 * xfns.c (x-create-frame, Qalpha):
7995 Initialize the frame parameter `alpha'.
7996 * xterm.c (OPAQUE, OPACITY): New.
7997 (x_set_frame_alpha): New function.
7998 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
7999
8000 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
8001 * w32fns.c (w32_frame_parm_handlers): Likewise.
8002
80032008-05-20 Jason Rumney <jasonr@gnu.org>
8004
8005 * w32font.c (add_font_entity_to_list): Don't add non-opentype
8006 truetype fonts to opentype list.
8007
80082008-05-20 Juanma Barranquero <lekktu@gmail.com>
8009
8010 * fontset.c (Ffontset_info): Doc fix.
8011 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
8012 <ignore-relative-composition>: Fix typos in docstrings.
8013
8014 * font.c (syms-of-font) <font-encoding-alist>:
8015 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
8016 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
8017 (Ffont_otf_alternates): Doc fixes.
8018
80192008-05-20 Kenichi Handa <handa@m17n.org>
8020
8021 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
8022 font.h through out the file.
8023 (FONT_DRIVERS): Rename from FONTOBJ.
8024 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
8025 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
8026
8027 * emacs.c (main): Call syms_of_font unconditionally.
8028
8029 * font.h (find_font_encoding): Extern it.
8030
8031 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
8032 fontset.c.
8033 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
8034 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
8035 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
8036 only when HAVE_WINDOW_SYSTEM is defined.
8037 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
8038 when HAVE_WINDOW_SYSTEM is defined.
8039
8040 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
8041 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
8042
8043 * xfaces.c: Include font.h unconditionally.
8044 (merge_face_ref, merge_face_vectors)
8045 (Finternal_set_lisp_face_attribute): Cancel the previous change.
8046
80472008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
8048
8049 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
8050 indirect_variable.
8051 * eval.c (lisp_indirect_variable): New fun.
8052 (Fuser_variable_p): Use it.
8053
80542008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
8055
8056 * lisp.h (indirect_variable):
8057 * data.c (indirect_variable, let_shadows_buffer_binding_p):
8058 Use Lisp_Symbol pointers rather than Lisp_Object.
8059 Adjust callers.
8060 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
8061 To this end, change calling-convention.
8062
8063 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
8064 if some non-hidden buffers are selected by string&pred.
8065
80662008-05-19 Chong Yidong <cyd@stupidchicken.com>
8067
8068 * process.c (wait_reading_process_output): Always check status
8069 when in batch mode.
8070
80712008-05-19 Kenichi Handa <handa@m17n.org>
8072
8073 * font.c (font_list_entities): Fix handling of cache.
8074 (font_matching_entity): Likewise.
8075
8076 * ftfont.c (cs_iso8859_1): Delete.
8077 (ft_face_cache): New variable.
8078 (struct ftfont_info): New member fc_charset_idx.
8079 (ftfont_build_basic_charsets): Delete.
8080 (fc_charset_table): New variable.
8081 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
8082 . FC_CHARSET_IDX) as :font-entity property in the font entity.
8083 Callers changed.
8084 (ftfont_lookup_cache, ftfont_get_charset): New functions.
8085 (ftfont_spec_pattern): New argument fc_charset_idx.
8086 Check registry more rigidly. Change callers.
8087 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
8088 change of :font-entity property of the font.
8089
8090 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
8091 property of the font.
8092
80932008-05-18 Juanma Barranquero <lekktu@gmail.com>
8094
8095 * coding.c (Fcoding_system_p): Rename argument to match docstring.
8096 (Funencodable_char_position, Fcheck_coding_systems_region)
8097 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
8098 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
8099 (Ffind_operation_coding_system, Fset_coding_system_priority)
8100 (Fcoding_system_eol_type): Doc fixes.
8101
81022008-05-17 Glenn Morris <rgm@gnu.org>
8103
8104 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
8105
81062008-05-16 Eli Zaretskii <eliz@gnu.org>
8107
8108 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
8109 and st_gid.
8110
8111 * frame.c (Fdelete_frame): Don't call font_update_drivers if
8112 HAVE_WINDOW_SYSTEM is not defined.
8113
8114 * xfaces.c (merge_face_ref, merge_face_vectors)
8115 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
8116 HAVE_WINDOW_SYSTEM is defined.
8117 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
8118
81192008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
8120
8121 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
8122
81232008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8124
8125 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
8126
81272008-05-15 Kenichi Handa <handa@m17n.org>
8128
8129 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
8130 preference.
8131
81322008-05-15 Glenn Morris <rgm@gnu.org>
8133
8134 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
8135
81362008-05-15 Chong Yidong <cyd@stupidchicken.com>
8137
8138 * fns.c (init_fns): Don't initialize weak_hash_tables here.
8139 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
8140
8141 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
8142
81432008-05-15 Kenichi Handa <handa@m17n.org>
8144
8145 * ftfont.c (ftfont_list): Downcase family name to check generic
8146 families.
8147
8148 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
8149 font-spec for QCfont value.
8150
8151 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
8152 buffer. Check the return value of it.
8153
81542008-05-14 Jason Rumney <jasonr@gnu.org>
8155
8156 * w32term.c (w32_get_glyph_overhangs): Remove.
8157 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
8158
81592008-05-14 Kenichi Handa <handa@m17n.org>
8160
8161 * font.c (font_prop_validate): Make nil a valid value.
8162 (font_clear_cache): Check if the cached vector of entities is nil
8163 or not.
8164
81652008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8166
8167 * emacs.c (main_thread): Conditionalize on
8168 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8169 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
8170
8171 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
8172 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
8173 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8174
81752008-05-14 Kenichi Handa <handa@m17n.org>
8176
8177 * coding.c (detect_coding_iso_2022): Ignore a coding category that
8178 has no corresponding coding system.
8179
81802008-05-14 Jason Rumney <jasonr@gnu.org>
8181
8182 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
8183
8184 * w32font.h (w32font_open_internal): Update declaration.
8185
8186 * w32font.c (w32font_open_internal): Change last argument from
8187 w32font_info struct to font object. Fill in font object from
8188 font_entity. Get Outline metrics if possible. Use them to
8189 calculate underline position and thickness. Use xlfd name as name
8190 property. Don't set codepage.
8191 (w32font_open): Pass font_object to w32font_open_internal. Don't
8192 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
8193 (w32font_draw): Use s->font.
8194 (clear_cached_metrics): Don't clear non-existent blocks.
8195
8196 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
8197 font was not found.
8198 (x_draw_glyph_string): Use underline position and thickness from font.
8199
8200 * w32uniscribe.c (uniscribe_open): Pass font_object to
8201 w32font_open_internal.
8202
82032008-05-14 Kenichi Handa <handa@m17n.org>
8204
8205 These changes are to delete all legacy font-handling codes, and
8206 make Emacs use only font-backends.
8207
8208 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
8209 (frame.o, image.o, print.o): Depend on $(FONTSRC).
8210
8211 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
8212
8213 * charset.h (Vcharset_non_preferred_head)
8214 (Vcurrent_iso639_language): Extern them.
8215
8216 * charset.c (Vcharset_non_preferred_head): New variable.
8217 (Vcurrent_iso639_language): New variable.
8218 (syms_of_charset): Declare it as a Lisp variable.
8219 (char_charset): Don't check non preferred charsets. As a last
8220 resort, return charset_unicode.
8221 (Fset_charset_priority): Update Vcharset_non_preferred_head.
8222
8223 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
8224 conditionals. Don't check enable_font_backend. Delete all codes
8225 used only when USE_FONT_BACKEND is not defined.
8226
8227 * dispextern.h (struct glyph_string): Change type of `font' to
8228 `struct font *'.
8229 (struct glyph_string): New member underline_position and
8230 underline_thickness.
8231 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
8232 (struct face): Change type of `font' to `struct font *'. Remove
8233 members `font_name', `font_info_id'.
8234 (per_char_metric, encode_char): Delete externs.
8235 (calc_pixel_width_or_height): Adjust the prototype.
8236
8237 * emacs.c (enable_font_backend): Delete extern.
8238 (main): Don't set enable_font_backend. Don't check the command
8239 line argument "-disable-font-backend".
8240
8241 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
8242 (enum font_property_index): New members FONT_DPI_INDEX,
8243 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
8244 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
8245 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
8246 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
8247 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
8248 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
8249 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
8250 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
8251 (struct font_spec, struct font_entity): New structs.
8252 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
8253 (struct font): Many members from old "struct font_info" moved to
8254 here. Members font and entity deleted.
8255 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
8256 the new font-related objects.
8257 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
8258 (CHECK_FONT_GET_OBJECT): Likewise.
8259 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
8260 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
8261 (struct font_driver): New members case_sensitive anc check. Type
8262 of the member list and open changed.
8263 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
8264 (font_symbolic_width, font_find_object, font_get_spec)
8265 (font_set_lface_from_name): Delete extern.
8266 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
8267
8268 * font.c: Include <strings.h>.
8269 (enable_font_backend): Delete it.
8270 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
8271 (CHECK_VALIDATE_FONT_SPEC): Delete it.
8272 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
8273 (null_string): Delete it.
8274 (null_vector): Make it static.
8275 (font_family_alist): Delete it.
8276 (Qnormal): Extern it.
8277 (QCextra, QClanguage): Delete it.
8278 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
8279 (font_make_spec, font_make_entity, font_make_object)
8280 (font_intern_prop): Renamed from intern_downcase. Don't downcase
8281 the string. Callers changed.
8282 (font_pixel_size): Adjusted for the format change of font-related
8283 objects.
8284 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
8285 (font_style_to_value, font_style_symbolic): New function.
8286 (build_font_family_alist): Delete it.
8287 (font_registry_charsets): Use Fassoc_string instead of
8288 assq_no_quit.
8289 (font_prop_validate_symbol): Don't return null_string.
8290 (font_prop_validate_style): Adjusted for the change of
8291 style-related values in a font vector.
8292 (font_property_table): Delete entries for QClanguage and
8293 QCantialias, add entries for QCavgwidth.
8294 (get_font_prop_index): Delete the 2nd argument FROM.
8295 (font_prop_validate): Arguments changed.
8296 (font_put_extra): Adjusted for the change of font-related objects.
8297 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
8298 (font_parse_fcname, font_unparse_fcname)
8299 (font_prepare_composition): Likewise.
8300 (font_parse_family_registry): Renamed from font_merge_old_spec.
8301 (otf_open): Delete the 1st arg entity.
8302 (font_otf_capability): Adjusted for the above change.
8303 (font_score): New arg alternate_families. Adjusted for the change
8304 of font-related objects.
8305 (font_sort_entites): New arg best_only.
8306 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
8307 Delete them.
8308 (font_match_p): Check alternate families.
8309 (font_find_object): Delete it.
8310 (font_check_object): New function.
8311 (font_clear_cache): Adjusted for the change of font-related objects.
8312 (font_delete_unmatched): New arg.
8313 (font_list_entities): Call font_driver->list with a spec that
8314 doesn't specify style-related properties.
8315 (font_matching_entity): Arguments changed. Caller changed.
8316 (font_open_entity): Adjusted for the change of font-related objects.
8317 (font_close_object, font_has_char, font_encode_char)
8318 (font_get_name, font_get_spec): Likewise.
8319 (font_spec_from_name, font_clear_prop, font_update_lface):
8320 New functions.
8321 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
8322 (font_prepare_for_face, font_done_for_face, font_open_by_name)
8323 (font_at): Adjusted for the change of font-related objects.
8324 (font_range): New function.
8325 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
8326 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
8327 (Fcopy_font_spec, Fmerge_font_spec): New function.
8328 (Ffont_family_list): Renamed from list-families.
8329 (Finternal_set_font_style_table): Arguments changed.
8330 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
8331 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
8332 change of font-related objects.
8333 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
8334
8335 * fontset.h (struct font_info): Delete it. Most members go to
8336 struct font.
8337 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
8338 (enum FONT_SPEC_INDEX): Delete it.
8339 (font_info, list_fonts_func, load_font_func, query_font_func)
8340 (set_frame_fontset_func, find_ccl_program_func)
8341 (get_font_repertory_func, new_fontset_from_font_name): Delete
8342 externs.
8343 (fontset_from_font_name): Extern it.
8344 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
8345 (FONT_INFO_FROM_FACE): Deleted.
8346 (face_for_font): Adjust prototype.
8347
8348 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
8349 conditionals. Don't check enable_font_backend. Delete all codes
8350 used only when USE_FONT_BACKEND is not defined.
8351 (get_font_info_func, list_font_func, load_font_func)
8352 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
8353 (get_font_repertory_func): Delete them.
8354 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
8355 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
8356 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
8357 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
8358 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
8359 (fontset_compare_rfontdef): New function.
8360 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
8361 rfont-defs by qsort. Adjusted for the change of font-group vector.
8362 (load_font_get_repertory): Deleted.
8363 (fontset_find_font): Use new macros to ref/set elements of
8364 font-def and rfont-def.
8365 (fontset_font): Fix the timing of remembering that no font for C.
8366 (free_face_fontset): Do nothing if the face has no fontset.
8367 (face_suitable_for_char_p): Use new macros to ref/set elements of
8368 rfont-def.
8369 (face_for_char): Likewise. Call face_for_char with font_object.
8370 (fs_load_font): Delete. Delete #pragma surrounding it.
8371 (fs_query_fontset): Use strcasecmp instead of strcmp.
8372 (generate_ascii_font_name): Adjusted for the format change of
8373 font-spec.
8374 (Fset_fontset_font): Likewise. Use new macros to set elements of
8375 font-def.
8376 (Fnew_fontset): Use font_unparse_xlfd to generate
8377 FONTSET_ASCII (fontset).
8378 (new_fontset_from_font_name): Deleted.
8379 (fontset_from_font): Renamed from new_fontset_from_font. Check if
8380 a fontset is already created for the font. FIx updating of
8381 Vfontset_alias_alist.
8382 (fontset_ascii_font): Deleted.
8383 (Ffont_info): Adjusted for the format change of font-spec.
8384 (Finternal_char_font): Likewise.
8385 (Ffontset_info): Likewise.
8386 (syms_of_fontset): Don't check load_font_func.
8387
8388 * fns.c (internal_equal): Handle PREV_FONT.
8389
8390 * frame.h: Delete USE_FONT_BACKEND conditional.
8391
8392 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
8393 conditionals. Don't check enable_font_backend. Delete all codes
8394 used only when USE_FONT_BACKEND is not defined.
8395 (x_set_font): Call x_new_font, not x_new_fontset2.
8396 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
8397 already set for the frame.
8398
8399 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
8400 a font-entity by font_make_entity. Use font_intern_prop instead
8401 of intern_downcase. Use FONT_SET_STYLE to set a style-related
8402 font property. If a font is scalable, set avgwidth property to 0.
8403 Set font-entity property by font_put_extra.
8404 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
8405 (ffont_driver): Adjusted for the change of struct font_driver.
8406 (ftfont_spec_pattern): New function.
8407 (ftfont_list): Return a list, not vector.
8408 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
8409 (ftfont_list_family): Don't downcase names.
8410 (ftfont_free_entity): Deleted.
8411 (ftfont_open): Return a font-object. Adjusted for the change of
8412 struct font. Get underline_thickness and underline_position from
8413 font property. Don't update dpyinfo->smallest_font_height and
8414 dpyinfo->smallest_char_width.
8415 (ftfont_close): Don't free `struct font'.
8416 (ftfont_has_char): Adjusted for the format change of font-entity.
8417 (ftfont_encode_char, ftfont_text_extents): Likewise.
8418
8419 * ftxfont.c (ftxfont_list): Return a list, not vector.
8420 (ftxfont_open): Return a font-object. Adjusted for the change of
8421 struct font. Get underline_thickness and underline_position from
8422 font property. Don't update dpyinfo->smallest_font_height and
8423 dpyinfo->smallest_char_width.
8424 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
8425 (ftxfont_draw): Adjusted for the change of struct font.
8426
8427 * image.c (image_ascent): Don't include "charset.h". Include
8428 "character.h" and "font.h".
8429
8430 * lisp.h (enum pvec_type): New member PREV_FONT.
8431 (Fassoc_string): EXFUN it.
8432
8433 * print.c: Include font.h.
8434 (print_object): Handle font-related objects.
8435
8436 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
8437 conditionals. Don't check enable_font_backend. Delete all codes
8438 used only when USE_FONT_BACKEND is not defined.
8439 (handle_auto_composed_prop): Do nothing if it->f is not on a
8440 window system. Check how many following characters can be
8441 displayed by the same font.
8442 (calc_pixel_width_or_height): Type of the 4th arg is changed to
8443 'struct font *'.
8444 (get_char_face_and_encoding): Assign the whole encoding task to
8445 the `encode-char' method of a font driver.
8446 (fill_composite_glyph_string): Adjusted for the change of `struct
8447 face' and `struct glyph_string'.
8448 (fill_glyph_string): Likewise.
8449 (get_per_char_metric): Arguments changed.
8450 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
8451 and `struct glyph_string'.
8452 (produce_stretch_glyph, calc_line_height_property)
8453 (x_produce_glyphs): Likewise.
8454
8455 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
8456 conditionals. Don't check enable_font_backend. Delete all codes
8457 used only when USE_FONT_BACKEND is not defined. Use
8458 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
8459 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
8460 (Qp): Extern them.
8461 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
8462 Deleted.
8463 (struct font_name): Deleted.
8464 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
8465 (compare_fonts_by_sort_order): New function.
8466 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
8467 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
8468 Deleted.
8469 (Fx_family_fonts): Use font_list_entities, and sort fonts by
8470 compare_fonts_by_sort_order.
8471 (Fx_font_family_list): Call Ffont_family_list.
8472 (face_numeric_value, face_numeric_weight, face_numeric_slant)
8473 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
8474 (face_symbolic_slant, face_symbolic_swidth)
8475 (split_font_name_into_vector, build_font_name_from_vector)
8476 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
8477 (font_rescale_ratio, split_font_name, build_font_name)
8478 (free_font_names, sort_fonts, x_face_list_fonts)
8479 (face_font_available_p, sorted_font_list, cmp_font_names)
8480 (font_list_1, concat_font_list, font_list, remove_duplicates):
8481 Deleted.
8482 (Fx_list_fonts): Use Ffont_list.
8483 (LFACE_AVGWIDTH): Deleted.
8484 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
8485 by FONTP.
8486 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
8487 (set_lface_from_font_name): Delete it.
8488 (set_lface_from_font): Renamed from
8489 set_lface_from_font_and_fontset. Caller changed. Don't set
8490 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
8491 for face.
8492 (merge_face_vectors): Copy font-spec if necessary.
8493 Clear properties of the font-spec if necessary.
8494 (merge_face_ref): Clear properties of the font-spec if necessary.
8495 (Finternal_set_lisp_face_attribute): Likewise.
8496 (set_font_frame_param): Use font_load_for_lface to load a
8497 font-object, and call Fmodify_frame_parameters with it.
8498 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
8499 font name by Ffont_xlfd_name.
8500 (Finternal_lisp_face_attribute_values): Don't check QCweight,
8501 QCslant, and QCwidth.
8502 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
8503 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
8504 Compare fonts by EQ.
8505 (lookup_non_ascii_face): Deleted.
8506 (face_for_font): The 2nd argument changed.
8507 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
8508 Check atomic font properties by case insensitive.
8509 (realize_non_ascii_face): Set face->overstrike correctly.
8510 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
8511 (dump_realized_face): Get font name from
8512 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
8513
8514 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
8515 conditionals. Don't check enable_font_backend. Delete all codes
8516 used only when USE_FONT_BACKEND is not defined.
8517 (xic_create_xfontset): Original code deleted and renamed from
8518 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
8519 (x_make_gc): Don't set GCFont in GCs.
8520 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
8521 opened by "fixed".
8522 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
8523 find_ccl_program_func, query_font_func, set_frame_fontset_func,
8524 get_font_repertory_func.
8525
8526 * xfont.c: Include <stdlib.h> and "ccl.h".
8527 (struct xfont_info): New structure.
8528 (xfont_query_font): Deleted.
8529 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
8530 moved from xterm.c.
8531 (xfont_driver): Adjusted for the change of struct font_driver.
8532 (compare_font_names): New function.
8533 (xfont_list_pattern): Sort font names case insensitively. Make
8534 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
8535 (xfont_list): Return a list, not vector.
8536 (xfont_match): If the font doesn't have QCname property, generate
8537 a name from the other font properties.
8538 (xfont_open): Return a font-object. Adjusted for the change of
8539 struct font. Get underline_thickness and underline_position from
8540 font property. Don't update dpyinfo->smallest_font_height and
8541 dpyinfo->smallest_char_width.
8542 (xfont_close): Don't free struct font.
8543 (xfont_prepare_face): Adjusted for the change of struct font.
8544 (xfont_done_face): Deleted.
8545 (xfont_has_char): Adjusted for the change of struct font.
8546 (xfont_encode_char, xfont_draw): Likewise.
8547 (xfont_check): New function.
8548
8549 * xftfont.c (xftfont_list): Adjusted for the change of `list'
8550 callback function.
8551 (xftfont_match): Adjusted for the format change of font-entity.
8552 (xftfont_open): Adjusted for the format change of font-entity and
8553 font-object. Adjusted for the change of struct font. Return a
8554 font-object. Don't update dpyinfo->smallest_font_height and
8555 dpyinfo->smallest_char_width.
8556 (xftfont_close): Block input while calling XftFontClose.
8557 (xftfont_prepare_face): Don't block input while calling
8558 xftfont_get_colors. Adjusted for the change of struct font.
8559 (xftfont_shape): Return value of error case fixed.
8560
8561 * xrdb.c (x_load_resources): Don't setup a fontset resource.
8562
8563 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
8564 conditionals.
8565 (FONT_WIDTH): Return (f)->max_width.
8566 (struct x_display_info): Delete member `font'.
8567 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
8568 (x_find_ccl_program, x_get_font_repertory): Delete externs.
8569 (struct x_output): Change type of `font' to `struct font *'.
8570
8571 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
8572 conditionals. Don't check enable_font_backend. Delete all codes
8573 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
8574 (x_per_char_metric, x_encode_char): Deleted.
8575 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
8576 (x_compute_glyph_string_overhangs): Adjusted for the change of
8577 `struct face'.
8578 (x_draw_glyph_string_foreground)
8579 (x_draw_composite_glyph_string_foreground): Likewise.
8580 (x_draw_glyph_string): Likewise. Use font->underline_position and
8581 font->underline_thickness.
8582 (x_new_font): Renamed from x_new_fontset2.
8583 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
8584 (x_check_font): Call `check' method of a font driver.
8585 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
8586 (x_query_font, x_get_font_repertory): Deleted.
8587 (x_find_ccl_program): Renamed and moved to xfont.c.
8588 (x_redisplay_interface): Adjusted for the change of `struct
8589 redisplay_interface'.
8590
8591 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
8592 conditionals. Don't check enable_font_backend. Delete all codes
8593 used only when USE_FONT_BACKEND is not defined. Surround non-used
8594 code by "#ifdef OLD_FONT" and "endif".
8595 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
8596
8597 * w32font.h (struct w32font_info): New member.
8598 (FONT_COMPAT): New macro.
8599 (w32font_open_internal): Prototype adjusted.
8600
8601 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
8602 OLD_FONT" and "endif".
8603
8604 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
8605 conditionals. Don't check enable_font_backend. Delete all codes
8606 used only when USE_FONT_BACKEND is not defined.
8607 (w32font_open): Return a font-object. Make a font-object by
8608 font_make_object. Adjusted for the change of struct w32font_info.
8609 (w32font_close): Don't free struct font. Adjusted for the change
8610 of struct w32font_info.
8611 (w32font_encode_char, w32font_text_extents, w32font_draw):
8612 Adjusted for the change of struct w32font_info.
8613 (w32font_draw): Likewise.
8614 (w32font_list_internal): Return a list, not vector.
8615 (w32font_open_internal): Change the 4th arg to font-object.
8616 Adjusted for the change of struct w32font_info and font-object format.
8617 (add_font_name_to_list): Don't downcase names.
8618 (w32_enumfont_pattern_entity): Make a font-entity by
8619 font_make_entity. Adjusted for the format change of font-entity.
8620 Use FONT_SET_STYLE to set a style-related font property. If a
8621 font is scalable, set avgwidth property to 0. Set font-entity
8622 property by font_put_extra.
8623 (font_matches_spec): Adjusted for the format change of font-entity.
8624 (w32_weight_table, w32_decode_weight): New variables.
8625 (w32_encode_weight): New function.
8626 (fill_in_logfont): Adjusted for the format change of font-spec.
8627 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
8628 weight value.
8629 (w32font_driver): Adjusted for the change of struct font_driver.
8630
8631 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
8632 conditionals. Don't check enable_font_backend. Surround non-used
8633 code by "#ifdef OLD_FONT" and "endif".
8634 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
8635 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
8636
8637 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
8638 conditionals. Don't check enable_font_backend. Delete all codes
8639 used only when USE_FONT_BACKEND is not defined. Surround non-used
8640 code by "#ifdef OLD_FONT" and "endif".
8641
8642 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
8643 (uniscribe_open): Return value changed to font-object.
8644 Adjusted for the format change of font-object.
8645 (uniscribe_otf_capability): Adjusted for the change of struct font.
8646 (add_opentype_font_name_to_list): Don't downcase names.
8647 (uniscribe_font_driver): Adjusted for the change of struct
8648 font_driver.
8649
86502008-05-13 Chong Yidong <cyd@stupidchicken.com>
8651
8652 * dispnew.c (update_frame_1): Check if tty output is still valid
8653 before flushing it.
8654
86552008-05-13 Jan Djärv <jan.h.d@swipnet.se>
8656
8657 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
8658 to Gtk+ menus.
8659
86602008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
8661
8662 * dired.c (file_name_completion): Tweak the code so as to always do it
8663 in a single pass. Tighten the scope of some variables.
8664
8665 * dired.c (Qdefault_directory): New var.
8666 (file_name_completion): Use it instead of Fexpand_file_name.
8667 (syms_of_dired): Initialize it.
8668
86692008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
8670
8671 * fileio.c (double_dollars): Remove dead code.
8672
86732008-05-10 Eli Zaretskii <eliz@gnu.org>
8674
8675 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
8676 Mention w32-get-true-file-attributes in doc string.
8677
8678 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
8679
86802008-05-09 Glenn Morris <rgm@gnu.org>
8681
8682 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
8683 2008-04-23.
8684
86852008-05-09 Eli Zaretskii <eliz@gnu.org>
8686
8687 Support for reporting owner and group of each file on MS-Windows:
8688 * dired.c (stat_uname, stat_gname): New functions, with special
8689 implementation for w32.
8690 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
8691
8692 * w32.c: Rename the_passwd_* to dflt_passwd_*.
8693 (dflt_group_name): New static variable.
8694 (dflt_group): Rename from the_group.
8695 (init_user_info): Init dflt_group fields. Get user's group name
8696 from LookupAccountSid.
8697 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
8698 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
8699 New initialization states.
8700 (globals_of_w32): Initialize them to zero. Initialize the default
8701 group name to "None".
8702 (GetFileSecurity_Name): New global var, the name of the function
8703 to call for GetFileSecurity.
8704 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
8705 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
8706 (get_file_security, get_security_descriptor_owner)
8707 (get_security_descriptor_group, is_valid_sid)
8708 (get_file_security_desc, get_rid, get_name_and_id)
8709 (get_file_owner_and_group): New functions.
8710 (stat): Use get_file_security_desc and get_file_owner_and_group to
8711 report the owner and primary group of each file. Don't ignore the
8712 high 32 bits of file's size, now that st_size is 64-bit wide.
8713 Fix test when to get true file attributes.
8714 (init_user_info): Use get_rid instead of equivalent inline code.
8715 (fstat): Don't ignore the high 32 bits of file's size.
8716
87172008-05-09 Chong Yidong <cyd@stupidchicken.com>
8718
8719 * image.c (png_load): Use correct bit-depth for setting background
8720 color.
8721
87222008-05-08 Eli Zaretskii <eliz@gnu.org>
8723
8724 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
8725 epa-hook.elc.
8726
87272008-05-08 Juanma Barranquero <lekktu@gmail.com>
8728
8729 * font.c (Ffont_match_p): Don't use `iff' in docstring.
8730
87312008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
8732
8733 * macfns.c (Fx_create_frame): Make a copy of frame parameters
8734 because the original parameters are in pure storage now.
8735 (mac_window): Remove unused params. Update callers.
8736
87372008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
8738
8739 * lread.c (substitute_object_recurse): Use lower-level primitives.
8740 Don't signal errors when traversing sub-char-tables.
8741 Don't loop over all the possible characters when traversing char-tables.
8742
8743 * print.c (print_preprocess): Add sub-char-tables to the print-table,
8744 just like we do in print.c.
8745
87462008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
8747
8748 * minibuf.c (Ftry_completion): Remove code left over from when we used
8749 scmp instead of Fcompare_strings.
8750
87512008-05-04 Juanma Barranquero <lekktu@gmail.com>
8752
8753 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
8754
87552008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8756
8757 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
8758 Create bitmap context in native byte order.
8759
8760 * macterm.c (XDrawLine)
8761 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
8762 context in native byte order.
8763
87642008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8765
8766 * config.in: Regenerate.
8767
8768 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
8769 New definitions for Image I/O support.
8770 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8771 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
8772 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
8773 (mac_data_provider_release_data, image_load_image_io)
8774 [USE_MAC_IMAGE_IO]: New functions.
8775 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
8776 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
8777 (init_image_func_pointer) [MAC_OSX]: Remove function.
8778 (image_load_quartz2d) [MAC_OSX]: Check availability of
8779 CGImageCreateWithPNGDataProvider at compile time.
8780 Use lowercase `false' for boolean constant.
8781 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
8782 Use image_load_image_io.
8783 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
8784 Don't check MyCGImageCreateWithPNGDataProvider.
8785 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
8786 Don't call init_image_func_pointer.
8787
8788 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
8789
8790 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
8791 Make variable non-static.
8792 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
8793 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
8794
8795 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
8796 (RED_FROM_ULONG): Mask off higher bits.
8797 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
8798
8799 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
8800 Include AvailabilityMacros.h.
8801 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
8802 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
8803
88042008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
8805
8806 * chartab.c (Fset_char_table_range): If range is t, really set all
8807 chars to that value.
8808
88092008-05-03 Eli Zaretskii <eliz@gnu.org>
8810
8811 * dired.c (Ffile_attributes): Don't allow the device number become
8812 negative.
8813
88142008-05-02 Daiki Ueno <ueno@unixuser.org>
8815
8816 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
8817
88182008-05-02 Juri Linkov <juri@jurta.org>
8819
8820 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
8821 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
8822 DEFAULT argument as a list of default values in docstrings.
8823
88242008-05-01 Chong Yidong <cyd@stupidchicken.com>
8825
8826 * puresize.h (BASE_PURESIZE): Increase to 1210000.
8827
88282008-05-01 Martin Rudalics <rudalics@gmx.at>
8829
8830 * dispnew.c (change_frame_size_1): Preserve small windows when
8831 shrinking frames by calling set_window_height|width with third
8832 arg 2.
8833
8834 * window.h (struct window): Replace field too_small_ok by field
8835 resize_proportionally.
8836
8837 * window.c (make_window): Initialize resize_proportionally.
8838 (enlarge_window): Temporarily set resize_proportionally to make
8839 sure that shrink_windows does scale the window proportionally.
8840 (shrink_windows): When window has resize_proportionally set try
8841 to shrink it proportionally by stealing from other windows.
8842 (struct saved_window, Fset_window_configuration)
8843 (compare_window_configurations): Handle resize_proportionally.
8844 (WINDOW_TOTAL_SIZE): New macro.
8845 (window_min_size, shrink_windows, size_window): Use it.
8846 (check_min_window_sizes): Remove. Invalid values of
8847 window-min-height|width are handled by window_min_size_2 now.
8848 (size_window, Fsplit_window, enlarge_window)
8849 (adjust_window_trailing_edge, grow_mini_window): Don't call
8850 check_min_window_sizes.
8851 (window_min_size_2, window_min_size_1, window_min_size):
8852 New argument safe_p for retrieving "safe" minimum sizes.
8853 (Fdisplay_buffer, Fsplit_window, enlarge_window)
8854 (adjust_window_trailing_edge, grow_mini_window):
8855 Adjust arguments of window_min_size... functions.
8856 (shrink_windows): Argument min_size removed. New argument
8857 safe_p allows shrinking windows to their safe minimum sizes.
8858 Calculate minimum size and decide whether a window shall be
8859 deleted for each window individually.
8860 (size_window): When nodelete_p equals 2, tell shrink_windows to
8861 delete windows only if their new minimum size is no more safe.
8862 (shrink_window_lowest_first): Call window_min_size_1 to make
8863 sure to preserve modeline of bottom-most window when resizing
8864 the minibuffer.
8865 (Fset_window_configuration, Fcurrent_window_configuration)
8866 (compare_window_configurations): Do not handle
8867 window-min-height|width any more.
8868 (syms_of_window): Clarify window-min-height|width doc-strings.
8869
88702008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
8871
8872 * dired.c (file_name_completion): Fix up the encoding/decoding issue
8873 some more. Copy some of the code from Ftry_completions.
8874 Remove special case code that dates back to initial revision when the
8875 slash was only added when necessary and that can't trigger nowadays.
8876
88772008-04-27 Kenichi Handa <handa@m17n.org>
8878
8879 * font.c (font_prop_validate): Signal `error' instead of `font'.
8880
88812008-04-29 Jason Rumney <jasonr@gnu.org>
8882
8883 * w32fns.c (Fw32_battery_status): New defun.
8884 (syms_of_w32fns): Defsubr it.
8885
88862008-04-28 Andreas Schwab <schwab@suse.de>
8887
8888 * dired.c (file_name_completion): Fix another mixing of encoded
8889 and decoded names.
8890
88912008-04-28 Juanma Barranquero <lekktu@gmail.com>
8892
8893 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
8894
88952008-04-27 Juanma Barranquero <lekktu@gmail.com>
8896
8897 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
8898
88992008-04-27 Andreas Schwab <schwab@suse.de>
8900
8901 * dired.c (file_name_completion): Fix inappropriate mixing of
8902 encoded and decoded names.
8903
8904 * xterm.c (XTread_socket): Fix use of uninitialized variable.
8905
8906 * puresize.h (BASE_PURESIZE): Increase to 1200000.
8907
89082008-04-26 Eli Zaretskii <eliz@gnu.org>
8909
8910 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
8911 2008-03-31, it's not needed anymore with `struct stat' definition
8912 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
8913 for the same reasons.
8914
89152008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
8916
8917 * m/sparc.h: Additional redefinitions for GNU/Linux.
8918
89192008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8920
8921 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
8922 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
8923 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
8924 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
8925 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
8926 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
8927 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
8928 Likewise.
8929
8930 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
8931 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
8932 (mac_ax_number_of_characters): Add externs.
8933 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
8934 [USE_MAC_TSM]: Likewise.
8935 (mac_handle_text_input_event) [MAC_OSX]:
8936 Handle kEventTextInputOffsetToPos for no active input area case.
8937 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
8938 (mac_handle_document_access_event)
8939 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
8940 (install_application_handler) [MAC_OSX]: Register handlers for
8941 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
8942 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
8943 Register mac_handle_document_access_event.
8944
8945 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
8946 Make functions non-static.
8947
89482008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
8949
8950 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
8951 (read_file_name_completion_ignore_case, insert_default_directory)
8952 (Qdefault_directory): Move to minibuffer.el.
8953 (Fread_file_name): Call the new `read-file-name' instead.
8954
89552008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8956
8957 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
8958 Make function non-static.
8959 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
8960 Remove function.
8961 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
8962 Move to mactoolbox.c.
8963 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
8964
8965 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
8966 (mac_rect_make): New macro.
8967
8968 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
8969 instead of float.
8970 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
8971 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
8972 (XSetBackground) [USE_CG_DRAWING]: Likewise.
8973 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
8974 CGRectMake.
8975 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
8976 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
8977 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
8978 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
8979 instead of WindowRef in argument type.
8980 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
8981 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
8982 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
8983 instead of DISPLAY. All uses changed.
8984 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
8985 (x_calc_absolute_position): Simplify so as not to use
8986 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
8987
8988 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
8989 instead of WindowRef in argument type.
8990 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
8991 [TARGET_API_MAC_CARBON]: Remove externs.
8992 (create_apple_event, mac_event_parameters_to_lisp)
8993 [TARGET_API_MAC_CARBON]: Add externs.
8994
8995 * mactoolbox.c (Vmac_ts_script_language_on_focus)
8996 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
8997 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
8998 is clicked.
8999 (x_activate_menubar): Remove extern for saved_menu_event_location.
9000 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9001 Move from mac.c.
9002
90032008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9004
9005 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
9006 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
9007
90082008-04-23 Jason Rumney <jasonr@gnu.org>
9009
9010 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
9011 attributes only for local files.
9012
9013 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
9014 default to Qlocal.
9015
90162008-04-22 Juri Linkov <juri@jurta.org>
9017
9018 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
9019 read-buffer-to-switch instead of using the letter "B".
9020
90212008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
9022
9023 * fileio.c (Qdefault_directory): New variable.
9024 (Fread_file_name): Use it to pass `dir' to the completion functions.
9025
90262008-04-20 Chong Yidong <cyd@stupidchicken.com>
9027
9028 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
9029
90302008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
9031
9032 * keyboard.c (Vpre_help_message): Remove.
9033 (show_help_echo): Remove default C code.
9034
9035 * dired.c (directory_files_internal, file_name_completion):
9036 Only call ENCODE_FILE if the string is indeed decoded.
9037
90382008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9039
9040 * Makefile.in (TOOLKIT_DEFINES): Remove.
9041 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
9042
90432008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9044
9045 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
9046 (mactoolbox.o): New target.
9047
9048 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
9049 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
9050
9051 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
9052 Use mac_set_frame_window_background instead of XSetWindowBackground.
9053 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
9054 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
9055 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
9056 instead of SetWindowTitleWithCFString.
9057 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
9058 Move function to mactoolbox.c.
9059 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
9060 Use mac_set_window_modified instead of SetWindowModified.
9061 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
9062 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
9063 (Fx_focus_frame): Use mac_front_non_floating_window instead of
9064 FrontNonFloatingWindow. Use mac_activate_window instead of
9065 ActivateWindow. Use mac_active_non_floating_window instead of
9066 ActiveNonFloatingWindow.
9067 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
9068 Use mac_show_hourglass and mac_hide_hourglass.
9069 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
9070 instead of GetGlobalMouse.
9071 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
9072 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
9073 Use mac_bring_window_to_front instead of BringToFront.
9074 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
9075 mactoolbox.c.
9076 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
9077 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
9078 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
9079 mactoolbox.c.
9080
9081 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
9082 (XtPointer): Move typedef from macmenu.c.
9083 (enum button_type): Move enum from macmenu.c.
9084 (widget_value): Move typedef from macmenu.c.
9085 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
9086 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9087 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9088 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9089 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9090 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9091 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9092 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
9093 (Selection): Move typedef from macselect.c.
9094 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
9095 macterm.c.
9096 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
9097 (mac_is_window_collapsed, mac_bring_window_to_front)
9098 (mac_send_window_behind, mac_hide_window, mac_show_window)
9099 (mac_collapse_window, mac_front_non_floating_window)
9100 (mac_active_non_floating_window, mac_activate_window)
9101 (mac_move_window_structure, mac_move_window, mac_size_window)
9102 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
9103
9104 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
9105 (enum mac_menu_kind): Move enum to mactoolbox.c.
9106 (min_menu_id): Move variable to mactoolbox.c.
9107 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
9108 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
9109 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
9110 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
9111 [TARGET_API_MAC_CARBON]: Likewise.
9112 (XtPointer): Move typedef to macgui.h.
9113 (enum button_type): Move enum to macgui.h.
9114 (widget_value): Move typedef to macgui.h.
9115 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9116 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9117 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9118 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9119 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9120 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9121 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
9122 (popup_activated_flag): Make variable non-static.
9123 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
9124 (add_menu_item, fill_menu, dispose_menus):
9125 Move functions to mactoolbox.c.
9126 (restore_show_help_function, menu_target_item_handler)
9127 (install_menu_target_item_handler, mac_handle_dialog_event)
9128 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
9129 [TARGET_API_MAC_CARBON]: Likewise.
9130 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
9131 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9132 (find_and_call_menu_selection, name_is_separator): Make function
9133 non-static.
9134 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
9135 to mactoolbox.c.
9136 (set_frame_menubar): Don't call install_menu_quit_handler.
9137 (menu_item_selection): New variable.
9138 (mac_menu_show): Use create_and_show_popup_menu.
9139 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
9140 selection but set variable menu_item_selection. All uses changed.
9141 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
9142 Call install_menu_quit_handler. Move to mactoolbox.c.
9143
9144 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
9145 (Selection): Move typedef to macgui.h.
9146 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
9147 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
9148 Make variables non-static.
9149 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9150 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
9151 Make functions non-static.
9152 (Vmac_service_selection) [MAC_OSX]: Likewise.
9153 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
9154 (mac_valid_selection_target_p, mac_clear_selection)
9155 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9156 (mac_put_selection_value, mac_selection_has_target_p)
9157 (mac_get_selection_value, mac_get_selection_target_list)
9158 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
9159 Move functions to mactoolbox.c.
9160 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
9161 Likewise.
9162 (copy_scrap_flavor_data, mac_handle_service_event)
9163 (install_service_handler) [MAC_OSX]: Likewise.
9164 (syms_of_macselect) <Vmac_dnd_known_types>:
9165 Use mac_dnd_default_known_types.
9166
9167 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
9168 Move to mactoolbox.c.
9169 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
9170 (Fx_selection_owner_p): Add EXFUN.
9171 (install_window_handler, remove_window_handler, XSetWindowBackground):
9172 Remove externs.
9173 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
9174 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
9175 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
9176 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
9177 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
9178 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
9179 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
9180 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
9181 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
9182 (create_and_show_popup_menu, mac_get_selection_from_symbol)
9183 (mac_valid_selection_target_p, mac_clear_selection)
9184 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9185 (mac_put_selection_value, mac_selection_has_target_p)
9186 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
9187 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
9188 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
9189 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9190 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
9191 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9192 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
9193 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9194 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9195
9196 * mactoolbox.c: New file.
9197
91982008-04-18 Jason Rumney <jasonr@gnu.org>
9199
9200 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
9201
92022008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9203
9204 * character.c (Fmultibyte_char_to_unibyte):
9205 Return latin1 chars unchanged.
9206
9207 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
9208 relocated if it points to `name'.
9209
92102008-04-17 Kenichi Handa <handa@m17n.org>
9211
9212 * data.c (Faset): Allow setting a multibyte character in an
9213 ASCII-only unibyte string.
9214
9215 * lisp.h (STRING_SET_MULTIBYTE): New macro.
9216
92172008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
9218
9219 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
9220 done in config.h.
9221
92222008-04-16 Juanma Barranquero <lekktu@gmail.com>
9223
9224 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
9225 (Fchar_direction): Add usage in the docstring.
9226
92272008-04-15 Chong Yidong <cyd@stupidchicken.com>
9228
9229 * keyboard.c (read_key_sequence): Remove always-true checks.
9230
92312008-04-14 Jason Rumney <jasonr@gnu.org>
9232
9233 * w32font.c (w32font_open_internal): Set max_bounds.descent in
9234 compatibility struct, for better underline positioning.
9235
92362008-04-13 David Hansen <david.hansen@gmx.net>
9237
9238 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
9239 string.
9240
92412008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
9242
9243 * m/hp800.h (XUINT, XSET): Remove.
9244
92452008-04-12 Juanma Barranquero <lekktu@gmail.com>
9246
9247 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
9248 previous change.
9249
92502008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
9251
9252 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
9253 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
9254
92552008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9256
9257 * keymap.h (map_keymap_canonical): Declare.
9258 * xmenu.c (single_keymap_panes): Use it.
9259
92602008-04-11 Glenn Morris <rgm@gnu.org>
9261
9262 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
9263 set the target's value to that of the alias.
9264
92652008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9266
9267 * term.c (set_tty_color_mode): Left over typo.
9268
92692008-04-10 Michael Albinus <michael.albinus@gmx.de>
9270
9271 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
9272 only after check for file name handler functions. Signal, when
9273 native functionality is not supported.
9274 (syms_of_fileio): Declare it unconditionally.
9275
92762008-04-10 Jason Rumney <jasonr@gnu.org>
9277
9278 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
9279 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
9280
9281 * w32.c (logon_network_drive): Also logon to remote drives that
9282 are mapped to drive letters.
9283
92842008-04-10 Glenn Morris <rgm@gnu.org>
9285
9286 * xdisp.c (truncate-partial-width-windows): Doc fix.
9287
92882008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
9289
9290 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
9291 Move functions to minibuffer.el.
9292 (syms_of_fileio): Don't declare them.
9293
92942008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9295
9296 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
9297 (syms_of_minibuf): Remove its initialization.
9298
9299 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
9300
93012008-04-09 Juanma Barranquero <lekktu@gmail.com>
9302
9303 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
9304
93052008-04-09 Jason Rumney <jasonr@gnu.org>
9306
9307 * makefile.w32-in (distclean): Delete makefile too.
9308 (maintainer-clean): New target.
9309
9310 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
9311
9312 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
9313 for new font backend and composite cases.
9314
93152008-04-09 Jan Djärv <jan.h.d@swipnet.se>
9316
9317 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
9318 Most of the code moved to run_timers.
9319 (do_pending_atimers): Call run_timers.
9320 (run_timers): New function.
9321
9322 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
9323 run atimers.
9324
9325 * process.c (wait_reading_process_output): The same as above.
9326
93272008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9328
9329 * minibuf.c (last_exact_completion): Remove variable.
9330 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
9331 (complete_and_exit_1, complete_and_exit_2)
9332 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
9333 (Fdisplay_completion_list, display_completion_list_1)
9334 (Fminibuffer_completion_help, Fself_insert_and_exit)
9335 (Fexit_minibuffer, Fminibuffer_message): Move functions to
9336 minibuffer.el.
9337 (syms_of_minibuf): Remove corresponding initializations.
9338
9339 * keyboard.c (Qdeactivate_mark): New var.
9340 (command_loop_1): Use it to call `deactivate-mark'.
9341 (syms_of_keyboard): Initialize it.
9342
9343 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
9344 to another frame.
9345 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
9346 Don't call set_tty_color_mode.
9347 (store_frame_param): Reset previous_frame rather than call
9348 set_tty_color_mode.
9349 * term.c (set_tty_color_mode): Rewrite.
9350 * dispextern.h (set_tty_color_mode): New type.
9351 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
9352
93532008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
9354
9355 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
9356 for generic chars, which do not exist any more in emacs-unicode.
9357
93582008-04-08 Michael Albinus <michael.albinus@gmx.de>
9359
9360 * coding.c (detect_coding_emacs_mule)
9361 (Ffind_operation_coding_system): Fix typo.
9362
93632008-04-08 Jason Rumney <jasonr@gnu.org>
9364
9365 * w32uniscribe.c (SNAME): Extract only symbol name.
9366
9367 * w32font.h (struct w32_metric_cache): New struct.
9368 (w32font_info): Use it.
9369 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
9370 (CACHE_BLOCKSIZE): New constants.
9371
9372 * w32font.c (Qja, Qko, Qzh): New symbols.
9373 (syms_of_w32font): Initialise them.
9374 (font_matches_spec): Use them to filter by language.
9375 (recompute_cached_metrics): Remove function.
9376 (compute_metrics, clear_cached_metrics): New functions.
9377 (w32font_encode_char): Use them to manage metric cache.
9378 (w32font_text_extents): Cache metrics for all glyphs on demand.
9379 Delay converting glyph indices to WORD until needed.
9380 (w32font_open_internal): Initialize metric cache to empty.
9381 (registry_to_w32_charset): Charset should always be a symbol.
9382 (fill_in_logfont, list_all_matching_fonts): Family should
9383 always be a symbol.
9384
93852008-04-06 Jason Rumney <jasonr@gnu.org>
9386
9387 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
9388 Give up if glyph indices not supported. Use uniscribe obtained
9389 ABC widths for individual metrics. Map glyph clusters back to
9390 characters using fClusterStart flag. Return number of glyphs
9391 produced, not chars processed.
9392 (uniscribe_shape): Map char at FROM to current glyph.
9393
93942008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9395
9396 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
9397 Use SetMenuItemHierarchicalMenu.
9398
93992008-04-05 Jason Rumney <jasonr@gnu.org>
9400
9401 * image.c (pbm_load): Allow color values up to 65535.
9402 Throw an error if max_color_idx is outside the supported range.
9403 Report an error when image size is invalid.
9404 Read two bytes at a time when raw images have max_color_idx above 255.
9405
94062008-04-05 Eli Zaretskii <eliz@gnu.org>
9407
9408 * w32.c (readdir): If FindFirstFile/FindNextFile return in
9409 cFileName a file name that includes `?' characters, use the 8+3
9410 alias in cAlternateFileName instead.
9411
94122008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
9413
9414 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
9415 append "CCL: Quitted" when the CCL program is quitted.
9416 (setup_ccl_program): Initialize ccl->quit_silently to zero.
9417
9418 * ccl.h (struct ccl_program): New member quit_silently.
9419
94202008-04-05 Chong Yidong <cyd@stupidchicken.com>
9421
9422 * search.c (compile_pattern_1): Treat non-nil and non-string of
9423 search-spaces-regexp as nil.
9424
9425 * minibuf.c (Fassoc_string): Tweak docstring.
9426
94272008-04-05 Eli Zaretskii <eliz@gnu.org>
9428
9429 * dired.c (Ffile_attributes): Support inode numbers wider than 32
9430 bits. Remove ugly WINDOWSNT-specific kludge introduced on
9431 2008-03-14 to force inode be positive.
9432
9433 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
9434 _S_* ones, since we now use our own sys/stat.h.
9435 (stat, fstat): Don't mangle the inode number.
9436 (init_user_info): Don't restrict UID and GID to 0-60000 range.
9437
94382008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
9439
9440 * frame.h (struct frame): Give one more bit to `visible' since we use
9441 values larger than 1 to indicate obscured frames on ttys.
9442
9443 * keymap.c (Qkeymap_canonicalize): New var.
9444 (Fmap_keymap_internal): New fun.
9445 (describe_map): Use keymap-canonicalize.
9446
9447 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
9448 (Fundo_boundary): Set them.
9449 (syms_of_undo): Initialize them.
9450 (record_point): Use them instead of last_point_position*.
9451 (last_undo_buffer): Change type.
9452
94532008-04-04 Jason Rumney <jasonr@gnu.org>
9454
9455 * w32font.c (w32font_text_extents): Use font's ascent and descent.
9456 (recompute_cached_metrics): Don't set ascent and descent per char.
9457
9458 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
9459 (uniscribe_check_otf): Add GC protection before consing.
9460 Rearrange loop for counting features.
9461
94622008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
9463
9464 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
9465 buffer with byte-size of source buffer.
9466
94672008-04-03 Chong Yidong <cyd@stupidchicken.com>
9468
9469 * callint.c (Fcall_interactively): Handle temporary region even
9470 when shift-select-mode is off.
9471
94722008-04-03 Jason Rumney <jasonr@gnu.org>
9473
9474 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
9475
94762008-04-03 Kenichi Handa <handa@m17n.org>
9477
9478 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
9479 (CATEGORY_MASK_UTF_16): Likewise.
9480 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
9481 binary file.
9482 (detect_coding): Add null-byte detection for a binary file.
9483 (detect_coding_system): Likewise.
9484
94852008-04-03 Jason Rumney <jasonr@gnu.org>
9486
9487 * w32uniscribe.c: New file.
9488
9489 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
9490
9491 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
9492
9493 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
9494 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
9495 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
9496 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
9497 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
9498 (Qphonetic): New symbols.
9499 (syms_of_w32font): Initialize them.
9500 (font_supported_scripts): Use them.
9501 (w32font_list_family): List all charsets.
9502 (w32font_text_extents, recompute_cached_metrics): Fix metric
9503 calculations.
9504 (w32_enumfont_pattern_entity): Make full_type a DWORD.
9505 Give opentype fonts their own format.
9506 (font_matches_spec): New arguments backend and logfont.
9507 Handle :otf spec for uniscribe backend.
9508 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
9509 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
9510
9511 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
9512 font backend.
9513 (globals_of_w32fns): Initialize uniscribe font backend.
9514
9515 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
9516 dependencies.
9517 (w32uniscribe.$(O)): New file to build.
9518 (FONT_OBJ): Include w32uniscribe.$(O).
9519 (LIBS): Add uniscribe libraries.
9520
9521 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
9522
95232008-04-02 Chong Yidong <cyd@stupidchicken.com>
9524
9525 * callint.c (Vshift_select_mode): New var.
9526 (Finteractive): Document new ^ spec.
9527 (Fcall_interactively): Call handle-shift-selection if the ^ spec
9528 is present.
9529
9530 * keyboard.c (Vthis_command_keys_shift_translated): New var.
9531 (command_loop_1): Avoid running the direct display versions of
9532 forward-char and backward-char if shift-selection may occur.
9533 (read_key_sequence): Set Vthis_command_keys_shift_translated if
9534 shift-translation takes place.
9535
9536 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
9537 avoid clobbering by define-minor-mode.
9538
9539 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
9540 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
9541
9542 * syntax.c (Fforward_word): Add ^ interactive spec.
9543
9544 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
9545 (Fscroll_right): Add ^ interactive spec.
9546
95472008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
9548
9549 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
9550
9551 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
9552
9553 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
9554
95552008-03-31 Juri Linkov <juri@jurta.org>
9556
9557 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
9558
95592008-03-30 Jan Djärv <jan.h.d@swipnet.se>
9560
9561 * gtkutil.c (xg_set_geometry): Fix indentation.
9562 (xg_resize_outer_widget): Remove.
9563 (x_wm_size_hint_off): Fix indentation.
9564 (xg_frame_set_char_size): Call flush_and_sync after
9565 gtk_window_resize.
9566 (x_wm_set_size_hint): Pass NULL as geometry window to
9567 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
9568 Add menu bar and tool bar height to base height.
9569 (xg_update_frame_menubar, free_frame_menubar)
9570 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
9571 (update_frame_tool_bar, free_frame_tool_bar):
9572 Change xg_resize_outer_widget to xg_frame_set_char_size.
9573
95742008-03-30 Michael Albinus <michael.albinus@gmx.de>
9575
9576 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
9577 (Fdbus_call_method): New parameter TIMEOUT.
9578 (dbus-send-signal): Optimize UNGCPRO call.
9579
95802008-03-29 Juri Linkov <juri@jurta.org>
9581
9582 * window.c (Fdisplay_buffer): Move call to
9583 Vsplit_window_preferred_function out of conditions that check
9584 if window is eligible for vertical splitting.
9585 When Vsplit_window_preferred_function is non-nil, call it and use
9586 its non-nil return value as window. Otherwise, continue doing
9587 vertical splitting using Fsplit_window with arg horflag=nil.
9588 (syms_of_window) <Vsplit_window_preferred_function>: Change the
9589 default value from `split-window' to nil.
9590
95912008-03-29 Juri Linkov <juri@jurta.org>
9592
9593 * callint.c (Fcall_interactively): Revert 2008-03-16 change
9594 for interactive code letters 'b' and 'B'.
9595
95962008-03-29 Eli Zaretskii <eliz@gnu.org>
9597
9598 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
9599 multibyte string.
9600
96012008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
9602
9603 * keyboard.c (pending_funcalls): New var.
9604 (timer_check): Run it.
9605 (syms_of_keyboard): Initialize it.
9606 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
9607 (Vdelete_terminal_functions): New vars.
9608 (syms_of_terminal): Initialize them.
9609 (Fdelete_terminal): Run delete-terminal-functions.
9610 * xdisp.c (safe_eval): Rewrite.
9611 (safe_call2): New fun.
9612 * frame.c (Qdelete_frame_functions): New var.
9613 (syms_of_frame): Initialize it.
9614 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
9615 * lisp.h (safe_call2, pending_funcalls): Declare.
9616
96172008-03-28 Andreas Schwab <schwab@suse.de>
9618
9619 * indent.c (Fmove_to_column): Move declaration before statements.
9620
96212008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
9622
9623 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
9624 (struct frame): Use bit fields for boolean vars.
9625
9626 * process.c (server_accept_connection): Simplify naming.
9627 (emacs_get_tty_pgrp): Use SDATA.
9628
9629 * coding.c (decode_coding_object): Fix last change.
9630
96312008-03-27 Jason Rumney <jasonr@gnu.org>
9632
9633 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
9634
96352008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
9636
9637 * charset.c (Fdefine_charset_internal): Change the way of
9638 registering charsets in Vcharset_order_list.
9639 (syms_of_charset): Make the charset `eight-bit' supplementary.
9640
96412008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
9642
9643 * regex.c (EXTEND_BUFFER): Change order of pointer addition
9644 operations, to avoid having the difference between pointers
9645 overflow.
9646
96472008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
9648
9649 * indent.c (check_display_width): New fun.
9650 (scan_for_column): Use it.
9651
9652 * data.c (syms_of_data): Mark most-positive-fixnum and
9653 most-negative-fixnum as constants.
9654
9655 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
9656
9657 * indent.c (scan_for_column): Extract from current_column_1.
9658 Merge with the same code from Fmove_to_column.
9659 (current_column_1, Fmove_to_column): Use it.
9660
96612008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
9662
9663 * keymap.c (map_keymap_internal): New fun.
9664 (map_keymap): Use it.
9665 (Fmap_keymap_internal): New fun.
9666 (Fmap_keymap): Remove left-out test from before make_save_value.
9667
9668 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
9669
9670 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
9671 Use XCAR/XCDR.
9672
9673 * process.h (struct Lisp_Process): Remove filter_multibyte.
9674 * process.c (QCfilter_multibyte): Remove.
9675 (setup_process_coding_systems): Don't use filter_multibyte.
9676 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
9677 (read_process_output): Don't adjust multibyteness to filter_multibyte.
9678 (Fset_process_filter_multibyte): Change the coding-system to
9679 approximate the previous behavior.
9680 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
9681 coding-system.
9682
9683 * coding.c (decode_coding_object): When not decoding into a buffer,
9684 obey the coding system's preference of (uni|multi)byte.
9685
96862008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
9687
9688 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
9689 every char is changed and has a different byte-length.
9690 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
9691 Fix int -> EMACS_INT.
9692
96932008-03-23 David Hansen <david.hansen@gmx.net>
9694
9695 * dbusbind.c (xd_read_message): Remove extra copying of message
9696 strings. Check for NULL `interface' or `member'.
9697
96982008-03-22 Eli Zaretskii <eliz@gnu.org>
9699
9700 * w32.c (readdir): If FindFirstFile/FindNextFile return in
9701 cFileName a file name that includes `?' characters, use the 8+3
9702 alias in cAlternateFileName instead.
9703
97042008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
9705
9706 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
9707
97082008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
9709
9710 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
9711 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
9712 work on current_buffer only instead (that was already the case
9713 for some of the code anyway).
9714 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
9715 (temp_set_point, temp_set_point_both): Use EMACS_INT.
9716 (SET_PT, SET_PT_BOTH): Adjust.
9717 * intervals.h (set_point, temp_set_point, set_point_both)
9718 (temp_set_point_both): Remove redundant declarations.
9719
97202008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
9721
9722 * fileio.c (Finsert_file_contents):
9723 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
9724 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
9725 when buffer != current_buffer anyway.
9726
97272008-03-20 Andreas Schwab <schwab@suse.de>
9728
9729 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
9730 as default.
9731
97322008-03-19 Jason Rumney <jasonr@gnu.org>
9733
9734 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
9735 (syms_of_w32fns): Initialize them.
9736 (HOURGLASS_ID): New constant.
9737 (x_window_to_frame): Don't check hourglass_window.
9738 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
9739 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
9740 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
9741 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
9742 Only change the cursor if hourglass is not active.
9743 (Fx_create_frame): Initialize frame's current_cursor.
9744 (hourglass_atimer): Remove.
9745 (hourglass_started): New function.
9746 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
9747 (show_hourglass): Adapt to w32, changing argument to frame.
9748
9749 * w32term.h (struct w32_output): Remove hourglass_window.
9750 Add current_cursor.
9751
9752 * eval.c (call_debugger, Fsignal):
9753 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
9754 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
9755 (Fexecute_extended_command, cancel_hourglass_unwind):
9756 * minibuf.c (read_minibuf):
9757 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
9758
97592008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
9760
9761 * window.c (run_funs): New fun.
9762 (run_window_configuration_change_hook): Use it to run the buffer-local
9763 and the global part of the hook.
9764
9765 * xdisp.c (format_mode_line_unwind_data): Add window argument.
9766 (unwind_format_mode_line): Restore selected window.
9767 (x_consider_frame_title, Fformat_mode_line): Set selected window.
9768
97692008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
9770
9771 * editfns.c (Fchar_equal): Check they are valid characters.
9772
9773 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
9774
97752008-03-17 Andreas Schwab <schwab@suse.de>
9776
9777 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
9778 against a charset.
9779
9780 * lisp.h (Fbuffer_list): Declare.
9781
97822008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 9783
aac0c6e3
MR
9784 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
9785 handlebox_widget is != 0.
9786
97872008-03-16 Juri Linkov <juri@jurta.org>
9788
9789 * callint.c (Fcall_interactively): For interactive code letters
9790 'b' and 'B' put the buffer list into the list of default "future"
9791 values of the minibuffer.
9792
97932008-03-16 Andreas Schwab <schwab@suse.de>
9794
9795 * keyboard.c (read_key_sequence): Fix downcasing of letters with
9796 modifiers.
9797
9798 * regex.c (re_match_2_internal): Correct matching of a charset
9799 against latin-1 characters.
9800
98012008-03-16 Kenichi Handa <handa@m17n.org>
9802
9803 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
9804 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
9805 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
9806 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
9807 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
9808 CHAR_STRING_ADVANCE.
9809 (produce_chars): Fix for the case that the source and the
9810 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
9811 instead of CHAR_STRING_ADVANCE.
9812 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
9813 STRING_CHAR_ADVANCE.
9814
98152008-03-15 Andreas Schwab <schwab@suse.de>
9816
9817 * regex.c (re_match_2_internal): Correct matching of eight bit
9818 characters in unibyte strings.
9819
98202008-03-15 Martin Rudalics <rudalics@gmx.at>
9821
9822 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
9823 at end of range when it coincides with the end of the buffer.
9824
98252008-03-14 Eli Zaretskii <eliz@gnu.org>
9826
9827 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
9828
9829 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
9830
98312008-03-14 Jason Rumney <jasonr@gnu.org>
9832
9833 * editfns.c (initial_tz): New variable.
9834 (syms_of_editfns): Initialize it.
9835 (Fset_time_zone_rule): Set it when first called.
9836 Use it when TZSTRING is nil.
9837
9838 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
9839 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
9840 (monitor_from_point_fn, get_monitor_info_fn): New globals.
9841 (globals_of_w32fns): Initialize them.
9842 (compute_tip_xy): Use them to position tooltips.
9843
98442008-03-14 Glenn Morris <rgm@gnu.org>
9845
9846 * emacs.c (main): Revert previous change.
9847 (standard_args): Revert -internal-script back to -scriptload,
9848 and remove the long-option form.
9849
98502008-03-13 Glenn Morris <rgm@gnu.org>
9851
9852 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
9853 Remove option -enable-font-backend.
9854
98552008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
9856
9857 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
9858
98592008-03-11 Jan Djärv <jan.h.d@swipnet.se>
9860
9861 * xterm.c (x_connection_closed): For GTK: If this is the last
9862 terminal just exit without closing the display.
9863
98642008-03-11 Jason Rumney <jasonr@gnu.org>
9865
9866 * w32font.c (w32font_full_name): Use floor to round.
9867
f0131492 98682008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
9869
9870 * sound.c (alsa_configure): Declare vol at beginning of block.
9871
9872 * fontset.c (Ffontset_info): Remove extra semicolon.
9873
98742008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
9875
9876 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
9877 size of resulting string.
9878
98792008-03-10 Jason Rumney <jasonr@gnu.org>
9880
9881 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
9882
98832008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9884
9885 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
9886 Don't pretend as if characters with display property haven't been
9887 consumed for string-replacing-string case.
9888
98892008-03-08 Kim F. Storm <storm@cua.dk>
9890
9891 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
9892 (get_next_display_element, next_element_from_string)
9893 (next_element_from_ellipsis, next_element_from_buffer): Use it.
9894
98952008-03-08 Andreas Schwab <schwab@suse.de>
9896
9897 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
9898
98992008-03-06 Jason Rumney <jasonr@gnu.org>
9900
9901 * w32font.c (w32_registry): Take font_type argument. Use ANSI
9902 when charset not specified. Only translate ANSI to unicode when
9903 font_type is truetype.
9904 (w32font_coverage_ok): New function.
9905 (add_font_entity_to_list): Use it to filter unsuitable fonts.
9906
99072008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
9908
9909 * lread.c (Fread_char): Resolve modifiers.
9910 (Fread_char_exclusive): Likewise.
9911
9912 * character.c (char_resolve_modifier_mask): New function.
9913 (char_string): Use char_resolve_modifier_mask.
9914 (Fchar_resolve_modifiers): New function.
9915 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
9916 function.
9917
99182008-03-04 Jason Rumney <jasonr@gnu.org>
9919
9920 * makefile.w32-in: Always include w32font.c in the build.
9921 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
9922
99232008-03-04 Andreas Schwab <schwab@suse.de>
9924
9925 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
9926 (versionclean): Likewise.
9927
99282008-03-04 Juanma Barranquero <lekktu@gmail.com>
9929
9930 * .cvsignore: Add oo.
9931
99322008-03-03 Andreas Schwab <schwab@suse.de>
9933
9934 * coding.c (decode_coding_object): Inhibit gap shrinking while
9935 decoding in place.
9936
99372008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
9938
9939 * w32term.c: Remove unused include "gnu.h".
9940 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
9941
9942 * gnu.h: Rename to ...
9943 * emacs-icon.h: ... this.
9944 * xterm.c: Use emacs-icon.h instead of gnu.h.
9945 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
9946
99472008-03-03 Juanma Barranquero <lekktu@gmail.com>
9948
9949 * w32font.c: Include math.h.
9950
99512008-03-03 Jason Rumney <jasonr@gnu.org>
9952
9953 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
9954 Compute options separately.
9955 (w32font_open_internal): Set glyph_idx before caching metrics.
9956
9957 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
9958 Define if system headers don't.
9959 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
9960 (w32font_encode_char): Don't declare here.
9961
9962 * w32font.c (Quniscribe, QCformat): New symbols.
9963 (syms_of_w32font): Define them.
9964 (w32font_has_char): Indicate uncertainty.
9965 (w32font_encode_char): Encode as glyph point. Make static.
9966 (recompute_cached_metrics): New function.
9967 (w32font_open_internal): Use it. Set font to use glyph points
9968 initially. Set format based on type of font.
9969 (w32font_text_extents, w32font_draw): Optionally use glyph points.
9970 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
9971 on it. Set format based on information available here.
9972 (add_font_entity_to_list): Identify backend based on opentype_only.
9973
99742008-03-02 Andreas Schwab <schwab@suse.de>
9975
9976 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
9977
9978 * coding.c (decode_coding_big5, produce_chars):
9979 Fix typos in last change.
9980
99812008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
9982
9983 * gnu.h: New icon.
9984
99852008-03-02 Kenichi Handa <handa@m17n.org>
9986
9987 * coding.c (decode_coding_utf_8): When eol-type of CODING is
9988 `dos', don't decode '\r' if that is the last in the source.
9989 (decode_coding_utf_16, decode_coding_emacs_mule)
9990 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
9991 (decode_coding_raw_text, decode_coding_charset): Likewise.
9992 (produce_chars): Don't decode EOL here. Use EMACS_INT.
9993
99942008-03-01 Jason Rumney <jasonr@gnu.org>
9995
9996 * w32font.c (w32font_full_name): Report point size for scalable fonts.
9997
99982008-03-01 Kim F. Storm <storm@cua.dk>
9999
10000 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
10001
100022008-03-01 Jason Rumney <jasonr@gnu.org>
10003
10004 * w32font.c (w32font_full_name): New function.
10005 (w32font_open_internal): Use it.
10006
100072008-03-01 Kim F. Storm <storm@cua.dk>
10008
10009 * dispnew.c (line_draw_cost): Fix invalid glyph check.
10010
100112008-03-01 Jason Rumney <jasonr@gnu.org>
10012
10013 * font.c (font_unparse_fcname): Increase len when style is a symbol.
10014
100152008-03-01 Jan Djärv <jan.h.d@swipnet.se>
10016
10017 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
10018 xg_frame_resized when the event is for the edit widget.
10019
10020 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
10021
10022 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
10023 set_char_size.
10024 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
10025 operations on widgets here. Just set frame size if needed.
10026 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
10027 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
10028 (x_wm_set_size_hint): Set size hints on the edit widget only, not
10029 the whole frame.
10030 (xg_create_tool_bar): Move attachment of the tool bar to
10031 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
10032 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
10033
100342008-03-01 Jason Rumney <jasonr@gnu.org>
10035
10036 * w32fns.c (w32_msg_pump): Disable debug code.
10037
100382008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10039
10040 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
10041
100422008-02-29 Chong Yidong <cyd@stupidchicken.com>
10043
10044 * xdisp.c (next_overlay_string): Don't set
10045 overlay_strings_at_end_processed_p if we're currently reading from
10046 a display string.
10047
100482008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
10049
10050 * xdisp.c (get_overlay_strings_1): Fix typo.
10051
100522008-02-29 Chong Yidong <cyd@stupidchicken.com>
10053
10054 * xdisp.c (get_overlay_strings_1): Add missing argument type.
10055
100562008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
10057
10058 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
10059
10060 * xdisp.c (display_mode_element): Cancel the previous change.
10061 (decode_mode_spec): Likewise.
10062 (handle_auto_composed_prop): Don't make composition if it->string
10063 is a string.
10064
100652008-02-27 Kim F. Storm <storm@cua.dk>
10066
10067 * lisp.h (GLYPH): Change type from int to struct with separate char
10068 and face_id members.
10069 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
10070 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
10071 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
10072 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
10073 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
10074 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
10075 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
10076 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
10077 handle new Lisp glyph code encoding, either an integer or a cons.
10078
10079 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
10080 (GLYPH_ALIAS): Delete.
10081 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
10082 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
10083 (GLYPH_FROM_CHAR): Replace macro by ...
10084 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
10085
10086 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
10087 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
10088 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
10089 (GLYPH_INVALID_P): New macro.
10090 (spec_glyph_lookup_face): Update prototype.
10091
10092 * dispnew.c (line_draw_cost): Adapt to new glyph type.
10093 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
10094 new glyph code encoding.
10095 (spec_glyph_lookup_face): No return value; update passed glyph instead.
10096 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
10097
10098 * xdisp.c (get_next_display_element, next_element_from_display_vector):
10099 Adapt to new glyph type and new glyph code encoding.
10100
10101 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
10102
10103 * indent.c (current_column, current_column_1, Fmove_to_column)
10104 (compute_motion): Adapt to new glyph code encoding.
10105
10106 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
10107
101082008-02-27 Chong Yidong <cyd@stupidchicken.com>
10109
10110 * process.c (wait_reading_process_output): Check for window
10111 changes caused by timers.
10112 Suggested by Johan Bockgård.
10113
101142008-02-27 Glenn Morris <rgm@gnu.org>
10115
10116 * emacs.c (USAGE1): Add `--disable-font-backend'.
10117
101182008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
10119
10120 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
10121 is made to the buffer.
10122
101232008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
10124
10125 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
10126 (face_at_string_position):
10127 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
10128 (face_at_string_position):
10129 * xdisp.c (display_string, next_overlay_change):
10130 * buffer.h (overlays_at):
10131 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
10132 Update callers.
10133
101342008-02-26 Chong Yidong <cyd@stupidchicken.com>
10135
10136 * editfns.c (Fformat): Doc fix.
10137
101382008-02-26 Juanma Barranquero <lekktu@gmail.com>
10139
10140 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
10141 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
10142 (Ffont_otf_alternates, Fquery_font): Doc fixes.
10143
101442008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10145
10146 * buffer.c (Fbuffer_swap_text): New function.
10147 (syms_of_buffer): Defsubr it.
10148
101492008-02-25 Chong Yidong <cyd@stupidchicken.com>
10150
10151 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
10152
101532008-02-25 Jason Rumney <jasonr@gnu.org>
10154
10155 * w32font.c (w32font_draw): Draw one character at a time when padding.
10156
101572008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10158
10159 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
10160 Handle a nil arg. Use run_window_configuration_change_hook.
10161 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
10162 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
10163 Use run_window_configuration_change_hook.
10164
101652008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10166
10167 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
10168 1-pixel width.
10169
101702008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10171
10172 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
10173 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
10174 if the glyph in the font is zero pixel with.
10175
10176 * dispextern.h (struct glyph_string): New member padding_p.
10177
10178 * w32font.c (w32font_draw): Pay attention to s->padding_p.
10179
10180 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
10181
10182 * xfont.c (xfont_draw): Pay attention to s->padding_p.
10183
10184 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
10185
10186 * font.c: If the font driver doesn't have `shape' function, return Qnil.
10187
101882008-02-25 Jason Rumney <jasonr@gnu.org>
10189
10190 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
10191
101922008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
10193
10194 Allow fine-grained image-cache flushing.
10195 * dispextern.h (struct image): Add `dependencies' field.
10196 (clear_image_caches): Change arg to Lisp_Object.
10197 * image.c (make_image): Initialize `dependencies' field.
10198 (clear_image_cache): Change arg to allow fine-grained flushing.
10199 Perform the flush even if image-cache-eviction-delay is nil.
10200 (clear_image_caches): Change arg to Lisp_Object.
10201 (Fclear_image_cache): Expand meaning of the argument.
10202 (mark_image): Mark `dependencies' field.
10203 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
10204 (lface_hash): Use XHASH rather than XFASTINT.
10205 (face_at_buffer_position): Fix int -> EMACS_INT position.
10206 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
10207 (select_frame_for_redisplay): Remove code duplication.
10208 (redisplay_internal): Adapt arg to call to clear_image_caches.
10209
102102008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
10211
10212 * s/vms4-0.h:
10213 * s/vms4-2.h:
10214 * s/vms4-4.h:
10215 * s/vms5-5.h: Remove, unused.
10216
10217 * s/irix5-2.h:
10218 * s/irix6-0.h:
10219 * s/riscos5.h:
10220 * s/mach-bsd4-3.h:
10221 * m/mips4.h: Remove files for obsolete systems.
10222
10223 * Makefile.in:
10224 * filelock.c:
10225 * unexmips.c:
10226 * m/hp9000s300.h:
10227 * m/iris4d.h:
10228 * s/aix3-1.h:
10229 * s/hpux.h:
10230 * s/msdos.h:
10231 * s/usg5-0.h:
10232 * s/usg5-2-2.h:
10233 * s/usg5-2.h:
10234 * s/usg5-3.h: Remove references to obsolete variables.
10235
10236 * s/irix5-0.h: Remove, move all the contents ...
10237 * s/irix6-5.h: ... here. Simplify.
10238 * config.in: Regenerate.
10239
102402008-02-24 Jason Rumney <jasonr@gnu.org>
10241
10242 * w32term.c (x_draw_glyph_string_background): Clear the background
10243 manually when cleartype is in use.
10244 (x_draw_glyph_string_foreground): Draw text transparently when
10245 cleartype is in use.
10246
10247 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
10248 a font into it unless we have to.
10249
102502008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10251
10252 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
10253 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 10254
aac0c6e3
MR
102552008-02-18 Jason Rumney <jasonr@gnu.org>
10256
10257 * w32fns.c (Fw32_shell_execute): Encode parameters.
10258
102592008-02-09 Eli Zaretskii <eliz@gnu.org>
10260
10261 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
10262
102632008-02-05 Juanma Barranquero <lekktu@gmail.com>
10264
10265 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
10266
102672008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
10268
10269 * xterm.c (x_set_offset): Don't change the gravity if
10270 CHANGE_GRAVITY is -1.
10271
102722008-02-23 Chong Yidong <cyd@stupidchicken.com>
10273
10274 * fileio.c (auto_save_error_occurred): New var.
10275 (auto_save_error): Set it.
10276 (Fdo_auto_save): Don't overwrite the error message if an auto-save
10277 error occurred.
10278
102792008-02-23 Eli Zaretskii <eliz@gnu.org>
10280
10281 * w32.c (globals_of_w32): Add initializations for
10282 g_b_init_get_sid_sub_authority and
10283 g_b_init_get_sid_sub_authority_count.
10284
102852008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
10286
10287 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
10288 (font_parse_xlfd): Use them for sanity check.
10289 (Finternal_set_font_style_table): Make sure the table is bijective.
10290
10291 Consolidate the image_cache to the terminal struct.
10292 * termhooks.h (P_): Remove redundant def.
10293 (struct terminal): New field `image_cache'.
10294 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
10295 of FRAME_X_IMAGE_CACHE.
10296 * xterm.h (struct x_display_info): Remove image_cache field.
10297 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10298 * w32term.h (struct w32_display_info): Remove image_cache field.
10299 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10300 * macterm.h (struct mac_display_info): Remove image_cache field.
10301 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10302 * xterm.c (x_term_init):
10303 * w32term.c (w32_term_init):
10304 * macterm.c (mac_term_init): Set the image_cache in the terminal.
10305 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
10306 Remove declarations.
10307 (clear_image_caches, mark_image_cache): New declarations.
10308 * xfaces.c (clear_face_cache):
10309 * xdisp.c (redisplay_internal): Use clear_image_caches.
10310 * image.c (clear_image_cache): Don't check that a frame is on
10311 a window-system before checking if it shares the same cache.
10312 (clear_image_caches): New function.
10313 (Fclear_image_cache): Use it.
10314 (mark_image): Move from allo.c.
10315 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
10316 * alloc.c (mark_image, mark_image_cache): Move to image.c.
10317 (mark_object): Don't call mark_image_cache for frames.
10318 (mark_terminals): Call mark_image_cache.
10319
10320 * lisp.h (Fdelete_terminal): Declare.
10321
10322 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
10323 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
10324 wrong_type_argument.
10325
103262008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
10327
10328 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
10329 malayalam.el, and tamil.el. Add sinhala.el.
10330
103312008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
10332
10333 * xterm.c (x_connection_closed): Consolidate identical tests.
10334 (x_delete_terminal): Don't crash if called via x_connection_closed.
10335
103362008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
10337
10338 * xdisp.c (decode_mode_spec): New arg string.
10339 (display_mode_element): Adjust for the above change.
10340
103412008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10342
10343 * callint.c (Fcall_interactively): Use AREF.
10344
103452008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
10346
10347 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
10348
103492008-02-18 Jan Djärv <jan.h.d@swipnet.se>
10350
10351 * xfns.c (Fx_show_tip): Set string to " " if empty.
10352
103532008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
10354
10355 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
10356 with Qt.
10357
103582008-02-17 Kenichi Handa <handa@m17n.org>
10359
10360 * ftfont.c (ftfont_shape): Return Lispy number.
10361
10362 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
10363 for GCs.
10364 (Finternal_set_font_selection_order): Call font_update_sort_order
10365 only when enable_font_backend is set.
10366 (realize_x_face): Set face->font_info to that of default face only
10367 when enable_font_backend is set.
10368
10369 * xdisp.c (handle_composition_prop): Set it->c to the fist
10370 character of the composed region.
10371 (fill_composite_glyph_string): Set base_face->font_info to
10372 s->font_info. Get a face for ascii from base_face->ascii_face.
10373 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
10374 with a face already decided.
10375 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
10376 non-negative.
10377 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
10378 call font_prepare_composition unconditionally.
10379
10380 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
10381
10382 * xterm.h (struct x_display_info): New member font.
10383
10384 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
10385 (x_set_mouse_face_gc, x_new_font): Likewise.
10386 (x_term_init): Setup display_info->font.
10387 (x_delete_terminal): Free display_info->font.
10388
10389 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
10390
10391 * ftxfont.c (ftxfont_default_fid): Delete it.
10392 (ftxfont_open): Set xfont->fid to 0.
10393 (ftxfont_end_for_frame): Clear data specific to the frame and the
10394 font-driver.
10395
10396 * xftfont.c (xftfont_default_fid): Delete it.
10397 (xftfont_open): Set xfont->fid to 0.
10398
10399 * fontset.c (FONTSET_OBJLIST): New macro.
10400 (fontset_find_font): Update font-object list of the fontset.
10401 (free_realized_fontset): New function.
10402 (free_face_fontset): Call free_realized_fontset.
10403 (Ffont_info): Call font_close_object only when enable_font_backend
10404 is set.
10405
10406 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
10407 [HAVE_NTGUI]: Include w32term.h.
10408 [MAC_OS]: Include macterm.ch.
10409 (font_otf_ValueRecord): Use make_number.
10410 (font_finish_cache): Fix handling of reference count.
10411 (font_clear_cache): Update num_fonts.
10412 (font_open_entity): Update smallest_char_width and
10413 smallest_font_height of the frame.
10414 (font_close_object): Update num_fonts.
10415 (Fclear_font_cache): Fix finding the target cache data.
10416
104172008-02-16 Glenn Morris <rgm@gnu.org>
10418
10419 * fontset.c (Finternal_char_font): Fix compilation warning.
10420
104212008-02-16 Eli Zaretskii <eliz@gnu.org>
10422
10423 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
10424 instead of char arrays. Enlarge the size of array passed to
10425 get_token_information.
10426
10427 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
10428 warnings.
10429
104302008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
10431
10432 * .gdbinit: Don't set `args', it breaks gdb --args.
10433
104342008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
10435
10436 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
10437 within a narrowed buffer.
10438
104392008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
10440
10441 * coding.c (decode_coding_object, encode_coding_object):
10442 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
10443
104442008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
10445
10446 * coding.c (coding_set_destination): Use BEG_BYTE rather than
10447 hardcoding 1.
10448 (detect_coding_system):
10449 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
10450 (string_char_to_byte, string_byte_to_char, insert_from_gap):
10451 * insdel.c (insert_from_gap):
10452 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
10453 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
10454 (string_to_multibyte):
10455 * character.c (chars_in_text, multibyte_chars_in_text):
10456 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
10457
10458 * character.h (FETCH_STRING_CHAR_ADVANCE)
10459 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
10460 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
10461 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
10462
10463 * casefiddle.c (casify_region): Only call after-change and composition
10464 functions on the part of the region that was changed.
10465
10466 * keyboard.c (read_avail_input):
10467 * frame.c (Fdelete_frame): Call Fdelete_terminal.
10468
104692008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
10470
10471 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
10472 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
10473
104742008-02-11 Juanma Barranquero <lekktu@gmail.com>
10475
10476 * w32menu.c (push_submenu_start, push_submenu_end)
10477 (push_left_right_boundary, push_menu_pane, push_menu_item):
10478 * keyboard.c (read_key_sequence): Don't pass args with side effects
10479 to AREF, it fails when compiling with -DENABLE_CHECKING.
10480
104812008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
10482
10483 * Makefile.in (${lispsource}international/charprop.el):
10484 Delete this target.
10485
10486 * search.c (boyer_moore): Fix incorrect synching of the trunk and
10487 emacs-unicode-2.
10488
104892008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
10490
10491 * terminal.c (Fdelete_terminal): Clean up the `force' path.
10492
104932008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
10494
10495 * frame.c (Qnoelisp): New symbol.
10496 (syms_of_frame): Initialize it.
10497 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
10498 harmless Elisp code, from a strong `force' from x_connection_closed.
10499 * frame.h (Qnoelisp): Declare.
10500 * xterm.c (x_connection_closed): Pass `noelisp'.
10501
10502 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
10503 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
10504 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
10505 rather than `int' for the type of `type'.
10506
105072008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
10508
10509 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
10510
10511 * Makefile.in (GNUC): Remove support for gcc-1.x.
10512
105132008-02-10 Richard Stallman <rms@gnu.org>
10514
10515 * lisp.h (ASET): Use AREF, not ASLOT.
10516
105172008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
10518
10519 * lisp.h (ASET): Check bounds.
10520
105212008-02-10 Glenn Morris <rgm@gnu.org>
10522
10523 * buffer.c (mode-name): Doc fix.
10524
105252008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
10526
10527 * Makefile.in:
10528 * emacs.c:
10529 * gmalloc.c:
10530 * keyboard.c:
10531 * lisp.h:
10532 * m/ibm370aix.h:
10533 * process.c:
10534 * regex.c:
10535 * s/hpux.h:
10536 * sysdep.c:
10537 * sysselect.h:
10538 * systty.h:
10539 * unexec.c:
10540 * w32term.c:
10541 * xsmfns.c:
10542 * xterm.c: Remove code that deals with obsolete variables.
10543
10544 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
10545
10546 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
10547 nothing else needs it anymore.
10548
105492008-02-09 Eli Zaretskii <eliz@gnu.org>
10550
10551 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
10552 instead of unibyte_char_to_multibyte.
10553
105542008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
10555
10556 * s/gnu-linux.h: Remove commented out code.
10557
10558 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
10559
10560 * Makefile.in: Update what RMS says about using autoconf.
10561 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
10562 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
10563 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
10564 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
10565
105662008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
10567
10568 * keymap.c (Fkey_description): Move side effect outside of macro call.
10569
10570 * xfaces.c (Finternal_make_lisp_face):
10571 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
10572
10573 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
10574 (syms_of_fontset): Use ASET.
10575
10576 * fns.c (concat): Move side effect outside of macro call.
10577 (hash_clear): Use ASET.
10578
105792008-02-08 Richard Stallman <rms@gnu.org>
10580
10581 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
10582 If FORCE, and frame has a surrogate minibuffer for another frame,
10583 delete the other frame first.
10584
105852008-02-07 Timo Savola <timo.savola@iki.fi>
10586
10587 * xterm.c (x_detect_focus_change): Handle embed client message.
10588 (handle_one_xevent): Ditto.
10589 (handle_one_xevent): If embedded and we get a button press/release,
10590 request focus.
10591 (xembed_set_info, xembed_send_message): New functions.
10592 (x_make_frame_visible): Call xembed_set_info if embedded.
10593 (x_make_frame_invisible): Call xembed_set_info if embedded.
10594 (x_term_init): Initialize Xatom_XEMBED.
10595 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
10596 (x_iconify_frame): Ditto.
10597
10598 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
10599 (enum xembed_info, enum xembed_message, enum xembed_focus)
10600 (enum xembed_modifier, enum xembed_accelerator): New.
10601 (xembed_set_info, xembed_send_message): Declare.
10602 (FRAME_X_EMBEDDED_P): New.
10603
10604 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
10605 gtk_plug_new.
10606
10607 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
10608 window ID of a frame.
10609 (x_window): Reparent frame if embedded.
10610 (Fx_create_frame): Don't set border width if embedded.
10611
10612 * emacs.c (USAGE3): Add --parent-id.
10613 (standard_args): Ditto.
10614
106152008-02-07 Jan Djärv <jan.h.d@swipnet.se>
10616
10617 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
10618
106192008-02-07 Jim Meyering <meyering@redhat.com>
10620
10621 Use "do...while (0)", not "if (1)...else" in macro definitions.
10622 The latter provokes a warning from gcc about the empty else, when
10623 followed by ";". Also, without that trailing semicolon, it would
10624 silently swallow up any following statement.
10625 * syntax.h (SETUP_SYNTAX_TABLE)
10626 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
10627 * buffer.h (DECODE_POSITION): Likewise.
10628 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
10629 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
10630 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
10631 (FETCH_CHAR_ADVANCE): Likewise.
10632 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
10633
106342008-02-07 Jim Meyering <meyering@redhat.com>
10635
10636 * lread.c [lint]: Don't include <sys/inode.h>.
10637
106382008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
10639
10640 * xselect.c (x_handle_dnd_message):
10641 * xmenu.c (digest_single_submenu, xmenu_show):
10642 * xdisp.c (with_echo_area_buffer_unwind_data)
10643 (format_mode_line_unwind_data, unwind_format_mode_line)
10644 (display_menu_bar):
10645 * eval.c (Ffetch_bytecode):
10646 * doc.c (store_function_docstring):
10647 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
10648 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
10649 * buffer.c (add_overlay_mod_hooklist): Use ASET.
10650
106512008-02-07 Kenichi Handa <handa@m17n.org>
10652
10653 * ftxfont.c (ftxfont_open): Don't set
10654 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
10655
10656 * ftfont.c (ftfont_open): Fix previous change.
10657
106582008-02-06 Jason Rumney <jasonr@gnu.org>
10659
10660 * w32font.c (w32font_text_extents): Fill in lbearing metric.
10661 Use cached metrics for ASCII characters.
10662 (w32font_open_internal): Don't set font's owning_frame.
10663 Cache metrics for ASCII characters.
10664
10665 * w32font.h (struct w32font_info): Add ascii_metrics.
10666 Remove owning_frame.
10667
106682008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
10669
10670 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
10671 to negative value.
10672
10673 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
10674
10675 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
10676
10677 * charset.c (syms_of_charset): Set QCtest and Qeq.
10678
106792008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
10680
10681 * process.c (Fstart_process):
10682 * callproc.c (Fcall_process): Handle the case where
10683 Funhandled_file_name_directory returns nil.
10684
10685 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
10686 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
10687 * font.c (check_gstring): Use them and AREF to access the vector before
10688 we know it's really a gstring.
10689 (Ffont_shape_text): Fix typo.
46e722a9 10690 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
10691
10692 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
10693 Declare.
10694
10695 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
10696
106972008-02-05 Jason Rumney <jasonr@gnu.org>
10698
10699 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
10700 Set smallest_font_height and smallest_char_width in display info.
10701
107022008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
10703
10704 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
10705
107062008-02-05 Miles Bader <miles@gnu.org>
10707
10708 * xfaces.c (get_lface_attributes, merge_named_face)
10709 (lookup_named_face, lookup_derived_face, realize_named_face):
10710 Revert 2008-02-01 change by cyd@stupidchicken.com.
10711
107122008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
10713
10714 * fontset.c (Ffontset_info): Handle the case of inhibitting the
10715 fallback fonts.
10716 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
10717
107182008-02-04 Jason Rumney <jasonr@gnu.org>
10719
10720 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
10721 set full_name.
10722 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
10723
107242008-02-03 Jason Rumney <jasonr@gnu.org>
10725
10726 * makefile.w32-in (OBJ1): Include font.o here.
10727 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
10728
107292008-02-02 Jason Rumney <jasonr@gnu.org>
10730
10731 * makefile.w32-in (temacs): Bump EMHEAP to 21.
10732
107332008-02-01 Jason Rumney <jasonr@gnu.org>
10734
10735 * s/cygwin.h: Define VIRT_ADDR_VARIES.
10736
10737 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
10738
107392008-02-01 Andreas Schwab <schwab@suse.de>
10740
10741 * Makefile.in (shortlisp, lisp): Update for rename of
10742 ../lisp/language/myanmar.el.
10743
107442008-02-01 Chong Yidong <cyd@stupidchicken.com>
10745
10746 * xfaces.c (get_lface_attributes): Delete function.
10747 (merge_named_face, lookup_named_face, lookup_derived_face)
10748 (realize_named_face): Call lface_from_face_name directly, and use
10749 the fact that merge_face_vectors does not alter its FROM argument.
10750
107512008-02-01 Jason Rumney <jasonr@gnu.org>
10752
10753 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
10754 input in the default locale. Handle non-Unicode multibyte input.
10755
107562008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10757
10758 * fontset.c (reorder_font_vector): Exclude nil elements from the
10759 font group. Don't try multiple fonts.
10760 (fontset_font): Adjust for the above change.
10761 (Finternal_char_font): Return nil if the found font doesn't
10762 contain the character ch.
10763
10764 * Makefile.in (lisp, shortlisp): Add cham.el.
10765
107662008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10767
10768 * font.h (FONTP): Make it return 1 also for a font-object.
10769
10770 * .gdbinit (xfontset): New function.
10771
10772 * font.c (font_find_for_lface): Check if the character C is
10773 supported or not only for the first font.
10774
10775 * fontset.c (reorder_font_vector): Fix typo.
10776 (fontset_find_font): Don't add a font-spec specifying a script.
10777 Use 0 (not Qt) for the indication of empty font-group. Change the
10778 format of RFONT-DEF. Return Qt if no font in the font-group
10779 support the character.
10780 (fontset_font): Adjust for the above change. If no font was
10781 found the character, remember that.
10782 (face_for_char): Adjust for the change of RFONT-DEF.
10783 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
10784 no font for the target.
10785 (Finternal_char_font): Adjust for the change of RFONT-DEF.
10786
107872008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10788
10789 * font.c (font_load_for_face): Handle the case that the font in
10790 face->lface is a string.
10791
107922008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10793
10794 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
10795
107962008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10797
10798 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
10799 Fix previous change. If the frame is not on a window system,
10800 signal an error.
10801
108022008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10803
10804 * coding.c (decode_coding_object, encode_coding_object): Adjust
10805 marker positions after conversion.
10806
10807 * lisp.h (struct Lisp_Marker): New member need_adjustment.
10808
108092008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10810
10811 * font.c (font_find_for_lface): Fix the handling of the return
10812 value of font_has_char.
10813 (Ffont_shape_text): Fix previous change.
10814
10815 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
10816 (fontset_ref_and_range): Delete it.
10817 (fontset_find_font): Call char_table_ref_and_range instead of
10818 FONTSET_REF_AND_RANGE.
10819 (make_fontset): Don't setup font groups of Latin here.
10820 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
10821 (new_fontset_from_font): Make the specified font the default for
10822 all Latin characters.
10823
108242008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10825
10826 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
10827 is on a window system before accessing the fontset of the frame.
10828
108292008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10830
10831 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
10832
10833 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
10834 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
10835
10836 * font.c (Ffont_shape_text): If the font driver doesn't have a
10837 shaper function, make zero-width glyphs to have at least one-pixel
10838 width. Fix setting of `to' field of glyphs.
10839
108402008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10841
10842 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
10843 glyphs.
10844
10845 * font.h (struct font_driver): Improve docstring of member `shape'.
10846
108472008-02-01 Kenichi Handa <handa@m17n.org>
10848
10849 * composite.c (syms_of_composite): Fix docstring of
10850 auto-composition-function.
10851
10852 * font.h (LGLYPH_SIZE): New macro.
10853
10854 * font.c (Ffont_fill_gstring): Stop filling when a character not
10855 supported by the font is found.
10856 (Ffont_shape_text): When a shape callback function returns nil,
10857 try at most two more times with larger gstring.
10858 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
10859
10860 * xdisp.c (handle_auto_composed_prop): Change the argument to
10861 auto-composition-function.
10862
10863 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
10864 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
10865 Lispy glyph and store it in the lgstring.
10866
10867 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
10868
10869 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
10870
108712008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10872
10873 * font.c (Ffont_shape_text): Avoid unnecessary composition.
10874
10875 * fontset.c (Vfont_encoding_charset_alist): New variable.
10876 (syms_of_fontset): DEFVAR it.
10877 (reorder_font_vector, fontset_find_font): Optimize for the case of
10878 no need of reordering.
10879 (face_for_char): Map the charset property by
10880 Vfont_encoding_charset_alist.
10881
108822008-02-01 Jason Rumney <jasonr@gnu.org>
10883
10884 * w32font.c (logfonts_match): Don't check adstyle here.
10885 (font_matches_spec): Check here against physical font instead.
10886 (add_font_entity_to_list): Avoid some substitutions.
10887
10888 * font.c (font_parse_fcname): Default weight and slant to normal.
10889 (font_score): Prefer normal fonts if weight or slant unspecified.
10890 (font_score) [WINDOWSNT]: Scale weight difference down to closer
10891 match freetype scores.
10892
108932008-02-01 Jason Rumney <jasonr@gnu.org>
10894
10895 * w32font.c (w32font_text_extents): Don't use the frame stored in the
10896 font, as it may have been deleted.
10897 (w32_enumfont_pattern_entity): Map generic family to adstyle using
10898 most common hyphenless variation.
10899 (logfonts_match): Check generic family.
10900 (font_matches_spec): Don't check generic family here.
10901 (fill_in_logfont): Set generic family based on adstyle.
10902
10903 * w32font.h (w32font_get_cache): Update declaration.
10904
109052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10906
10907 * ftfont.c (ftfont_get_cache): Adjust the argument type.
10908
10909 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
10910 If none of the new drivers are available, call font_update_drivers
10911 with the old drivers.
10912
10913 * w32font.c (w32font_get_cache): Adjust the argument type.
10914
10915 * xfont.c (xfont_get_cache): Adjust the argument type.
10916
10917 * font.h (struct font_driver): Change argument type of get_cache.
10918
10919 * xftfont.c (xftfont_start_for_frame): Delete prototype.
10920
10921 * font.c (Ffont_get): Fix arguments to Fassoc.
10922 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
10923 (font_clear_cache): New function.
10924 (font_list_entities, font_matching_entity): Use font_get_cache.
10925 (font_update_drivers): Call font_clear_cache when finishing a driver.
10926
10927 * fontset.c (fontset_find_font): Fix previous change.
10928
109292008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10930
10931 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
10932 dpyinfo->font_table.
10933 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
10934 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
10935
10936 * font.c (font_at): Handle the case that the arg C is negative.
10937 Handle the unibyte case.
10938 (Ffont_at): Call font_at with the arg C -1.
10939
10940 * xdisp.c (handle_auto_composed_prop): Don't get a character at
10941 the position here, and call font_at with the arg C -1.
10942 Don't check the range of the existing composition at the point.
10943
109442008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10945
10946 * fontset.c (fontset_add): New args charset_id and family.
10947 Change caller.
10948 (load_font_get_repertory, fontset_find_font): Assume that
10949 font_spec is always a font-spec object.
10950 (Fset_fontset_font): Always store a font-spec object in a fontset.
10951
10952 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
10953 instead of get_property_and_range.
10954
109552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10956
10957 * xftfont.c (struct xftfont_info): Delete the member ft_face.
10958 (xftfont_open): Don't keep locking face.
10959 (xftfont_close): Don't unlock face.
10960 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
10961
10962 * fontset.c (fontset_find_font): Don't prefer a font of
10963 supplementary charset.
10964
109652008-02-01 Kenichi Handa <handa@m17n.org>
10966
10967 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
10968 script, langsys_tag to langsys, new member script.
10969 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 10970 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
10971 listing to the script specified in that property. Fix arg to
10972 OTF_check_features.
10973
109742008-02-01 Jason Rumney <jasonr@gnu.org>
10975
10976 * w32font.h: New file.
10977
10978 * w32font.c: Include it.
10979 (struct w32font_info): Add owning_frame field. Move to w32font.h.
10980 (w32font_open): Set owning_frame.
10981 (w32font_text_extents): Use owning_frame.
10982 (struct font_callback_data): Add opentype_only field.
10983 (add_font_entity_to_list): Use it to filter fonts.
10984 Don't check against full name.
10985 (w32font_list_internal): New function.
10986 (w32font_list): Use it.
10987 (w32font_match_internal): New function.
10988 (w32font_match): Use it.
10989 (w32font_open_internal): New function.
10990 (w32font_open): Use it.
10991 (w32font_get_cache, w32font_close, w32font_has_char)
10992 (w32font_encode_char, w32font_text_extents, w32font_draw):
10993 Make non-static.
10994
10995 * makefile.w32-in (w32font.o): Depend on w32font.h.
10996
109972008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10998
10999 * charset.c (Fdefine_charset_internal): Record a supplementary
11000 charset at the tail of Vcharset_order_list.
11001
11002 * font.c (Ffont_shape_text): Fix the return value.
11003
11004 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
11005
11006 * xdisp.c (handle_auto_composed_prop): Fix previous change.
11007
110082008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11009
11010 * ftfont.c (struct OpenTypeSpec): New struct.
11011 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
11012 (ftfont_get_open_type_spec): New function.
11013 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
11014
11015 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
11016
110172008-02-01 Jason Rumney <jasonr@gnu.org>
11018
11019 * w32font.c (add_font_entity_to_list): Compare only the beginning
11020 of full name.
11021
110222008-02-01 Kenichi Handa <handa@m17n.org>
11023
11024 * xdisp.c (handle_auto_composed_prop): Simplify the code.
11025 Never return HANDLED_RECOMPUTE_PROPS.
11026
110272008-02-01 Kenichi Handa <handa@m17n.org>
11028
11029 * font.c (font_gstring_produce): Delete it.
11030
11031 * composite.h (COMPOSITION_METHOD):
11032 Handle COMPOSITION_WITH_GLYPH_STRING.
11033
110342008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11035
11036 * xfont.c (Qx): Delete.
11037 (syms_of_xfont): Don't initialize Qx.
11038
11039 * composite.h (enum composition_method):
11040 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
11041
110422008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11043
11044 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
11045 (choose_face_font): Accept new form of font-spec.
11046
11047 * frame.h (font_driver_list): Declare it unconditionally.
11048 (struct frame): Define members font_driver_list and font_data_list
11049 unconditionally.
11050
11051 * fontset.c: Include "font.h" unconditionally.
11052 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
11053 (Fset_fontset_font): Accept a font-spec object.
11054
11055 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
11056 PIXEL_SIZE part a wild card.
11057
11058 * dispextern.h (struct glyph_string): Define members clip and
11059 num_clips unconditionally.
11060 (struct face): Define members font_info and extra unconditionally.
11061
11062 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
11063 ftfont_info only when HAVE_LIBOTF is defined.
11064
110652008-02-01 Andreas Schwab <schwab@suse.de>
11066
11067 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
11068 and end.
11069
110702008-02-01 Jason Rumney <jasonr@gnu.org>
11071
11072 * w32font.c (w32font_driver): Add new fields.
11073
110742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11075
11076 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
11077 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
11078 (LIBES): Add @M17N_FLT_CFLAGS@.
11079
11080 * composite.c (compose_text): Don't treat the new style
11081 composition specially.
11082
11083 * emacs.c (main): Call syms_of_font unconditionally.
11084
11085 * font.h (FONT_ENTITY_NOT_LOADABLE)
11086 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
11087 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
11088 (struct font_driver): New member shape.
11089 (font_registry_charsets): Extern it.
11090 (font_find_for_lface, font_prepare_composition): Adjust prototype.
11091 (font_otf_capability, font_drive_otf): Delete their externs.
11092
11093 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
11094 (font_charset_alist, font_registry_charsets): Move from xfont.c
11095 and rename.
11096 (font_prop_validate_otf): New function.
11097 (font_property_table): Register it for QCotf.
11098 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
11099 (font_drive_otf): Delete.
11100 (font_prepare_composition): New arg F. Adjust for the change of
11101 lispy gstring.
11102 (font_find_for_lface): New arg C.
11103 (font_load_for_face): Adjust for the change of font_find_for_lface.
11104 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
11105 lispy gstring.
11106 (Ffont_shape_text): New function.
11107 (Fopen_font): If the font size is not given, use 12-pixel.
11108 (Ffont_at): New arg STRING.
11109 (syms_of_font): Initalize font_charset_alist.
11110 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
11111 conditionally.
11112
11113 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
11114 fonts of the same font-spec. Change the format of RFONT-DEF.
11115 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
11116 Adjust for the change of RFONT-DEF.
11117 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
11118
11119 * ftfont.h: New file.
11120
11121 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
11122 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11123 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11124 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
11125 font_otf_capability and font_drive_otf, set ftfont_shape.
11126 (ftfont_list): Adjust for the change of :otf property value.
11127 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
11128 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
11129 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
11130 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11131 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
11132 (otf_gstring, gstring, m17n_flt_initialized): New variables.
11133
11134 * w32term.c (x_draw_composite_glyph_string_foreground):
11135 Adjust for the change of lispy gstring.
11136
11137 * xdisp.c (handle_composition_prop): Adjust for the change of
11138 lispy gstring. Call a function for auto-composition with the
11139 third arg it->window.
11140 (fill_composite_glyph_string): Adjust for the change of lispy string.
11141 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
11142
11143 * xfaces.c (set_font_frame_param): Adjust for the change of
11144 font_find_for_lface.
11145
11146 * xfont.c (x_font_charset_alist): Move to font.c and rename.
11147 (xfont_registry_charsets): Likewise. Change caller.
11148 (syms_of_xfont): Don't handle x_font_charset_alist.
11149
11150 * xftfont.c: Include "ftfont.h".
11151 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11152 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11153 (xftfont_close) [HAVE_LIBOTF]: Close otf.
11154 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11155 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
11156 Set xftfont_driver.shape to xftfont_shape.
11157
11158 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
11159 the change of lispy gstring.
11160
111612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11162
11163 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
11164
111652008-02-01 Jason Rumney <jasonr@gnu.org>
11166
11167 * w32font.c (w32font_draw): Fill background manually.
11168
111692008-02-01 Jason Rumney <jasonr@gnu.org>
11170
11171 * font.c (Qfontp): Remove unused symbol.
11172 (QCantialias): New symbol.
11173 (syms_of_font): Define it.
11174 (font_property_table): Set a validator for QCantialias.
11175
11176 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
11177 Define if not already.
11178 (QCfamily): Share with xfaces.c.
11179 (Qstandard, Qsubpixel, Qnatural): New symbols.
11180 (syms_of_w32font): Define them. Don't define QCfamily here.
11181 (w32_antialias_type, lispy_antialias_type): New functions.
11182 (w32_enumfont_pattern_entity): New arg requested_font.
11183 Set antialias parameter if non-default was requested.
11184 (fill_in_logfont): Fill in lfQuality if :antialias specified.
11185
111862008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11187
11188 * lread.c (read1): Undo the previous change.
11189
111902008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
11191
11192 * frame.c (Fdelete_frame): Call font_update_drivers only when
11193 USE_FONT_BACKEND is defined.
11194
111952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11196
11197 * font.h (struct font_bitmap): New member bits_per_pixel.
11198 (struct font_driver): New members start_for_frame and end_for_frame.
11199 (struct font_data_list): New struct.
11200 (font_put_frame_data, font_get_frame_data): Extern them.
11201
11202 * frame.h (struct frame): New member font_data_list.
11203
11204 * font.c (font_update_drivers): Call driver->start_for_frame and
11205 driver->end_for_frame at proper timings.
11206 (font_put_frame_data, font_get_frame_data): New functions.
11207 (Ffont_spec): Add usage in the docstring.
11208
11209 * frame.c (make_frame): Initialize f->font_data_list to NULL.
11210 (Fdelete_frame): Call font_update_drivers.
11211
11212 * xftfont.c (struct xftface_info): Delete the member xft_draw.
11213 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
11214 (xftfont_get_xft_draw): New function.
11215 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
11216 (xftfont_end_for_frame): New function.
11217 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
11218
11219 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
11220 Change argument. Cache GCs in the per-frame data.
11221 (struct ftxfont_frame_data): New struct.
11222 (ftxfont_draw_bitmap): New arg gc_fore and flush.
11223 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
11224 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
11225 (ftxfont_end_for_frame): New function.
11226 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
11227
11228 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
11229
112302008-02-01 Kenichi Handa <handa@m17n.org>
11231
11232 * xselect.c (Vselection_coding_system)
11233 (Vnext_selection_coding_system): Delete them.
11234 (syms_of_xselect): Don't declare selection-coding-system and
11235 next-selection-coding-system. They are declared in select.el.
11236
112372008-02-01 Jason Rumney <jasonr@gnu.org>
11238
11239 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
11240
11241 * w32fns.c: Include imm.h.
11242 (get_composition_string_fn, get_ime_context_fn): New optional
11243 system functions.
11244 (globals_of_w32fns): Load them from imm32.dll.
11245 (ignore_ime_char): New flag.
11246 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
11247 WM_IME_ENDCOMPOSITION messages.
11248
11249 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
11250 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
11251
112522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11253
11254 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
11255 (READCHAR_REPORT_MULTIBYTE): New macro.
11256 (readchar): New 2nd arg MULTIBYTE.
11257 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
11258 Make symbol's name multibyte according to the multibyteness of the
11259 source.
11260
112612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11262
11263 * xfaces.c (face_for_overlay_string): Call lookup_face with
11264 correct arguments (fix of synching with the trunk).
11265
112662008-02-01 Kenichi Handa <handa@m17n.org>
11267
11268 * font.c (font_prop_validate_symbol, font_prop_validate_style)
11269 (font_prop_validate_non_neg, font_prop_validate_spacing):
11270 Delete argument prop_index.
11271 (font_property_table): Change arguments to validater. Change Callers.
11272 (font_lispy_object): Delete.
11273 (font_at): Use font_find_object instead fo font_lispy_object.
11274
112752008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11276
11277 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
11278 and file names.
11279
112802008-02-01 Jason Rumney <jasonr@gnu.org>
11281
11282 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
11283 (font_matches_spec): Remove debug output.
11284 (add_font_entity_to_list): Avoid using substituted fonts.
11285
112862008-02-01 Jason Rumney <jasonr@gnu.org>
11287
11288 * doc.c (Fsnarf_documentation):
11289 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
11290
112912008-02-01 Miles Bader <miles@gnu.org>
11292
11293 * dispextern.h (struct glyph_row): Only define "clip" field if
11294 HAVE_WINDOW_SYSTEM is defined.
11295
112962008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11297
11298 Fix up multi-tty merge.
11299
11300 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
11301 and indentation.
11302
11303 * xfaces.c (free_realized_face, clear_face_gcs):
11304 Include font_done_for_face in the input_blocked section, just in case.
11305
11306 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
11307 (get_char_face_and_encoding): Undo last change and remove the *other*
11308 duplicate definition (i.e. keep the one that's better scoped and that
11309 includes code for the font-backend).
11310
11311 * terminal.c (create_terminal): Default keyboard_coding to
11312 `no-conversion' and terminal_coding to `undecided'.
11313
11314 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
11315
11316 * fontset.c (free_realized_fontsets): Check that the table entry does
11317 contain a fontset before trying to compare it to `base'.
11318
11319 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
11320 syms_of_charset, and syms_of_coding earlier because init_window_once
11321 now needs Vcoding_system_hash_table to be setup.
11322
11323 * coding.h (default_buffer_file_coding): Remove.
11324
11325 * coding.c (default_buffer_file_coding): Remove.
11326 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
11327 than ->symbol, and use the terminal-local coding system.
11328 (syms_of_coding): Don't setup the coding-systems that are not
11329 terminal-local.
11330 (Fdefine_coding_system_internal): Use XCAR/XCDR.
11331
11332 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
11333 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
11334
11335 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
11336 in chartab.c and were re-added here by mistake.
11337 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
11338
11339 * doc.c (Fsnarf_documentation):
11340 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
11341 src to etc.
11342
11343 * ChangeLog.10: Add mistakenly removed entry.
11344
113452008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
11346
11347 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
11348
113492008-02-01 Miles Bader <miles@gnu.org>
11350
11351 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
11352 Add extra args to FACE_FOR_CHAR.
11353
113542008-02-01 Kenichi Handa <handa@m17n.org>
11355
11356 * keymap.c (where_is_internal_1): If key is a cons, store the copy
11357 in sequence.
11358
11359 * chartab.c (map_sub_char_table, map_char_table): If the range
11360 contains just one character, call the function with that character
11361 even if the depth is not 3.
11362
113632008-02-01 Jason Rumney <jasonr@gnu.org>
11364
11365 * w32font.c (w32font_text_extents): Calculate metrics for the
11366 whole string.
11367
113682008-02-01 Jason Rumney <jasonr@gnu.org>
11369
11370 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
11371
113722008-02-01 Jason Rumney <jasonr@gnu.org>
11373
11374 * w32term.c (x_set_glyph_string_clipping): Use
11375 get_glyph_string_clip_rects.
11376 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11377 Adjust for the change of struct glyph_string.
11378
11379 * w32font.c (w32font_draw): Do clipping here.
11380
113812008-02-01 Kenichi Handa <handa@m17n.org>
11382
11383 * xftfont.c (xftfont_draw): Adjust for the change of struct
11384 glyph_string.
11385
11386 * xterm.c (x_set_glyph_string_clipping): Use
11387 get_glyph_string_clip_rects.
11388 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11389 Adjust for the change of struct glyph_string.
11390
11391 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
11392 the resulting clip(s}.
11393 (expose_overlaps): Add arg r. Change callers. Set it to
11394 row->clip temporarily.
11395 (expose_window): Redraw rows overlapping the exposed area.
11396
11397 * dispextern.h (struct glyph_row): New member clip.
11398 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
11399 clip_height, new member clip, and num_clips.
11400
114012008-02-01 Kenichi Handa <handa@m17n.org>
11402
11403 * data.c (Fchar_or_string_p): Fix docstring.
11404
114052008-02-01 Kenichi Handa <handa@m17n.org>
11406
11407 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
11408 create a temporary XftDraw object.
11409
114102008-02-01 Kenichi Handa <handa@m17n.org>
11411
11412 * font.c (Ffontp): Fix docstring.
11413
11414 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
11415 strong evidence of ISO-2022.
11416
114172008-02-01 Kenichi Handa <handa@m17n.org>
11418
11419 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
11420 SYNTAX_ENTRY_FOLLOW_PARENT.
11421
114222008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11423
11424 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
11425 its type.
11426 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
11427 Update to the new type of weak_hash_tables and next_weak.
11428
11429 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
11430 a plain C pointer to Lisp_Hash_Table.
11431
11432 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
11433 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
11434 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
11435 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
11436 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
11437 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
11438 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
11439 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
11440 (GC_EQ): Remove since they've been identical to their non-GC_
11441 alter-egos ever since the markbit was eradicated.
11442
11443 * alloc.c:
11444 * buffer.c:
11445 * buffer.h:
11446 * data.c:
11447 * fileio.c:
11448 * filelock.c:
11449 * fns.c:
11450 * frame.h:
11451 * lisp.h:
11452 * macterm.c:
11453 * print.c:
11454 * process.c:
11455 * w32fns.c:
11456 * w32menu.c:
11457 * w32term.c:
11458 * xfns.c:
11459 * xmenu.c:
11460 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
11461
114622008-02-01 Kenichi Handa <handa@m17n.org>
11463
11464 * chartab.c (map_sub_char_table): Make it work for the top-level
11465 char-table. Fix handling of parent char-table.
11466 (map_char_table): Adjust for the above change.
11467
114682008-02-01 Jason Rumney <jasonr@gnu.org>
11469
11470 * w32font.c (Qgdi): Rename from Qw32.
11471
114722008-02-01 Jason Rumney <jasonr@gnu.org>
11473
11474 * w32bdf.c (get_quoted_string): Make function static.
11475
114762008-02-01 Kenichi Handa <handa@m17n.org>
11477
11478 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
11479 bigger ascent and descent than those of the font, use them as
11480 font's ascent and descent.
11481
114822008-02-01 Kenichi Handa <handa@m17n.org>
11483
11484 * Makefile.in (${lispsource}international/charprop.el): Move this
11485 target within "#ifdef HAVE_UNIDATA" and "#endif".
11486
114872008-02-01 Kenichi Handa <handa@m17n.org>
11488
11489 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
11490 (shortlisp): Add ../lisp/language/tai-viet.el.
11491
114922008-02-01 Ulrich Mueller <ulm@gentoo.org>
11493
11494 * Makefile.in (${lispsource}international/charprop.el): Depend on
11495 temacs${EXEEXT}.
11496
114972008-02-01 Jason Rumney <jasonr@gnu.org>
11498
11499 * w32font.c (w32font_close): Delete the GDI font object.
11500
11501 * w32menu.c: Include character.h.
11502
11503 * w32proc.c: Likewise.
11504
11505 * w32select.c: Likewise.
11506
11507 * makefile.w32-in (w32proc.o): Depend on character.h.
11508
115092008-02-01 Jason Rumney <jasonr@gnu.org>
11510
11511 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
11512
11513 * w32menu.c (syms_of_w32menu): Likewise.
11514
11515 * w32proc.c (syms_of_ntproc): Likewise.
11516
11517 * w32select.c (syms_of_w32select): Likewise.
11518
11519 * w32term.c (syms_of_w32term): Likewise.
11520
115212008-02-01 Jason Rumney <jasonr@gnu.org>
11522
11523 * w32font.c (w32font_draw): Delete brush after using it.
11524
115252008-02-01 Jason Rumney <jasonr@gnu.org>
11526
11527 * w32font.c (w32font_open): Don't set font_idx.
11528 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
11529 to font settings.
11530 (w32font_draw): Fill background explicitly.
11531
115322008-02-01 Jason Rumney <jasonr@gnu.org>
11533
11534 * w32term.c (w32_initialize): Don't call w32font_initialize.
11535
11536 * w32font.c (w32font_info): Remove subranges.
11537 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
11538 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
11539 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
11540 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
11541 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
11542 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
11543 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
11544 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
11545 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
11546 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
11547 New symbols.
11548 (font_callback_data): New struct.
11549 (w32font_list, w32font_match): Use it.
11550 (w32font_open): Don't populate subranges.
11551 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
11552 (w32font_encode_char): Always return unicode code-point as-is.
11553 (w32font_text_extents): Supply a transformation matrix to
11554 GetGlyphOutline. Never look up by glyph index. Avoid looping
11555 twice. Use unicode version of GetTexExtentPoint32 instead of
11556 glyph index version.
11557 (set_fonts_frame): Remove.
11558 (w32_enumfont_pattern_entity): Add frame parameter, use it to
11559 set frame parameter. Use backward compatible fake foundries.
11560 Save generic family in extra slot under QCfamily. Make width slot
11561 constant. Save QCspacing value. Save list of scripts instead of
11562 binary subranges.
11563 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
11564 (add_font_entity_to_list): Use font_callback_data struct. Filter
11565 unwanted fonts.
11566 (add_one_font_entity_to_list): Use font_callback_data struct.
11567 (w32_registry): Default to iso10646_1.
11568 (fill_in_logfont): Use dpi from extra slot. Don't bother with
11569 string font registries. Don't fill in font name if it is a generic
11570 family name, fill family instead. Use spacing, family and script
11571 extra info to fill pitch, family and charset fields.
11572 (list_all_matching_fonts): Use font_callback_data struct.
11573 (unicode_range_for_char): Remove.
11574 (font_supported_scripts): New function.
11575 (w32font_initialize): Remove.
11576 (syms_of_w32font): Update which symbols are defined.
11577
115782008-02-01 Jason Rumney <jasonr@gnu.org>
11579
11580 * font.c (font_pixel_size): Reverse assq_no_quit args.
11581
11582 * w32term.h (FONT_WIDTH): Report max width, not average.
11583 (FONT_MAX_WIDTH): Remove.
11584 (FONT_AVG_WIDTH): New macro.
11585
11586 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
11587 redefinition of FONT_WIDTH.
11588
11589 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
11590 (w32_cache_char_metrics): Use FONT_WIDTH.
11591
11592 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
11593
115942008-02-01 Jason Rumney <jasonr@gnu.org>
11595
11596 * w32font.c (w32font_open): Make lfHeight negative.
11597
11598 * w32fns.c (x_default_font_parameter): Use new style font name.
11599 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
11600
116012008-02-01 Jason Rumney <jasonr@gnu.org>
11602
11603 * w32font.c (QCsubranges): New symbol.
11604 (w32font_open, w32font_has_char): Get subranges from subproperty
11605 of extra.
11606 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
11607 (syms_of_w32font): Define :subranges symbol.
11608
11609 * font.c (font_put_extra): Expose externally.
11610
11611 * font.h (font_put_extra): Move declaration from font.c.
11612
11613 * font.c (Ffont_get): Use font driver to determine otf capability.
11614 (adjust_anchor): Check if driver defines anchor_point before using.
11615
11616 * w32font.c (w32font_open): Handle size, height and pixel_size better.
11617 (w32font_draw): Use options.
11618 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
11619 Fix detection of truetype fonts.
11620 (registry_to_w32_charset): Handle charsets other than iso8859-1
11621 expressed as lisp symbols.
11622 (w32_registry): Express charset as lisp symbol.
11623 (fill_in_logfont): Reverse pixel and point height logic.
11624 Don't set width here. Set quality to default.
11625
11626 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
11627 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
11628
11629 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
11630 Remove redundant loop and allocation.
11631
11632 * makefile.w32-in (font.o, w32font.o): New objects.
11633 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
11634 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
11635
11636 * xdisp.c (fill_composite_glyph_string): Make the first arg to
11637 STORE_XCHARB a valid l-value.
11638
11639 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
11640 calculations for non-Truetype fonts.
11641 (x_draw_glyph_string): Sync with xterm.c.
11642 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
11643 Remove redundant code.
11644 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
11645
11646 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
11647 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
11648
11649 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
11650 (x_to_w32_charset, w32_to_x_charset): Expose externally.
11651
11652 * w32font.c: New file for w32 font backend.
11653
116542008-02-01 Kenichi Handa <handa@m17n.org>
11655
11656 * term.c: Don't include "buffer.h" twice.
11657
116582008-02-01 Kenichi Handa <handa@m17n.org>
11659
11660 * character.c (Funibyte_string): New function.
11661 (syms_of_character): Defsubr it.
11662
116632008-02-01 Jason Rumney <jasonr@gnu.org>
11664
11665 * w32term.c [USE_FONT_BACKEND]:
11666 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
11667 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
11668 (x_draw_glyph_string, x_draw_glyph_string_foreground)
11669 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
11670 (x_free_frame_resources): Sync with xterm.c.
11671
116722008-02-01 Andreas Schwab <schwab@suse.de>
11673
11674 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
11675 char-table size.
11676
116772008-02-01 Kenichi Handa <handa@m17n.org>
11678
11679 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
11680
116812008-02-01 Kenichi Handa <handa@m17n.org>
11682
11683 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
11684 font_otf_gpos, add font_drive_otf.
11685
11686 * fontset.c (fontset_find_font): Pay attention to font size
11687 specified for a font.
11688 (reorder_font_vector): Check contents of font_def.
11689
11690 * font.c (struct otf_list): Delete it.
11691 (otf_list): Make it a lisp variable.
11692 (otf_open): Use lispy otf_list.
11693 (generate_otf_features): Rename from parse_gsub_gpos_spec.
11694 (check_otf_features): New function.
11695 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
11696 New functions.
11697 (font_drive_otf): New function merging font_otf_gsub and
11698 font_otf_gpos.
11699 (font_open_for_lface): New arg spec. Change argument order.
11700 (font_load_for_face): Adjust for the change of font_open_for_lface.
11701 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
11702 Ffont_otf_gpos.
11703 (syms_of_font): Staticpro otf_list. Delete defsubr of
11704 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
11705
11706 * xfaces.c (set_font_frame_param): Adjust for the change of
11707 font_open_for_lface.
11708
11709 * font.h (font_open_for_lface): Adjust prototype.
11710 (struct font_driver): Delete members otf_gsub and otf_gpos, add
11711 member otf_drive.
11712 (font_otf_gsub, font_otf_gpos): Delete externs.
11713 (font_drive_otf): Extern it.
11714
117152008-02-01 Kenichi Handa <handa@m17n.org>
11716
11717 * font.c (font_at): If the window W is not on a window system,
11718 return Qnil.
11719
11720 * coding.c (produce_chars, encode_coding): Don't call
11721 insert_from_gap if no characters to produce.
11722
117232008-02-01 Kenichi Handa <handa@m17n.org>
11724
11725 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
11726 Fclear_face_cache.
11727
11728 * xfaces.c (face_for_font): Check also face->font==font->font.font.
11729
117302008-02-01 Miles Bader <miles@gnu.org>
11731
11732 * emacs.c (main): Change default value of `enable_font_backend' to 1.
11733 Parse "--disable-font-backend" option.
11734 (standard_args): Add "--disable-font-backend" option.
11735
117362008-02-01 Kenichi Handa <handa@m17n.org>
11737
11738 * fontset.c (fontset_find_font): New function.
11739 (fontset_font): Use fontset_find_font.
11740 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
11741 Register the specified font for all Latin characters.
11742 (new_fontset_from_font): Register the specified font for all Latin
11743 characters.
11744 (dump_fontset): For a realized fontset, include the base fontset
11745 name in the returned vector.
11746
117472008-02-01 Kenichi Handa <handa@m17n.org>
11748
11749 * character.h (CHAR_STRING): Cast C to unsigned on calling
11750 char_string.
11751
11752 * character.c (char_string): Type of arg C changed to unsigned.
11753 Signal an error if C is an invalid character code.
11754
11755 * editfns.c (general_insert_function, Fchar_to_string):
11756 Use CHARACTERP, not INTEGERP.
11757
117582008-02-01 Kenichi Handa <handa@m17n.org>
11759
11760 * character.h (MIN_MULTIBYTE_LEADING_CODE)
11761 (MAX_MULTIBYTE_LEADING_CODE): New macros.
11762
11763 * regex.c (analyse_first): Fix for multibyte characters in "case
11764 charset:" and "case categoryspec:".
11765
117662008-02-01 Andreas Schwab <schwab@suse.de>
11767
11768 * Makefile.in (LIBES): Move standard libraries to the end.
11769
117702008-02-01 Kenichi Handa <handa@m17n.org>
11771
11772 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
11773 nonzero, don't shrink the buffer nextb.
11774
11775 * buffer.h (struct buffer_text): New member inhibit_shrinking.
11776
11777 * coding.c (coding_alloc_by_making_gap): New arg offset.
11778 (alloc_destination): Call coding_alloc_by_making_gap with the arg
11779 offset.
11780 (decode_coding_iso_2022): Update coding->safe_charsets.
11781 (decode_coding_gap): Temporarily set
11782 current_buffer->text->inhibit_shrinking to 1.
11783
117842008-02-01 Kenichi Handa <handa@m17n.org>
11785
11786 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
11787 indexing into elements of s->cmp and s->char2b.
11788
117892008-02-01 Juanma Barranquero <lekktu@gmail.com>
11790
11791 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
11792
117932008-02-01 Kenichi Handa <handa@m17n.org>
11794
11795 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
11796 target_multibyte instead of multibyte.
11797 (re_match_2_internal): Call bcmp_translate with target_multibyte.
11798 (bcmp_translate): Change the argument name from multibyte to
11799 target_multibyte.
11800
118012008-02-01 Kenichi Handa <handa@m17n.org>
11802
11803 These changes are to compile a regexp into a pattern that can be
11804 used both for multibyte and unibyte targets.
11805
11806 * Makefile.in (search.o): Depend on charset.h.
11807
11808 * character.c (multibyte_char_to_unibyte_safe): New function.
11809
11810 * search.c: Include "charset.h".
11811 (compile_pattern_1): Delete argument multibyte. Don't set
11812 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
11813 (compile_pattern): Don't compare cp->buf.target_multibyte.
11814 Compare cp->buf.charset_unibyte.
11815 (compile_pattern): Set cp->buf.target_multibyte.
11816
11817 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
11818
11819 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
11820
11821 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
11822 multibyte. Change callers.
11823 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
11824 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
11825 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
11826 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
11827 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
11828 (regex_compile): Make the compiled pattern usable both for
11829 multibyte and unibyte targets.
11830 (analyse_first): Make the fastmap usable both for multibyte and
11831 unibyte targets.
11832 (TRANSLATE_VIA_MULTIBYTE): Delete.
11833 (re_match_2_internal): Pay attention to the case that the
11834 multibyteness of bufp and target may be different.
11835
118362008-02-01 Kenichi Handa <handa@m17n.org>
11837
11838 * xdisp.c (x_produce_glyphs): When a font is not found, make the
11839 empty box occupy at least one column width.
11840
118412008-02-01 Miles Bader <miles@gnu.org>
11842
11843 * Makefile.in: Remove redundant HAVE_XFT clause.
11844
118452008-02-01 Kenichi Handa <handa@m17n.org>
11846
11847 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
11848
118492008-02-01 Kenichi Handa <handa@m17n.org>
11850
11851 * fontset.c (Finternal_char_font): Fix for the case of POSITION
11852 being nil.
11853
118542008-02-01 Kenichi Handa <handa@m17n.org>
11855
11856 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
11857
118582008-02-01 Kenichi Handa <handa@m17n.org>
11859
11860 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
11861
118622008-02-01 Kenichi Handa <handa@m17n.org>
11863
11864 * search.c (simple_search): Fix previous change.
11865
118662008-02-01 Kenichi Handa <handa@m17n.org>
11867
11868 * xftfont.c (ftfont_font_format): Extern declaration.
11869
11870 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
11871
11872 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
11873 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
11874
11875 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
11876 (ftfont_font_format): Fix previous change.
11877
11878 * font.h (Ffont_xlfd_name): EXFUN it.
11879
11880 * font.c (font_parse_xlfd): Fix the array size of `f'.
11881 (register_font_driver): Use EQ to compare driver->type.
11882
11883 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
11884 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
11885 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
11886
118872008-02-01 Kenichi Handa <handa@m17n.org>
11888
11889 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
11890 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
11891
118922008-02-01 Kenichi Handa <handa@m17n.org>
11893
11894 * xfont.c (xfont_open): Set font->format.
11895
11896 * xftfont.c (xftfont_open): Set font->format.
11897
11898 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
11899 (ftfont_list): Include FC_FONTFORMAT in FcObject.
11900 (ftfont_open): Set font->format.
11901 (ftfont_font_format): New function.
11902
11903 * font.h (struct font): New member format.
11904
11905 * font.c (Qopentype): New variable.
11906 (syms_of_font): Defsym it.
11907 (Fquery_font): Change the format of the last element of the return
11908 value.
11909
119102008-02-01 Kenichi Handa <handa@m17n.org>
11911
11912 * xfns.c (xic_create_xfontset): Try the default fontset name as a
11913 last resort.
11914
119152008-02-01 Kenichi Handa <handa@m17n.org>
11916
11917 * coding.c (detect_coding_charset): Fix detection of multi-byte
11918 charset.
11919
119202008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
11921
11922 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
11923
119242008-02-01 Kenichi Handa <handa@m17n.org>
11925
11926 * xdisp.c (get_next_display_element): Set it->face_id for the
11927 first component of a composition.
11928 (x_produce_glyphs): Check if the font is changed or not for composition.
11929
119302008-02-01 Kenichi Handa <handa@m17n.org>
11931
11932 * fontset.c (Qlatin): New variable.
11933 (syms_of_fontset): Define it as a lisp symbol.
11934 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
11935
119362008-02-01 Kenichi Handa <handa@m17n.org>
11937
11938 * font.c (font_unparse_fcname): Pay attention to the case that
11939 some of font property is a null string.
11940
119412008-02-01 Kenichi Handa <handa@m17n.org>
11942
11943 * term.c: Include "composite.h".
11944 (encode_terminal_code): Output all components of composition.
11945 Check the size of encode_terminal_src.
11946 (produce_glyphs): For composition, call produce_composite_glyph.
11947 (append_composite_glyph, produce_composite_glyph): New functions.
11948
11949 * xdisp.c (x_produce_glyphs): In handling composition, if a font
11950 is not found, get font_info from the current ascii face.
11951
119522008-02-01 Kenichi Handa <handa@m17n.org>
11953
11954 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
11955 buffer-file-name to Qnil before calling insert_from_buffer.
11956
11957 * font.c (font_unparse_fcname): Pay attention to the case that
11958 foundry is a null string.
11959
119602008-02-01 Kenichi Handa <handa@m17n.org>
11961
11962 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
11963
11964 * font.c (Qunicode_sip): New variable.
11965 (syms_of_font): Declare it as a Lisp symbol.
11966
11967 * font.h (Qunicode_sip): Extern it.
11968
119692008-02-01 Kenichi Handa <handa@m17n.org>
11970
11971 * composite.c (get_composition_id): Pay attention to TAB component.
11972
11973 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
11974 TAB. Adjust for the change of s->char2b which always points to
11975 the first element of allocated memory.
11976
11977 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
11978
11979 * xdisp.c (handle_composition_prop): Set it->c to the first
11980 non-TAB component.
11981 (fill_composite_glyph_string): Change argument.
11982 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
11983 (x_produce_glyphs): Fix handling of left/right padding.
11984
119852008-02-01 Kenichi Handa <handa@m17n.org>
11986
11987 * coding.c (detect_coding_system): Fix for handling off
11988 inhibit_iso_escape_detection. Fix for the case that no coding
11989 system is defined for a specific coding category.
11990
119912008-02-01 Kenichi Handa <handa@m17n.org>
11992
11993 * font.c (font_matching_entity): Delete unused local var.
11994
11995 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
11996 opening a font.
11997
11998 * fileio.c (Finsert_file_contents): On recovering a file, assume
11999 Unix-like eol.
12000 (choose_write_coding_system): On auto-saving a file, force
12001 Unix-like eol.
12002
12003 * coding.c (setup_coding_system): Fix setting of
12004 coding->common_flags based on eol_type.
12005 (coding_inherit_eol_type): If PARENT is not nil, be sure to
12006 inherit from it.
12007
120082008-02-01 Kenichi Handa <handa@m17n.org>
12009
12010 * alloc.c (NSTATICS): Increas to 0x600.
12011
120122008-02-01 Kenichi Handa <handa@m17n.org>
12013
12014 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
12015 (ftfont_list): Don't check :name property.
12016 (ftfont_match): New function.
12017 (ftfont_pattern_entity): If the pattern doesn't contain
12018 FC_SPACING, don't assume FC_MONO.
12019
12020 * font.h (struct font_driver): New member `match'.
12021 (font_update_drivers): Adjust prototype.
12022
12023 * font.c (font_parse_fcname, font_parse_name): Don't change :name
12024 property of FONT.
12025 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
12026 them unconditionally.
12027 (font_matching_entity): New function.
12028 (font_open_by_name): Try font_matching_entity if exact match is
12029 not found.
12030 (font_update_drivers): Delete the arg FONT. Return a list of
12031 actually used backends. Don't free faces, font caches here.
12032 Don't store data in frame parameters. Don't call x_set_font.
12033 (Ffont_spec): Store :name property as is.
12034 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
12035 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
12036 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
12037 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
12038 Call font->driver->otf_gsub instead of font_otf_gsub.
12039
12040 * frame.c (x_set_font_backend): Do more works that were done in
12041 font_update_drivers before.
12042
12043 * xfont.c (xfont_match): New function.
12044 (xfont_driver): Set xfont_driver.match to xfont_match.
12045 (xfont_draw): Set font in GC if necessary.
12046
12047 * ftxfont.c (ftxfont_match): New function.
12048 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
12049
12050 * xftfont.c (xftfont_match): New function.
12051 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
12052
120532008-02-01 Kenichi Handa <handa@m17n.org>
12054
12055 * font.h (struct font): New member scalable.
12056 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
12057 (font_otf_gsub): Adjust prototype.
12058
12059 * font.c (font_otf_capability): Fix handling of the default langsys.
12060 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
12061 Check the contents of SPEC.
12062 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
12063 (check_gstring): New function.
12064 (REPLACEMENT_CHARACTER): New macro.
12065 (font_otf_gsub): New arg alternate_subst. Be sure to set all
12066 glyph codes of GSTRING.
12067 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
12068 (font_prepare_composition): Set cmp->glyph_len.
12069 (font_open_entity): Set font->scalable.
12070 (Ffont_get): Handle :otf property.
12071 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
12072 functions.
12073 (Fquery_font): Use font->font.full_name.
12074 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
12075 Sfont_otf_alternates.
12076
12077 * ftfont.c (ftfont_open): Set font->font.full_name and
12078 font->font.name properly. Fix calculation of font->font.height
12079 and font->min_width.
12080
12081 * ftxfont.c (ftxfont_create_gcs): New function.
12082 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
12083 (ftxfont_draw_backgrond): Fix filling region.
12084 (ftxfont_default_fid): New function.
12085 (ftxfont_open): Set xfont->fid to the return value of
12086 ftxfont_default_fid.
12087 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
12088 (ftxfont_done_face): Free only GCs that are created by
12089 ftxfont_create_gcs.
12090 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
12091
12092 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
12093 Clip to src->width, etc (not src->clip_XXX).
12094
12095 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
12096 FontBackend frame parameter.
12097
120982008-02-01 Kenichi Handa <handa@m17n.org>
12099
12100 * font.h (struct font_driver_list): New member `on'.
12101 (Fclear_font_cache): EXFUN it.
12102 (font_update_drivers): Extern it.
12103
12104 * font.c (font_unparse_fcname): Fix typo (swidth->width).
12105 (font_list_entities): Check driver_list->on.
12106 (register_font_driver): Initalize `on' member to 0.
12107 (font_update_drivers): New function.
12108 (Fclear_font_cache): Check driver_list->on.
12109
12110 * frame.h (Qfont_backend): Extern it.
12111 (x_set_font_backend): Extern it.
12112
12113 * frame.c (Qfont_backend): New variable.
12114 (frame_parms): New element for font-backend.
12115 (x_set_font_backend): New function.
12116
12117 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
12118 FontBackend frame parameter.
12119 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
12120 x_set_font_backend.
12121
12122 * xfont.c (xfont_list): Don't try listing by :name property if the
12123 name is not for XLFD.
12124
121252008-02-01 Kenichi Handa <handa@m17n.org>
12126
12127 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
12128 (LGLYPH_SET_TO): New macros.
12129 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
12130 element of G is vector or not.
12131 (font_at): Extern it.
12132
12133 * font.c: Include window.h.
12134 (font_lispy_object): New function.
12135 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
12136 end of valid glyph.
12137 (font_close_object): Fix getting (struct font *).
12138 (font_at): New function.
12139 (Ffont_get): If FONT is a font-object, get entity from it.
12140 (Ffont_make_gstring): Initialize elements of glyphs with nil.
12141 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
12142 range check.
12143 (Ffont_at): New function.
12144 (syms_of_font): Defsubr Sfont_at.
12145
12146 * xdisp.c (it_props): Move the entry for Qauto_composed to just
12147 before the entry for Qcomposition.
12148 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
12149 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
12150 the font in gstring.
12151 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
12152 LGLYPH_FORM (g) to detect the end of valid glyph.
12153 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
12154 we are composing with gstring.
12155
12156 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
12157 Check if adjustment is vector or not.
12158
12159 * Makefile.in (font.o): Make it depends on window.h.
12160
121612008-02-01 Kenichi Handa <handa@m17n.org>
12162
12163 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
12164 adjustment is vector or not.
12165
121662008-02-01 Miles Bader <miles@gnu.org>
12167
12168 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
12169
121702008-02-01 Kenichi Handa <handa@m17n.org>
12171
12172 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
12173 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
12174 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
12175
12176 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
12177 (DEVICE_DELTA): Fix typo.
12178 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
12179 LGLYPH format.
12180
12181 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12182 the change of LGLYPH format.
12183
121842008-02-01 Kenichi Handa <handa@m17n.org>
12185
12186 * ftfont.c (ftfont_list): Fix typo.
12187 (ftfont_build_basic_charsets): Don't include letters with diacritics.
12188
121892008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12190
12191 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
12192
12193 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
12194 xftface_info is non-NULL.
12195
121962008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12197
12198 * ftfont.c (ftfont_list): Move misplaced #endif.
12199
122002008-02-01 Kenichi Handa <handa@m17n.org>
12201
12202 * ftfont.c (ftfont_list): Pay attention to the case that
12203 FC_CAPABILITY is not defined.
12204
122052008-02-01 Kenichi Handa <handa@m17n.org>
12206
12207 * xftfont.c (xftfont_open): Set charset related members to -1.
12208
12209 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
12210 QCname.
12211 (ftfont_open): Set charset related members to -1.
12212
12213 * fontset.c (Votf_script_alist): New variable.
12214 (syms_of_fontset): Initialize it.
12215 (fontset_font): Delete unused variable.
12216
12217 * fontset.h (Votf_script_alist): Extern it.
12218
12219 * font.c (font_find_for_lface): Optimize code.
12220
12221 * font.h (font_close_object, font_merge_old_spec): Extern them.
12222
122232008-02-01 Kenichi Handa <handa@m17n.org>
12224
12225 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
12226 (syms_of_font): Initialize them.
12227 (font_pixel_size): Allow float value in dpi.
12228 (font_prop_validate_type): Delete.
12229 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
12230 Change caller.
12231 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
12232 (font_prop_validate_extra): Delete.
12233 (font_prop_validate_spacing): New function.
12234 (font_property_table): Add elements for all known properties.
12235 (get_font_prop_index): Rename from check_font_prop_name. New
12236 argument FROM. Change caller.
12237 (font_prop_validate): Validate all known properties.
12238 (font_put_extra): Delete argument force. Change caller.
12239 (font_expand_wildcards): Make it static. Fix the way of shrinking
12240 the possible range.
12241 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
12242 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
12243 Change caller.
12244 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
12245 (font_parse_fcname): Delete argument merge. Fix parsing of point
12246 size. Don't validate properties values here. Change caller.
12247 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
12248 (font_open_by_name): Delete unused variable.
12249 (Ffont_spec): Likewise. Validate property values.
12250 (Ffont_match_p): New function.
12251
12252 * font.h (QCscalable): Extern it.
12253 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
12254
12255 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
12256
12257 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
12258 (xfont_list_pattern): New function.
12259 (xfont_list): Use xfont_list_pattern.
12260
122612008-02-01 Kenichi Handa <handa@m17n.org>
12262
12263 * font.h (Flist_fonts): EXFUN it.
12264
122652008-02-01 Jason Rumney <jasonr@gnu.org>
12266
12267 * w32term.c (w32_initialize): Add back smoothing_type and
12268 smoothing_enabled definitions.
12269
122702008-02-01 Kenichi Handa <handa@m17n.org>
12271
12272 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
12273 s->face->font on determining underline position.
12274
122752008-02-01 Kenichi Handa <handa@m17n.org>
12276
12277 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
12278 (font_has_char): Accept font-object too.
12279 (font_find_for_lface): Try at first with a size specified in face.
12280
122812008-02-01 Kenichi Handa <handa@m17n.org>
12282
12283 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
12284 font_open_by_name.
12285
122862008-02-01 Kenichi Handa <handa@m17n.org>
12287
12288 * font.h (QCspacing, QCdpi): Extern them.
12289 (enum font_spacing): New enum.
12290 (FONT_PIXEL_SIZE_QUANTUM): New macro.
12291
12292 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
12293 (QCspacing, QCdpi): New variables.
12294 (syms_of_font): Initialize them.
12295 (font_pixel_size): New function.
12296 (font_put_extra): New function.
12297 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
12298 in FONT_EXTRA.
12299 (font_parse_fcname): Handle enumerated values (e.g. bold).
12300 Fix handling font size. Add QCname property that contains only
12301 unknown properties.
12302 (font_score): Change argument. Change caller. Pay attention to
12303 FONT_PIXEL_SIZE_QUANTUM.
12304 (font_sort_entites, font_list_entities, font_find_for_lface)
12305 (font_open_for_lface, font_open_by_name): Fix handling of font size.
12306 (Ffont_spec): Add QCname property that contains only unknown properties.
12307
12308 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
12309 include weight in listing pattern, instead check weight of each
12310 listed font. Don't include scalable in pattern. Pay attention to
12311 FONT_PIXEL_SIZE_QUANTUM.
12312
123132008-02-01 Kenichi Handa <handa@m17n.org>
12314
12315 * font.c (font_parse_fcname): Fix parsing of point-size.
12316 (font_unparse_fcname): Produce symbolic names for style properties.
12317 (font_list_entities): Handle float size correctly.
12318 (font_open_by_name): Prefer `normal' property values if the name
12319 doesn't specify them.
12320
12321 * fontset.c (Finternal_char_font): Use font_get_name, not
12322 Ffont_xlfd_name.
12323
12324 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
12325 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
12326 pattern. Don't force scalable.
12327
12328 * xftfont.c (xftfont_open): For generating a name, start from
12329 96-byte buffer.
12330
123312008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12332
12333 * frame.h (x_new_fontset2): Fix prototype.
12334
123352008-02-01 Kenichi Handa <handa@m17n.org>
12336
12337 * font.h (struct font_driver): Delete member parse_name.
12338 (font_match_p, font_get_spec, font_parse_fcname)
12339 (font_unparse_fcname): Extern them.
12340 (font_get_name): Adjust prototype.
12341
12342 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
12343 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
12344 (font_expand_wildcards): Fix handling ENCODING field. Avoid
12345 unnecessary checks for weight, slant, and swidth.
12346 (font_parse_fcname): New function.
12347 (font_unparse_fcname): New function.
12348 (font_parse_name): New function.
12349 (font_match_p): New function.
12350 (font_get_name): Change return value to Lisp string.
12351 (font_get_spec): New function.
12352 (Qunspecified, Qignore_defface): Don't extern them.
12353 (font_find_for_lface): Assume that LFACE is fully specified.
12354 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
12355 object, use it for FACE.
12356 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
12357 driver->parse_name.
12358 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
12359
12360 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
12361 prototype.
12362
12363 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
12364 argument F. Don't call Fnew_fontset. Instead, directly call
12365 make_fontset.
12366
12367 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
12368
12369 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
12370 of x_new_fontset2.
12371
12372 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
12373 (Qsans__serif): New variables.
12374 (ftfont_generic_family_list): New variable.
12375 (syms_of_ftfont): Initialize the above variables.
12376 (ftfont_pattern_entity): Delete argument NAME.
12377 (ftfont_list_generic_family): New function.
12378 (ftfont_parse_name): Delete this function.
12379 (ftfont_list): Try generic family only when FcFontList found no font.
12380 (ftfont_list_family): Fix args to FcObjectSetBuild.
12381
12382 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
12383 object in attrs[LFACE_FONT_INDEX].
12384 (set_lface_from_font_name): Cancel all changes for font-backend.
12385 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
12386 function.
12387 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
12388 font object in QCfont attribute.
12389 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
12390 (realize_default_face) [USE_FONT_BACKEND]: Call
12391 set_lface_from_font_and_fontset.
12392
12393 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
12394 "fixed", and signal error here if no suitable font was found.
12395
12396 * xfont.c (xfont_parse_name): Delete this function.
12397
12398 * xftfont.c (xftfont_open): Change coding style of error
12399 handling. Generate fontconfig's fontname pattern.
12400
12401 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
12402 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
12403
12404 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
12405 Both args FONTSET and FONT_OBJECT must be existing ones.
12406
124072008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12408
12409 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
12410
124112008-02-01 Kenichi Handa <handa@m17n.org>
12412
12413 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
12414
12415 * font.h (struct font): Fix typo.
12416
12417 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
12418 XLFD_XXX_INDEX.
12419 (enum xlfd_field_mask): New enum.
12420 (intern_font_field): Changed argument. Change caller. If digits
12421 are followed by non-digits, return a symbol.
12422 (font_expand_wildcards): New function.
12423 (font_parse_xlfd): Fix wildcard handling.
12424 (Ffont_spec): If :name is specified, reflect the info in the other
12425 properties.
12426
12427 * ftfont.c (ftfont_pattern_entity): Fix typo.
12428 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
12429 locale.
12430
124312008-02-01 Kenichi Handa <handa@m17n.org>
12432
12433 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
12434
12435 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
12436 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
12437 registry doesn't specify encoding part.
12438 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
12439 (font_open_by_name): At first try parsing the name.
12440 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
12441 as Lisp symbols.
12442
12443 * fontset.c (reorder_font_vector): Pay attention to the case that
12444 the 3rd element of font_def is nil.
12445 (fontset_font): For the default fontset, append one more fontset
12446 elements for a script-based font specification. Don't add script
12447 attribute on finding a font.
12448 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
12449 font name.
12450 (fontset_ascii_font): If a font can't be opened, return nil.
12451
12452 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
12453 (ftfont_pattern_entity): New function.
12454 (ftfont_get_cache): Assume that freetype_font_cache is already
12455 initialized.
12456 (ftfont_list): Handle the case that a file is specified in font
12457 name. Use ftfont_pattern_entity to generate entities.
12458 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
12459 (syms_of_ftfont): Initialize freetype_font_cache.
12460
12461 * xftfont.c (xftfont_open): Make the font name fontconfig's
12462 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
12463 (xftfont_close): Free font->font.name if not NULL.
12464
12465 * xfont.c (xfont_list): If script is specified for a font, return
12466 null_vector.
12467 (xfont_list_family): Declare argument type.
12468
12469 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
12470 name, set LFACE_FONT (lface) to nil.
12471
12472 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
12473 return Qnil.
12474
124752008-02-01 Kenichi Handa <handa@m17n.org>
12476
12477 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
12478 (standard_args): Add "-enable-font-backend".
12479
124802008-02-01 Kenichi Handa <handa@m17n.org>
12481
12482 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
12483 (struct xftdraw_list, xftdraw_list): Delete them.
12484 (register_xftdraw, check_xftdraw): Delete them.
12485 (xftfont_prepare_face): Don't call register_xftdraw.
12486 (xftfont_done_face): Don't call check_xftdraw.
12487 (xftfont_draw): Get background color only when with_background is
12488 nonzero.
12489
12490 * xfont.c (xfont_encode_char): Fix calculation of char2b.
12491
124922008-02-01 Kenichi Handa <handa@m17n.org>
12493
12494 These changes are for the new font handling codes.
12495
12496 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
12497 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
12498 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
12499 (FONTSRC, FONTOBJ): New variables.
12500 (obj): Add $(FONTOBJ).
12501 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
12502 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
12503 @LIBOTF_LIBS@.
12504 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
12505 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
12506
12507 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
12508
12509 * character.h (Vscript_representative_chars): Extern it.
12510
12511 * character.c (Vscript_representative_chars): New variable.
12512 (syms_of_character): Declare it as a Lisp variable.
12513
12514 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
12515 enable_font_backend is nonzero, accept the composition method
12516 COMPOSITION_WITH_GLYPH_STRING.
12517
12518 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
12519 enumeration COMPOSITION_WITH_GLYPH_STRING.
12520
12521 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
12522 members clip_x, clip_y, clip_width, and clip_height.
12523 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
12524
12525 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
12526 --enable-font-backend. Call syms_of_font.
12527
12528 * fns.c (assoc_no_quit): New function.
12529
12530 * fontset.h (FONT_INFO_FROM_FACE): New macro.
12531 (face_for_font, new_fontset_from_font)
12532 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
12533
12534 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
12535 (fontset_font, fontset_ascii, face_for_char)
12536 (make_fontset_for_ascii_face, Ffont_info)
12537 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
12538 is nonzero, use font-backend mechanism.
12539 (find_font_encoding): Make it non-static.
12540 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
12541 New functions.
12542
12543 * frame.h (struct frame): New members resx and resy.
12544 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
12545 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
12546
12547 * frame.c [USE_FONT_BACKEND]: Include "font.h".
12548 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
12549
12550 * lisp.h (assoc_no_quit): Extern it.
12551
12552 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
12553 Through out the file, use FONT_INFO_FROM_FACE instead of
12554 FONT_INFO_FROM_ID, use get_per_char_metric instead of
12555 rif->per_char_metric.
12556 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
12557 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
12558 (get_glyph_face_and_encoding, fill_composite_glyph_string)
12559 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
12560 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
12561 nonzero, use font-backend mechanism.
12562 (get_per_char_metric): New function.
12563
12564 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
12565 (set_lface_from_font_name)
12566 (set_font_frame_param, free_realized_face)
12567 (prepare_face_for_display, clear_face_gcs)
12568 (Finternal_set_font_selection_order, realize_x_face)
12569 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
12570 font-backend mechanism.
12571 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
12572 (load_face_font) [USE_FONT_BACKEND]: Abort.
12573 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
12574 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
12575
12576 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
12577 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
12578 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
12579 nonzero, register all available font drivers. Call
12580 x_default_font_parameter for deciding a font.
12581 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
12582
12583 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
12584 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
12585 (x_set_glyph_string_clipping_exactly)
12586 (x_compute_glyph_string_overhangs)
12587 (x_draw_glyph_string_foreground)
12588 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
12589 (x_free_frame_resources) [USE_FONT_BACKEND]: If
12590 enable_font_backend is nonzero, use font-backend mechanism.
12591 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
12592
125932008-02-01 Kenichi Handa <handa@m17n.org>
12594
12595 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
12596 system_eol_type.
12597 (syms_of_coding): Initialize system_eol_type.
12598
12599 * process.c (Fset_process_coding_system): Inherit system's eol
12600 format if necessary.
12601
126022008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12603
12604 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
12605
126062008-02-01 Kenichi Handa <handa@m17n.org>
12607
12608 * coding.c (decode_eol): Pay attention to buffer relocation in
12609 del_range_2.
12610 (decode_coding): Call decode_eol before restoring undo_list.
12611
126122008-02-01 Kenichi Handa <handa@m17n.org>
12613
12614 * charset.c (Fdefine_charset_internal): Fix setting of
12615 emacs_mule_bytes.
12616
126172008-02-01 Kenichi Handa <handa@m17n.org>
12618
12619 * keyboard.c (read_char): Check if C is a character or not before
12620 looking up Vkeyboard_translate_table.
12621
126222008-02-01 Kenichi Handa <handa@m17n.org>
12623
12624 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
12625 condition to terminate the loop.
12626
126272008-02-01 Kenichi Handa <handa@m17n.org>
12628
12629 * coding.c (produce_composition): Compare charbuf[i] instead of
12630 args[i] against 0.
12631 (Fterminal_coding_system): Use EQ to compare Lisp objects.
12632
126332008-02-01 Kenichi Handa <handa@m17n.org>
12634
12635 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
12636 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
12637 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
12638 detect_coding.
12639 (emacs_mule_char): Handle old style (Emacs 20) component character
12640 of a composition.
12641 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
12642 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
12643 composition rule.
12644 (decode_coding_emacs_mule): Handle invalid bytes correctly.
12645
126462008-02-01 Kenichi Handa <handa@m17n.org>
12647
12648 * coding.c (encode_coding_ccl): Allocate destination dynamically
12649 when necessary.
12650
126512008-02-01 Kenichi Handa <handa@m17n.org>
12652
12653 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
12654 the loop. When quitted, show a proper error message.
12655
126562008-02-01 Kenichi Handa <handa@m17n.org>
12657
12658 * xterm.c (x_set_glyph_string_clipping_exactly): Set
12659 src->clip_head and src->clip_tail temporarily instead of src->hl.
12660
12661 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
12662 character sequence.
12663 (Fccl_execute_on_string): Use ASET, not XSET.
12664
126652008-02-01 Kenichi Handa <handa@m17n.org>
12666
12667 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
12668
126692008-02-01 Kenichi Handa <handa@m17n.org>
12670
12671 * coding.c (decode_coding): Fix the condition of terminating the
12672 decoding loop.
12673
126742008-02-01 Kenichi Handa <handa@m17n.org>
12675
12676 * data.c (Faset): On setting a character bigger than 255 in a
12677 unibyte string, signal an error instead of make the string multibyte.
12678
126792008-02-01 Kenichi Handa <handa@m17n.org>
12680
12681 * charset.c (map_charset_chars): Fix for ascii-compatible charset
12682 made by a mapping table.
12683
126842008-02-01 Kenichi Handa <handa@m17n.org>
12685
12686 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
12687 not.
12688 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
12689 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
12690
12691 * xterm.c (x_draw_composite_glyph_string_foreground): Check
12692 s->face is NULL or not.
12693
126942008-02-01 Kenichi Handa <handa@m17n.org>
12695
12696 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
12697 (x_draw_glyph_string): Fix drawing of right_overhang and
12698 left_overhang around/on cursor.
12699
12700 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
12701
127022008-02-01 Kenichi Handa <handa@m17n.org>
12703
12704 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
12705
127062008-02-01 Kenichi Handa <handa@m17n.org>
12707
12708 * coding.c (Fdefine_coding_system_internal)
12709 (Fdefine_coding_system_alias): Avoid a duplicated element in
12710 Vcoding_system_alist.
12711
127122008-02-01 Kenichi Handa <handa@m17n.org>
12713
12714 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
12715
12716 * coding.c (Qcoding_system_define_form): New variable.
12717 (syms_of_coding): Intern and staticpro it.
12718 (Fcoding_system_p): Check Qcoding_system_define_form.
12719 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
12720
12721 * coding.h (CODING_SYSTEM_P): If ID is not available, call
12722 Fcoding_system_p.
12723 (CHECK_CODING_SYSTEM): If ID is not available, call
12724 Fcheck_coding_system.
12725 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
12726 Try also Fcheck_coding_system.
12727
127282008-02-01 Kenichi Handa <handa@m17n.org>
12729
12730 * coding.c (code_conversion_restore): GCPRO arg.
12731
127322008-02-01 Kenichi Handa <handa@m17n.org>
12733
12734 * character.c (lisp_string_width): Check multibyteness of STRING.
12735
127362008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12737
12738 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
12739 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
12740 (decode_mac_font_name): Use decode_coding_c_string instead of
12741 decode_coding.
12742 (x_load_font): Initialize fontp->fontset to -1. Set
12743 fontp->encoding_type.
12744
127452008-02-01 Kenichi Handa <handa@m17n.org>
12746
12747 * search.c (search_buffer): Give up BM search on case-fold-search
12748 if one of a target character has a case-equivalence of different
12749 byte length even if that target charcter is an ASCII.
12750 (simple_search): Fix calculation of byte length of matched text.
12751 (boyer_moore): Fix handling of case-equivalent multibyte characters.
12752
127532008-02-01 Kenichi Handa <handa@m17n.org>
12754
12755 * coding.c (decode_coding): Fix handling of invalid bytes.
12756
127572008-02-01 Kenichi Handa <handa@m17n.org>
12758
12759 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
12760 Unicode characters.
12761
127622008-02-01 Kenichi Handa <handa@m17n.org>
12763
12764 * coding.c (encode_coding_object): If a pre-write-conversion
12765 function makes a new buffer, kill it.
12766
127672008-02-01 Kenichi Handa <handa@m17n.org>
12768
12769 * coding.c (QCascii_compatible_p): New variable.
12770 (syms_of_coding): Initialize it.
12771 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
12772 calling string_char.
12773 (record_conversion_result): Add `default:' case.
12774 (coding_charset_list): Delete unused variable `coding_type'.
12775 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
12776 property in the plist of the coding system.
12777 (Fcoding_system_put): Check QCascii_compatible_p.
12778
127792008-02-01 Miles Bader <miles@gnu.org>
12780
12781 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
12782 removed calculation of frame `f', as it's now used.
12783
127842008-02-01 Kenichi Handa <handa@m17n.org>
12785
12786 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
12787 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
12788 (UNIDATA): New variable.
12789 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
12790 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
12791 $(RUN_TEMACS) unconditionally.
12792
127932008-02-01 Kenichi Handa <handa@m17n.org>
12794
12795 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
12796 (admindir): New variable.
12797 ($(lispsource)international/charprop.el): New target.
12798
127992008-02-01 Miles Bader <miles@gnu.org>
12800
12801 * character.c (chars-in-region): Remove obsolete function.
12802 (syms_of_character): Remove its initialization.
12803
128042008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
12805
12806 * w32select.c (validate_coding_system)
12807 (setup_windows_coding_system): New functions.
12808 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
12809 setup_windows_coding_system.
12810 (setup_config, Fw32_get_clipboard_data): Use
12811 validate_coding_system.
12812 (Fx_selection_exists): Move call to setup_config to a place
12813 where signals are allowed.
12814
12815 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
12816 (Fcheck_coding_system): Add declarations.
12817
128182008-02-01 Kenichi Handa <handa@m17n.org>
12819
12820 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
12821
128222008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12823
12824 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
12825 string as the second argument for x_new_fontset.
12826
128272008-02-01 Kenichi Handa <handa@m17n.org>
12828
12829 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
12830 (encode_coding_object): Use safe_call instead of call2.
12831
128322008-02-01 Kenichi Handa <handa@m17n.org>
12833
12834 * fontset.c (Fset_fontset_font): Check family element of a given vector.
12835
12836 * Makefile.in (lisp): Include charprop.el.
12837
128382008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12839
12840 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
12841 Not sure if it's unnecessary.
12842
128432008-02-01 Steven Tamm <steventamm@mac.com>
12844
12845 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
12846 some possibly unnecessary fontset checking code that crashed
12847 when creating a new frame.
12848
128492008-02-01 Kenichi Handa <handa@m17n.org>
12850
12851 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
12852 lookup_face.
12853
12854 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
12855
12856 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
12857
128582008-02-01 Kenichi Handa <handa@m17n.org>
12859
12860 * coding.c: Cancel the change done in HEAD on 2008-02-01.
12861 (coding_charset_list): New function.
12862
12863 * coding.h (coding_charset_list): Extern it.
12864
128652008-02-01 Kenichi Handa <handa@m17n.org>
12866
12867 * fontset.c (Fset_fontset_font): Call find_font_encoding with
12868 concatenation of family and registry.
12869
128702008-02-01 Kenichi Handa <handa@m17n.org>
12871
12872 * character.h (BYTE8_STRING): Fix typo.
12873
12874 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
12875 string to multibyte (sync to HEAD).
12876
12877 * casefiddle.c (casify_region): Handle changes in byte-length
12878 using replace_range_2 (sync to HEAD).
12879
128802008-02-01 Andreas Schwab <schwab@suse.de>
12881
12882 * chartab.c (map_char_table): GCPRO table and arg.
12883
128842008-02-01 Kenichi Handa <handa@m17n.org>
12885
12886 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
12887 already at limit.
12888
128892008-02-01 Kenichi Handa <handa@m17n.org>
12890
12891 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
12892 instead of fast_c_string_match_ignore_case.
12893 (find_font_encoding): Change argument to Lisp_Object. Use
12894 fast_string_match_ignore_case instead of
12895 fast_c_string_match_ignore_case. Change caller.
12896
128972008-02-01 Kenichi Handa <handa@m17n.org>
12898
12899 * xdisp.c (get_next_display_element): In unibyte case, decide to
12900 display in octal form by checking a character by
12901 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
12902
12903 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
12904
12905 * character.c (unibyte_has_multibyte_table): New variable.
12906
12907 * character.h (unibyte_has_multibyte_table): Extern it.
12908 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
12909
129102008-02-01 Kenichi Handa <handa@m17n.org>
12911
12912 * coding.c (encode_coding_iso_2022): Fix handling of charset
12913 annotation.
12914
129152008-02-01 Kenichi Handa <handa@m17n.org>
12916
12917 * coding.c (setup_coding_system): If coding_system is nil, use
12918 Qundecided.
12919 (Fterminal_coding_system): Return nil if terminal coding system is
12920 `undecided'.
12921 (syms_of_coding): Define coding-system `undecided' here. Setup
12922 terminal_coding as `undecided'.
12923
129242008-02-01 Kenichi Handa <handa@m17n.org>
12925
12926 * xdisp.c (message_dolog, set_message_1): Call
12927 unibyte_char_to_multibyte with arg type int.
12928
12929 * lread.c (read1): Fix reading of a char-table.
12930
12931 * print.c (print_object): Include sub char-table in circularities
12932 detection.
12933
129342008-02-01 Kenichi Handa <handa@m17n.org>
12935
12936 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
12937 Append the found sequences in car of ARGS instead of prepending.
12938
129392008-02-01 Kenichi Handa <handa@m17n.org>
12940
12941 * fileio.c (report_file_error): Make a unibyte string from
12942 strerror (errorno).
12943 (Fsubstitute_in_file_name): Fix the arg to
12944 unibyte_char_to_multibyte. It is evaluated twice.
12945
129462008-02-01 Kenichi Handa <handa@m17n.org>
12947
12948 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
12949
129502008-02-01 Kenichi Handa <handa@m17n.org>
12951
12952 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
12953 BOM is not found.
12954 (detect_coding, detect_coding_system): Optimization for ISO-2022
12955 when no 8-bit data is found.
12956
129572008-02-01 Jason Rumney <jasonr@gnu.org>
12958
12959 * w32fns.c (x_to_w32_font): Update to use new coding struct.
12960
129612008-02-01 Kenichi Handa <handa@m17n.org>
12962
12963 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
12964 CHARS.
12965
129662008-02-01 Steven Tamm <steventamm@mac.com>
12967
12968 * macterm.c (mac_encode_char): Add charset argument and update
12969 to use encoding_type.
12970 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
12971 switch to pure fontset.
12972 (decode_mac_font_name): Temporarily remove decoding.
12973 (x_font_name_to_mac_font_name): Temporarily remove encoding.
12974 (x_load_font): Temporarily remove encoding.
12975
129762008-02-01 Kenichi Handa <handa@m17n.org>
12977
12978 * xfaces.c (Fface_font): If frame is not on a window system,
12979 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
12980 refer to face->font.
12981 (split_font_name_into_vector, build_font_name_from_vector)
12982 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
12983 when HAVE_WINDOW_SYSTEM is defined.
12984
129852008-02-01 Kenichi Handa <handa@m17n.org>
12986
12987 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
12988 (x_produce_glyphs): Fix setting of members of cmp in case
12989 cmp->glyph_len is zero.
12990
12991 * fontset.c (Fset_fontset_font): Fix docstring.
12992 (Ffontset_info): Make it backward compatible. New arg ALL.
12993
129942008-02-01 Kim F. Storm <storm@cua.dk>
12995
12996 * process.c (read_process_output): Grow decoding_buf when needed;
12997 this could cause a crash in allocate_string and compact_small_strings.
12998
129992008-02-01 Kenichi Handa <handa@m17n.org>
13000
13001 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
13002
130032008-02-01 Kenichi Handa <handa@m17n.org>
13004
13005 * coding.c (setup_coding_system): Set coding->common_flags
13006 correctly for raw-text.
13007 (consume_chars): On encoding unibyte text by raw-text, don't check
13008 multibyte form.
13009 (encode_coding): On encoding by raw-text, never use translation tables.
13010
13011 * fileio.c (e_write): Short cut for the case of no encoding.
13012
130132008-02-01 Kenichi Handa <handa@m17n.org>
13014
13015 * coding.c (detect_coding, detect_coding_system): Delete unused
13016 variables.
13017
130182008-02-01 Kenichi Handa <handa@m17n.org>
13019
13020 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
13021 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
13022
130232008-02-01 Kenichi Handa <handa@m17n.org>
13024
13025 * coding.c (Ffind_coding_systems_region_internal): Include
13026 raw-text and no-conversion in the result.
13027
130282008-02-01 Kenichi Handa <handa@m17n.org>
13029
13030 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
13031 (load_font_get_repertory): Delete unnecessary check of ENCODING of
13032 FONT_DEF.
13033 (font_def_arg, add_arg, from_arg, to_arg): New args.
13034 (set_fontset_font): Change argument.
13035 (Fset_fontset_font): Fix for the case that TARGET is a script
13036 name and charset name.
13037 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
13038
130392008-02-01 Kenichi Handa <handa@m17n.org>
13040
13041 * fontset.c (fontset_font): Rename from fontset_face. Change return
13042 value.
13043 (face_suitable_for_char_p, face_for_char): Adjust for the change
13044 of fontset_font.
13045 (make_fontset_for_ascii_face): Fix setting of the fontset element
13046 for ASCII.
13047 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
13048 to get a font name.
13049 (Ffontset_info): Adjust for the change of fontset_font.
13050
13051 * coding.c (emacs_mule_char): Check invalid code more rigidly.
13052
13053 * character.h (LEADING_CODE_LATIN_1_MIN)
13054 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
13055
130562008-02-01 Kenichi Handa <handa@m17n.org>
13057
13058 * editfns.c (check_translation): New function.
13059 (Ftranslate_region_internal): Handle M:N mapping.
13060
130612008-02-01 Kenichi Handa <handa@m17n.org>
13062
13063 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
13064
130652008-02-01 Kenichi Handa <handa@m17n.org>
13066
13067 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
13068 goto invalid_code.
13069 (decode_coding_iso_2022): Fix handling of invalid designation.
13070
13071 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
13072 after calling code_conversion_save.
13073
130742008-02-01 Kenichi Handa <handa@m17n.org>
13075
13076 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
13077
13078 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
13079
13080 * fontset.c: Include "intervals.h".
13081 (fontset_face): Fix comparing of Lisp_Objects.
13082 (free_face_fontset, new_fontset_from_font_name): Fix
13083 Lisp_Object/int mixup.
13084
13085 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
13086
13087 * coding.c: Add many prototypes for static functions.
13088 (get_translation_table): Allow max_lookup to be NULL.
13089 (decode_coding, Ffind_coding_systems_region_internal)
13090 (Funencodable_char_position, Fcheck_coding_systems_region): Call
13091 get_translation_table with max_lookup NULL.
13092
130932008-02-01 Kenichi Handa <handa@m17n.org>
13094
13095 * coding.c (get_translation_table): Declare it as Lisp_Object.
13096 (LOOKUP_TRANSLATION_TABLE): New macro.
13097 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
13098 instead of CHAR_TABLE_REF.
13099
131002008-02-01 Kenichi Handa <handa@m17n.org>
13101
13102 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
13103 annotation data format.
13104 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
13105 Change arguments FROM and TO to single argument NCHARS. Change caller.
13106 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
13107 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13108 (decode_coding_ccl, decode_coding_charset): Pay attention to
13109 coding->charbuf_used.
13110 (get_translation): New function.
13111 (produce_chars): New arguments translation_table and last_block.
13112 Translate characters here. Return number of carryover chars.
13113 Change caller.
13114 (produce_composition): New argument pos. Change caller.
13115 Adjust for the change of annotation data format.
13116 (produce_charset, produce_annotation): Likewise.
13117 (decode_coding, encode_coding): Don't call translate_chars.
13118 (consume_chars): New arg translation_table. Change caller.
13119 (translate_chars): Delete.
13120 (syms_of_coding): Make translation-table's number of extra slots 2.
13121
131222008-02-01 Kenichi Handa <handa@m17n.org>
13123
13124 * search.c (simple_search): Fix setting this_pos_byte in backward
13125 search.
13126
13127 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
13128 byte sequence.
13129 (detect_coding_ccl): Fix setting of the variable valids.
13130
131312008-02-01 Kenichi Handa <handa@m17n.org>
13132
13133 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
13134
13135 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
13136
13137 * editfns.c (Ftranslate_region_internal): Rename from
13138 Ftranslate_region. Accept a char-table in TABLE.
13139 (syms_of_editfns): Defsubr Stranslate_region_internal.
13140
13141 * xfaces.c (set_lface_from_font_name): If a font is specified for
13142 a frame, generate a fontset from the font.
13143 (build_scalable_font_name): If the scalable font is requested for
13144 a specific size, don't change that size.
13145 (try_font_list): Try a scalable font also in the case that a
13146 pattern string is specified.
13147
131482008-02-01 Kenichi Handa <handa@m17n.org>
13149
13150 * xfaces.c (Fface_font): New optional arg CHARACTER.
13151
131522008-02-01 Kenichi Handa <handa@m17n.org>
13153
13154 * charset.h (CHARSET_OFFSET): New macro.
13155
131562008-02-01 Kenichi Handa <handa@m17n.org>
13157
13158 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
13159
13160 * fontset.c (fontset_face): Handle the case that repertory is a
13161 char-table.
13162 (find_font_encoding): Return nil for unknown encoding.
13163 (Fset_fontset_font): Ignore a font of unknown encoding.
13164
131652008-02-01 Kenichi Handa <handa@m17n.org>
13166
13167 * keymap.c (describe_vector): Handle default value of a char table.
13168
13169 * fontset.c (fontset_face): Handle fallback fonts correctly.
13170 (Ffontset_info): Return infomation about fallback fonts.
13171
131722008-02-01 Kenichi Handa <handa@m17n.org>
13173
13174 * fontset.c (FONTSET_DEFAULT): New macro.
13175 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
13176 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
13177 the case that it is nil.
13178 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
13179 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
13180
13181 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
13182 subset or superset.
13183
131842008-02-01 Kenichi Handa <handa@m17n.org>
13185
13186 * emacs.c (main): Call init_charset after syms_of_XXX.
13187
13188 * charset.c (Vcharset_map_directory): Delete.
13189 (Vcharset_map_path): New variable.
13190 (load_charset_map_from_file): Use Vcharset_map_path instead.
13191 (init_charset): Initialize Vcharset_map_path.
13192 (syms_of_charset): Delete declaration of "charset-map-directory",
13193 add declaration of "charset-map-path".
13194
131952008-02-01 Kenichi Handa <handa@m17n.org>
13196
13197 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
13198 ASCII only string.
13199
13200 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
13201
13202 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
13203 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
13204
132052008-02-01 Kenichi Handa <handa@m17n.org>
13206
13207 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
13208
13209 * coding.c (QCmnemonic, QCdefalut_char)
13210 (QCdecode_translation_table, QCencode_translation_table)
13211 (QCpost_read_conversion, QCpre_write_conversion): New variables.
13212 (get_translation_table): Return a list of translation tables if
13213 necessary.
13214 (decode_coding): Call get_translation_table with ENCODEP 0.
13215 (char_encodable_p): If translation_table is non-nil, always call
13216 translate_char.
13217 (Fdefine_coding_system_internal): Accept list of translation
13218 tables as :encode-translation-table and :decode-translation-table.
13219 (Fcoding_system_put): New function.
13220 (syms_of_coding): Declare new symbols. Defsubr
13221 Scoding_system_put.
13222 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
13223 typically JISX0212.
13224
13225 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
13226 when the charset is superset type.
13227
13228 * character.c (translate_char): Accept list of translation tables.
13229
132302008-02-01 Kenichi Handa <handa@m17n.org>
13231
13232 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
13233 (CODING_ATTR_TRANS_TBL): New macro.
13234
13235 * coding.c (get_translation_table): New function.
13236 (translate_chars): Fix the bug of skipping annotation data.
13237 (decode_coding, encode_coding): Utilize get_translation_table.
13238 (char_encodable_p, Funencodable_char_position): Translate char if
13239 necessary.
13240 (Ffind_coding_systems_region_internal)
13241 (Fcheck_coding_systems_region): Setup translation table for encode
13242 in a coding system attribute vector in advance.
13243 (Fdefine_coding_system_internal): Allow a symbol as translation
13244 table. For shift-jis type coding system, allow 4th charset.
13245
132462008-02-01 Kenichi Handa <handa@m17n.org>
13247
13248 * coding.c (decode_coding_sjis): Check the first byte rigidly.
13249
13250 * xdisp.c (get_next_display_element): Pass -1 as POS to
13251 FACE_FOR_CHAR if displaying a C-string.
13252
132532008-02-01 Kenichi Handa <handa@m17n.org>
13254
13255 * composite.c (get_composition_id): Handle xoff and yoff in a
13256 composition rule.
13257
13258 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
13259 (struct composition): New member lbearing and rbearing.
13260
13261 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
13262 (x_get_glyph_overhangs): Handle a composition glyph.
13263 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
13264
13265 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
13266 composition glyph.
13267
132682008-02-01 Kenichi Handa <handa@m17n.org>
13269
13270 * print.c: Include charset.h.
13271 (Vprint_charset_text_property): New variable.
13272 (Qdefault): Extern it.
13273 (PRINT_STRING_NON_CHARSET_FOUND)
13274 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
13275 (print_check_string_result): New variable.
13276 (print_check_string_charset_prop): New function.
13277 (print_prune_charset_plist): New variable.
13278 (print_prune_string_charset): New function.
13279 (print_object): Call print_prune_string_charset if
13280 Vprint_charset_text_property is not t.
13281 (print_interval): Print nothing if interval->plist is nil.
13282 (syms_of_print): Declare Vprint_charset_text_property as a lisp
13283 variable. Init and staticpro print_prune_charset_plist.
13284
132852008-02-01 Kenichi Handa <handa@m17n.org>
13286
13287 * fontset.c (new_fontset_from_font_name): Use the specified font
13288 for all characters in the new fontset.
13289
13290 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13291 OBJECT args.
13292
13293 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
13294 OBJECT args for composition too.
13295
13296 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13297 OBJECT args.
13298
132992008-02-01 Kenichi Handa <handa@m17n.org>
13300
13301 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
13302
13303 * fontset.c (reorder_font_vector): Adjust for the change of
13304 FONT_DEF format.
13305 (fontset_face): New arg id. Change caller.
13306 (face_for_char): New args pos and object.
13307 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
13308 (fs_query_fontset): Check NAME by Fassoc too.
13309 (Fset_fontset_font): Allow non-XLFD font name.
13310 (Ffontset_info): Adjust for the change of FONT_DEF format.
13311
13312 * fontset.h (face_for_char): Adjust prototype.
13313
13314 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
13315 (append_space, extend_face_to_end_of_line)
13316 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13317 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
13318
13319 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
13320 POS and OBJECT args.
13321
13322 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
13323 POS and OBJECT args.
13324
133252008-02-01 Jason Rumney <jasonr@gnu.org>
13326
13327 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
13328 of GlobalAlloc'ed memory.
13329
133302008-02-01 Kenichi Handa <handa@m17n.org>
13331
13332 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
13333
13334 * charset.h (charset_table_used): Delete extern.
13335
13336 * charset.c (charset_table_used): Make it static.
13337 (map_charset_chars): Fix args to c_function with.
13338
13339 * chartab.c (map_sub_char_table_for_charset): Fix args to
13340 c_function with.
13341
13342 * coding.h (enum coding_result_code): Delete
13343 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
13344
13345 * coding.c (Qinsufficient_source, Qinconsistent_eol)
13346 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
13347 (Vlast_code_conversion_error): New variables.
13348 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
13349 (ONE_MORE_BYTE): Record error if any instead of signaling an
13350 error. If non-ASCII multibyte char is found, return the negative
13351 value of the code. All callers changed to check it.
13352 (ONE_MORE_BYTE_NO_CHECK): Likewise.
13353 (record_conversion_result): New function. Change all codes setting
13354 coding->result to call this function.
13355 (detect_coding_utf_8, decode_coding_utf_8)
13356 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
13357 Don't use the local variable incomplete.
13358 (emacs_mule_char): Change the second arg to `const'.
13359 (decode_coding): Fix of flushing out unprocessed data.
13360 (make_conversion_work_buffer): Fix making of a work buffer.
13361 (decode_coding_object): Return coding->dst_object.
13362
13363 * fontset.c (set_fontset_font): Fix args.
13364
13365 * lisp.h (CHARACTERBITS): Define as 22.
13366
13367 * process.c (send_process): Be sure to set coding->src_multibyte.
13368
13369 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
13370
133712008-02-01 Kenichi Handa <handa@m17n.org>
13372
13373 * xdisp.c (handle_auto_composed_prop): Give limit to
13374 Fnext_single_char_property_change.
13375
133762008-02-01 Kenichi Handa <handa@m17n.org>
13377
13378 * composite.c (syms_of_composite): Don't make the composition hash
13379 table weak.
13380
13381 * fontset.c (Fset_fontset_font): Fix docstring.
13382
13383 * lisp.h (detect_coding_system): Adjust prototype.
13384
13385 * fileio.c (kill_workbuf_unwind): Delete this function.
13386 (Finsert_file_contents): Adjust the call of detect_coding_system.
13387 Get conversion_buffer by code_conversion_save. Use the macro
13388 CODING_MAY_REQUIRE_DECODING. After decoding, update
13389 coding_system.
13390
13391 * coding.h (make_conversion_work_buffer): Delete extern.
13392 (code_conversion_save): Extern it.
13393
13394 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
13395 (CODING_GET_INFO): Delete argument eol_type. Change callers.
13396 (decode_coding_utf_8): Don't do eol converion.
13397 (detect_coding_utf_16): Check coding->src_chars, not
13398 coding->src_bytes. Add heuristics for those that have no signature.
13399 (decode_coding_emacs_mule, decode_coding_iso_2022)
13400 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
13401 Don't do eol converion.
13402 (adjust_coding_eol_type): Return a new coding system.
13403 (detect_coding): Don't detect eol. Fix for utf-16 detection.
13404 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
13405 each change.
13406 (decode_coding): Pay attention to undo_list. Do eol conversion for
13407 all types of coding-systems (if necessary).
13408 (Vcode_conversion_work_buf_list): Delete it.
13409 (Vcode_conversion_reused_workbuf): Rename from
13410 Vcode_conversion_reused_work_buf.
13411 (Vcode_conversion_workbuf_name): New variable.
13412 (reused_workbuf_in_use): New variable.
13413 (make_conversion_work_buffer): Delete the arg DEPTH.
13414 (code_conversion_restore): Change argument to cons.
13415 (code_conversion_save): Delete the argument BUFFER. Change callers.
13416 (detect_coding_system): New argument src_chars. Change callers.
13417 Fix for utf-16 detection.
13418 (init_coding_once): Don't use ISO_carriage_return.
13419 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
13420 reused_workbuf_in_use.
13421
134222008-02-01 Kenichi Handa <handa@m17n.org>
13423
13424 * keymap.c (store_in_keymap): Pay attention to the case that idx
13425 is a cons specifying a character range.
13426
134272008-02-01 Kenichi Handa <handa@m17n.org>
13428
13429 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
13430 HANDLED_RECOMPUTE_PROPS.
13431
13432 * coding.c (Fdefine_coding_system_internal): Fix checking of
13433 ascii compatibility.
13434
134352008-02-01 Kenichi Handa <handa@m17n.org>
13436
13437 * charset.c (find_charsets_in_text): Delete unused locale variable.
13438 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
13439
13440 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
13441 Resync charset_list to Vemacs_mule_charset_list.
13442
13443 * keymap.c (store_in_keymap): Pay attention to the case that idx
13444 is a cons specifying a character range.
13445
134462008-02-01 Kenichi Handa <handa@m17n.org>
13447
13448 * composite.c (update_compositions): Bind inhibit-read-only, etc
13449 to t before calling remove-list-of-text-properties.
13450
13451 * print.c (print_object): Always print ASCII chars as is.
13452
134532008-02-01 Kenichi Handa <handa@m17n.org>
13454
13455 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
13456
13457 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
13458 is a char table.
13459
134602008-02-01 Kenichi Handa <handa@m17n.org>
13461
13462 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
13463
134642008-02-01 Kenichi Handa <handa@m17n.org>
13465
13466 * xfaces.c (set_lface_from_font_name): Fix for the case that
13467 FONTNAME is not fontset name.
13468
134692008-02-01 Kenichi Handa <handa@m17n.org>
13470
13471 * fns.c (base64_encode_1): Fix previous change.
13472
134732008-02-01 Kenichi Handa <handa@m17n.org>
13474
13475 * fontset.c (set_fontset_font): New function.
13476 (Fset_fontset_font): If a font is specified for a charset, use
13477 map_charset_chars to store the font spec in a fontset.
13478
134792008-02-01 Kenichi Handa <handa@m17n.org>
13480
13481 * fontset.c (fontset_face): Create a fallback fontset on demand.
13482 (make_fontset): Don't create a fallback fontset here.
13483 (free_face_fontset): Free a fallback fontset (if any) too.
13484 (n_auto_fontsets): Delete this variable.
13485 (auto_fontset_alist): New variable.
13486 (new_fontset_from_font_name): Check auto_fontset_alist.
13487 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
13488 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
13489 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
13490 Defsubr Sfontset_list_all.
13491
134922008-02-01 Kenichi Handa <handa@m17n.org>
13493
13494 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
13495
134962008-02-01 Kenichi Handa <handa@m17n.org>
13497
13498 * fontset.c (Fnew_fontset): Check NAME more rigidly.
13499
135002008-02-01 Kenichi Handa <handa@m17n.org>
13501
13502 * editfns.c (Fgoto_char): Fix docstring.
13503
135042008-02-01 Kenichi Handa <handa@m17n.org>
13505
13506 * insdel.c (insert_from_gap): Adjust intervals correctly.
13507
135082008-02-01 Jason Rumney <jasonr@gnu.org>
13509
13510 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
13511 (pfnGetFontUnicodeRanges): New dynamically loaded function.
13512 (w32_initialize): Try to load it.
13513 (x_get_font_repertory): Use it if available.
13514 (w32_encode_char): Add shortcut for unicode output.
13515
13516 * w32fns.c (w32_load_system_font): Default charset to -1.
13517 (x_to_w32_charset): Match all fonts for unicode.
13518 (w32_to_x_charset): New parameter matching. Don't return partial
13519 or wildcard charsets.
13520 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
13521 (w32_codepage_for_font): Return CP_UNICODE for unicode.
13522 (w32_to_x_font): Match charset to real charset.
13523 (enum_font_cb2): Always list unicode versions.
13524
13525 * makefile.w32-in (temacs): Increase EMHEAP.
13526
135272008-02-01 Jason Rumney <jasonr@gnu.org>
13528
13529 * w32term.c (w32_encode_char): New charset parameter.
13530 font_info.encoding becomes encoding_type.
13531 (x_get_font_repertory): New function. Warning: stub only!
13532 (x_new_font): Return quickly if font already set.
13533 (x_new_fontset): fontsetname parameter is Lisp_Object.
13534 Use new fs_query_fontset. Try new_fontset_from_font_name.
13535 Use fontset_name for return value.
13536
13537 * w32term.h: Declare x_get_font_repertory.
13538
13539 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
13540 place of find_charset_in_text. Use encode_coding_object in place
13541 of encode_coding.
13542 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
13543 decode_coding.
13544
13545 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
13546 of x_new_fontset.
13547 (w32_load_system_font): Initialize charset as unicode.
13548 font_info.encoding becomes encoding_type.
13549 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
13550 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
13551 (syms_of_w32fns): Set get_font_repertory_func.
13552
13553 * w32console.c: Include character.h. Use terminal_encode_buffer
13554 from term.c.
13555 (write_glyphs): Use new version of encode_terminal_code. Use
13556 encode_coding_object in place of encode_coding.
13557
13558 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
13559 encoding becomes encoding_type.
13560
13561 * term.c (terminal_encode_buffer): Make externally visible.
13562
13563 * makefile.w32-in: Add character.h dependancies.
13564 (character.o, chartab.o): New targets.
13565
135662008-02-01 Kenichi Handa <handa@m17n.org>
13567
13568 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
13569 CODING_ID_EOL_TYPE.
13570
135712008-02-01 Andreas Schwab <schwab@suse.de>
13572
13573 * coding.c (produce_chars): Revert last change.
13574
135752008-02-01 Kenichi Handa <handa@m17n.org>
13576
13577 * charset.h (charset_unicode): Extern it.
13578
13579 * charset.c (string_xstring_p): Check by (C >= 0x100).
13580 (find_charsets_in_text): Change format of the arc CHARSETS. New
13581 arg MULTIBYTE.
13582 (Ffind_charset_region, Ffind_charset_string): Adjust for the
13583 change of find_charsets_in_text.
13584 (Fsplit_char): Fix doc. Never return unknown.
13585
13586 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
13587
13588 * coding.c (Fdefine_coding_system_alias): Update
13589 Vcoding_system_list.
13590
13591 * fontset.c (load_font_get_repertory): Pay attention to the case
13592 that ENCODING of a font is specified by a char-table.
13593
13594 * xterm.c (x_get_font_repertory): Handle the case that the
13595 encoding of font is other than Unicode.
13596
135972008-02-01 Kenichi Handa <handa@m17n.org>
13598
13599 * term.c (encode_terminal_code): Don't handle glyph-table. Check
13600 if a character is encodable by the terminal coding system. If
13601 not, produces proper number of `?'s. Update
13602 terminal_encode_buffer and terminal_encode_buf_size if necessary.
13603 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
13604
136052008-02-01 Kenichi Handa <handa@m17n.org>
13606
13607 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
13608 variables.
13609 (encode_terminal_code): Change argument. Encode multiple
13610 characters at once. Store the result of encoding in
13611 terminal_encode_buffer.
13612 (write_glyphs, insert_glyphs): Adjust for the change of
13613 encode_terminal_code.
13614 (term_init): Initialize terminal_encode_buffer and
13615 terminal_encode_buf_size.
13616
13617 * coding.c (consume_chars): If coding->src_object is nil, don't
13618 check annotation.
13619
136202008-02-01 Kenichi Handa <handa@m17n.org>
13621
13622 * character.c (char_string): Use ASCII_CHAR_P instead of
13623 SINGLE_BYTE_CHAR_P.
13624
136252008-02-01 Kenichi Handa <handa@m17n.org>
13626
13627 * xdisp.c (handle_auto_composed_prop): Check if the last
13628 characters of auto-composed region is newly composed with the
13629 following characters.
13630 (handle_composition_prop): Fix checking of point being inside
13631 composition.
13632
136332008-02-01 Kenichi Handa <handa@m17n.org>
13634
13635 * fns.c (concat): Don't change multibyteness of the result by
13636 concatenating an 8-bit character.
13637
13638 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
13639 multibyteness of the result when newelt is an 8-bit character.
13640
136412008-02-01 Dave Love <fx@gnu.org>
13642
13643 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
13644 EMACS_INT.
13645
13646 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
13647
13648 * xfaces.c (face_numeric_value): Declare dim size_t.
13649 (Finternal_lisp_face_equal_p): Remove unused f.
13650
13651 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
13652 (MATRIX_ROW): Remove unused vars.
13653 (draw_glyphs, x_insert_glyphs, fast_find_position)
13654 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
13655 byte/char counts.
13656
13657 * regex.c (regex_compile): Remove unused var.
13658
13659 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
13660
13661 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
13662 (Faccessible_keymaps, where_is_internal): Remove unused vars.
13663
13664 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
13665
13666 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
13667
13668 * fileio.c (Fwrite_region): Remove unused var.
13669
13670 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
13671 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
13672
13673 * composite.c (Fremove_list_of_text_properties): Declare.
13674
13675 * coding.c (inhibit_pre_post_conversion): Remove (unused).
13676 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
13677 (coding_inherit_eol_type): Remove unused attrs.
13678 (detect_coding): Cast arg of detect_eol.
13679
13680 * charset.c (syms_of_charset): Remove unused var p.
13681 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
13682 byte/char counts.
13683
13684 * casetab.c (set_case_table): Remove unused var.
13685
13686 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
13687 unused vars.
13688
136892008-02-01 Dave Love <fx@gnu.org>
13690
13691 * xterm.c (x_bitmap_mask): Declare.
13692
136932008-02-01 Dave Love <fx@gnu.org>
13694
13695 * xterm.c (x_term_init): Fix type error.
13696
13697 * lisp.h: Add Funibyte_char_to_multibyte.
13698
13699 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
13700 (Fset_coding_system_priority): Doc fix.
13701
13702 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
13703
13704 * indent.c (check_composition): Make start and end EMACS_INT.
13705
13706 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
13707
13708 * xdisp.c (handle_composition_prop, check_point_in_composition):
13709 Make buffer positions EMACS_INT.
13710
13711 * composite.c (find_composition, run_composition_function)
13712 (update_compositions, Ffind_composition_internal): Make buffer
13713 positions EMACS_INT.
13714
13715 * composite.h (find_composition, update_compositions): Make
13716 position args EMACS_INT.
13717
13718 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
13719
13720 * intervals.c (get_property_and_range):
13721 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
13722
13723 * unexalpha.c: Don't include varargs.h.
13724
137252008-02-01 Dave Love <fx@gnu.org>
13726
13727 * coding.h (ENCODE_UTF_8): New.
13728
13729 * Makefile.in (gtkutil.o): Depend on coding.h.
13730
13731 * coding.c (Fset_coding_system_priority): Doc fix.
13732
137332008-02-01 Kenichi Handa <handa@m17n.org>
13734
13735 * fileio.c (Finsert_file_contents): Call setup_coding_system in
13736 the case of auto saving.
13737
137382008-02-01 Andreas Schwab <schwab@suse.de>
13739
13740 * chartab.c (map_char_table, map_char_table_for_charset): Protect
13741 `range' from GC.
13742
137432008-02-01 Kenichi Handa <handa@m17n.org>
13744
13745 * coding.c (decode_coding_sjis): Check bytes more rigidly.
13746
137472008-02-01 Kenichi Handa <handa@m17n.org>
13748
13749 * fileio.c (choose_write_coding_system): Return a decided coding system.
13750 (Fwrite_region): Set Vlast_coding_system_used to the return value
13751 of choose_write_coding_system.
13752
137532008-02-01 Kenichi Handa <handa@m17n.org>
13754
13755 * charset.c (Fset_charset_priority): Pay attention to duplicated
13756 arguments.
13757
13758 * coding.c (QCcategory): New variable.
13759 (syms_of_coding): Defsym it. Set all elements of
13760 Vcoding_category_table and their symbol values.
13761 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
13762 coding-category-XXX, and coding-category-list.
13763 (Fdefine_coding_system_internal): Add category in the plist.
13764
137652008-02-01 Kenichi Handa <handa@m17n.org>
13766
13767 * callproc.c (Fcall_process): Handle carryover correctly.
13768
13769 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
13770 (raw_text_coding_system): Check NILP (coding_system).
13771 (coding_inherit_eol_type): Check NILP (coding_system) and
13772 NILP (parent).
13773 (consume_chars): Fix for the case of raw-text.
13774
13775 * process.c (read_process_output): Handle carryover correctly.
13776
137772008-02-01 Dave Love <fx@gnu.org>
13778
13779 * regex.c (re_search_2): Fix last change.
13780
137812008-02-01 Kenichi Handa <handa@m17n.org>
13782
13783 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
13784 target_multibyte. Even in a unibyte case, return a converted
13785 multibyte char.
13786 (GET_CHAR_AFTER): New macro.
13787 (PATFETCH): Translate via multibyte char.
13788 (HANDLE_UNIBYTE_RANGE): Delete this macro.
13789 (SETUP_MULTIBYTE_RANGE): New macro.
13790 (regex_compile): Setup compiled code so that its multibyteness
13791 matches that of a target. Fix the handling of "[X-YZ]" using
13792 SETUP_MULTIBYTE_RANGE.
13793 (analyse_first) <charset>: For filling fastmap for all multibyte
13794 characters, don't check by BASE_LEADING_CODE_P.
13795 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
13796 the same as RE_MULTIBYTE_P (bufp) now.
13797 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
13798 (TARGET_CHAR_AND_LENGTH): Delete this macro.
13799 (TRANSLATE_VIA_MULTIBYTE): New macro.
13800 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
13801 It is the same as RE_MULTIBYTE_P (bufp) now.
13802 <exactn>: Translate via multibyte.
13803 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
13804 translate it.
13805 <charset, charset_not>: Fetch a character by
13806 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
13807 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
13808 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
13809 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
13810 by GET_CHAR_AFTER.
13811 (bcmp_translate): Likewise.
13812
13813 * search.c (compile_pattern): Check the member target_multibyte,
13814 not the member multibyte of buf.
13815
13816 * lread.c (read1): While reading a string, set force_singlebyte
13817 and force_multibyte correctly.
13818
13819 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
13820 up of unibyte_to_multibyte_table.
13821
138222008-02-01 Kenichi Handa <handa@m17n.org>
13823
13824 * coding.c (setup_coding_system): If coding has
13825 post-read-conversion or pre-write-conversion, set
13826 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
13827 respectively.
13828 (decode_coding_gap): Run post-read-conversion if any.
13829
13830 * fileio.c (Finsert_file_contents): Even if we read into a
13831 unibyte buffer, check if we must decode the result or not.
13832
138332008-02-01 Kenichi Handa <handa@m17n.org>
13834
13835 * coding.c (make_conversion_work_buffer): Change the work buffer
13836 name to the same one as that of Emacs 21.
13837
138382008-02-01 Kenichi Handa <handa@m17n.org>
13839
13840 * coding.h (make_conversion_work_buffer): Adjust prototype.
13841 (code_conversion_restore): Don't extern it.
13842
13843 * coding.c (detected_mask): Delete unused variable.
13844 (decode_coding_iso_2022): Pay attention to the byte sequence of
13845 CTEXT extended segment, and retain those bytes as is.
13846 (decode_coding_ccl): Delete unused variable `valids'.
13847 (setup_coding_system): Delete unused variable `category'.
13848 (consume_chars): Delete unused variable `category'. Make it work
13849 for non-multibyte case.
13850 (make_conversion_work_buffer): Change argument.
13851 (saved_coding): Delete unused variable.
13852 (code_conversion_restore): Don't check saved_coding->destination.
13853 (code_conversion_save): New function.
13854 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
13855 instead of record_unwind_protect.
13856 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
13857 (detect_coding_system): Delete unused variable `mask'.
13858 (Fdefine_coding_system_internal): Delete unused variable id.
13859
13860 * fileio.c (kill_workbuf_unwind): New function.
13861 (Finsert_file_contents): On replacing, call
13862 make_conversion_work_buffer with correct args, and call
13863 record_unwind_protect with the first arg kill_workbuf_unwind.
13864
13865 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
13866
138672008-02-01 Kenichi Handa <handa@m17n.org>
13868
13869 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
13870 (fontset_add): Fix for the case that TO is less than TO1.
13871 (Ffontset_info): Don't use fallback fontset on checking the
13872 default fontset.
13873 (dump_fontset): New function for debugging.
13874
13875 * coding.c (Fdefine_coding_system_internal): Fix for the case that
13876 coding_type is Qcharset.
13877
138782008-02-01 Kenichi Handa <handa@m17n.org>
13879
13880 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
13881 (map_char_table): Don't inherit the value from the parent on
13882 initializing VAL. Adjust for the above change.
13883
138842008-02-01 Kenichi Handa <handa@m17n.org>
13885
13886 * coding.c (Qsignature, Qendian): Delete these variables.
13887 (syms_of_coding): Don't initialize them.
13888 (CATEGORY_MASK_UTF_16_AUTO): New macro.
13889 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
13890 detect_info->found.
13891 (decode_coding_utf_16): Don't detect BOM here.
13892 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
13893 is NOT utf_16_without_bom.
13894 (setup_coding_system): For a coding system of type utf-16, check
13895 if the attribute :endian is Qbig or not (not nil or not), and set
13896 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
13897 (detect_coding): If coding type is utf-16 and BOM detection is
13898 required, detect it.
13899 (Fdefine_coding_system_internal): For a coding system of type
13900 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
13901
139022008-02-01 Kenichi Handa <handa@m17n.org>
13903
13904 * coding.c (coding_set_source): Fix for the case that the current
13905 buffer is different from coding->src_object.
13906 (decode_coding_object): Don't use the conversion work buffer if
13907 DST_OBJECT is a buffer.
13908
139092008-02-01 Dave Love <fx@gnu.org>
13910
13911 * lread.c (read_emacs_mule_char) [len==2]: Index
13912 emacs_mule_charset correctly.
13913
139142008-02-01 Dave Love <fx@gnu.org>
13915
13916 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
13917 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
13918 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
13919 treated specially.)
13920 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
13921 (detected_mask): Remove Big5 bits.
13922
139232008-02-01 Kenichi Handa <handa@m17n.org>
13924
13925 The following changes are to make the font rescaling facility
13926 compatible with Emacs 21.
13927
13928 * xfaces.c (Vface_font_rescale_alist): Rename from
13929 Vface_resizing_fonts.
13930 (struct font_name): Rename member resizing_ratio to rescale_ratio.
13931 (font_rescale_ratio): Rename from font_resizing_ratio.
13932 (split_font_name): Set font->rescale_ratio.
13933 (better_font_p): Pay attention to font->rescale_ratio.
13934 (build_scalable_font_name): Likewise. Change RESX, and RESY
13935 fields.
13936 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
13937
139382008-02-01 Kenichi Handa <handa@m17n.org>
13939
13940 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
13941 (Qutf_16_le): Remove these variables.
13942 (syms_of_coding): Don't DEFSYM them.
13943 (decode_coding_utf_16): Fix handling of BOM.
13944 (encode_coding_utf_16): Fix handling of BOM.
13945
139462008-02-01 Kenichi Handa <handa@m17n.org>
13947
13948 * fileio.c (Finsert_file_contents): On replacing, before decoding
13949 the file into the work buffer, set point of the work buffer to the end.
13950
139512008-02-01 Dave Love <fx@gnu.org>
13952
13953 * coding.c (Fcheck_coding_systems_region): Fix type errors.
13954
139552008-02-01 Dave Love <fx@gnu.org>
13956
13957 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
13958 and fix C types.
13959
139602008-02-01 Kenichi Handa <handa@m17n.org>
13961
13962 * xdisp.c (SKIP_GLYPHS): New macro.
13963 (set_cursor_from_row): Pay attention to string display properties.
13964
13965 * category.c (copy_category_entry): Fix for the case that RANGE
13966 is an integer.
13967
13968 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
13969
13970 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
13971
139722008-02-01 Kenichi Handa <handa@m17n.org>
13973
13974 * charset.c (Fcharset_id_internal): New function.
13975 (syms_of_charset): Defsubr it.
13976
13977 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
13978 with the last arg charset_list acquired from coding.
13979 (Fdefine_coding_system_internal): For ccl-based coding system, fix
13980 the attribute coding_attr_ccl_valids.
13981
13982 * coding.h (enum define_coding_ccl_arg_index): Set the first
13983 member coding_arg_ccl_decoder to coding_arg_max.
13984
13985 * ccl.h (ccl_driver): Adjust prototype.
13986
13987 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
13988 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 13989 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
13990 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
13991 last arg Qnil.
13992
139932008-02-01 Kenichi Handa <handa@m17n.org>
13994
13995 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
13996 call encode_char.
13997
13998 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
13999
140002008-02-01 Dave Love <fx@gnu.org>
14001
14002 * composite.c (syms_of_composite): Make composition_hash_table weak.
14003
140042008-02-01 Kenichi Handa <handa@m17n.org>
14005
14006 * dispextern.h (check_face_attributes, generate_ascii_font_name)
14007 (font_name_registry): Don't extern them.
14008 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
14009
14010 * fontset.h (Qfontset): Don't extern it.
14011 (new_fontset_from_font_name): Extern it.
14012
14013 * fontset.c: Give 8 extra slots to fontset objects.
14014 (Qfontset_info): New variable.
14015 (syms_of_fontset): Defsym it.
14016 (FONTSET_FALLBACK): New macro.
14017 (fontset_face): Try also the default fontset.
14018 (make_fontset): Realize a fallback fontset from the default fontset.
14019 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
14020 using split_font_name_into_vector and build_font_name_from_vector.
14021 (Fset_fontset_font): Access the elements of font_spec by enum
14022 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
14023 name by using split_font_name_into_vector.
14024 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
14025 generate a proper font name from the fontset name. Update
14026 Vfontset_alias_alist.
14027 (n_auto_fontsets): New variable.
14028 (new_fontset_from_font_name): New function.
14029 (Ffont_info): Store the information about fonts generated from the
14030 default fontset in the first extra slot of the returned char-table.
14031
14032 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
14033 (font_name_registry): Delete function.
14034 (split_font_name_into_vector): New function.
14035 (build_font_name_from_vector): New function.
14036 (font_list): The argument REGISTRY is now a list of registry names.
14037 (choose_face_font): If we are choosing an ASCII font, and ATTRS
14038 specifies an explicit font name, return the name as is. Make a
14039 list of registy names.
14040
14041 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
14042 of x_new_fontset.
14043 (Fx_create_frame): Don't call x_new_fontset here. Just use
14044 x_list_fonts to check the existence of fonts.
14045
14046 * xterm.h (x_new_fontset): Adjust prototype.
14047
14048 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
14049 string. Use new_fontset_from_font_name to create a fontset from a
14050 font name.
14051
140522008-02-01 Kenichi Handa <handa@m17n.org>
14053
14054 * syntax.c (Vfind_word_boundary_function_table): New name for
14055 Vnext_word_boundary_function_table.
14056 (find-word-boundary-function-table): New name for
14057 next-word-boundary-function-table.
14058
140592008-02-01 Dave Love <fx@gnu.org>
14060
14061 * Makefile.in: Fix some dependencies.
14062
14063 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
14064 set it to nil before returning.
14065
14066 * composite.c (update_compositions): Fix type error.
14067
14068 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
14069
140702008-02-01 Kenichi Handa <handa@m17n.org>
14071
14072 * xterm.c (x_new_font): Optimize for the case that the font is
14073 already set for the frame.
14074
140752008-02-01 Kenichi Handa <handa@m17n.org>
14076
14077 * chartab.c (char_table_ascii): Check if the char table contents
14078 is sub-char-table or not.
14079 (char_table_set, char_table_set_range): Fix argument to
14080 char_table_ascii.
14081
14082 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
14083 (detect_coding_utf_8, detect_coding_utf_16)
14084 (detect_coding_emacs_mule, detect_coding_iso_2022)
14085 (detect_coding_sjis, detect_coding_big5)
14086 (detect_coding_ccl, detect_coding_charset): Change argument MASK
14087 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
14088 sequence is valid in this coding system. Change callers.
14089 (MAX_ANNOTATION_LENGTH): New macro.
14090 (ADD_ANNOTATION_DATA): New macro.
14091 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
14092 ADD_ANNOTATION_DATA. Change the format of annotation data.
14093 (ADD_CHARSET_DATA): New macro.
14094 (emacs_mule_char): New argument ID. Change callers.
14095 (decode_coding_emacs_mule, decode_coding_iso_2022)
14096 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14097 Produce charset annotation data in coding->charbuf.
14098 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
14099 to charset annotation data in coding->charbuf.
14100 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
14101 coding->common_flags if the coding system is iso-2022 based and
14102 uses designation.
14103 (produce_composition): Adjust for the new annotation data format.
14104 (produce_charset): New function.
14105 (produce_annotation): Handle charset annotation.
14106 (handle_composition_annotation, handle_charset_annotation): New
14107 functions.
14108 (consume_chars): Handle charset annotation. Utilize the above two
14109 functions.
14110 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
14111 buffer, get the deleted text as a string and set
14112 coding->src_object to that string.
14113 (detect_coding, detect_coding_system): Use the new struct
14114 coding_detection_info.
14115
14116 * coding.h (struct coding_detection_info): New structure.
14117 (struct coding_system): Adjust prototype of the member `detector'.
14118 (CODING_ANNOTATE_CHARSET_MASK): New macro.
14119
141202008-02-01 Kenichi Handa <handa@m17n.org>
14121
14122 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
14123
141242008-02-01 Dave Love <fx@gnu.org>
14125
14126 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
14127 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
14128 to new local and nullify apropos_accumulate before returning.
14129 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
14130
141312008-02-01 Kenichi Handa <handa@m17n.org>
14132
14133 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
14134 correctly.
e3eea1fc 14135
aac0c6e3
MR
141362008-02-01 Dave Love <fx@gnu.org>
14137
14138 * fns.c (Flanginfo): Call synchronize_system_time_locale.
14139
141402008-02-01 Kenichi Handa <handa@m17n.org>
14141
14142 The following changes are to make character composition happen
14143 automatically on displaying.
14144
14145 * Makefile.in (lisp, shortlisp): Add composite.elc.
14146
14147 * composite.h (Qauto_composed, Vauto_composition_function)
14148 (Qauto_composition_function): Extern them.
14149
14150 * composite.c (Vcomposition_function_table)
14151 (Qcomposition_function_table): Delete variables.
14152 (Qauto_composed, Vauto_composition_function)
14153 (Qauto_composition_function): New variables.
14154 (run_composition_function): Don't call
14155 compose-chars-after-function.
14156 (update_compositions): Clear `auto-composed' text property.
14157 (compose_chars_in_text): Delete this function.
14158 (syms_of_composite): Staticpro Qauto_composed and
14159 Qauto_composition_function. Declare Vauto_composition_function as
14160 a Lisp variable.
14161
14162 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
14163
14164 * xdisp.c (it_props): Add an entry for Qauto_composed.
14165 (handle_auto_composed_prop): New function.
14166
14167 * xselect.c (selection_data_to_lisp_data): Don't call
14168 compose_chars_in_text.
14169
141702008-02-01 Dave Love <fx@gnu.org>
14171
14172 * keyboard.c (read_char): Modify checking around use of
14173 Vkeyboard_translate_table.
14174
14175 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14176 and fix C types.
14177
141782008-02-01 Kenichi Handa <handa@m17n.org>
14179
14180 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
14181 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14182 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
14183 the case that the last byte is '\r' correctly.
14184 (decode_coding): Flush out the unprocessed data correctly.
14185 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
14186
141872008-02-01 Dave Love <fx@gnu.org>
14188
14189 * xterm.c (XTread_socket): Fix changes for defined keysyms.
14190 Add XK_ISO... case.
14191 (xaw_scroll_callback): Revert last change.
14192
141932008-02-01 Kenichi Handa <handa@m17n.org>
14194
14195 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
14196
141972008-02-01 Kenichi Handa <handa@m17n.org>
14198
14199 * xfaces.c (Vface_resizing_fonts): New variable.
14200 (struct font_name): New member `resizing_ratio'.
14201 (font_resizing_ratio): New function.
14202 (split_font_name): Set font->resizing_ratio.
14203 (better_font_p): Pay attention to font->resizing_ratio.
14204 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
14205 RESX, and RESY fields.
14206 (try_alternative_families): Try scalable fonts if
14207 Vscalable_fonts_allowed is not Qt.
14208 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
14209
142102008-02-01 Dave Love <fx@gnu.org>
14211
14212 * xterm.c (xaw_scroll_callback): Cast correctly.
14213
142142008-02-01 Dave Love <fx@gnu.org>
14215
14216 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
14217 (lispy_kana_keys): Comment out.
14218 (make_lispy_event) [XK_kana_A]: Comment out.
14219
14220 * xterm.c (xaw_scroll_callback): Cast call_data.
14221 (XTread_socket): Deal with ASCII keysyms.
14222 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
14223
142242008-02-01 Dave Love <fx@gnu.org>
14225
14226 * xterm.c (Vx_keysym_table): New.
14227 (syms_of_xterm): Initialize it.
14228 (XTread_socket): Use it.
14229 From head: Eliminate incorrect optimization that tried to avoid
14230 decoding the output of X*LookupString.
14231 (x_get_font_repertory): Delete charset declaration.
14232
142332008-02-01 Kenichi Handa <handa@m17n.org>
14234
14235 * coding.c (detect_coding_charset): If only ASCII bytes are found,
14236 return 0.
14237 (Fdefine_coding_system_internal): Setup
14238 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
14239
142402008-02-01 Dave Love <fx@gnu.org>
14241
14242 * coding.c (Fcheck_coding_system): Doc fix.
14243
14244 * editfns.c (Finsert_byte): Return a proper value.
14245
142462008-02-01 Kenichi Handa <handa@m17n.org>
14247
14248 * coding.c (decode_coding): Fix args to translate_chars. Pay
14249 attention to Vstandard_translation_table_for_decode.
14250 (encode_coding): Fix args to translate_chars. Pay attention to
14251 Vstandard_translation_table_for_encode.
14252
14253 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
14254 SINGLE_BYTE_CHAR_P.
14255
14256 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
14257 not by SINGLE_BYTE_CHAR_P.
14258
14259 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
14260 SINGLE_BYTE_CHAR_P.
14261
14262 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
14263 SINGLE_BYTE_CHAR_P.
14264
14265 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
14266 by SINGLE_BYTE_CHAR_P.
14267
14268 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
14269 SINGLE_BYTE_CHAR_P.
14270
142712008-02-01 Dave Love <fx@gnu.org>
14272
14273 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
14274
142752008-02-01 Dave Love <fx@gnu.org>
14276
14277 * fns.c (Flanginfo): Fix typo.
14278
14279 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
14280
142812008-02-01 Kenichi Handa <handa@m17n.org>
14282
14283 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
14284 (detect_coding_emacs_mule, detect_coding_iso_2022)
14285 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
14286 incomplete byte sequence. Don't update *mask when correctly detected.
14287 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
14288 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
14289 (detect_coding, detect_coding_system): Adjust for the changes above.
14290
142912008-02-01 Kenichi Handa <handa@m17n.org>
14292
14293 * character.c (char_string): Rename from
14294 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
14295 (string_char): Rename from string_char.
14296
14297 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
14298 if C is greater than MAX_3_BYTE_CHAR.
14299 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
14300 string_char instead of string_char_with_unification.
14301
143022008-02-01 Dave Love <fx@gnu.org>
14303
14304 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
14305
143062008-02-01 Kenichi Handa <handa@m17n.org>
14307
14308 * keymap.c (push_key_description): Pay attention to force_multibyte.
14309
14310 * regex.c (re_search_2): Fix for the case of unibyte buffer.
14311
143122008-02-01 Dave Love <fx@gnu.org>
14313
14314 * charset.c (define_charset_internal): Rename `supprementary'.
14315
14316 * Makefile.in (lisp, shortlisp): Remove latin-N.
14317
143182008-02-01 Dave Love <fx@gnu.org>
14319
14320 * xfns.c (x_window, x_window): Use use_xim.
14321
14322 * xterm.c (use_xim): Initialize.
14323 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
14324 (x_term_init): Maybe set use_xim.
14325
14326 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
14327
143282008-02-01 Kenichi Handa <handa@m17n.org>
14329
14330 * search.c (search_buffer): Fix case-fold-search of multibyte
14331 characters.
14332 (boyer_moore): Rename the last argument to char_high_bits.
14333
143342008-02-01 Kenichi Handa <handa@m17n.org>
14335
14336 * xdisp.c (display_string): Fix for the case of zero width glyph.
14337
14338 * xfns.c (x_set_font): Change the error message of the case that
14339 x_new_fontset returns Qt.
14340
14341 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
14342 (Finternal_set_lisp_face_attribute): Use signal_error for the
14343 error of invalid fontset.
14344
14345 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
14346 fontset, return Qt.
14347
143482008-02-01 Dave Love <fx@gnu.org>
14349
14350 * unexelf.c (unexec): Make .got handling not SGI-specific.
14351
14352 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
14353
14354 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
14355
14356 * keyboard.c (read_key_sequence): Fix type error.
14357
14358 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
14359 type error.
14360
14361 * fontset.c (fontset_add): Return Lisp_Object.
14362
143632008-02-01 Dave Love <fx@gnu.org>
14364
14365 * charset.h (charset_ordered_list_tick): Declare extern.
14366
143672008-02-01 Kenichi Handa <handa@m17n.org>
14368
14369 The following changes (and some of 2008-02-01 changes of mine) are
14370 for handling syntax, category, and case conversion for unibyte
14371 characters by converting them to multibyte on the fly. With these
14372 changes, we don't have to setup syntax and case tables for unibyte
14373 characters in each language environment.
14374
14375 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
14376 multibyte if necessary.
14377
14378 * bytecode.c (Fbyte_code): Likewise.
14379
14380 * character.h (LEADING_CODE_LATIN_1_MIN)
14381 (LEADING_CODE_LATIN_1_MAX): New macros.
14382 (unibyte_to_multibyte_table): Extern it.
14383 (unibyte_char_to_multibyte): New macro.
14384 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
14385 (CHAR_LEADING_CODE): New macro.
14386 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
14387
14388 * character.c (unibyte_to_multibyte_table): New variable.
14389 (unibyte_char_to_multibyte): Move to character.h and define as macro.
14390 (multibyte_char_to_unibyte): If C is an eight-bit character,
14391 convert it to the corresponding byte value.
14392
14393 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
14394 not 1, signals an error. Update the elements of
14395 unibyte_to_multibyte_table.
14396 (init_charset_once): Initialize unibyte_to_multibyte_table.
14397 (syms_of_charset): Define the charset `iso-8859-1'.
14398
14399 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
14400 as is without converting it to unibyte. In a unibyte buffer,
14401 convert C to multibyte before checking the syntax.
14402
14403 * lisp.h (unibyte_char_to_multibyte): Delete extern.
14404
14405 * minibuf.c (Fminibuffer_complete_word): Use the macro
14406 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
14407
14408 * regex.h (struct re_pattern_buffer): New member target_multibyte.
14409
14410 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
14411 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
14412 that is zero, convert an eight-bit char to multibyte.
14413 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
14414 non-emacs case.
14415 (PATFETCH): Convert an eight-bit char to multibyte.
14416 (HANDLE_UNIBYTE_RANGE): New macro.
14417 (regex_compile): Setup the compiled pattern for multibyte chars
14418 even if the given regex string is unibyte. Use PATFETCH_RAW
14419 instead of PATFETCH in many places. To handle `charset'
14420 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
14421 only for ASCII chars.
14422 (analyse_first) <exactn>: Simplify because the compiled pattern
14423 is multibyte.
14424 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
14425 <charset>: Use CHAR_LEADING_CODE to get leading codes.
14426 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
14427 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
14428 multibyte always 1.
14429 (re_search_2): In emacs, set the locale variable multibyte to 1,
14430 otherwise to 0. New local variable target_multibyte. Check it
14431 to decide the multibyteness of STR1 and STR2. If
14432 target_multibyte is zero, convert unibyte chars to multibyte
14433 before translating and checking fastmap.
14434 (TARGET_CHAR_AND_LENGTH): New macro.
14435 (re_match_2_internal): In emacs, set the locale variable multibyte
14436 to 1, otherwise to 0. New local variable target_multibyte. Check
14437 it to decide the multibyteness of STR1 and STR2. Use
14438 TARGET_CHAR_AND_LENGTH to fetch a character from D.
14439 <charset, charset_not>: If multibyte is nonzero, check fastmap
14440 only for ASCII chars. Call bcmp_translate with
14441 target_multibyte, not with multibyte.
14442 <begline>: Declare the local variable C as `unsigned'.
14443 (bcmp_translate): Change the last arg name to target_multibyte.
14444
14445 * search.c (compile_pattern_1): Don't adjust the multibyteness of
14446 the regexp pattern and the matching target. Set cp->buf.multibyte
14447 to the multibyteness of the regexp pattern. Set
14448 cp->but.target_multibyte to the multibyteness of the matching target.
14449 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
14450 FETCH_STRING_CHAR_ADVANCE.
14451 (Freplace_match): Convert unibyte chars to multibyte.
14452
14453 * syntax.c (char_quoted, back_comment, scan_words)
14454 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
14455 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
14456 unibyte chars to multibyte.
14457 (skip_chars): Delete the arg syntaxp, and move the code for
14458 handling syntaxes to skip_syntaxes. Change callers.
14459 Fix the case that the multibyteness of STRING and the current
14460 buffer doesn't match.
14461 (skip_syntaxes): New function.
14462 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
14463 SINGLE_BYTE_CHAR_P.
14464
144652008-02-01 Kenichi Handa <handa@m17n.org>
14466
14467 * xfaces.c (QCfontset): New variable.
14468 (LFACE_FONTSET): New macro.
14469 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
14470 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
14471 (Finternal_set_lisp_face_attribute)
14472 (Finternal_get_lisp_face_attribute): Handle QCfontset.
14473 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
14474 check also LFACE_FONTSET_INDEX.
14475 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
14476 attrs[LFACE_FONT_INDEX].
14477 (syms_of_xfaces): Intern and staticpro QCfontset.
14478
14479 * dispextern.h (enum lface_attribute_index): New member
14480 LFACE_FONTSET_INDEX.
14481
14482 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
14483
144842008-02-01 Kenichi Handa <handa@m17n.org>
14485
14486 * coding.c (coding_set_destination): Fix coding->destination for
14487 the case converting a region.
14488 (encode_coding_utf_8): Encode eight-bit chars as single byte.
14489 (encode_coding_object): Fix coding->dst_pos and
14490 coding->dst_pos_byte for the case converting a region.
14491
14492 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
14493
14494 * character.h (BYTE8_STRING): New macro.
14495
14496 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
14497
144982008-02-01 Kenichi Handa <handa@m17n.org>
14499
14500 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
14501 characters by octal form.
14502
14503 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
14504
14505 * buffer.h (_fetch_multibyte_char_len): Delete extern.
14506 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
14507 _fetch_multibyte_char_len.
14508 (FETCH_CHAR_AS_MULTIBYTE): New macro.
14509
14510 * casetab.c (set_canon, set_identity, shuffle): Simplify.
14511
14512 * casefiddle.c (casify_object): Simplify. Handle the case that
14513 the case conversion change the byte length.
14514 (casify_region): Likewise.
14515
14516 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
14517
14518 * character.c (_fetch_multibyte_char_len): Delete this variable.
14519 (syms_of_character): Setup Vprintable_chars.
14520
14521 * editfns.c (Fchar_equal): Fix for the unibyte case.
14522 (Finsert_byte): New function.
14523 (syms_of_editfns): Defsubr it.
14524
14525 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
14526 of direct code 0x3ffff.
14527
14528 * search.c (Freplace_match): Fix for the unibyte case.
14529
145302008-02-01 Kenichi Handa <handa@m17n.org>
14531
14532 * lread.c (safe_to_load_p): Fix the logic.
14533
14534 * syntax.c (scan_words): Don't treat characters belonging to
14535 different scripts as constituting a word.
14536
14537 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14538
14539 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
14540
14541 * emacs.c (main): In the case of --unibyte, instead of aborting on
14542 finding non-empty buffer, make it unibyte.
14543
145442008-02-01 Kenichi Handa <handa@m17n.org>
14545
14546 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
14547 to create a fontset.
14548
145492008-02-01 Dave Love <fx@gnu.org>
14550
14551 * character.c (Funibyte_char_to_multibyte): Doc fix.
14552
14553 * xfns.c [HAVE_STDLIB_H]: Fix last change.
14554
145552008-02-01 Kenichi Handa <handa@m17n.org>
14556
14557 * fontset.c (fontset_add): Make the type `int'.
14558 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
14559
14560 * character.c (unibyte_char_to_multibyte)
14561 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
14562 charset_unibyte, not charset_primary.
14563
14564 * charset.h (charset_unibyte): Extern it instead of charset_primary.
14565
14566 * charset.c (charset_unibyte): Rename from charset_primary.
14567 (Funibyte_charset): Rename from Fprimary_charset.
14568 (Fset_unibyte_charset): Rename from Fset_primary_charset.
14569 (syms_of_charset): Adjust for the above changes.
14570
14571 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
14572 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
14573 it->multibyte_p is zero.
14574
14575 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
14576 Delete extern.
14577
145782008-02-01 Kenichi Handa <handa@m17n.org>
14579
14580 * coding.c (Fdefine_coding_system_internal): Fix category setting
14581 for a coding system of type iso-2022.
14582
145832008-02-01 Kenichi Handa <handa@m17n.org>
14584
14585 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
14586
145872008-02-01 Kenichi Handa <handa@m17n.org>
14588
14589 * syntax.c (Vnext_word_boundary_function_table): New variable.
14590 (next-word-boundary-function-table): Declare it as a Lisp variable
14591 in syms_of_syntax.
14592 (scan_words): Call functions in Vnext_word_boundary_function_table
14593 if any.
14594
14595 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
14596
14597 * fontset.c (fs_load_font): If fontp->charset is not negative,
14598 return fontp without setting its members.
14599
146002008-02-01 Dave Love <fx@gnu.org>
14601
14602 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
14603
14604 * m/sparc.h (HAVE_ALLOCA): Delete.
14605
14606 * s/irix6-5.h: Don't include strings.h.
14607 (bcopy, bzero, bcmp): Don't undef.
14608
14609 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
14610
14611 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
14612 (TIOCSIGSEND): Don't test IRIX6.
14613 (bcopy, bzero, bcmp): Define conditionally.
14614
146152008-02-01 Kenichi Handa <handa@m17n.org>
14616
14617 * buffer.c (Qas, Qmake, Qto): New variables.
14618 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
14619 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
14620
14621 * callproc.c (Fcall_process): Don't call insert_1_both directly if
14622 we are inserting a process output into a multibyte buffer.
14623
14624 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
14625 multibyte_char_to_unibyte.
14626
14627 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
14628 by the primary charset, make it eight-bit char.
14629 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
14630
14631 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
14632 (charset_8_bit__control, charset_8_bit_graphic)
14633 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
14634 (define_charset_internal): New function.
14635 (syms_of_charset): Call define_charset_internal for pre-defined
14636 charsets.
14637
14638 * charset.h (charset_8_bit): Extern it.
14639
14640 * coding.c (make_conversion_work_buffer): Adjust for the change
14641 of Fset_buffer_multibyte.
14642 (encode_coding_raw_text): Increment p0 in the loop.
14643
14644 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
14645
14646 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
14647 for the change of Fset_buffer_multibyte.
14648
14649 * fns.c (Fstring_to_multibyte): New function.
14650 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
14651
146522008-02-01 Dave Love <fx@gnu.org>
14653
14654 * xfns.c (x_put_x_image): Declare args.
14655
14656 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
14657 (try_font_list): Declare an arg.
14658
14659 * xdisp.c (message2_nolog, set_message): Declare an arg.
14660
14661 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
14662
14663 * syntax.c (scan_sexps_forward): Declare an arg.
14664
14665 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
14666 Declare an arg.
14667
14668 * lisp.h (Fnew_fontset): Declare.
14669
14670 * keymap.c (push_key_description): Call CHARACTERP correctly.
14671
14672 * fontset.c (fontset_add): Declare args. Call make_number correctly.
14673 (face_for_char): Delete unused vars.
14674 (Fset_fontset_font): Doc fix. Delete unused vars.
14675
14676 * doc.c (Fsubstitute_command_keys): Delete unused vars.
14677
14678 * composite.c (update_compositions): Declare arg.
14679
14680 * cm.c (calccost, cmgoto): Declare args.
14681
14682 * charset.c: Remove `emacs' conditional. Doc fixes.
14683 (map_char_table_for_charset): Declare.
14684
14685 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
14686
14687 * ccl.c: Remove `emacs' conditional.
14688
146892008-02-01 Kenichi Handa <handa@m17n.org>
14690
14691 The following changes are to allow specifying multiple font
14692 patterns for a character range (specified by script or charset).
14693
14694 * Makefile.in (abbrev.o): Depend on syntax.h.
14695 (xfaces.o): Depend on charset.h.
14696
14697 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
14698 SINGLE_BYTE_CHAR_P.
14699
14700 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
14701
14702 * character.h (Vchar_script_table): Extern it.
14703
14704 * character.c (Vscript_alist): Delete.
14705 (Vchar_script_table, Qchar_script_table): New variable.
14706 (syms_of_character): Declare Vchar_script_table as a lisp variable
14707 and initialize it.
14708
14709 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
14710 have property char-table-extra-slots, make no extra slot.
14711
14712 * dispextern.h (struct face): Delete member `charset'.
14713 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
14714 SINGLE_BYTE_CHAR_P.
14715 (choose_face_font, lookup_non_ascii_face, font_name_registry):
14716 Add prototypes.
14717 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
14718 (generate_ascii_font_name): Rename from generate_ascii_font.
14719
14720 * fontset.h (get_font_repertory_func): New prototype.
14721 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
14722 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
14723
14724 * fontset.c (Qprepend, Qappend): New variables.
14725 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
14726 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
14727 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
14728 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
14729 (fontset_ref_and_range, fontset_add, reorder_font_vector)
14730 (load_font_get_repertory): New functions.
14731 (fontset_set): Delete.
14732 (fontset_face): New arg FACE. Return face ID, not face.
14733 Complete re-write to handle new fontset structure. Change caller.
14734 (free_face_fontset): Use ASET istead of AREF (X) = Y.
14735 (face_for_char): Don't call lookup_face.
14736 (make_fontset_for_ascii_face): New arg FACE.
14737 (fs_load_font): New arg CHARSET_ID. Don't check
14738 Vfont_encoding_alist here.
14739 (find_font_encoding): New function.
14740 (list_fontsets): Use STRINGP, not ! NILP.
14741 (accumulate_script_ranges): New function.
14742 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
14743 re-written to handle new fontset structure.
14744 (Ffontset_font): Return a copy of element.
14745 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
14746 docstring of font-encoding-alist.
14747
14748 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
14749 (Fset_fotset_font): Fix arguments to 5.
14750
14751 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
14752
14753 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
14754 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14755 (highlight_trailing_whitespace): Adjust for the change of
14756 lookup_named_face.
14757
14758 * xfaces.c: Include charset.h.
14759 (load_face_font): Delete argument C. Change caller.
14760 (generate_ascii_font_name): Rename from generate_ascii_font.
14761 (font_name_registry): New function.
14762 (cache_face): Store ascii faces before non-ascii faces in buckets.
14763 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
14764 Lookup only ascii faces.
14765 (lookup_non_ascii_face): New function.
14766 (lookup_named_face): Delete argument C. Change caller.
14767 (lookup_derived_face): Delete argument C. Change caller.
14768 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
14769 a string, just call font_list with it.
14770 (choose_face_font): Delete arguments FACE and C. New arg
14771 FONT_SPEC. Change caller.
14772 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
14773 Change caller.
14774 (realize_non_ascii_face): New function.
14775 (realize_x_face): Call load_face_font here.
14776 (realize_tty_face): Delete argument C. Change caller.
14777 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
14778 get a face ID.
14779 (dump_realized_face): Don't print charset of FACE.
14780
14781 * xfns.c (x_set_font): Always call x_new_fontset and
14782 store_frame_parameter.
14783 (Fx_create_frame): Call x_new_fontset, not x_new_font.
14784 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
14785
14786 * xterm.h (x_get_font_repertory): Extern it.
14787
14788 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
14789 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
14790 it->multibyte_p is zero.
14791 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14792 (x_new_fontset): If FONTSETNAME doesn't match any existing
14793 fontsets, create a new one.
14794 (x_get_font_repertory): New function.
14795
147962008-02-01 Kenichi Handa <handa@m17n.org>
14797
14798 * coding.c (Ffind_coding_systems_region_internal): Detect an
14799 ASCII only string correctly.
14800
14801 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
14802 version is 0.
14803
148042008-02-01 Kenichi Handa <handa@m17n.org>
14805
14806 * lread.c: Include "coding.h".
14807 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
14808 (load_each_byte, unread_char): New variables.
14809 (readchar_backlog): Delete.
14810 (readchar): Return a character unless load_each_byte is nonzero.
14811 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
14812 cons. If unread_char is not -1, simply return it.
14813 (unreadchar): Handle the case that readcharfun is
14814 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
14815 (read_multibyte): Delete.
14816 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
14817 (read_emacs_mule_char): New functions.
14818 (Fload): Even if the file doesn't have the extension ".elc", if
14819 safe_to_load_p returns a positive version number, assume that the
14820 file contains bytecompiled code. If the version is less than 22,
14821 load the file while decoding multibyte sequences by emacs-mule.
14822 (readevalloop): Don't use readchar_backlog.
14823 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
14824 (Fread_from_string): Pay attention to the case that STREAM is a cons.
14825 (read_escape): Delete the arg BYTEREP.
14826 (read1): Set load_each_byte to 1 temporarily while handling
14827 #@NUMBER. Don't call read_multibyte.
14828 (read_vector): Call Fread with a cons. If readcharfun is
14829 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
14830 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
14831 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
14832 and Qload_force_doc_strings.
14833
148342008-02-01 Kenichi Handa <handa@m17n.org>
14835
14836 * xdisp.c (face_before_or_after_it_pos): Call
14837 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
14838
148392008-02-01 Kenichi Handa <handa@m17n.org>
14840
14841 * character.h (TRAILING_CODE_P): New macro.
14842 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
14843 (string_char_with_unification): Fix prototype.
14844 (Vscript_alist): Extern it.
14845
14846 * character.c (Vscript_alist): New variable.
14847 (string_char_with_unification, str_as_unibyte)
14848 (string_escape_byte8): Add `const' to local variables.
14849 (syms_of_character): Declare script-alist as a Lisp variable.
14850
14851 * charset.h (Vcharset_ordered_list): Extern it.
14852 (charset_ordered_list_tick): Extern it.
14853 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
14854 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
14855 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
14856 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
14857 (Funify_charset): Adjust for the change of Funify_charset.
14858
14859 * charset.c (charset_ordered_list_tick): New variable.
14860 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
14861 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
14862 deunify intead of unify a charset.
14863 (string_xstring_p): Add `const' to local variables.
14864 (find_charsets_in_text): Add `const' to arguments and local variables.
14865 (encode_char): Adjust for the change of Funify_charset. Fix
14866 detecting of invalid code.
14867 (Fset_charset_priority): Increment charset_ordered_list_tick.
14868 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
14869 and TO_CODE.
14870
14871 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
14872 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
14873 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
14874 (decode_coding_ccl, consume_chars)
14875 (Ffind_coding_systems_region_internal)
14876 (Fcheck_coding_systems_region): Add `const' to local variables.
14877
14878 * print.c (print_object): Use octal form for printing the
14879 contents of a bool vector.
14880
148812008-02-01 Dave Love <fx@gnu.org>
14882
14883 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
14884 <version == 20>: Refuse to load.
14885
148862008-02-01 Dave Love <fx@gnu.org>
14887
14888 * fns.c: Move coding.h.
14889 (Qcodeset, Qdays, Qmonths): New.
14890 (concat): Use CHARACTERP instead of INTEGERP.
14891 (Flocale_codeset): Delete.
14892 (Flanginfo): New function.
14893 (syms_of_fns): Change accordingly.
14894
14895 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
14896
148972008-02-01 Dave Love <fx@gnu.org>
14898
14899 * casetab.c (init_casetab_once, init_casetab_once): Fix
14900 CHAR_TABLE_SET call.
14901
14902 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
14903
14904 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
14905
14906 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
14907 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
14908 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
14909
14910 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
14911
14912 * coding.c (ENCODE_DESIGNATION, decode_eol)
14913 (make_conversion_work_buffer, code_conversion_restore)
14914 (Fdefine_coding_system_internal): Convert Lisp types.
14915 (code_conversion_restore): Use EQ, not ==.
14916 (Fencode_coding_string): Fix code_convert_string call.
14917
14918 * coding.h (code_convert_region): Fix prototype.
14919
14920 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
14921
14922 * fontset.c (fontset_ref, fontset_set, fs_load_font)
14923 (Ffontset_info): Convert Lisp types.
14924
14925 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
14926
14927 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
14928
14929 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
14930
14931 * chartab.c: Include "...h", not <...h> in some cases.
14932
14933 * callproc.c (Fcall_process): Remove unused variables.
14934
149352008-02-01 Dave Love <fx@gnu.org>
14936
14937 * coding.c (Fset_coding_system_priority): Allow null arg list.
14938
149392008-02-01 Dave Love <fx@gnu.org>
14940
14941 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
14942 (Fself_insert_and_exit): Use CHARACTERP.
14943
14944 * callproc.c (Fcall_process): Remove unused vars.
14945
14946 * xterm.c (XTread_socket): Add extra dead keysyms.
14947
14948 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
14949
14950 * dispextern.h: Remove prototypes for redraw_frame,
14951 redraw_garbaged_frames.
14952
14953 * cmds.c (Fself_insert_command): Use CHARACTERP.
14954
14955 * chartab.c (make_sub_char_table): Remove unused var.
14956 (Fset_char_table_default, Fmap_char_table): Doc fix.
14957
14958 * keymap.c (access_keymap): Remove generic char code.
14959 (push_key_description): Use CHARACTERP.
14960
149612008-02-01 Dave Love <fx@gnu.org>
14962
14963 * charset.c: Doc fixes.
14964 (Funify_charset): Extra checking.
14965
149662008-02-01 Dave Love <fx@gnu.org>
14967
14968 * lread.c: Remove some unused variables.
14969 (safe_to_load_p): If safe, return the magic number version byte.
14970 (Fload): Maybe use load-with-code-conversion.
14971
149722008-02-01 Kenichi Handa <handa@m17n.org>
14973
14974 * category.c (Fmodify_category_entry): Don't modify the contents
14975 of category_set for characters out of the range. Avoid
14976 unnecessary modification.
14977
14978 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
14979 Vchar_unify_table. The default value of the table is now nil.
14980
14981 * character.c (syms_of_character): Setup Vchar_width_table for
14982 eight-bit-control and raw-byte chars.
14983
14984 * charset.h (enum define_charset_arg_index): Delete
14985 charset_arg_parents and add charset_arg_subset and
14986 charset_arg_superset.
14987 (enum charset_attr_index): Delete charset_parents and add
14988 charset_subset and charset_superset.
14989 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
14990 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
14991 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
14992 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
14993 (CHARSET_SUPERSET): New macros.
14994 (charset_work): Extern it.
14995 (ENCODE_CHAR): Use charset_work.
14996 (CHAR_CHARSET_P): Adjust for the change of encoder format.
14997 (map_charset_chars): Extern it.
14998
14999 * charset.c (load_charset_map): Set the default value of encoder
15000 and deunifier char-tables to nil.
15001 (map_charset_chars): Change argument. Change callers. Use
15002 map_char_table_for_charset instead of map_char_table.
15003 (Fmap_charset_chars): New optional args from_code and to_code.
15004 (Fdefine_charset_internal): Adjust for the change of
15005 `define-charset' (:parents -> :subset or :superset).
15006 (charset_work): New variable.
15007 (encode_char, syms_of_charset): Adjust for the change of
15008 Fdefine_charset_internal.
15009 (Ffind_charset_string): Setup the vector `charsets' correctly.
15010
15011 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
15012 the previous change.
15013 (char_table_ref_and_range): Adjust for the above change.
15014 (map_sub_char_table_for_charset): New function.
15015 (map_char_table_for_charset): New function.
15016
15017 * keymap.c (describe_vector): Handle a char-table directly here.
15018 (describe_char_table): Delete.
15019
15020 * lisp.h (map_charset_chars): Delete.
15021
150222008-02-01 Dave Love <fx@gnu.org>
15023
15024 * fns.c (count_combining): Comment out (unused).
15025 (Flocale_codeset): New.
15026 (syms_of_fns): Defsubr it.
15027
15028 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
15029 (size_t): Remove.
15030
150312008-02-01 Dave Love <fx@gnu.org>
15032
15033 * Makefile.in (chartab.o): Depend on charset.h.
15034
150352008-02-01 Kenichi Handa <handa@m17n.org>
15036
15037 * character.c (syms_of_character): Set the default value of
15038 Vprintable_chars to Qnil.
15039
150402008-02-01 Dave Love <fx@gnu.org>
15041
15042 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
15043
150442008-02-01 Kenichi Handa <handa@m17n.org>
15045
15046 * charset.c (load_charset_map): Handle the case that from < to
15047 correctly.
15048
15049 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
15050 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
15051 Pay attention to raw-8-bit chars.
15052
150532008-02-01 Kenichi Handa <handa@m17n.org>
15054
15055 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
15056 It is not bytecompiled now.
15057
15058 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
15059 (charset_jisx0208): New variables.
15060 (Fdefine_charset_internal): Setup them if appropriate.
15061 (init_charset_once): Initialize them to -1.
15062
15063 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
15064 (charset_jisx0208): Extern them.
15065
15066 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
15067 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
15068 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
15069 (setup_iso_safe_charsets): Fix arguments to Fassq.
15070 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
15071 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
15072 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
15073 (encode_coding_iso_2022): Change the 1st arg to
15074 ENCODE_ISO_CHARACTER to a variable.
15075
150762008-02-01 Kenichi Handa <handa@m17n.org>
15077
15078 * charset.h (enum define_charset_arg_index): New enums
15079 charset_arg_min_code and charset_arg_max_code.
15080 (struct charset): New member char_index_offset.
15081
15082 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
15083 Take charset->char_index_offset into account.
15084 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
15085 args[charset_arg_max_code]. Setup charset.char_index_offset.
15086 (syms_of_charset): Fix args to Fdefine_charset_internal.
15087
150882008-02-01 Dave Love <fx@gnu.org>
15089
15090 * coding.c (decode_coding_utf_8): Reject overlong sequences.
15091
150922008-02-01 Dave Love <fx@gnu.org>
15093
15094 * coding.c: Doc fixes.
15095 (Fcoding_system_aliases): Fix return value.
15096 (Qmac): Remove (duplicated) definition.
15097
150982008-02-01 Dave Love <fx@gnu.org>
15099
15100 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
15101 functions.
15102
15103 * character.c (Fstring): Doc fix.
15104
15105 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
15106
15107 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
15108 ids.
15109 (font-encoding-alist): Doc fix.
15110
151112008-02-01 Dave Love <fx@gnu.org>
15112
15113 * term.c (costs_set): Declare static, non-initialized for pcc.
15114 (encode_terminal_code): Remove unused var.
15115
15116 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
15117 for K&R.
15118
15119 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
15120
15121 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
15122 (suffixes): Move out of make_subsidiaries for K&R.
15123
15124 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
15125
15126 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
15127
151282008-02-01 Dave Love <fx@gnu.org>
15129
15130 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
15131
15132 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
15133
151342008-02-01 Yong Lu <lyongu@asia-infonet.com>
15135
15136 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
15137
15138 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
15139
151402008-02-01 Kenichi Handa <handa@m17n.org>
15141
15142 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
15143 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
15144
151452008-02-01 Kenichi Handa <handa@m17n.org>
15146
15147 * coding.c (decode_coding_charset): Adjust for the change of
15148 Fdefine_coding_system_internal.
15149 (Fdefine_coding_system_internal): For a coding system of
15150 `charset' type, store a list of charset IDs in
15151 `charset_attr_charset_valids' element of coding attributes.
15152
151532008-02-01 Kenichi Handa <handa@m17n.org>
15154
15155 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
15156 (emacs_mule_char): New arg src. Delete arg `composition'. Change
15157 caller. Handle 2-byte and 3-byte charsets correctly.
15158 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
15159 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
15160 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
15161 (DECODE_EMACS_MULE_21_COMPOSITION): Call
15162 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
15163 sequence.
15164 (decode_coding_emacs_mule): Handle composition correctly. Rewind
15165 `src' and `consumed_chars' correctly before calling emacs_mule_char.
15166 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
15167 and alt&rule composition.
15168 (decode_coding_iso_2022): Handle composition correctly.
15169 (init_coding_once): Setup emacs_mule_bytes for private charsets.
15170
15171 * charset.c (Fdefine_charset_internal): Fix bug for the case of
15172 re-defining a charset. If the charset has :emacs-mule-id, setup
15173 emacs_mule_bytes.
15174 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
15175
151762008-02-01 Kenichi Handa <handa@m17n.org>
15177
15178 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
15179 (encode_coding_big5, encode_coding_charset): If coding requires safe
15180 encoding, produce a character specified by
15181 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
15182
151832008-02-01 Dave Love <fx@gnu.org>
15184
15185 * xterm.c (XSetIMValues): Declare.
15186
15187 * process.c: Conditionally include sys/wait.h, pty.h.
15188
15189 * print.c (print_object): Fix print format for 64-bit systems.
15190
15191 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
15192
15193 * buffer.c (emacs_strerror): Declare.
15194
15195 * fontset.c (Fclear_face_cache): Declare.
15196 (accumulate_font_info): Comment-out (unused).
15197 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
15198 variables.
15199
15200 * character.h (string_escape_byte8): Declare.
15201
15202 * charset.c (load_charset_map, load_charset_map_from_file): Remove
15203 unused vars.
15204 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
15205 (Fmap_charset_chars): Doc fix.
15206
15207 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
15208 (Fset_coding_system_priority, Fset_coding_system_priority)
15209 (Fdefine_coding_system_internal): Doc fix.
15210
152112008-02-01 Dave Love <fx@gnu.org>
15212
15213 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
15214
152152008-02-01 Kenichi Handa <handa@m17n.org>
15216
15217 * character.c (string_escape_byte8): Make multibyte string with
15218 correct size.
15219
15220 * charset.c (Fmake_char): Delete unnecessary code.
15221
152222008-02-01 Kenichi Handa <handa@m17n.org>
15223
15224 * xfns.c (x_encode_text): Allocate coding.destination here, and
15225 call encode_coding_object with dst_object Qnil.
15226
15227 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
15228 multibyte form correctly.
15229
15230 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
15231 against Vfont_encoding_alist.
15232
15233 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
15234 handling of charset list.
15235 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
15236 (decode_coding_object): Move point to coding->dst_pos before
15237 calling post-read-conversion function.
15238 (encode_coding_object): Give correct arguments to
15239 pre-write-conversion. Ignore the return value of
15240 pre-write-conversion function. Pay attention to the case that
15241 pre-write-conversion changes the current buffer. If dst_object is
15242 Qt, even if coding->src_bytes is zero, allocate at least one byte
15243 to coding->destination.
15244
15245 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
15246
15247 * charset.c (Fmake_char): Make it more backward compatible.
15248 (Fmap_charset_chars): Fix docstring.
15249
152502008-02-01 Dave Love <fx@gnu.org>
15251
15252 * coding.c: Doc fixes.
15253 (Fdefine_coding_system_alias): Use names, not symbols, in
15254 coding-system-alist.
15255
152562008-02-01 Kenichi Handa <handa@m17n.org>
15257
15258 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
15259 of calling free_realized_face.
15260
152612008-02-01 Yong Lu <lyongu@asia-infonet.com>
15262
15263 * charset.c (read_hex): Don't treat SPC as a comment starter.
15264 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
15265 (Fdecode_char): Fix typo.
15266
152672008-02-01 Kenichi Handa <handa@m17n.org>
15268
15269 * charset.h (struct charset): New member `code_space_mask'.
15270
15271 * coding.c (coding_set_source): Delete the local variable beg_byte.
15272 (encode_coding_charset, Fdefine_coding_system_internal):
15273 Delete the local variable charset.
15274 (Fdefine_coding_system_internal): Setup
15275 attrs[coding_attr_charset_valids] correctly.
15276
15277 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
15278 member to check if CODE is valid or not.
15279 (Fdefine_charset_internal): Initialize `code_space_mask' member.
15280 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
15281 is within the range of charset->min_code and carset->max_code.
15282
152832008-02-01 Dave Love <fx@gnu.org>
15284
15285 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
15286
15287 * dispextern.h (generate_ascii_font): Fix return type.
15288
15289 * xfaces.c (generate_ascii_font): Fix arg declaration.
15290
15291 * coding.c (coding_inherit_eol_type)
15292 (Fset_terminal_coding_system_internal)
15293 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
15294
152952008-02-01 Kenichi Handa <handa@m17n.org>
15296
15297 * coding.c (decode_coding_charset, encode_coding_charset): Handle
15298 multiple charsets correctly.
15299
153002008-02-01 Kenichi Handa <handa@m17n.org>
15301
15302 * search.c (boyer_moore): Fix handling of multibyte character
15303 translation.
15304
15305 * xdisp.c (display_mode_element): When the variable `elt' is
15306 changed, update `this' and `lisp_string'.
15307
153082008-02-01 Kenichi Handa <handa@m17n.org>
15309
15310 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
15311
15312 * callproc.c (Fcall_process): Be sure to give the current buffer
15313 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
15314
15315 * charset.c (struct charset_map_entries): New struct.
15316 (load_charset_map): Rename from parse_charset_map. New args
15317 entries and n_entries. Change caller.
15318 (load_charset_map_from_file): Rename from load_charset_map.
15319 Change caller. New arg control_flag. Call load_charset_map at
15320 the tail.
15321 (load_charset_map_from_vector): New function.
15322 (Fdefine_charset_internal): Setup charset.compact_codes_p.
15323 (encode_char): If the charset is compact, change a character index
15324 to a code point.
15325
15326 * coding.c (coding_alloc_by_making_gap): Check the case that the
15327 source and destination are the same correctly.
15328 (decode_coding_raw_text): Set coding->consumed_char and
15329 coding->consumed to 0.
15330 (produce_chars): If coding->chars_at_source is nonzero, update
15331 coding->consumed_char and coding->consumed before calling
15332 alloc_destination.
15333 (Fdefine_coding_system_alias): Register ALIAS in
15334 Vcoding_system_alist.
15335 (syms_of_coding): Define `no-conversion' coding system at the tail.
15336
15337 * fileio.c (Finsert_file_contents): Set coding_system instead of
15338 val. If the current buffer is multibyte, always call
15339 decode_coding_gap.
15340
15341 * xfaces.c (try_font_list): Give higher priority to fontset's
15342 family than face's family.
15343
153442008-02-01 Kenichi Handa <handa@m17n.org>
15345
15346 * callproc.c (Fcall_process): Be sure to give the current buffer
15347 to decode_coding_c_string.
15348
15349 * xfaces.c (try_font_list): Give a family specified in a fontset
15350 higher priority than a family specified in a face.
15351
153522008-02-01 Kenichi Handa <handa@m17n.org>
15353
15354 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
15355 Fix arguments to insert_from_buffer.
15356
15357 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
15358
153592008-02-01 Kenichi Handa <handa@m17n.org>
15360
15361 * coding.c (produce_chars): Set the variable `multibytep' correctly.
15362 (decode_coding_gap): Set coding->dst_multibyte correctly.
15363
153642008-02-01 Kenichi Handa <handa@m17n.org>
15365
15366 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
15367 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
15368 (encode_coding_utf_16): Substitute coding->default_char for
15369 non-Unicode characters.
15370 (decode_coding): Don't call record_insert here.
15371 (setup_coding_system): Initialize `surrogate' of
15372 coding->spec.utf_16 to 0.
15373 (EMIT_ONE_BYTE): Fix for multibyte case.
15374
15375 * insdel.c (insert_from_gap): Call record_insert.
15376
153772008-02-01 Kenichi Handa <handa@m17n.org>
15378
15379 * casefiddle.c (casify_region): Fix multibyte case.
15380
15381 * character.c (c_string_width): Add return type `int'.
15382 (char_string_with_unification): Delete arg ADVANCED.
15383
15384 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
15385 (CHAR_STRING): Adjust for the change of char_string_with_unification.
15386 (CHAR_STRING_ADVANCE): Make it do-while statement.
15387
15388 * chartab.c (sub_char_table_set_range): Optimize for the case
15389 DEPTH == 3. Add workaround code for a GCC optimization bug.
15390
15391 * charset.c (parse_charset_map): Remove an unused variable.
15392
15393 * coding.c: Delete unused variables.
15394
15395 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
15396 earlier. If inserted is zero and the coding system doesn't
15397 require flushing, don't call decode_coding_gap.
15398
15399 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
15400
154012008-02-01 Kenichi Handa <handa@m17n.org>
15402
15403 The following changes are for using Unicode as an internal
15404 character model, and use UTF-8 format for buffer/string
15405 representation.
15406
15407 * .gdbinit (xchartable): Adjust for the change of char table structure.
15408 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
15409
15410 * Makefile.in (obj): Add character.o and chartab.o.
15411 (lisp, shortlisp): Remove utf-8.elc.
15412 (*.o): For many files, change dependency on charset.h to
15413 character.h, and add dependency on character.h.
15414 (character.o, chartab.o): New targets.
15415
15416 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
15417 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
15418 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
15419 of "charset.h".
15420
15421 * dired.c, filelock.c: Include "character.h".
15422
15423 * alloc.c: Include "character.h" instead of "charset.h".
15424 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
15425 (syms_of_alloc): Remove defsubr for Smake_char_table.
15426
15427 * buffer.c: Include "character.h" instead of "charset.h", don't
15428 include "coding.h".
15429 (Fset_buffer_multibyte): Adjust for UTF-8.
15430
15431 * buffer.h: EXFUN Fbuffer_live_p.
15432
15433 * callproc.c: Include "character.h" instead of "charset.h".
15434 (Fcall_process): Big change for the new code-conversion APIs.
15435
15436 * casetab.c: Include "character.h" instead of "charset.h".
15437 (set_canon, set_identity, shuffle): Adjust for the new
15438 map_char_table spec.
15439 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
15440 accessing the char table structure.
15441
15442 * chartab.c: New file that implements char table.
15443
15444 * category.c: Include "character.h".
15445 (copy_category_entry): New function.
15446 (copy_category_table): Call map_char_table and copy_category_entry.
15447 (Fmake_category_table): Initialize all top-level slots.
15448 (char_category_set): New function.
15449 (modify_lower_category_set): Delete.
15450 (Fmodify_category_entry): Call char_table_ref_and_range.
15451
15452 * category.h (CATEGORY_SET): Just call char_category_set.
15453
15454 * ccl.c: Include "character.h".
15455 (Qccl, Qcclp): New variables.
15456 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
15457 it's less than 256.
15458 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
15459 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
15460 and DST type.
15461 (ccl_driver): Change types of argument, adjust code accordingly.
15462 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
15463 ccl_driver.
15464 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
15465
15466 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
15467 New members src_multibyte, dst_multibyte, consumed, and produced.
15468 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
15469 (CODING_SPEC_CCL_PROGRAM): New macro.
15470 (ccl_driver): Update prototype.
15471 (Qccl, Qcclp, Fccl_program_p): Extern them.
15472 (CHECK_CCL_PROGRAM): New macro.
15473
15474 * character.c, character.h, chartab.c: New files.
15475
15476 * charset.c: Mostly re-written. Move character and multibyte sequence
15477 handling codes to character.c.
15478
15479 * charset.h: Mostly re-written. Move character and multibyte sequence
15480 handling codes to character.h.
15481
15482 * coding.c, coding.h: Mostly re-written.
15483
15484 * composite.c: Include "character.h" instead of "charset.h".
15485 (CHAR_WIDTH): Move to character.h.
15486 (HASH_KEY, HASH_VALUE): Delete.
15487
15488 * composite.h (enum composition_method): Change order of enumeration
15489 symbols.
15490
15491 * data.c: Include "character.h" instead of "charset.h".
15492 (Faref): Call CHAR_TABLE_REF for a char table.
15493 (Faset): Call CHAR_TABLE_SET for a char table.
15494
15495 * dispextern.h (free_realized_face, check_face_attribytes)
15496 (generate_ascii_font): Extern them.
15497 (free_realized_multibyte_face): Delete extern.
15498
15499 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
15500 table structure.
15501
15502 * editfns.c: Include "character.h" instead of "charset.h".
15503 (Fchar_to_string): Always call CHAR_STRING.
15504
15505 * emacs.c (main): Call init_charset_once, init_charset,
15506 syms_of_chartab, and syms_of_character.
15507
15508 * fileio.c: Include "character.h" instead of "charset.h".
15509 (Finsert_file_contents): Big change for the new code-conversion API.
15510 (choose_write_coding_system, Fwrite_region): Likewise.
15511 (build_annotations_2): Delete.
15512 (e_write): Big change for the new code-conversion API.
15513
15514 * fns.c: Include "character.h" instead of "charset.h".
15515 (copy_sub_char_table): Move to chartab.c.
15516 (Fcopy_sequence): Call copy_char_table for a char table.
15517 (concat): Delete codes calling count_multibyte.
15518 (string_char_to_byte, string_byte_to_char): Adjust for the new
15519 multibyte form.
15520 (internal_equal): Adjust for the change of char table structure.
15521 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
15522 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
15523 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
15524 (char_table_translate, optimize_sub_char_table)
15525 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
15526 chartab.c.
15527 (char_table_ref_and_index): Delete.
15528 (HASH_KEY, HASH_VALUE): Move to lisp.h.
15529 (Fmd5): Call preferred_coding_system instead of accessing
15530 Vcoding_category_list. Adjust for the new code-conversion API.
15531 (syms_of_fns): Move defsubr for char table related functions to
15532 chartab.c.
15533
15534 * fontset.c: Mostly re-written.
15535
15536 * fontset.h (struct font_info): Change type of the member encoding_type.
15537 (enum FONT_SPEC_INDEX): New enum.
15538 (fontset_font_pattern, fs_load_font): Update prototype.
15539 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
15540
15541 * indent.c: Include "character.h" instead of "charset.h".
15542 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
15543
15544 * insdel.c: Include "character.h" instead of "charset.h".
15545 (copy_text): Don't refer to Vnonascii_translation_table.
15546 (insert_from_gap): New function.
15547
15548 * keyboard.c: Include "character.h" instead of "charset.h".
15549 (command_loop_1): Never call direct_output_forward_char before
15550 a non-ASCII character.
15551 (read_char): If Vkeyboard_translate_table is a char table, always
15552 translate a character.
15553
15554 * keymap.c: Include "character.h".
15555 (store_in_keymap): Handle the case that IDX is a cons.
15556 (Fdefine_key): Handle the case that KEY is a cons and the car part
15557 is also a cons (range).
15558 (push_key_description): Adjust for the new character code.
15559 (describe_vector): Call describe_char_table for a char table.
15560 (describe_char_table): New function.
15561
15562 * keymap.h (describe_char_table): Extern it.
15563
15564 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
15565 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
15566 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
15567 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
15568 Delete.
15569 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
15570 structure.
15571 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
15572 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
15573 (CHARTAB_SIZE_BITS_3): New macros.
15574 (chartab_size): Extern it.
15575 (struct Lisp_Char_Table): Re-design.
15576 (struct Lisp_Sub_Char_Table): New structure.
15577 (HASH_KEY, HASH_VALUE): Move from fns.c.
15578 (CHARACTERBITS): Define as 22.
15579 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
15580 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
15581 (GC_SUB_CHAR_TABLE_P): New macro.
15582 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
15583 (code_convert_string_norecord): Deleted extern.
15584 (init_character_once, syms_of_character, init_charset)
15585 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
15586
15587 * lread.c: Include "character.h".
15588 (read_multibyte): New arg NBYTES.
15589 (read_escape): Change the meaning of returned *BYTEREP.
15590 (to_multibyte): Delete.
15591 (read1): Adjust the handling of char table and string.
15592
15593 * print.c: Include "character.h" instead of "charset.h".
15594 (print_string): Convert 8-bit raw bytes to octal form by
15595 string_escape_byte8.
15596 (print_object): Adjust for the new multibyte form. Print 8-bit
15597 raw bytes always in octal form. Handle sub char table correctly.
15598
15599 * process.c: Include "character.h" instead of "charset.h".
15600 (read_process_output, send_process): Adjust for the new
15601 code-conversion API.
15602
15603 * puresize.h (BASE_PURESIZE): Increase.
15604
15605 * regex.c: Include "character.h" instead of "charset.h".
15606 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
15607 (regex_compile): Accept a range whose starting and ending
15608 character have different leading bytes.
15609 (analyse_first): Adjust for the above change.
15610
15611 * search.c: Include "character.h" instead of "charset.h".
15612 (search_buffer, boyer_moore): Adjust for the new multibyte form.
15613 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
15614
15615 * syntax.c: Include "character.h" instead of "charset.h".
15616 (syntax_parent_lookup): Delete.
15617 (Fmodify_syntax_entry): Accept a cons as CHAR.
15618 (skip_chars): Adjust for the new multibyte form.
15619 (init_syntax_once): Call char_table_set_range instead of directly
15620 accessing the structure of a char table.
15621
15622 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
15623 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
15624 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
15625 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
15626
15627 * term.c: Include "buffer.h" and "character.h".
15628 (encode_terminal_code, write_glyphs): Adjust for the new
15629 code-conversion API.
15630 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
15631
15632 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
15633
15634 * xdisp.c: Include "character.h".
15635 (get_next_display_element): Adjust for the new multibyte form.
15636 (disp_char_vector): Adjust for the new char table structure.
15637 (decode_mode_spec_coding): Adjust for the new structure of
15638 coding system.
15639 (decode_mode_spec): Adjust for the new code-conversion API.
15640
15641 * xfaces.c: Include "character.h" instead of "charset.h".
15642 (load_face_font): Adjust for the change of choose_face_font and
15643 FS_LOAD_FONT.
15644 (generate_ascii_font): New function.
15645 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
15646 (set_font_frame_param): Adjust for the change of choose_face_font.
15647 (free_realized_face): Make it public.
15648 (free_realized_faces_for_fontset): Rename from
15649 free_realized_multibyte_face. Free also faces realized for ASCII.
15650 (choose_face_font): Change arguments. Adjust for the change of
15651 fontset_font_pattern and FS_LOAD_FONT.
15652
15653 * xfns.c: Include "character.h".
15654 (x_encode_text): Adjust for the new code-conversion API.
15655
15656 * xselect.c: Don't include "charset.h".
15657 (selection_data_to_lisp_data): Adjust for the new code conversion API.
15658
15659 * xterm.c: Include "character.h".
15660 (x_encode_char): New argument CHARSET. Change caller.
15661 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
15662 Call ENCODE_CHAR instead of SPLIT_CHAR.
15663 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
15664 CHAR_WIDTH instead of CHARSET_WIDTH.
15665 (XTread_socket): Adjust for the new code-conversion API.
15666 (x_new_font): Adjust for the change of FS_LOAD_FONT.
15667 (x_load_font): Adjust for the change of struct font.
15668
156692008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15670
15671 * xfaces.c (face_at_buffer_position): Remove unused vars.
15672
156732008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15674
15675 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
15676 Fix overflow checking.
15677
156782008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15679
15680 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
15681 Cancel previous change.
15682
156832008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
15684
15685 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
15686 ccl->eight_bit_control. Fix check for buffer overflow.
15687 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
15688 (ccl_driver): Initialize extra_bytes to 0.
15689
156902008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
15691
15692 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
15693 return it ORed with ctrl_modifier.
15694
156952008-01-29 Miles Bader <miles@gnu.org>
15696
15697 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
15698
156992008-01-28 Jason Rumney <jasonr@gnu.org>
15700
15701 * w32.c (stat): Don't double check for networked drive.
15702
157032008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
15704
15705 * window.c (run_window_configuration_change_hook): New function.
15706 Code extracted from set_window_buffer. Set the selected frame.
15707 (set_window_buffer): Use it.
15708 * window.h (run_window_configuration_change_hook): Declare.
15709 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
15710
15711 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
15712
157132008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
15714
15715 * Makefile.in: Remove references to unused macros.
15716
157172008-01-26 Eli Zaretskii <eliz@gnu.org>
15718
15719 * w32.c (g_b_init_get_sid_sub_authority)
15720 (g_b_init_get_sid_sub_authority_count): New static variables.
15721 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
15722 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
15723 (init_user_info): Use them to retrieve uid and gid.
15724 Use 500/513, the Windows defaults, as Administrator's uid/gid.
15725 (fstat): Use pw_uid and pw_gid from the_passwd structure for
15726 st_uid and st_gid of the file.
15727
157282008-01-26 Jason Rumney <jasonr@gnu.org>
15729
15730 * w32.c (logon_network_drive): New function.
15731 (stat): Use it.
15732
157332008-01-26 Chong Yidong <cyd@stupidchicken.com>
15734
15735 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
15736 invisible text covered with an ellipsis.
15737
157382008-01-25 Richard Stallman <rms@gnu.org>
15739
15740 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
15741 jump back to beginning. Move some other initializations after that.
15742 (Qwindow_text_change_functions, Vwindow_text_change_functions):
15743 New variables.
15744 (syms_of_xdisp): Init them.
15745
15746 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
15747
15748 * buffer.c (reset_buffer_local_variables):
15749 Implement `permanent-local-hook'.
15750 (Qpermanent_local_hook): New variable.
15751 (syms_of_buffer): Init and staticpro it.
15752
157532008-01-25 Michael Albinus <michael.albinus@gmx.de>
15754
15755 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
15756
157572008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
15758
15759 * fns.c (Fclrhash): Return TABLE.
15760
157612008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15762
15763 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
15764 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
15765 is set even without positional changes.
15766 (x_scroll_bar_clear): Set bar->redraw_needed_p.
15767
15768 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
15769
157702008-01-23 Jason Rumney <jasonr@gnu.org>
15771
15772 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
15773
15774 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
15775 the unicode range available in MULE by locale-coding-system.
15776 Improve dbcs lead byte detection. Set event timestamp and modifiers
15777 earlier.
15778
157792008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15780
15781 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
15782 [MAC_OSX] (init_mac_osx_environment): Initialize it.
15783 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
15784 when used on child processes.
15785
157862008-01-21 Michael Albinus <michael.albinus@gmx.de>
15787
15788 * dbusbind.c (Fdbus_method_return_internal): Rename from
15789 Fdbus_method_return.
15790 (Fdbus_unregister_object): Move to dbus.el.
15791 (Fdbus_call_method, Fdbus_method_return_internal)
15792 (Fdbus_send_signal): Improve debug messages.
15793
157942008-01-20 Martin Rudalics <rudalics@gmx.at>
15795
15796 * undo.c (undo_inhibit_record_point): New variable.
15797 (syms_of_undo): Initialize it.
15798 (record_point): Don't record point when undo_inhibit_record_point
15799 is set.
15800
158012008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
15802
15803 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
15804
15805 * xdisp.c (Qauto_hscroll_mode): New var.
15806 (syms_of_xdisp): Initialize it.
15807 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
15808 window's buffer.
15809 (hscroll_windows): Don't check automatic_hscrolling_p here.
15810
15811 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
15812 vscroll if we're setting window-buffer to the value it already has.
15813
158142008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
15815
15816 * m/intel386.h: Remove references to XENIX.
15817
158182008-01-17 Andreas Schwab <schwab@suse.de>
15819
15820 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
15821 instead of HAVE_X86_64_LIB64_DIR.
15822 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
15823
158242008-01-17 Glenn Morris <rgm@gnu.org>
15825
15826 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
15827 to HAVE_X86_64_LIB64_DIR.
15828
158292008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
15830
15831 * s/irix3-3.h:
15832 * s/irix4-0.h:
15833 * s/386-ix.h:
15834 * s/domain.h:
15835 * s/hpux9-x11r4.h:
15836 * s/hpux9shxr4.h: Remove files for systems no longer supported.
15837
15838 * sysdep.c: Remove code containing references to symbols defined
15839 by unsupported systems.
15840
158412008-01-16 Glenn Morris <rgm@gnu.org>
15842
15843 * coding.c (select-safe-coding-system-function): Doc fix.
15844
158452008-01-15 Glenn Morris <rgm@gnu.org>
15846
15847 * config.in: Revert 2008-01-13 change: this is a generated file.
15848
158492008-01-13 Tom Tromey <tromey@redhat.com>
15850
15851 * lisp.h: Fix typo.
15852
158532008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
15854
15855 * m/sequent-ptx.h:
15856 * m/sequent.h:
15857 * s/ptx.h:
15858 * s/ptx4-2.h:
15859 * s/ptx4.h: Remove files for systems no longer supported.
15860
15861 * callproc.c (Fcall_process): Fix previous change.
15862
158632008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
15864
15865 * unexsunos4.c: Remove file, system not supported anymore.
15866
15867 * m/mips.h:
15868 * m/intel386.h:
15869 * callproc.c:
15870 * config.in:
15871 * ecrt0.c:
15872 * emacs.c:
15873 * fileio.c:
15874 * frame.c:
15875 * getpagesize.h:
15876 * keyboard.c:
15877 * lread.c:
15878 * process.c:
15879 * puresize.h:
15880 * sysdep.c:
15881 * systty.h:
15882 * syswait.h:
15883 * unexec.c:
15884 * xdisp.c:
15885 * alloc.c: Remove code containing references to symbols defined by
15886 unsupported systems.
15887
158882008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
15889
15890 * coding.c (detect_coding_mask): Fix previous change.
15891
158922008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
15893
15894 * coding.c (detect_coding_iso2022): New arg
15895 latin_extra_code_state. Allow Latin extra codes only
15896 when *latin_extra_code_state is nonzero.
15897 (detect_coding_mask): If there is a NULL byte, detect the encoding
15898 as UTF-16 or binary. If Latin extra codes exist, detect the
15899 encoding as ISO-2022 only when there's no other proper encoding is
15900 found.
15901
159022008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15903
15904 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
15905 #ifdef MAC_OS.
15906
159072008-01-08 Richard Stallman <rms@gnu.org>
15908
15909 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
15910
159112008-01-06 Nick Roberts <nickrob@snap.net.nz>
15912
15913 * keyboard.c (parse_menu_item): Don't enclose key bindings on
15914 menu bar in parentheses.
15915
159162008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
15917
15918 * m/7300.h:
15919 * m/acorn.h:
15920 * m/alliant-2800.h:
15921 * m/alliant.h:
15922 * m/alliant1.h:
15923 * m/alliant4.h:
15924 * m/altos.h:
15925 * m/amdahl.h:
15926 * m/apollo.h:
15927 * m/att3b.h:
15928 * m/aviion-intel.h:
15929 * m/aviion.h:
15930 * m/celerity.h:
15931 * m/clipper.h:
15932 * m/cnvrgnt.h:
15933 * m/convex.h:
15934 * m/cydra5.h:
15935 * m/delta88k.h:
15936 * m/dpx2.h:
15937 * m/dual.h:
15938 * m/elxsi.h:
15939 * m/f301.h:
15940 * m/gould-np1.h:
15941 * m/gould.h:
15942 * m/i860.h:
15943 * m/ibmps2-aix.h:
15944 * m/ibmrt-aix.h:
15945 * m/ibmrt.h:
15946 * m/irist.h:
15947 * m/is386.h:
15948 * m/isi-ov.h:
15949 * m/mega68.h:
15950 * m/mg1.h:
15951 * m/news-r6.h:
15952 * m/news-risc.h:
15953 * m/news.h:
15954 * m/nh3000.h:
15955 * m/nh4000.h:
15956 * m/ns16000.h:
15957 * m/ns32000.h:
15958 * m/nu.h:
15959 * m/orion.h:
15960 * m/orion105.h:
15961 * m/paragon.h:
15962 * m/pfa50.h:
15963 * m/plexus.h:
15964 * m/pyramid.h:
15965 * m/pyrmips.h:
15966 * m/sh3el.h:
15967 * m/sps7.h:
15968 * m/sr2k.h:
15969 * m/stride.h:
15970 * m/sun1.h:
15971 * m/sun2.h:
15972 * m/sun3-68881.h:
15973 * m/sun3-fpa.h:
15974 * m/sun3-soft.h:
15975 * m/sun3.h:
15976 * m/sun386.h:
15977 * m/symmetry.h:
15978 * m/tad68k.h:
15979 * m/tahoe.h:
15980 * m/targon31.h:
15981 * m/tek4300.h:
15982 * m/tekxd88.h:
15983 * m/tower32.h:
15984 * m/tower32v3.h:
15985 * m/ustation.h:
15986 * m/wicat.h:
15987 * m/xps100.h:
15988 * s/cxux.h:
15989 * s/cxux7.h:
15990 * s/dgux.h:
15991 * s/dgux4.h:
15992 * s/dgux5-4-3.h:
15993 * s/dgux5-4r2.h:
15994 * s/esix.h:
15995 * s/esix5r4.h:
15996 * s/hiuxmpp.h:
15997 * s/hiuxwe2.h:
15998 * s/iris3-5.h:
15999 * s/iris3-6.h:
16000 * s/isc2-2.h:
16001 * s/isc3-0.h:
16002 * s/isc4-0.h:
16003 * s/isc4-1.h:
16004 * s/newsos5.h:
16005 * s/newsos6.h:
16006 * s/osf1.h:
16007 * s/osf5-0.h:
16008 * s/riscix1-1.h:
16009 * s/riscix12.h:
16010 * s/sco4.h:
16011 * s/sco5.h:
16012 * s/sunos4-0.h:
16013 * s/sunos4-1.h:
16014 * s/sunos413.h:
16015 * s/sunos4shr.h:
16016 * s/umax.h:
16017 * s/unipl5-2.h:
16018 * s/xenix.h:
16019 * cxux-crt0.s:
16020 * unexapollo.c:
16021 * unexconvex.c:
16022 * unexenix.c:
16023 * unexsni.c: Remove files for systems no longer supported.
16024
16025 * m/intel386.h: Remove references to unsupported systems.
16026
16027 * w32.c (get_emacs_configuration): Remove reference to i860.
16028
16029 * sysdep.c: Remove dead code.
16030
160312008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
16032
16033 * s/rtu.h:
16034 * m/masscomp.h: Remove files. Platform is obsolete.
16035
160362008-01-04 Michael Albinus <michael.albinus@gmx.de>
16037
16038 * dbusbind.c (Fdbus_method_return): New function.
16039 (xd_read_message): Add the serial number to the event.
16040 (Fdbus_register_method): Activate the function.
16041
160422008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
16043
16044 * keyboard.c (read_key_sequence): Fix typo.
16045
160462008-01-03 Michael Albinus <michael.albinus@gmx.de>
16047
16048 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
16049 (xd_signature, xd_append_arg): Handle element type detection for
16050 empty arrays.
16051 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
16052 SDATA () calls; this must be solved more general.
16053 (Fdbus_register_signal): Use SBYTES instead of strlen.
16054
160552008-01-03 Magnus Henoch <magnus@zemdatav>
16056
16057 * dbusbind.c (xd_append_arg): Use unsigned char instead of
16058 unsigned int for byte values (necessary for big-endian platform).
16059 (Fdbus_call_method): Handle the case of no returned arguments.
16060
160612007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
16062
16063 * dbusbind.c (xd_read_message): Use non-static input_event struct.
16064
160652007-12-31 Magnus Henoch <mange@freemail.hu>
16066
16067 * dbusbind.c (xd_signature): Signature of variant is just "v".
16068
160692007-12-30 Michael Albinus <michael.albinus@gmx.de>
16070
16071 * dbusbind.c: Fix several errors and compiler warnings.
16072 Reported by Tom Tromey <tromey@redhat.com>.
16073 (XD_ERROR, XD_DEBUG_MESSAGE)
16074 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
16075 (xd_append_arg): Part for basic D-Bus types rewritten.
16076 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
16077 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
16078 appropriate.
16079 (xd_read_message): Return Qnil. Don't signal an error; it is not
16080 useful during event reading.
16081 (Fdbus_register_signal): Signal an error if the check for
16082 FUNCTIONP fails.
16083 (Fdbus_register_method): New function. The implementation is not
16084 complete, the call of the function signals an error therefore.
16085 (Fdbus_unregister_object): New function, renamed from
16086 Fdbus_unregister_signal. The initial check signals an error, if
16087 the object is not well formed.
16088
160892007-12-30 Richard Stallman <rms@gnu.org>
16090
16091 * textprop.c (get_char_property_and_overlay):
16092 Signal error if POSITION is out of range in a buffer.
16093
160942007-12-29 Martin Rudalics <rudalics@gmx.at>
16095
16096 * w32fns.c (Fx_create_frame): Make copy of frame parameters
16097 because the original parameters are in pure storage now.
16098
160992007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16100
16101 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
16102
161032007-12-22 Eli Zaretskii <eliz@gnu.org>
16104
16105 * callint.c (syms_of_callint) <command-history>: Add reference to
16106 history-length in the doc string.
16107
161082007-12-17 Jason Rumney <jasonr@gnu.org>
16109
16110 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
16111 before passing as wParam.
16112
161132007-12-22 Michael Albinus <michael.albinus@gmx.de>
16114
16115 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
16116 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
16117 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
16118 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
16119 as number.
16120 (Fdbus_call_method): Fix docstring.
16121
161222007-12-21 Michael Albinus <michael.albinus@gmx.de>
16123
16124 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
16125 New macros.
16126 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
16127 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
16128 Simplify.
16129 (xd_signature): New function.
16130 (xd_append_arg): Compute also signatures. Major rewrite.
16131 (xd_retrieve_arg): Make debug messages friendly.
16132 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
16133 Check for signatures of arguments.
16134
161352007-12-19 Michael Albinus <michael.albinus@gmx.de>
16136
16137 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
16138 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
16139 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
16140 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
16141 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
16142 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
16143 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
16144 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
16145 (xd_retrieve_value): Remove. Functionality included in ...
16146 (xd_append_arg): New function.
16147 (Fdbus_call_method, Fdbus_send_signal): Apply it.
16148
161492007-12-16 Michael Albinus <michael.albinus@gmx.de>
16150
16151 * dbusbind.c (top): Include <stdio.h>.
16152 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
16153 dbus_message_new_method_call and dbus_message_new_signal.
16154 (Fdbus_register_signal): Rename unique_name to uname.
16155 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
16156 non-existing unique name. Fix typos in matching rule. Return an
16157 object which is useful in Fdbus_unregister_signal.
16158 (Fdbus_unregister_signal): Reimplementation, in order to remove
16159 only the corresponding entry.
16160 (Vdbus_registered_functions_table): Change the order of entries.
16161 Apply these changes in xd_read_message and Fdbus_register_signal.
16162
161632007-12-16 Andreas Schwab <schwab@suse.de>
16164
16165 * fileio.c (Finsert_file_contents): Fix overflow check to not
16166 depend on undefined integer overflow.
16167
161682007-12-14 Jason Rumney <jasonr@gnu.org>
16169
16170 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
16171 for characters above 127.
16172
161732007-12-13 Jason Rumney <jasonr@gnu.org>
16174
16175 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
16176 before dereferencing array.
16177 (lookup_vk_code): Remove zero comparison.
16178
161792007-12-14 Michael Albinus <michael.albinus@gmx.de>
16180
16181 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
16182 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
16183 Use `unsigned int' instead of `uint'.
16184 (xd_read_message, Fdbus_register_signal): Split expressions into
16185 multiple lines before operators "&&" and "||", according to the
16186 GNU Coding Standards.
16187
161882007-12-14 Eli Zaretskii <eliz@gnu.org>
16189
16190 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
16191
161922007-12-12 Juri Linkov <juri@jurta.org>
16193
16194 * buffer.c (Frename_buffer): In interactive spec replace
16195 `read-buffer' with `read-string' that uses `buffer-name-history'
16196 as history, and the current buffer's name as default.
16197
161982007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
16199
16200 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
16201 manipulating the backtrace manually.
16202 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
16203 (struct backtrace, backtrace_list): Remove.
16204 (command_loop_1): Remove dead var `no_direct'.
16205
16206 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
16207 preserve non-built-in buffer-local variables.
16208 (Fkill_all_local_variables): Don't re-create&re-set permanent
16209 buffer-local variables.
16210
162112007-12-09 Juri Linkov <juri@jurta.org>
16212
16213 * buffer.c (Frename_buffer): Change interactive spec from "s" to
16214 Lisp code that uses `read-buffer' with current buffer as default.
16215
162162007-12-08 Michael Albinus <michael.albinus@gmx.de>
16217
16218 * dbusbind.c (xd_read_message): Generate an event for every
16219 registered handler. There might be several handlers registered
16220 for the same signal.
16221 (Fdbus_register_signal): Don't overwrite a registration for the
16222 same signal. Add a new registration if handlers are different.
16223 (Vdbus_registered_functions_table): Rework doc string.
16224
162252007-12-07 Michael Albinus <michael.albinus@gmx.de>
16226
16227 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
16228 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
16229 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
16230 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
16231 Unify argument lists.
16232 (xd_read_message, Fdbus_register_signal): Reorder and extend event
16233 arguments and hash table keys. Use unique name for service.
16234 (Fdbus_unregister_signal): Remove checks.
16235 (Vdbus_registered_functions_table): Fix doc string.
16236
162372007-12-05 Magnus Henoch <mange@freemail.hu>
16238
16239 * process.c (make_process): Initialize pty_flag to 0.
16240
162412007-12-05 Jason Rumney <jasonr@gnu.org>
16242
16243 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
16244 specified XBMs.
16245
162462007-12-05 Richard Stallman <rms@gnu.org>
16247
16248 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
16249
162502007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16251
16252 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
16253 New variable.
16254 (mac_try_close_socket) [MAC_OSX]: New function.
16255 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
16256 Update cfsockets_for_select. Replace invalid CFRunLoop source.
16257
16258 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
16259 Use mac_try_close_socket.
16260
162612007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16262
16263 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
16264 reloc_base.
16265 (copy_dysymtab): Compute relocation base here.
16266 (rebase_reloc_address) [__ppc64__]: New function.
16267 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
16268 changed.
16269
162702007-12-05 Jason Rumney <jasonr@gnu.org>
16271
16272 * w32proc.c (sys_spawnve): Quote args with wildcards.
16273
162742007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16275
16276 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
16277 __objc_* sections.
16278 (unrelocate) [_LP64]: Set relocation base to address of data segment.
16279
162802007-12-05 Michael Albinus <michael.albinus@gmx.de>
16281
16282 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
16283 Move check for Vdbus_registered_functions_table to
16284 xd_read_queued_messages.
16285 (xd_read_queued_messages): Protect xd_read_message calls by
16286 internal_condition_case_1.
16287
162882007-12-04 Michael Albinus <michael.albinus@gmx.de>
16289
16290 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
16291 Qdbus_system_bus and Qdbus_session_bus, respectively.
16292 (Vdbus_intern_symbols): Remove.
16293 (Vdbus_registered_functions_table): New hash table.
16294 (XD_SYMBOL_INTERN_SYMBOL): Remove.
16295 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
16296 Rewrite in order to manage registered functions by hash table
16297 Vdbus_registered_functions_table.
16298
162992007-12-03 Jan Djärv <jan.h.d@swipnet.se>
16300
16301 * xterm.c: Update URL to Window Manager Specification in comment.
16302
163032007-12-02 Michael Albinus <michael.albinus@gmx.de>
16304
16305 * config.in (HAVE_DBUS): Add.
16306
16307 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
16308 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
16309 (obj): Add $(DBUS_OBJ).
16310 (LIBES): Add $(DBUS_LIBS).
16311 (dbusbind.o): New target.
16312
16313 * dbusbind.c: New file.
16314
16315 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
16316
16317 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
16318 (Qdbus_event): New Lisp symbol.
16319 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
16320 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 16321 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
16322
16323 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
16324
163252007-12-01 Richard Stallman <rms@gnu.org>
16326
16327 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
16328
163292007-11-30 Jason Rumney <jasonr@gnu.org>
16330
16331 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
16332 (w32con_reset_terminal_modes): Clear screen buffer.
16333 (w32_face_attributes): Don't use color indexes that are out of range.
16334 Only reverse the default colors.
16335
16336 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
16337 WINDOWSNT.
16338
16339 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
16340
163412007-11-29 Jason Rumney <jasonr@gnu.org>
16342
16343 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
16344 (w32_face_attributes): Use Vtty_defined_color_alist to determine
16345 if the terminal colors are initialized.
16346 (unspecified_fg, unspecified_bg): Remove unused declarations.
16347
163482007-11-29 Andreas Schwab <schwab@suse.de>
16349
16350 * keyboard.c (apply_modifiers): Fix typo.
16351
163522007-11-29 Richard Stallman <rms@gnu.org>
16353
16354 * keymap.c (Fcurrent_local_map): Doc fix.
16355
163562007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
16357
16358 * s/gnu-kfreebsd.h: New file.
16359
163602007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
16361
16362 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
16363 Don't cast redundantly.
16364
16365 * keyboard.c (KEY_TO_CHAR): New macro.
16366 (parse_modifiers, apply_modifiers): Accept integer arguments.
16367 (read_key_sequence): Use them to unify the "shift->unshift" mapping
16368 for chars and symbol keys.
16369 After doing such remapping, apply function-key-map again.
16370
163712007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
16372
16373 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
16374 compiled anymore.
16375
163762007-11-26 Andreas Schwab <schwab@suse.de>
16377
16378 * process.c (list_processes_1): Fix indentation level of the
16379 command column.
16380
163812007-11-23 Andreas Schwab <schwab@suse.de>
16382
16383 * editfns.c (Fformat): Handle %c specially since it requires the
16384 argument to be of type int.
16385
163862007-11-23 Markus Triska <markus.triska@gmx.at>
16387
16388 * emacs.c (main): Call init_editfns before init_process, since
16389 init_process sets Vprocess_connection_type depending on OS release.
16390
163912007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
16392
16393 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
16394 (find_symbol_value): Use do_symval_forwarding.
16395
16396 * data.c (set_internal): Set the value in the `cons-cell' (for
16397 Buffer_Local_values) not only for frame-local variables.
16398
163992007-11-22 Andreas Schwab <schwab@suse.de>
16400
16401 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
16402 values to sprintf.
16403 * keymap.c (Fsingle_key_description): Likewise.
16404 * print.c (print_object): Likewise.
16405
164062007-11-22 Jan Djärv <jan.h.d@swipnet.se>
16407
16408 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
16409 file for image is nil.
16410
164112007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
16412
16413 * term.c: Include stdarg.h.
16414 (fatal): Implement using varargs.
16415 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
16416
164172007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16418
16419 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
16420 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
16421 Update call to buffer_slot_type_mismatch.
16422 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
16423 (buffer_slot_type_mismatch): Update.
16424 * buffer.c (buffer_local_types): Remove.
16425 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
16426 (defvar_per_buffer): Set the type in the buffer_objfwd.
16427
164282007-11-21 Jason Rumney <jasonr@gnu.org>
16429
16430 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
16431 CreateFileMapping returns NULL on failure.
16432
164332007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16434
16435 * search.c (Fset_match_data): Remove the `evaporate' feature.
16436 (unwind_set_match_data): Don't use the `evaporate' feature.
16437
164382007-11-21 Jason Rumney <jasonr@gnu.org>
16439
16440 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
16441
16442 * w32console.c (w32con_write_glyphs): Remove unused variables.
16443
164442007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
16445
16446 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
16447
16448 * s/darwin.h (MULTI_KBOARD): Remove.
16449
16450 * macfns.c (x_create_tip_frame, Fx_create_frame)
16451 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
16452
164532007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
16454
16455 * buffer.c (Fbuffer_local_value): Remove redundant test.
16456 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
16457 than in `current-buffer' to match the comment.
16458 Do the swap using swap_in_global_binding.
16459
16460 * data.c (store_symval_forwarding, set_internal):
16461 * eval.c (specbind): Remove dead code.
16462
16463 * coding.c (detect_coding, Fupdate_coding_systems_internal):
16464 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
16465 Since we do not want to see internal Lisp_*fwd objects here.
16466
164672007-11-18 Jan Djärv <jan.h.d@swipnet.se>
16468
16469 * sysdep.c (init_system_name): Use getaddrinfo if available.
16470
16471 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
16472 (x_scroll_bar_note_movement): start, end, with, height in struct
16473 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
16474
164752007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
16476
16477 * puresize.h (BASE_PURESIZE): Increase to 1190000.
16478
164792007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
16480
16481 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
16482 This undoes Richard's change of 14-Oct-2002.
16483
16484 * alloc.c (allocate_other_vector):
16485 * lisp.h (allocate_other_vector): Remove.
16486
16487 * window.c (struct save_window_data): Move non-lisp data to the end
16488 and make it `int' rather than Lisp_Object.
16489 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
16490 Done wrap/unwrap integer values.
16491 (Fset_window_configuration, compare_window_configurations):
16492 Update use of fields to their new types.
16493
16494 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
16495 Turn integer fields into `int'. Merge x_window_low and x_window_high.
16496 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
16497 (SET_SCROLL_BAR_X_WINDOW): Remove.
16498 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
16499 Access the new x_window field directly.
16500 * xterm.c (x_scroll_bar_create): Use a pseudovector.
16501 Don't wrap/unwrap integers into Lisp_Objects.
16502 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
16503 (x_scroll_bar_report_motion):
16504 Don't wrap/unwrap integers into Lisp_Objects.
16505 (x_term_init): Use SDATA.
16506 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
16507 (x_scroll_bar_set_handle, x_scroll_bar_remove)
16508 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
16509 (x_scroll_bar_report_motion, x_scroll_bar_clear):
16510 * xfns.c (x_set_background_color):
16511 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
16512 Access the new x_window field directly.
16513
16514 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
16515 (allocate_pseudovector): Make non-static.
16516
16517 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
16518 (allocate_pseudovector): Declare.
16519 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
16520
165212007-11-15 Andreas Schwab <schwab@suse.de>
16522
16523 * editfns.c (Fformat): Correctly format EMACS_INT values.
16524 Also take precision into account when formatting an integer.
16525
16526 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
16527
165282007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
16529
16530 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
16531 (syms_of_keyboard): Defsubr it.
16532
16533 * data.c (swap_in_global_binding): Fix longstanding bug where
16534 store_symval_forwarding was not called with the right second argument,
16535 thus causing objfwd-ing from being dropped.
16536
165372007-11-14 Juanma Barranquero <lekktu@gmail.com>
16538
16539 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
16540 (Fx_display_pixel_height, Fx_display_planes)
16541 (Fx_display_color_cells, Fx_server_max_request_size)
16542 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
16543 (Fx_display_visual_class, Fx_display_save_under):
16544 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
16545 (Fx_display_pixel_height, Fx_display_planes)
16546 (Fx_display_color_cells, Fx_server_max_request_size)
16547 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
16548 (Fx_display_mm_height, Fx_display_mm_width)
16549 (Fx_display_backing_store, Fx_display_visual_class)
16550 (Fw32_select_font, Fx_display_save_under):
16551 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
16552 (Fx_display_pixel_height, Fx_display_planes)
16553 (Fx_display_color_cells, Fx_server_max_request_size)
16554 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
16555 (Fx_display_save_under): Fix typos in docstrings.
16556
165572007-11-14 Juanma Barranquero <lekktu@gmail.com>
16558
16559 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
16560 corresponding to deleted entries; they are an implementation detail.
16561 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
16562 Remove variables.
16563 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
16564 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
16565 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
16566 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
16567 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
16568 (Fw32_define_rgb_color, Fw32_load_color_file)
16569 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
16570 Fix typos in docstrings.
16571 (Fx_server_version): Reflow docstring.
16572 (Fw32_shell_execute): Doc fixes.
16573
165742007-11-13 Juanma Barranquero <lekktu@gmail.com>
16575
16576 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
16577 if w32_parse_hot_key returned nil.
16578
165792007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
16580
16581 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
16582
165832007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 16584
aac0c6e3
MR
16585 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
16586
16587 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
16588
16589 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
16590 Remove W32_SCROLL_BAR_CLICK_EVENT.
16591
16592 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
16593 Add MULTIMEDIA_KEY_EVENT.
16594
16595 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
16596 (lispy_multimedia_keys) [WINDOWSNT]: New array.
16597 (make_lispy_event) [WINDOWSNT]: Use it to translate
16598 MULTIMEDIA_KEY_EVENT.
16599
16600 * w32term.h (WM_APPCOMMAND): Define if not already.
16601 (GET_APPCOMMAND_LPARAM): Likewise.
16602
16603 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
16604 WM_APPCOMMAND.
16605
16606 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
16607 (syms_of_w32fns): Export and initialize it.
16608 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
16609
166102007-11-09 Chong Yidong <cyd@stupidchicken.com>
16611
16612 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
16613 twice.
16614
16615 * xdisp.c (handle_face_prop): Fix last change.
16616
166172007-11-09 Richard Stallman <rms@gnu.org>
16618
16619 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
16620 not just for after-strings and before-strings.
16621 Call face_for_overlay_string and pass the overlay to it.
16622 (handle_display_prop): Determine whether property came from an overlay.
16623 Pass OVERLAY arg to handle_single_display_spec.
16624 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
16625 (load_overlay_strings): Fill in it->string_overlays.
16626 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
16627
16628 * xfaces.c (face_for_overlay_string): Function renamed from
16629 face_at_buffer_position_no_overlays, and add arg OVERLAY.
16630
16631 * dispextern.h (struct it): New elt string_overlays.
16632 New elt from_overlay, also in stack.
16633 Rearrange a few elements.
16634 (face_for_overlay_string): Decl renamed from
16635 face_at_buffer_position_no_overlays, and add argument.
16636
166372007-11-09 Richard Stallman <rms@gnu.org>
16638
16639 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
16640 to get the base face for an overlay string.
16641
16642 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
16643
16644 * xfaces.c (face_at_buffer_position_no_overlays): New function.
16645
16646 * xdisp.c (handle_stop): Move some code out of loop.
16647
166482007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16649
16650 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
16651 Fix conversion from Lisp object to ATSUFontID.
16652
166532007-11-09 Jason Rumney <jasonr@gnu.org>
16654
16655 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
16656
166572007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16658
16659 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
16660 Don't assume regions are aligned to page boundary.
16661 (print_load_command_name): Add LC_UUID if defined.
16662
166632007-11-09 Richard Stallman <rms@gnu.org>
16664
16665 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
16666
166672007-11-07 Jason Rumney <jasonr@gnu.org>
16668
16669 * s/windows95.h: Remove.
16670
166712007-11-06 Jan Djärv <jan.h.d@swipnet.se>
16672
16673 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
16674 abort with a message on unhandled store_type values.
16675
166762007-11-01 Jan Djärv <jan.h.d@swipnet.se>
16677
16678 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
16679 Remove HAVE_X11R5 and HAVE_X11R4.
16680
166812007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
16682
16683 * Makefile.in: Remove references to sunfns.c and sunfns.o.
16684
166852007-11-01 Johan Bockgård <bojohan@gnu.org>
16686
16687 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
16688 Don't set s->stippled_p here, since it has already been set by
16689 x_set_glyph_string_gc from x_draw_glyph_string.
16690
166912007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
16692
16693 * sunfns.c: Remove file.
16694
16695 * m/sun386.h:
16696 * m/sun2.h:
16697 * m/sparc.h: Remove Sun windows code.
16698
166992007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
16700
16701 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
16702 (init_keyboard): Set current_kboard's window-system to nil.
16703 (tty_read_avail_input): Typo.
16704 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
16705
167062007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
16707
16708 * s/usg5-4.h:
16709 * s/usg5-3.h:
16710 * s/ptx.h:
16711 * m/is386.h:
16712 * m/ibmps2-aix.h:
16713 * Makefile.in: Remove all mentions of X10.
16714
16715 * dispnew.c (syms_of_display): Don't mention version 10.
16716
167172007-10-28 Juanma Barranquero <lekktu@gmail.com>
16718
16719 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
16720 ($(BLD)/abbrev.$(O)): Remove.
16721
167222007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
16723
16724 Rewrite abbrev.c in Elisp.
16725 * image.c (Qcount): Don't declare as extern.
16726 (syms_of_image): Initialize and staticpro `Qcount'.
16727 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
16728 * emacs.c (main): Don't call syms_of_abbrev.
16729 * Makefile.in (obj): Remove abbrev.o.
16730 (abbrev.o): Remove.
16731 * abbrev.c: Remove.
16732
167332007-10-26 Martin Rudalics <rudalics@gmx.at>
16734
16735 * window.c (window_min_size_2): Don't count header-line.
16736
167372007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
16738
16739 * frame.h (struct frame): Move all bit fields after the first bit
16740 field to take advantage of the available space. Group all the
16741 chars together to reduce wasted space due to padding.
16742
167432007-10-26 Juanma Barranquero <lekktu@gmail.com>
16744
16745 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
16746
16747 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
16748 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
16749 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
16750 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
16751 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
16752 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
16753 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
16754 (last_marked, mark_object_loop_halt): Make static.
16755
16756 * frame.c (syms_of_frame) <delete-frame-functions>:
16757 Fix typo in docstring.
16758
167592007-10-25 Juanma Barranquero <lekktu@gmail.com>
16760
16761 * w32.c (init_environment): Fix tiny memory leak.
16762 (w32_get_resource): Remove unused variable `ok'.
16763
167642007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
16765
16766 Make `window-system' into a keyboard-local variable (rather than
16767 frame-local as done originally by multi-tty).
16768
16769 * keyboard.h (struct kboard): Add Vwindow_system.
16770 * keyboard.c (init_kboard): Set a default for Vwindow_system.
16771 (mark_kboards): Mark Vwindow_system.
16772
16773 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
16774 (init_display): Don't set the obsolete `window-system' frame-param.
16775
16776 * xterm.c (x_term_init):
16777 * w32term.c (w32_create_terminal):
16778 * term.c (init_tty): Set Vwindow_system.
16779 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
16780 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
16781
16782 * xfns.c (Fx_create_frame, x_create_tip_frame):
16783 * w32fns.c (Fx_create_frame, x_create_tip_frame):
16784 * macfns.c (Fx_create_frame):
16785 Don't set the obsolete `window-system' frame-param.
16786
16787 * frame.h (Qwindow_system): Remove.
16788 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
16789 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
16790
167912007-10-24 Richard Stallman <rms@gnu.org>
16792
16793 * frame.c (x_figure_window_size): For fullscreen case,
16794 set USPosition | PPosition without clobbering rest of window_prompting.
16795
16796 * keyboard.c (Fcurrent_idle_time): Doc fix.
16797
16798 * print.c (Fwith_output_to_temp_buffer): Doc fix.
16799
168002007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
16801
16802 * process.c (unwind_request_sigio): Only define if __ultrix__.
16803
16804 * callproc.c (child_setup): Remove spurious *.
16805
16806 * lisp.h (Fget_text_property): Declare.
16807 (have_menus_p): Declare it here rather than in sys-dep header files.
16808 * macterm.h (have_menus_p):
16809 * msdos.h (have_menus_p):
16810 * xterm.h (have_menus_p): Remove.
16811
16812 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
16813 (Fmake_variable_frame_local): Just check the variable's const-ness
16814 rather than checking nil or t.
16815
168162007-10-22 Jason Rumney <jasonr@gnu.org>
16817
16818 * w32fns.c: Include math.h.
16819 (w32_abort): Declaration moved to nt/config.nt.
16820
16821 * s/ms-w32.h (HAVE_STDLIB_H): Define.
16822 (abort): Redefinition moved to nt/config.nt.
16823
16824 * m/windowsnt.h: Remove.
16825
168262007-10-22 Juanma Barranquero <lekktu@gmail.com>
16827
16828 * emacs.c (Fdump_emacs): Fix typo in message.
16829 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
16830 <installation-directory>: Reflow docstring.
16831
168322007-10-22 Juri Linkov <juri@jurta.org>
16833
16834 * minibuf.c: Allow minibuffer default to be a list of default values.
16835 With empty input use the first element of this list as returned default.
16836 (string_to_object)
16837 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
16838 (read_minibuf): If defalt is cons, set histstring to its car.
16839 (Fread_string): If default_value is cons, set val to its car.
16840 (Fread_buffer): If def is cons, use its car.
16841 (Fcompleting_read): If defalt is cons, set val to its car.
16842
168432007-10-21 Michael Albinus <michael.albinus@gmx.de>
16844
16845 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
16846
168472007-10-20 Juanma Barranquero <lekktu@gmail.com>
16848
16849 * doc.c (Fdocumentation): Check for advice in all cases.
16850
168512007-10-19 Chong Yidong <cyd@stupidchicken.com>
16852
16853 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
16854
168552007-10-19 Richard Stallman <rms@gnu.org>
16856
16857 * doc.c (Fdocumentation): Check for and handle an advised function.
16858
168592007-10-19 Juanma Barranquero <lekktu@gmail.com>
16860
16861 * process.c (Fset_process_filter): Doc fix.
16862
168632007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
16864
16865 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
16866 which caused key-translation-map to applied repeatedly (thus breaking
16867 double-mode).
16868
168692007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
16870
16871 * xselect.c (x_own_selection, x_handle_selection_clear)
16872 (x_clear_frame_selections):
16873 * w32menu.c (list_of_panes, list_of_items):
16874 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
16875 * textprop.c (validate_plist, interval_has_all_properties)
16876 (interval_has_some_properties, interval_has_some_properties_list)
16877 (add_properties, text_property_list):
16878 * process.c (Fget_buffer_process, list_processes_1, status_notify):
16879 * minibuf.c (Fassoc_string):
16880 * macselect.c (x_own_selection, x_clear_frame_selections)
16881 (Fx_disown_selection_internal):
16882 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
16883 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
16884
168852007-10-17 Chong Yidong <cyd@stupidchicken.com>
16886
16887 * process.c: Link to libs for calling res_init() if available.
16888 (Fmake_network_process): Call res_init() before getaddrinfo or
16889 gethostbyname, if possible.
16890
168912007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
16892
16893 * lread.c (read1): Set pvectype for char_tables.
16894
16895 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
16896 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
16897 Add type checks.
16898 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
16899
16900 * alloc.c (free_misc): Use XMISCTYPE.
16901 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
16902
169032007-10-17 Glenn Morris <rgm@gnu.org>
16904
16905 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
16906 (syms_of_minibuf): Add Qcompletion_ignore_case.
16907 * dired.c (Qcompletion_ignore_case): Change to external.
16908 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
16909 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
16910 (Fread_file_name): Use it rather than intern'ing.
16911
16912 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
16913 (Fread_coding_system): Ignore case of user input.
16914
169152007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16916
16917 * xdisp.c (handle_display_prop): Ignore display specs after
16918 replacing one when string text is being replaced.
16919 (handle_single_display_spec): Pretend as if characters with display
16920 property haven't been consumed only when buffer text is being replaced.
16921
169222007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
16923
16924 * xfns.c (Fx_create_frame, Fx_display_list):
16925 * window.c (window_fixed_size_p, enlarge_window)
16926 (shrink_window_lowest_first):
16927 * macterm.c (init_font_name_table):
16928 * macfns.c (Fx_create_frame, Fx_display_list):
16929 * lread.c (close_load_descs):
16930 * keyboard.c (read_char_x_menu_prompt):
16931 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
16932 * coding.c (code_convert_region_unwind): Test the type of an object
16933 rather than just !NILP before extracting data from it.
16934
16935 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
16936
16937 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
16938 (XMISCANY): New macro.
16939 (XMISCTYPE): Use it.
16940 (struct Lisp_Misc_Any): New type.
16941 (union Lisp_Misc): Use it.
16942 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
16943 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
16944 (find_symbol_value, set_internal, default_value, Fset_default)
16945 (Fmake_variable_buffer_local, Fmake_local_variable)
16946 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
16947 (Flocal_variable_if_set_p, Fvariable_binding_locus):
16948 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
16949 * alloc.c (allocate_buffer): Set the size and tag.
16950 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
16951 Use XMISCANY.
16952 (die): Follow the GNU convention for error messages.
16953 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
16954 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
16955 tag any more.
16956 (set_buffer_internal_1):
16957 * frame.c (store_frame_param):
16958 * eval.c (specbind):
16959 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
16960
16961 * doc.c (Fsnarf_documentation): Simplify.
16962
169632007-10-14 Juanma Barranquero <lekktu@gmail.com>
16964
16965 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
16966 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
16967
169682007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
16969
16970 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
16971
169722007-10-14 Juanma Barranquero <lekktu@gmail.com>
16973
16974 * eval.c (do_autoload): Don't save autoloads.
16975
16976 * data.c (Ffset): Save autoload of the function being set.
16977
169782007-10-07 John Paul Wallington <jpw@pobox.com>
16979
16980 * xfns.c (x_create_tip_frame): Set the `display-type' frame
16981 parameter before setting up faces.
16982
169832007-10-13 Eli Zaretskii <eliz@gnu.org>
16984
16985 * ccl.c (Fregister_code_conversion_map):
16986 * keyboard.c (append_tool_bar_item): Reformat last change.
16987
16988 * lisp.h (eabs): Rename from `abs'. All callers changed.
16989
169902007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
16991
16992 * buffer.c (add_overlay_mod_hooklist):
16993 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
16994 * fontset.c (make_fontset):
16995 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
16996 (append_tool_bar_item):
16997 * macmenu.c (grow_menu_items):
16998 * w32menu.c (grow_menu_items):
16999 * xmenu.c (grow_menu_items): Use larger_vector.
17000
170012007-10-13 Eli Zaretskii <eliz@gnu.org>
17002
17003 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
17004 selected frame'' on MSDOS).
17005
170062007-10-12 Martin Rudalics <rudalics@gmx.at>
17007
17008 * frame.c (Qexplicit_name): New variable.
17009 (x_report_frame_params): Report it in parameter alist.
17010 (syms_of_frame): Intern and staticpro it.
17011
170122007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
17013
17014 * macfns.c (x_create_tip_frame): Set terminal for frame.
17015
170162007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
17017
17018 * frame.c (Qenvironment): Remove.
17019 (syms_of_frame) <Qenvironment>: Don't initialize.
17020 (Fdelete_frame): Don't treat the `environment' param specially.
17021 * frame.h (Qenvironment): Don't declare.
17022 * callproc.c (set_initial_environment): Don't set unused frame param.
17023
17024 * frame.c (Fframe_with_environment): Remove.
17025 (syms_of_frame) <Sframe_with_environment>: Don't declare.
17026
17027 * lisp.h (Fframe_with_environment): Don't declare.
17028
170292007-10-10 Juanma Barranquero <lekktu@gmail.com>
17030
17031 * indent.c (indent_tabs_mode, last_known_column)
17032 (last_known_column_modified): Make static.
17033 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
17034
170352007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
17036
17037 * puresize.h (BASE_PURESIZE): Increase to 1170000.
17038
170392007-10-09 Jason Rumney <jasonr@gnu.org>
17040
17041 * w32term.c (x_set_window_size): Disable code that attempts to tell
17042 Lisp code about a size change before it actually happens.
17043
170442007-10-09 Richard Stallman <rms@gnu.org>
17045
17046 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
17047 return HANDLED_RETURN.
17048
170492007-10-08 Martin Rudalics <rudalics@gmx.at>
17050
17051 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
17052 when there's an unread command event.
17053
17054 * frame.c (focus_follows_mouse): Move here from frame.el to allow
17055 window autoselection act appropriately when leaving selected frame.
17056 (syms_of_frame): Initialize focus_follows_mouse.
17057 * frame.h (focus_follows_mouse): Extern it.
17058 * macterm.c (XTread_socket): When focus_follows_mouse is nil
17059 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
17060 * msdos.c (dos_rawgetc): Likewise.
17061 * w32term.c (w32_read_socket): Likewise.
17062 * xterm.c (handle_one_xevent): Likewise.
17063 * xdisp.c (syms_of_xdisp): In doc-string of
17064 mouse-autoselect-window mention focus-follows-mouse.
17065
170662007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17067
17068 * macterm.c (mac_load_query_font): Fix missing return value.
17069 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
17070 Add BLOCK_INPUT.
17071
170722007-10-08 Richard Stallman <rms@gnu.org>
17073
17074 * xdisp.c (get_window_cursor_type): Implement documented behavior
17075 for cursor-in-non-selected-windows = t.
17076
170772007-10-08 Jason Rumney <jasonr@gnu.org>
17078
17079 * w32.c (w32_get_resource): Always close registry keys.
17080
170812007-10-08 Jason Rumney <jasonr@gnu.org>
17082
17083 * makefile.w32-in (LIBS): Add COMCTL32.
17084
17085 * w32fns.c (globals_of_w32fns): Init common controls.
17086
170872007-10-08 Richard Stallman <rms@gnu.org>
17088
17089 * image.c (our_memory_buffer): Rename from omfib_buffer.
17090
170912007-10-08 Richard Stallman <rms@gnu.org>
17092
17093 * buffer.c (Foverlays_at): Doc fix.
17094
170952007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
17096
17097 * fns.c (Fplist_put): Preserve uneven tail data.
17098
170992007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
17100
17101 * termhooks.h (enum event_kind): Remove trailing comma.
17102
17103 * frame.h (enum): Remove trailing comma.
17104
171052007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
17106
17107 * w32proc.c (delete_child): Don't terminate threads of zombies.
17108
171092007-10-08 Martin Rudalics <rudalics@gmx.at>
17110
17111 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
17112
17113 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
17114 last-repeatable-command.
17115 (init_kboard): Initialize Vlast_repeatable_command.
17116 (command_loop_1): Set it to real_this_command unless that was
17117 bound to an input event.
17118 (mark_kboards): Mark it.
17119
171202007-10-08 Richard Stallman <rms@gnu.org>
17121
17122 * eval.c (condition-case): Doc fix.
17123
171242007-10-08 Masatake YAMATO <jet@gyve.org>
17125
17126 * xfaces.c (tty_supports_face_attributes_p): Fix code
17127 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
17128 was copied and not edited.
17129
171302007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
17131
17132 Add new `input-decode-map' keymap and use it for terminal
17133 escape sequences.
17134 * keyboard.h (struct kboard): Add Vinput_decode_map.
17135 Remove Vlocal_key_translation_map.
17136 * keyboard.c (read_key_sequence): Add support for input-decode-map.
17137 (init_kboard): Init input-decode-map.
17138 Replace local-key-translation-map back with key-translation-map.
17139 (syms_of_keyboard): Declare input-decode-map.
17140 Remove local-key-translation-map. Update docstrings.
17141 (mark_kboards): Mark Vinput_decode_map.
17142 Don't mark Vlocal_key_translation_map.
17143 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
17144 Replace local-key-translation-map back with key-translation-map.
17145 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
17146 Bind in input-decode-map rather than function-key-map.
17147
17148 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
17149 This was made redundant by the previous introduction of XSETPVECTYPE.
17150
171512007-10-09 Richard Stallman <rms@gnu.org>
17152
17153 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
17154
171552007-09-29 Richard Stallman <rms@gnu.org>
17156
17157 * eval.c (internal_condition_case_2, internal_condition_case_1)
17158 (internal_condition_case): Reenable abort if x_catching_errors ()
17159 to see if that really happens and why.
17160
171612007-10-06 Andreas Schwab <schwab@suse.de>
17162
17163 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
17164
171652007-10-04 Juanma Barranquero <lekktu@gmail.com>
17166
17167 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
17168
171692007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
17170
17171 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
17172
171732007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
17174
17175 * window.h (struct window):
17176 * window.c (struct save_window_data, struct saved_window):
17177 * termhooks.h (struct terminal):
17178 * process.h (struct Lisp_Process):
17179 * frame.h (struct frame):
17180 * buffer.h (struct buffer):
17181 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
17182 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
17183 The size field of (pseudo)vectors is now unsigned.
17184 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
17185
17186 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
17187 Turn `count' into an integer.
17188
17189 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
17190 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
17191 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
17192 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
17193 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
17194
17195 * alloc.c (allocate_pseudovector): New fun.
17196 (ALLOCATE_PSEUDOVECTOR): New macro.
17197 (allocate_window, allocate_terminal, allocate_frame)
17198 (allocate_process): Use it.
17199 (mark_vectorlike): New function.
17200 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
17201 (mark_terminals): Use it.
17202 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
17203 (Fmake_byte_code): Use XSETPVECTYPE.
17204
17205 * frame.c (Fframe_parameters): Minor simplification.
17206
17207 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
17208
17209 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
17210
17211 * buffer.c (Fget_buffer_create, init_buffer_once):
17212 * lread.c (defsubr):
17213 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
17214
17215 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
17216 defined differently in the m/*.h files.
17217 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
17218 (XSETPVECTYPE): New macro.
17219 (XSETPSEUDOVECTOR): Use it.
17220
17221 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
17222 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
17223
17224 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
17225 * lread.c (defvar_per_buffer):
17226 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
17227
17228 * window.c (candidate_window_p): Only consider as visible frames that
17229 are on the same terminal.
17230
17231 * m/ibms390x.h (MARKBIT): Remove unused macro.
17232
172332007-10-01 Juanma Barranquero <lekktu@gmail.com>
17234
17235 * lread.c (Fload): Fix typo in docstring.
17236
172372007-10-01 Michaël Cadilhac <michael@cadilhac.name>
17238
17239 * floatfns.c (Fexpt): Manually check for overflows, so that a power
17240 of a non-zero value can't yield zero.
17241
172422007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
17243
17244 * term.c (term_clear_mouse_face, term_mouse_highlight)
17245 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
17246
17247 * print.c (safe_debug_print): Use XHASH.
17248
17249 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
17250 Lisp elements such as tags.
17251 (XHASH): New macro.
17252 (EQ): Use it.
17253 (SREF, SSET, STRING_COPYIN): Use SDATA.
17254 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
17255
17256 * alloc.c (mark_terminal): Remove left-over declaration.
17257 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
17258 (allocate_vectorlike): Remove type argument. Adjust callers.
17259 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
17260 Only handle the one remaining MEM_TYPE_VECTORLIKE.
17261
17262 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
17263 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
17264 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
17265 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
17266 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
17267 Use them.
17268
17269 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
17270 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
17271 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
17272
172732007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
17274
17275 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
17276 loaded by default.
17277
172782007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
17279
17280 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
17281 on this tty.
17282 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
17283
17284 * term.c (mouse_face_window): Rename from Qmouse_face_window.
17285 Update all users.
17286 (handle_one_term_event): Use Gpm_DrawPointer.
17287 (Fgpm_mouse_start): Rename from Fterm_open_connection.
17288 Signal errors instead of returning nil. Always return nil.
17289 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
17290 Make it a noop if gpm-mouse was not activated.
17291 (syms_of_term): Update names.
17292
172932007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
17294
17295 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
17296 (init_sys_modes): Check that gpm_tty is the current tty.
17297
17298 * alloc.c (allocate_terminal): Set the vector size to only count the
17299 lisp fields. Initialize those to nil.
17300 (mark_object): Don't treat terminals specially.
17301 (mark_terminal): Remove.
17302 (mark_terminals): Use mark_object instead.
17303
17304 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
17305 the GC to the beginning.
17306
17307 * indent.h:
17308 * indent.c: Use EMACS_INT for ints coming from Elisp data.
17309
17310 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
17311
173122007-09-25 Jason Rumney <jasonr@gnu.org>
17313
17314 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
17315
17316 * w32console.c (create_w32cons_output): Remove.
17317
17318 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
17319
17320 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
17321 (reset_sys_modes): Use reset_terminal_modes_hook.
17322
173232007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
17324
17325 * eval.c (do_autoload): Don't output any message.
17326
173272007-09-24 Juri Linkov <juri@jurta.org>
17328
17329 * emacs.c (standard_args): Change priority of "--no-splash"
17330 from 40 to 3. Add "--no-desktop" with the same priority.
17331
173322007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
17333
17334 * alloc.c (gc_sweep): Check cons cell mark bits word by word
17335 and optimize the case where they are all 1.
17336
173372007-09-23 Johannes Weiner <hannes@saeurebad.de>
17338
17339 * lisp.h (abs): Define if not defined.
17340 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
17341 Don't define `abs', since it's defined in lisp.h.
17342
173432007-09-22 Eli Zaretskii <eliz@gnu.org>
17344
17345 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
17346 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
17347 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
17348 (init_tty): Use DEV_TTY instead of "/dev/tty".
17349 [WINDOWSNT]: No need to protect from NAME arg being null.
17350
173512007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
17352
17353 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
17354 up the tty state.
17355
173562007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17357
17358 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
17359 (gpm_tty): Change its type.
17360 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
17361 (gpm_tty): Change its type and initialize it.
17362 (Fterm_open_connection): Check the frame is indeed a tty.
17363 Use the new gpm_tty.
17364 (Fterm_close_connection): Use the new gpm_tty.
17365 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
17366 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
17367
173682007-09-21 Juanma Barranquero <lekktu@gmail.com>
17369
17370 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
17371 underline_color, to draw strike-through.
17372
173732007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17374
17375 * lisp.h (allocate_terminal): Declare.
17376
17377 * window.c (candidate_window_p): Consider frames that are being placed
17378 by the user as somewhere between visible and iconified.
17379 (window_loop): Prefer windows on the current frame.
17380 (Fselect_window): Move the use of select-frame to the beginning so we
17381 can just delegate all the work (it'll call us back anyway).
17382
17383 * frame.c (Qdisplay_environment_variable):
17384 * frame.h (Qdisplay_environment_variable): Delete.
17385
17386 * .gdbinit (xbacktrace): Print the arg's address rather than the value
17387 of the first arg, since that value may be a union.
17388
17389 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
17390 parameter rather than Qdisplay_environment_variable. If all else
17391 fails, look for DISPLAY in initial-environment.
17392
173932007-09-21 Glenn Morris <rgm@gnu.org>
17394
17395 * Makefile.in (emacstool): Remove target.
17396 (lisp, shortlisp): Remove termdev.elc.
17397
173982007-09-21 Markus Triska <markus.triska@gmx.at>
17399
17400 * xterm.c (x_delete_display): Compile session management conditionally.
17401
174022007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
17403
17404 * callproc.c (getenv_internal_1): New function.
17405 (getenv_internal): Use it.
17406 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
17407
17408 * terminal.c (get_terminal): Don't accept ints to represent terminals.
17409 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
17410 (Fset_terminal_parameter): Work with dead terminals as well.
17411 (Fmodify_terminal_parameters): Remove.
17412
17413 * terminal.c (get_terminal): Handle terminals.
17414 Make sure the terminal returned is live.
17415 (create_terminal): Use allocate_terminal.
17416 (mark_terminals): Move to alloc.c.
17417 (delete_terminal): Use terminal->name as liveness status.
17418 NULL out fields after freeing their contents.
17419 Don't deallocate the object.
17420 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
17421 rather than an int.
17422 (Fterminal_live_p): Accept non-integer arguments.
17423 (Fterminal_list): Return terminal objects rather than an ints.
17424
17425 * alloc.c (enum mem_type): New member for `terminal' objects.
17426 (allocate_terminal): New function.
17427 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
17428 Handle terminals.
17429 (mark_terminal): New fun.
17430 (mark_terminals): Move from terminal.c.
17431
17432 * term.c (get_tty_terminal): Don't treat output_initial specially.
17433 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
17434 (delete_tty): Use terminal->name as liveness status.
17435
17436 * termhooks.h (struct terminal): Make it into a pseudovector.
17437 Remove `deleted' replaced by checking `name's nullness.
17438
17439 * print.c (print_object): Handle terminals.
17440
17441 * lisp.h (enum pvec_type): New `terminal' pseudovector.
17442 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
17443
17444 * frame.c (make_terminal_frame):
17445 * keyboard.c (tty_read_avail_input):
17446 * w32term.c (x_delete_terminal):
17447 * xfns.c (Fx_create_frame, x_create_tip_frame):
17448 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
17449
174502007-09-20 Glenn Morris <rgm@gnu.org>
17451
17452 * process.c (Fmake_network_process): Doc fix.
17453
174542007-09-19 Jason Rumney <jasonr@gnu.org>
17455
17456 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
17457
174582007-09-19 Michaël Cadilhac <michael@cadilhac.name>
17459
17460 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
17461 Fix a C warning regarding variable constness.
17462
17463 * xterm.c (handle_one_xevent): Fix a C warning.
17464
174652007-09-18 Jason Rumney <jasonr@gnu.org>
17466
17467 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
17468
174692007-09-17 Jan Djärv <jan.h.d@swipnet.se>
17470
17471 * gtkutil.c (gdpy_def): New variable.
17472 (xg_initialize): Initialize gdpy_def.
17473 (xg_display_close): If no other display exists, set gdpy_def to a
17474 new connection.
17475
174762007-09-16 Jan Djärv <jan.h.d@swipnet.se>
17477
17478 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
17479 when we have no file name for the icon.
17480 (xg_tool_bar_expose_callback): Remove.
17481 (xg_create_tool_bar): Don't connect expose signal to
17482 xg_tool_bar_expose_callback.
17483 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
17484
174852007-09-16 Andreas Schwab <schwab@suse.de>
17486
17487 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
17488 values instead of zapping them.
17489
174902007-09-14 Glenn Morris <rgm@gnu.org>
17491
17492 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
17493 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
17494 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
17495 scope and rename to omfib_buffer for clarity.
17496 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
17497
174982007-09-14 Kenichi Handa <handa@m17n.org>
17499
17500 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
17501
175022007-09-13 Jason Rumney <jasonr@gnu.org>
17503
17504 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
17505
17506 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
17507
17508 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
17509 (mac_term_init): Call here instead, passing rif.
17510
175112007-09-13 Glenn Morris <rgm@gnu.org>
17512
17513 * s/hpux.h: No longer define `static' as nothing.
17514
175152007-09-13 Johan Bockgård <bojohan@gnu.org>
17516
17517 * callint.c (Fcall_interactively): Remove unused var `fun'.
17518
175192007-09-12 Romain Francoise <romain@orebokech.com>
17520
17521 * window.c (prefer_window_split_horizontally, display_buffer):
17522 Revert 2007-09-08 change.
17523
175242007-09-12 Glenn Morris <rgm@gnu.org>
17525
17526 * alloca.c: Remove file.
17527 * Makefile.in (alloca): Do not undef.
17528 (allocaobj, alloca.o): Remove.
17529 (otherobj): Remove allocaobj.
17530 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
17531 * regex.c (C_ALLOCA): Remove all references and code that was only
17532 used when this was defined.
17533 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
17534 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
17535 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
17536
17537 * Makefile.in (SOURCES, unlock, relock): Delete.
17538
17539 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
17540 (menu_grab_callback): All uses changed.
17541
17542 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
17543 (x_reply_selection_request): All uses changed.
17544
175452007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
17546
17547 * lread.c (load_warn_old_style_backquotes): Change message to look
17548 better when it appears in the middle of byte-compiler messages.
17549
175502007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
17551
17552 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
17553
17554 * xterm.c (x_create_terminal): Add comment.
17555
17556 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
17557
175582007-09-10 Richard Stallman <rms@gnu.org>
17559
17560 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
17561
175622007-09-10 Michaël Cadilhac <michael@cadilhac.name>
17563
17564 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
17565 (DEFUN): Document `intspec', use it instead of `prompt'.
17566
17567 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
17568
17569 * data.c (Finteractive_form): If the interactive specification starts
17570 with a `(', use it as a Lisp form.
17571
17572 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
17573 name and file modes.
17574
17575 * callint.c (Fcall_interactively): Comment fixes.
17576
175772007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
17578
17579 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
17580 and compiled functions.
17581
175822007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
17583
17584 * window.c (prefer_window_split_horizontally): New variable.
17585 (display_buffer): Consider splitting window horizontally depending
17586 on prefer_window_split_horizontally.
17587
175882007-09-08 Eli Zaretskii <eliz@gnu.org>
17589
17590 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
17591
175922007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
17593
17594 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
17595
17596 * frame.c (x_set_frame_parameters): Check number is positive before
17597 using XFASTINT.
17598
17599 * window.c (freeze_window_start): Don't presume selected_window holds
17600 a window object.
17601 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
17602
176032007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
17604
17605 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
17606
176072007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
17608
17609 * window.c (Vsplit_window_preferred_function): New var.
17610 (Fdisplay_buffer): Use it.
17611 (syms_of_window): Export, and initialize it.
17612
176132007-09-06 Pixel <pixel@mandriva.com> (tiny change)
17614
17615 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
17616
176172007-09-06 Glenn Morris <rgm@gnu.org>
17618
17619 * gtkutil.c (menu_grab_callback) <cnt>:
17620 * xselect.c (x_reply_selection_request) <cnt>: Move static
17621 variable to file scope.
17622
176232007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
17624
17625 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
17626 consistent values of selected_frame and selected_window.
17627
176282007-09-04 Jason Rumney <jasonr@gnu.org>
17629
17630 * w32console.c (initialize_w32_display): Zero unused hooks.
17631
176322007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
17633
17634 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
17635 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
17636
176372007-09-04 Jason Rumney <jasonr@gnu.org>
17638
17639 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
17640 in w32console.c. Set up input. Remove XXX comments that have been
17641 confirmed as correct.
17642
17643 * s/ms-w32.h (MULTI_KBOARD): Define.
17644
17645 * w32console.c (one_and_only_w32cons): Remove.
17646 (initialize_w32_display): Take terminal argument.
17647
17648 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
17649 initialize_w32_display.
17650 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
17651
17652 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
17653
17654 * keyboard.c (discard_mouse_events): Discard it.
17655 (make_lispy_event): Translate it to a lisp event.
17656 (lispy_wheel_names): Add wheel-left and right events.
17657 (syms_of_keyboard): Enlarge wheel_syms.
17658
17659 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
17660 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
17661
17662 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
17663
17664 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
17665 from WM_MOUSEHWHEEL.
17666 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
17667
17668 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
17669 terminal.
17670
17671 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
17672 keyboard for the terminal.
17673
176742007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
17675
17676 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
17677 (Vresume_tty_hook): Rename from Vresume_tty_functions.
17678 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
17679 and resume-tty-function to resume-tty-hook.
17680 (Fsuspend_tty, Fresume_tty): Use new names.
17681
176822007-09-02 Jan Djärv <jan.h.d@swipnet.se>
17683
17684 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
17685 if it starts with "n:".
17686
176872007-08-31 Jan Djärv <jan.h.d@swipnet.se>
17688
17689 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
17690
176912007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
17692
17693 * frame.h:
17694 * frame.c (Qterm_environment_variable): Remove.
17695 (syms_of_frame): Don't init and staticpro it.
17696
17697 * callproc.c (getenv_internal): Remove special case for $TERM.
17698
17699 * callproc.c (Vinitial_environment): New variable.
17700 (set_initial_environment): Initialize it.
17701 (syms_of_callproc): Declare it.
17702 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
17703 TERM under which a process runs is never related to the TERM in which
17704 Emacs is running.
17705
177062007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
17707
17708 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
17709 * s/darwin.h: ... do it here.
17710
177112007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
17712
17713 * lisp.h (set_initial_environment): Rename from set_global_environment.
17714
17715 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
17716 removed by mistake on the multi-tty branch.
17717
17718 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
17719 (Fmodify_frame_parameters): Return a value.
17720
17721 * image.c (png_load): Comment-out var only used in commented-out code.
17722
17723 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
17724 before passing it to mark_object.
17725
17726 * xfaces.c (internal_resolve_face_name): Return a value.
17727 (internal_resolve_face_name, resolve_face_name_error): Comment out.
17728
17729 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
17730 (x_icon): Comment-out var only used in commented-out code.
17731
177322007-08-29 Romain Francoise <romain@orebokech.com>
17733
17734 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
17735 QUIT hasn't been provided.
17736
177372007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
17738
17739 * callproc.c (child_setup, getenv_internal): Use the
17740 display-environment-variable and term-environment-variable frame params.
17741 (set_initial_environment): Initialise Vprocess_environment.
17742
17743 * config.in: Disable multi-keyboard support on a mac.
17744
17745 * frame.c (Qterm_environment_variable)
17746 (Qdisplay_environment_variable): New variables.
17747 (syms_of_frame): Intern and staticpro them.
17748 (Fmake_terminal_frame): Disable output method test.
17749
17750 * frame.h: Declare them here.
17751
17752 * macfns.c (x_set_mouse_color): Get rif from the frame.
17753 (x_set_tool_bar_lines): Don't use updating_frame.
17754 (mac_window): Add 2 new parameters for consistency with other systems.
17755 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
17756 frame parameters following what is done in X11 and w32. Don't use
17757 FRAME_MAC_DISPLAY_INFO.
17758 (Fx_open_connection, start_hourglass): Remove window-system check.
17759 (x_create_tip_frame): Get the keyboard from the terminal.
17760
17761 * macmenu.c: Reorder includes.
17762 (Fx_popup_menu): Use terminal specific mouse_position_hook.
17763
17764 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
17765 terminal parameter.
17766 (x_clear_frame): Add a frame parameter.
17767 (note_mouse_movement): Get rif from the frame.
17768 (mac_term_init): Initialize the terminal.
17769 (mac_initialize): Make static and move terminal initialization ...
17770 (mac_create_terminal): ... to this new function.
17771
17772 * macterm.h (struct mac_display_info): Add terminal.
17773 (mac_initialize): Delete declaration.
17774
17775 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
17776
17777 * sysdep.c: Comment out text after #endif.
17778
17779 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
17780 is defined. Better initialize ttys in windows. Use terminal
17781 specific mouse_position_hook.
17782
17783 * termhooks.h (union display_info): Add mac_display_info.
17784
17785 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
17786 Set the default minibuffer frame, window_system and the rest of the
17787 frame parameters following what is done in X11.
17788
17789 * w32term.c (w32_initialize): Make static.
17790
17791 * xselect.c (x_handle_selection_clear): Only access
17792 terminal->kboard when MULTI_KBOARD is defined.
17793
17794 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
17795 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
17796
177972007-08-29 Jason Rumney <jasonr@gnu.org>
17798
17799 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
17800 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
17801
17802 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
17803 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
17804
17805 * keyboard.c (restore_kboard_configuration): Only define when
17806 MULTI_KBOARD defined.
17807
17808 * makefile.w32-in: Update dependancies from Makefile.in.
17809 (OBJ1): Add terminal.$(O)
17810
17811 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
17812 Don't define function body.
17813 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
17814
17815 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
17816
17817 * w32.c (request_sigio, unrequest_sigio): Remove.
17818
17819 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
17820 (w32con_clear_frame, w32con_clear_end_of_line)
17821 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
17822 (w32con_delete_glyphs, w32con_set_terminal_window)
17823 (scroll_line, w32_sys_ring_bell): Add frame arg.
17824 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
17825 Add terminal arg.
17826 (PICK_FRAME): Remove.
17827 (w32con_write_glyphs): Use frame specific terminal coding.
17828 (one_and_only_w32cons): New global variable.
17829 (initialize_w32_display): Use it for storing hooks.
17830 (create_w32cons_output): New function.
17831
17832 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
17833 arg a frame.
17834
17835 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
17836 Set window_system.
17837 (x_set_tool_bar_lines): Don't use updating_frame.
17838 (Fx_create_frame): Set terminal and ref count.
17839 (Fx_open_connection): Remove window-system check.
17840
17841 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
17842
17843 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
17844 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
17845 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
17846 Add frame arg.
17847 (x_delete_terminal, w32_create_terminal): New functions.
17848 (w32_term_init): Create a terminal.
17849 (w32_initialize): Move terminal specific initialization to
17850 w32_create_terminal.
17851
17852 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
17853 (w32_clear_rect, w32_clear_area): Use background from frame.
17854 (w32_display_info): Add terminal.
17855 (w32_sys_ring_bell, x_delete_display): Declare here.
17856
17857 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
17858
17859 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
17860
178612007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
17862
17863 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
17864 Fix get_named_tty calls for the controlling tty.
17865
178662007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
17867
17868 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
17869
178702007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
17871
17872 * term.c (tty_insert_glyphs): Add missing first parameter.
17873
178742007-08-29 Károly Lőrentey <karoly@lorentey.hu>
17875
17876 * buffer.c (Fbuffer_list, Fbury_buffer):
17877 Take frame->buried_buffer_list into account.
17878
17879 * cm.c (current_tty): New variable, for cmputc().
17880 (cmputc): Use it.
17881 (cmcheckmagic): Add tty parameter, look up terminal streams there.
17882 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
17883 (cmgoto): Add tty parameter. Pass it on to calccost().
17884 Use emacs_tputs() instead of tputs().
17885
17886 * cm.h (emacs_tputs): New macro to set current_tty, and then call
17887 tputs().
17888 (current_tty): New variable, for cmputc().
17889 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
17890
17891 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
17892 (internal_condition_case, internal_condition_case_1)
17893 (internal_condition_case_2): Don't abort when x_catching_errors.
17894
17895 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
17896 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
17897 prevent crashes caused by bogus longjmps in read_char.
17898
17899 * keymap.h (Fset_keymap_parent): Add EXFUN.
17900
17901 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
17902 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
17903 Remove redundant definition.
17904
17905 * macfns.c (x_set_mouse_color, x_make_gc):
17906 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17907
17908 * w32term.c (x_free_frame_resources):
17909 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17910 (w32_initialize): Use the accessor macros for terminal characteristics.
17911
17912 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
17913 Use the accessor macros for terminal characteristics.
17914 * msdos.c (internal_terminal_init): Use the accessor macros for
17915 terminal characteristics.
17916 (ScreenVisualBell, internal_terminal_init):
17917 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17918
17919 * termopts.h (no_redraw_on_reenter): Declare.
17920
17921 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
17922 (mark_terminals, mark_ttys): Declare.
17923 (Fgarbage_collect): Call them.
17924 (mark_object): Mark buried_buffer_list.
17925
17926 * prefix-args.c: Include stdlib.h for exit.
17927
17928 * syssignal.h: Add comment.
17929
17930 * indent.c: Include stdio.h.
17931
17932 * window.h (Vinitial_window_system): Declare.
17933 (Vwindow_system): Delete declaration.
17934
17935 * fontset.c (Finternal_char_font): Use FRAME_RIF.
17936
17937 * image.c (lookup_image): Don't initialize `c' until the xasserts
17938 have been run.
17939
17940 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
17941 FRAME_FOREGROUND_PIXEL.
17942
17943 * print.c (print_preprocess): Don't lose print_depth levels while
17944 iterating.
17945
17946 * widget.c (update_from_various_frame_slots):
17947 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17948
17949 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
17950 frames.
17951 (window_internal_height): Remove bogus make_number call.
17952 (init_window_once): Call make_terminal_frame with two zero parameters.
17953
17954 * fileio.c (Fread_file_name): Update comment.
17955
17956 * callint.c (Fcall_interactively):
17957 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
17958 Make sure it is correctly unwound.
17959
17960 * xsmfns.c (x_session_close): New function.
17961
17962 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
17963 Delete declarations.
17964
17965 * xterm.h: Remove declaration for x_fully_uncatch_errors.
17966 (x_output): Remove background_pixel and foreground_pixel fields.
17967 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
17968 (x_delete_device, x_session_close): Declare.
17969
17970 * lread.c: Include setjmp.h. Update declaration of `read_char'.
17971 (read_filtered_event): Call `read_char' with a local
17972 `wrong_kboard_jmpbuf'.
17973
17974 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
17975 Don't call single_kboard_state. Use FRAME_RIF.
17976
17977 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
17978 systems.
17979
17980 * lisp.h (set_process_environment): Rename to `set_global_environment'.
17981 (Fframe_with_environment, Fset_input_meta_mode)
17982 (Fset_quit_char): EXFUN.
17983 (x_create_device, tty_output, terminal, tty_display_info): Declare.
17984 (init_sys_modes, reset_sys_modes): Update prototypes.
17985 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
17986
17987 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
17988 Vlocal_key_translation_map, and Vkeyboard_translate_table.
17989 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
17990 Delete declarations.
17991 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
17992 (temporarily_switch_to_single_kboard, tty_read_avail_input):
17993 New declarations.
17994
17995 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
17996 already does that during init_display(). Call syms_of_keymap
17997 before syms_of_keyboard. Call `syms_of_terminal'.
17998 Call set_initial_environment, not set_process_environment.
17999 (shut_down_emacs): Call reset_all_sys_modes() instead of
18000 reset_sys_modes().
18001
18002 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
18003 (internal_resolve_face_name, resolve_face_name_error): New functions.
18004 (resolve_face_name): Protect against loops and errors thrown by Fget.
18005 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
18006 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
18007
18008 * scroll.c: Replace CURTTY() with local variables throughout the
18009 file (where applicable).
18010 (calculate_scrolling, calculate_direct_scrolling)
18011 (scrolling_1, scroll_cost): Use the accessor macros for terminal
18012 characteristics.
18013
18014 * keymap.c (Vfunction_key_map): Remove.
18015 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
18016 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
18017 (Vkey_translation_map): Remove.
18018 (syms_of_keymap): Remove DEFVAR for key-translation-map.
18019 (Fdescribe_buffer_bindings)
18020 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
18021 Update for terminal-local key-translation-map.
18022
18023 * Makefile.in (callproc.o): Update dependencies.
18024 (lisp, shortlisp): Add termdev.elc.
18025 (obj): Add terminal.o.
18026 (terminal.o): Add dependencies.
18027 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
18028 (data.o, fns.o): Add termhooks.h dependency.
18029 (SOME_MACHINE_LISP): Add dnd.elc.
18030 (minibuf.o): Fix typo.
18031 Update dependencies.
18032
18033 * data.c (do_symval_forwarding, store_symval_forwarding)
18034 (find_symbol_value): Use the selected frame's keyboard, not
18035 current_kboard.
18036
18037 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
18038 Vwindow_system.
18039
18040 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
18041 Fmenu_bar_open.
18042 (syms_of_xmenu): Update defsubr.
18043 (mouse_position_for_popup, Fx_popup_menu)
18044 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
18045 (set_frame_menubar, free_frame_menubar)
b97439ce 18046 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
18047 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
18048 an X frame.
18049
18050 * xselect.c (x_own_selection): Abort if not an X frame.
18051 (some_frame_on_display): Check if it is an X frame.
18052 (x_handle_selection_clear): Deal with MULTI_KBOARD.
18053
18054 * coding.c: Include frame.h and termhooks.h.
18055 (terminal_coding, keyboard_coding): Delete.
18056 (Fset_terminal_coding_system_internal)
18057 (Fset_keyboard_coding_system_internal)
18058 (Fkeyboard_coding_system)
18059 (Fterminal_coding_system): Add a terminal parameter.
18060 Get terminal_coding from the terminal.
18061 (init_coding_once): Don't call setup_coding_system here.
18062
18063 * dispextern.h (set_scroll_region, turn_off_insert)
18064 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
18065 (tty_clear_end_of_line, tty_setup_colors)
18066 (delete_tty, updating_frame)
18067 (produce_special_glyphs, produce_glyphs, write_glyphs)
18068 (insert_glyphs): Remove.
18069 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
18070 (tty_turn_off_highlight, get_tty_size): Add declaration.
18071 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
18072
18073 * frame.h (enum output_method): Add output_initial.
18074 (struct x_output): Delete.
18075 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18076 Access foreground_pixel and background_pixel directly from the frame.
18077 (tty_display): Delete.
18078 (struct frame): Add buried_buffer_list, foreground_pixel,
18079 background_pixel and terminal. Delete kboard.
18080 (union output_data): Add tty.
18081 (FRAME_KBOARD): Get the kboard from the terminal.
18082 (FRAME_INITIAL_P): New macro.
18083 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
18084 (Qterm_environment_variable, Qdisplay_environment_variable)
18085 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
18086 New declarations.
18087
18088 * termchar.h (tty_output, tty_display_info): New structures.
18089 (tty_list): Declare.
18090 (FRAME_TTY, CURTTY): New macros.
18091 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
18092 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
18093 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
18094 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
18095
18096 * callproc.c: Include frame.h and termhooks.h, for terminal
18097 parameters.
18098 (add_env): New function.
18099 (child_setup): Use it.
18100 (child_setup, getenv_internal): Handle the new Vprocess_environment.
18101 (getenv_internal): Fix get_terminal_param call.
18102 (Fgetenv_internal, egetenv): Update doc.
18103 (syms_of_callproc): Initialize Vprocess_environment to nil.
18104 Register and initialize them. Remove obsolete defvars. Update doc
18105 strings.
18106 (child_setup): Handle Vlocal_environment_variables.
18107 (getenv_internal): Add terminal parameter.
18108 Handle Vlocal_environment_variables.
18109 (Fgetenv_internal): Add terminal parameter.
18110 (child_setup, getenv_internal, Fgetenv_internal): Store the local
18111 environment in a frame (not terminal) parameter. Update doc strings.
18112 (set_initial_environment): Rename from set_global_environment.
18113 Store Emacs environment in initial frame parameter.
18114
18115 * xdisp.c (redisplay_internal): Update references to
18116 `previous_terminal_frame'.
18117 (display_mode_line, Fformat_mode_line): Replace calls to
18118 `push_frame_kboard' with `push_kboard'.
18119 (get_glyph_string_clip_rects): Add extra parentheses and
18120 braces to prevent compiler warnings.
18121 (calc_pixel_width_or_height): Add xassert to check that the
18122 frame is alive. Don't call `lookup_image' on a termcap frame.
18123 (message2_nolog, message3_nolog, redisplay_internal)
18124 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
18125 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
18126 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
18127 (Fx_display_pixel_width, Fx_display_pixel_height)
18128 (Fx_display_planes, Fx_display_color_cells)
18129 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
18130 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
18131 (Fx_display_backing_store, Fx_display_visual_class)
18132 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
18133 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
18134
18135 * xfns.c (x_set_foreground_color x_set_background_color)
18136 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
18137 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18138 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
18139 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
18140 terminal that is being deleted.
18141 (Fx_create_frame): Use `store_frame_param' to set `window-system'
18142 frame parameter, and make sure it overrides any user-supplied setting.
18143 (Fx_close_connection, Fx_synchronize): Unify argument names with
18144 the rest of the DEFUNs.
18145
18146 * dispnew.c (Fsend_string_to_terminal): Update call to
18147 `get_tty_terminal'.
18148 (Fredraw_frame, Fsend_string_to_terminal)
18149 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
18150 FRAME_TERMCAP_P and FRAME_TTY.
18151 (window_change_signal): Don't believe width/height values that are
18152 impossibly small.
18153 (Vinitial_window_system): Rename from Vwindow_system.
18154 (termscript, Wcm, rif): Delete.
18155
18156 * termhooks.h (struct terminal): New struct containing the
18157 previously global text display hooks and new members NAME,
18158 DELETED and PARAM_ALIST.
18159 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
18160 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
18161 (FRAME_RIF): New macros.
18162 (get_terminal_param, get_device): New declarations.
18163 (termscript): Delete declaration.
18164
18165 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
18166 (XTflash, x_free_frame_resources, x_scroll_bar_create)
18167 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
18168 FRAME_FOREGROUND_PIXEL.
18169 (x_fully_uncatch_errors): Disable definition.
18170 (x_scroll_bar_expose): Fix reference to foreground pixel.
18171 (XTread_socket): Disable loop on all X displays.
18172 (x_delete_terminal): Don't set terminal->deleted and let
18173 delete_terminal delete the frames on the terminal.
18174 (x_delete_display): Doc update to reflect changes in
18175 delete_terminal.
18176 (x_display_info) <terminal>: Move member earlier in the struct.
18177 (deleting_tty): Remove old variable.
18178 (Fsuspend_tty): Call clear_tty_hooks.
18179 (Fresume_tty, init_tty): Call set_tty_hooks.
18180 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
18181 errors on X frames.
18182 (x_catch_errors_unwind): Abort if x_error_message is NULL.
18183 (handle_one_xevent): Initialize `f' to NULL.
18184 (x_delete_terminal, x_create_terminal): New functions.
18185 (XTset_terminal_modes, XTreset_terminal_modes)
18186 (XTread_socket, x_connection_closed, x_term_init)
18187 (x_term_init, x_delete_display): Add terminal parameter.
18188 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
18189 X connections.
18190
18191 * frame.c: Include termchar.h.
18192 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
18193 (Qwindow_system, Qenvironment, Qterm_environment_variable)
18194 (Qdisplay_environment_variable): New vars.
18195 (Fframep): Deal with output_initial.
18196 (Fframe-live-p): Doc fix.
18197 (Fwindow-system): New function.
18198 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
18199 (make_terminal_frame): Don't create frames on a terminal that is
18200 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18201 (store_frame_param): Check for found_for_frame before calling XFRAME.
18202 (Fmake_terminal_frame): Handle NULL tty names correctly.
18203 (syms_of_frame): Enhance doc string of `default-frame-alist'.
18204 (Fdelete_frame): Remove unused variable `count'. Don't allow other
18205 frames to refer to a deleted frame in their 'environment parameter.
18206 (Fframe_with_environment): New function.
18207 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
18208 (get_future_frame_param): New function.
18209 (Fmake_terminal_frame): Use it.
18210 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
18211
18212 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
18213 * sysdep.c (reset_sys_modes): Update for renames.
18214
18215 * keyboard.c (tty_read_avail_input): New function.
18216 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
18217 (syms_of_keyboard): Defsubr them.
18218 (Fset_input_meta_mode, Fset_quit_char): New functions.
18219 (Fset_input_mode): Split to above functions.
18220 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
18221 parameter. Use it in call to `read_char'.
18222 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
18223 Set wrong_kboard_jmpbuf correctly in recursive calls.
18224 Use current_kboard to access Vkeyboard_translate_table.
18225 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
18226 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
18227 Update longjmp invocations. Remember the original current_kboard,
18228 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
18229 changes it. Comment out unnecessary calls to
18230 `record_single_kboard_state' and `any_kboard_state'.
18231 Update recursive calls.
18232 (wrong_kboard_jmpbuf): Remove global variable.
18233 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
18234 Handle deleted interrupted_kboards correctly; that is a legal
18235 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
18236 and read_char calls. Abort if interrupted_kboard died in read_char.
18237 (any_kboard_state, single_kboard_state)
18238 (push_frame_kboard): Remove function.
18239 (pop_kboard): Switch out of single_kboard mode if the kboard has
18240 been deleted. Remove unused variable. Help debugging by not
18241 changing current_kboard unnecessarily. Set current_kboard to the
18242 kboard of the selected frame when the stored kboard object has
18243 been deleted before pop_kboard.
18244 (temporarily_switch_to_single_kboard): Change first parameter to a
18245 frame pointer. Throw an error when caller wants to change kboards
18246 while in single_kboard mode. Don't push_kboard if we weren't in
18247 single kboard state. Don't pop_kboard if we popped into any
18248 kboard state.
18249 (restore_kboard_configuration): Abort if pop_kboard changed the
18250 kboard in single_kboard mode. Call pop_kboard only after setting
18251 up single_kboard mode.
18252 (Frecursive_edit): Switch to single_kboard mode only in nested
18253 command loops.
18254 (cmd_error, command_loop, command_loop_1, timer_check):
18255 Comment out unnecessary call to `any_kboard_state' and
18256 `record_single_kboard_state'.
18257 (delete_kboard): Exit single_kboard mode if we have just deleted
18258 that kboard. Use FRAME_KBOARD.
18259 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
18260 `fatal_error_signal'.
18261 (record_single_kboard_state): Don't push_kboard if we weren't in
18262 single kboard state. Don't pop_kboard if we popped into any
18263 kboard state.
18264 (push_frame_kboard): Rename to push_kboard.
18265 (kbd_buffer_get_event): Use FRAME_TERMINAL.
18266 (read_avail_input): Read input from all terminals.
18267 (mark_kboards): Also mark Vkeyboard_translate_table.
18268 (kbd_buffer_store_event_hold): Simplify condition.
18269 (read_key_sequence): Reinitialize fkey and keytran at each replay.
18270 (Vkeyboard_translate_table): Move to struct kboard.
18271 (init_kboard): Initialize Vkeyboard_translate_table.
18272 (syms_of_keyboard): Use DEFVAR_KBOARD to define
18273 Vkeyboard_translate_table. Update doc strings. Update docs of
18274 local-function-key-map and function-key-map.
18275
18276 * terminal.c: New file.
18277
18278 * term.c: Include errno.h.
18279 (Vring_bell_function, device_list, initial_device)
18280 (next_device_id, ring_bell, update_begin, update_end)
18281 (set_terminal_window, cursor_to, raw_cursor_to)
18282 (clear_to_end, clear_frame, clear_end_of_line)
18283 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
18284 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
18285 (syms_of_term): Move their initialization to terminal.c.
18286 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
18287 (Ftty_display_color_cells)
18288 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
18289 (clear_tty_hooks, set_tty_hooks)
18290 (init_tty, maybe_fatal): New functions.
18291 (Ftty_type): Return nil if terminal is not on a tty instead of
18292 throwing an error. Doc update.
18293 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
18294 Doc update. Initialize new subrs and variables.
18295 (delete_tty): Use terminal->deleted.
18296 (tty_set_terminal_modes): Rename from set_terminal_modes.
18297 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
18298 (set_scroll_region): Rename to `tty_set_scroll_region'.
18299 (turn_on_insert): Rename to `tty_turn_on_insert'.
18300 (turn_off_insert): Rename to `tty_turn_off_insert'.
18301 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
18302 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
18303 (toggle_highligh): Rename to `tty_toggle_highlight'.
18304 (background_highlight): Rename to `tty_background_highlight'.
18305 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
18306 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
18307 (tty_set_scroll_region, tty_background_highlight)
18308 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
18309 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
18310 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
18311 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
18312 Add static modifier.
18313 (tty_reset_terminal_modes, tty_set_terminal_window)
18314 (tty_set_scroll_region, tty_background_highlight)
18315 (tty_highlight_if_desired, tty_cursor_to)
18316 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
18317 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
18318 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
18319 renames.
18320
183212007-08-28 Jan Djärv <jan.h.d@swipnet.se>
18322
18323 * keyboard.c: Qrtl is new.
18324 (parse_tool_bar_item): Handle :rtl keyword.
18325 (syms_of_keyboard): Intern :rtl keyword.
18326
18327 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
18328
18329 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
18330 so no Lisp code is executed.
18331 (file_for_image, find_rtl_image): New functions.
18332 (xg_get_image_for_pixmap): Use file_for_image.
18333 (update_frame_tool_bar): If direction is RTL, use RTL image if
18334 defined. Use Gtk stock images if defined.
18335
183362007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18337
18338 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
18339 for nonexistent or zero-width glyph in composition glyph.
18340
183412007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
18342
18343 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
18344
18345 * xdisp.c (Finvisible_p): New function.
18346 (syms_of_xdisp): defsubr it.
18347
183482007-08-24 Juanma Barranquero <lekktu@gmail.com>
18349
18350 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
18351 Doc fixes.
18352
183532007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18354
18355 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
18356
183572007-08-24 Martin Rudalics <rudalics@gmx.at>
18358
18359 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
18360 whether decoding has modified buffer contents.
18361
183622007-08-24 Jason Rumney <jasonr@gnu.org>
18363
18364 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
18365 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
18366 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
18367 (init_svg_functions) [HAVE_NTGUI]: New function.
18368 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
18369 (svg_load_image): Use them.
18370 (svg_load_image) [HAVE_NTGUI]: Implement background.
18371
183722007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18373
18374 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
18375 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
18376 (LIBX): Remove @RSVG_LIBS@.
18377 (LIBES): Add $(RSVG_LIBS).
18378
18379 * image.c (svg_load_image): Blend with specified background if exists.
18380 Use IMAGE_BACKGROUND. Add Mac OS Support.
18381
18382 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
18383 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
18384 Remove macros.
18385 [MAC_OSX] (socket_callback): Do nothing.
18386 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
18387 ReceiveNextEvent.
18388 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
18389 socket_callback.
18390 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
18391
183922007-08-22 Glenn Morris <rgm@gnu.org>
18393
18394 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
18395
183962007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
18397
18398 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
18399
18400 * image.c: Add support for SVG images. Some additional comments
18401 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
18402 (svg_image_p): New function to test for SVG image.
18403 (svg_load): New function to load SVG image.
18404 (svg_load_image): New function, helper for svg_load.
18405 (Qsvg): New Lisp_object.
18406 (svg_keyword_index): New enum.
18407 (svg_format): New static `image_keyword' struct.
18408 (svg_type): New static `image_type' struct.
18409 (librsvg/rsvg.h): Include it.
18410
184112007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
18412
18413 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
18414
184152007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
18416
18417 * lread.c (Qold_style_backquotes): New var.
18418 (syms_of_lread): Init and staticpro it.
18419 (load_warn_old_style_backquotes): New fun.
18420 (Fload): Use them to warn about old style backquotes.
18421 (end_of_file_error, Fload): Remove unused vars.
18422
18423 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
18424
18425 * lread.c (Vold_style_backquotes): New var.
18426 (syms_of_lread): Init and export it to Elisp.
18427 (read1): Set it when we find an old-style (back)quote.
18428
184292007-08-22 Jason Rumney <jasonr@gnu.org>
18430
18431 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
18432
184332007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
18434
18435 * puresize.h (BASE_PURESIZE): Increase to 1140000.
18436
184372007-08-19 Richard Stallman <rms@gnu.org>
18438
18439 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
18440
184412007-08-19 Andreas Schwab <schwab@suse.de>
18442
18443 * alloc.c (pure): Round PURESIZE up.
18444
184452007-08-17 Jan Djärv <jan.h.d@swipnet.se>
18446
18447 * xterm.c (handle_one_xevent): Remove check that mouse click is in
18448 active frame.
18449
184502007-08-16 Richard Stallman <rms@gnu.org>
18451
18452 * eval.c (Fcommandp): Add parens to clarify.
18453
18454 * minibuf.c (Fall_completions): Use enum for type of table.
18455
18456 * emacs.c (USAGE2): Improve text.
18457
184582007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
18459
18460 * term.c (tty_default_color_capabilities): Declare static
18461 variables in file scope, to avoid HPUX compiler problem.
18462
184632007-08-13 Jan Djärv <jan.h.d@swipnet.se>
18464
18465 * gtkutil.c (update_frame_tool_bar): Use -1 as index
18466 to gtk_toolbar_insert.
18467
184682007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
18469
18470 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
18471
18472 * insdel.c (reset_var_on_error): New fun.
18473 (signal_before_change, signal_after_change):
18474 Use it to reset (after|before)-change-functions to nil in case of error.
18475 Bind inhibit-modification-hooks to t.
18476 Don't bind (after|before)-change-functions to nil while they run.
18477
184782007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18479
18480 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
18481 filling pixmap with stippled background.
18482
184832007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18484
18485 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
18486 Don't use invisible frame as parent window for repositioning.
18487
184882007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
18489
18490 * print.c (new_backquote_output): Rename from old_backquote_output.
18491 (print): Inverse its logic (according to its name) so as to match the
18492 behavior of new_backquote_flag in lread.c.
18493
184942007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18495
18496 * gmalloc.c (posix_memalign): New function.
18497
18498 * macterm.c (frame_highlight, frame_unhighlight): Don't call
18499 ActivateControl/DeactivateControl here.
18500 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
18501 frame-notice-user-settings is non-nil.
18502 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
18503 for kEventParamFMFontStyle.
18504 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
18505 mac_pass_command_to_system and mac_pass_control_to_system here.
18506 (XTread_socket): Call ActivateControl/DeactivateControl here.
18507 (XTread_socket) [TARGET_API_MAC_CARBON]:
18508 Check mac_pass_command_to_system and mac_pass_control_to_system here.
18509 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
18510 for window repositioning.
18511
185122007-08-08 Glenn Morris <rgm@gnu.org>
18513
18514 * Replace `iff' in doc-strings and comments.
18515
185162007-08-07 Chong Yidong <cyd@stupidchicken.com>
18517
18518 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
18519
185202007-08-07 Martin Rudalics <rudalics@gmx.at>
18521
18522 * fileio.c (Finsert_file_contents): Run format-decode and
18523 after_insert_file_functions on entire buffer when REPLACE is
18524 non-nil and inhibit modification_hooks and point_motion_hooks.
18525 For consistency, run after_insert_file_functions iff something
18526 got inserted. Move signal_after_change and update_compositions
18527 after code running after_insert_file_functions. Make sure that
18528 undo_list doesn't record intermediate steps of the decoding process.
18529
185302007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18531
18532 * emacs.c (main)
18533 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
18534 Call malloc_enable_thread on interactive startup.
18535
18536 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
18537 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
18538 [USE_PTHREAD]: Conditionalize with it.
18539 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
18540 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
18541 New functions.
18542
185432007-08-06 Chong Yidong <cyd@stupidchicken.com>
18544
18545 * xdisp.c (redisplay_window): When restoring original buffer
18546 position, make sure it is still valid.
18547
18548 * image.c (png_load): Ignore png-supplied background color.
18549
185502007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18551
18552 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
18553 Use kCFAbsoluteTimeIntervalSince1970.
18554
18555 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
18556 New variable.
18557 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
18558 event loop should be quit.
18559 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
18560 Quit dialog event loop if quit_dialog_event_loop is set.
18561
18562 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
18563 (Selection): New typedef. Use instead of ScrapRef.
18564 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
18565 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
18566 (mac_clear_selection): Rename from clear_scrap.
18567 (get_flavor_type_from_symbol): New argument SEL and subsume function of
18568 scrap_has_target_type. All uses changed.
18569 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
18570 (mac_selection_has_target_p): New functions.
18571 (mac_put_selection_value): Rename from put_scrap_string.
18572 (mac_get_selection_value): Rename from get_scrap_string.
18573 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
18574 (put_scrap_private_timestamp, scrap_has_target_type)
18575 (get_scrap_private_timestamp): Remove functions.
18576 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
18577 (x_own_selection, x_get_local_selection):
18578 Use mac_valid_selection_value_p.
18579 (x_own_selection): Don't use put_scrap_private_timestamp.
18580 Record OWNERSHIP-INFO into Vselection_alist instead.
18581 (x_get_local_selection): Don't check type if request is local.
18582 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
18583 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
18584
185852007-08-04 Jan Djärv <jan.h.d@swipnet.se>
18586
18587 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
18588 add comment explaining why.
18589
185902007-08-03 Richard Stallman <rms@gnu.org>
18591
18592 * fileio.c (Fvisited_file_modtime): Use make_time.
18593
185942007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
18595
18596 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
18597 build.
18598
185992007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
18600
18601 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
18602
186032007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
18604
18605 * puresize.h (BASE_PURESIZE): Increase to 1130000.
18606
186072007-07-30 Richard Stallman <rms@gnu.org>
18608
18609 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
18610
186112007-07-29 Jan Djärv <jan.h.d@swipnet.se>
18612
18613 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
18614
186152007-07-28 Nick Roberts <nickrob@snap.net.nz>
18616
18617 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
18618 remote default-directory.
18619
18620 * buffer.c (mode-line-format): Update doc string.
18621
186222007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18623
18624 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
18625 scroll bar gap.
18626 (x_scroll_bar_create): Set bar->fringe_extended_p.
18627 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
18628 on frame edge. Check fringe background extension. Don't clear
18629 extended fringe background area.
18630
18631 * w32term.h (struct scroll_bar): New member fringe_extended_p.
18632 (w32_fill_area): Enclose multiple statements with do ... while (0).
18633
18634 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
18635 Extend fringe background to scroll bar gap.
18636 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
18637 Set bar->fringe_extended_p.
18638 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
18639 Put leftmost/rightmost scroll bars on frame edge. Check fringe
18640 background extension. Don't clear extended fringe background area.
18641
18642 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
18643 New member fringe_extended_p.
18644
186452007-07-25 Glenn Morris <rgm@gnu.org>
18646
18647 * Relicense all FSF files to GPLv3 or later.
18648
18649 * COPYING: Switch to GPLv3.
18650
186512007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
18652
18653 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
18654
18655 * data.c (Finteractive_form): Check for the presence of an
18656 `interactive-form' symbol property more thoroughly.
18657
18658 * data.c (Finteractive_form): Use an `interactive-form' property if
18659 present, analogous to the function-documentation property.
18660
186612007-07-24 Jason Rumney <jasonr@gnu.org>
18662
18663 * w32fns.c (x_real_positions): Get real position from OS instead of
18664 calculating it.
18665
186662007-07-23 Jason Rumney <jasonr@gnu.org>
18667
18668 * filelock.c (current_lock_owner): Allow for @ sign in username.
18669
186702007-07-22 Nick Roberts <nickrob@snap.net.nz>
18671
18672 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
18673 remote default-directory.
18674
18675 * buffer.c (mode-line-format): Describe above case in doc string.
18676
186772007-07-20 Eli Zaretskii <eliz@gnu.org>
18678
18679 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
18680 Define if not defined.
18681
186822007-07-18 Jason Rumney <jasonr@gnu.org>
18683
18684 * w32proc.c (w32_executable_type): Handle 64 bit executables.
18685
186862007-07-18 Richard Stallman <rms@gnu.org>
18687
18688 * data.c (Fsetq_default): Doc fix.
18689
18690 * eval.c (Fsetq): Doc fix.
18691
186922007-07-18 Juanma Barranquero <lekktu@gmail.com>
18693
18694 * coding.c (Ffind_operation_coding_system):
18695 * eval.c (For, Fand): Doc fixes.
18696 Reported by Johan Bockgård.
18697
186982007-07-18 Jan Djärv <jan.h.d@swipnet.se>
18699
18700 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
18701
18702 * xterm.h: Declare x_ewmh_activate_frame.
18703
18704 * xterm.c (x_ewmh_activate_frame): New function.
18705 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
18706
187072007-07-17 Martin Rudalics <rudalics@gmx.at>
18708
18709 * window.c (Fdisplay_buffer): If largest or LRU window is the
18710 only window, split it even if it is not eligible for splitting.
18711 This restores the original behavior broken by the 2007-07-15
18712 change.
18713
187142007-07-17 Glenn Morris <rgm@gnu.org>
18715
18716 * abbrev.c (abbrev_check_chars): New function.
18717 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
18718 Call abbrev_check_chars to check abbrev characters are word
18719 constituents. Doc fix.
18720
187212007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
18722
18723 * process.c (Fstart_process, Fmake_network_process)
18724 (read_process_output): Fix up last changes.
18725
187262007-07-16 Eli Zaretskii <eliz@gnu.org>
18727
18728 * makefile.w32-in (clean): Don't delete *~.
18729
187302007-07-16 Andreas Schwab <schwab@suse.de>
18731
18732 * window.c (Fdisplay_buffer): Use NILP.
18733 (Fset_window_scroll_bars): Likewise.
18734
187352007-07-15 Martin Rudalics <rudalics@gmx.at>
18736
18737 * window.c (window_min_size_2): New function.
18738 (window_min_size_1, size_window, Fdisplay_buffer)
18739 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
18740 windows without mode- or header-lines when window-min-height is
18741 too small.
18742 (size_window): Reset nodelete_p after testing it, following an
18743 earlier note by Kim F. Storm.
18744 (display_buffer): Do not set split_height_threshold to twice the
18745 value of window_min_height to avoid changing the value of a
18746 customizable variable. Rather explicitly check whether the
18747 height of the window that shall be splitted is at least as large
18748 as split_height_threshold.
18749 (Fwindow_full_width_p): New defun.
18750 (syms_of_window): Defsubr it.
18751
18752 * window.h: Add EXFUN for Fwindow_full_width_p.
18753
187542007-07-14 Jason Rumney <jasonr@gnu.org>
18755
18756 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
18757
187582007-07-14 Richard Stallman <rms@gnu.org>
18759
18760 * eval.c (maybe_call_debugger): New function.
18761 (find_handler_clause): Use maybe_call_debugger.
18762 Call it when the handler says `debug'.
18763 Eliminate DEBUGGER_VALUE_PTR.
18764 (Fsignal): Eliminate debugger_value.
18765 (Qdebug): New variable.
18766 (syms_of_eval): Initialize it.
18767
187682007-07-14 Juanma Barranquero <lekktu@gmail.com>
18769
18770 * eval.c (Fprogn):
18771 * keyboard.c (Ftrack_mouse):
18772 * print.c (Fwith_output_to_temp_buffer):
18773 * window.c (Fsave_window_excursion): Doc fix.
18774
187752007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
18776
18777 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
18778
187792007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
18780
18781 * process.h (struct Lisp_Process): Turn slots infd, outfd,
18782 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
18783 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
18784 read_output_delay, and read_output_skip from Lisp_Objects to ints.
18785 Remove unused encoding_carryover.
18786 * process.c: Adjust all functions accordingly.
18787
187882007-07-12 Richard Stallman <rms@gnu.org>
18789
18790 * term.c: Include unistd.h only if HAVE_UNISTD_H.
18791
187922007-07-11 Jason Rumney <jasonr@gnu.org>
18793
18794 * makefile.w32-in (LIBS): Include OLE32.
18795
18796 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
18797 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
18798
187992007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
18800
18801 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
18802 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
18803 from a Lisp_Object into a bare pointer.
18804 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
18805 Adjust the code correspondingly.
18806
18807 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
18808
18809 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
18810 (term_show_mouse_face): Remove unused var `j'.
18811 (handle_one_term_event): Remove unused vars `i' and `j'.
18812 Don't cast return value of ttyname since it's not necessary.
18813
188142007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
18815
18816 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
18817 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
18818
18819 * fns.c (map_char_table): Use an array of int for `indices' rather than
18820 an array of Lisp_Objects (which are only ever integers anyway).
18821 (Fmap_char_table): Update caller.
18822 * lisp.h: Update prototype.
18823 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
18824 * fontset.c (Ffontset_info):
18825 * casetab.c (set_case_table): Update callers.
18826
18827 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
18828
18829 * keymap.c (struct accessible_keymaps_data)
18830 (struct where_is_internal_data): New structures.
18831 (accessible_keymaps_1, where_is_internal_1): Use them to change
18832 interface to adhere to the one used by map_keymap.
18833 (Faccessible_keymaps, where_is_internal): Use map_keymap.
18834 (accessible_keymaps_char_table, where_is_internal_2): Remove.
18835
18836 * keymap.h (map_keymap_function_t): More informative prototype.
18837
188382007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
18839
18840 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
18841 (looking_at_1): Don't change search_regs and last_thing_searched
18842 if `inhibit-changing-match-data' is non-nil.
18843 (string_match_1, search_buffer, set_search_regs): Likewise.
18844 (syms_of_search): Add Lisp level definition for
18845 `inhibit-changing-match-data' and set it to nil.
18846 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
18847 start and end of the match, instead of using values in search_regs.
18848
188492007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
18850
18851 * minibuf.c (Fcompleting_read): New value `confirm-only'
18852 for `require-match'.
18853
188542007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
18855
18856 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
18857 part of the 2007-06-27 change to syms_of_fileio.
18858
188592007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18860
18861 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
18862 Check WINDOWP before using XWINDOW. Consolidate return statements.
18863
188642007-06-27 Richard Stallman <rms@gnu.org>
18865
18866 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
18867
188682007-06-27 Juanma Barranquero <lekktu@gmail.com>
18869
18870 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
18871
188722007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18873
18874 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
18875 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
18876 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
18877 (_free_internal, memalign): Use them.
18878 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
18879 Initialize to PTHREAD_MUTEX_INITIALIZER.
18880 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
18881 (morecore_nolock): Rename from morecore. All uses changed.
18882 Use only nolock versions of internal allocation functions.
18883 (_malloc_internal_nolock, _realloc_internal_nolock)
18884 (_free_internal_nolock): New functions created from
18885 _malloc_internal, _realloc_internal, and _free_internal.
18886 (_malloc_internal, _realloc_internal, _free_internal): Use them.
18887 Copy hook value to automatic variable before its use.
18888 (memalign): Copy hook value to automatic variable before its use.
18889
188902007-06-26 Kenichi Handa <handa@m17n.org>
18891
18892 * coding.c (Ffind_operation_coding_system): Docstring improved.
18893 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
18894
188952007-06-25 David Kastrup <dak@gnu.org>
18896
18897 * keymap.c (Fcurrent_active_maps): Add `position' argument.
18898 (Fwhere_is_internal): Adjust call to `current-active-maps' to
18899 cater for additional parameter.
18900
18901 * keymap.h: Adjust number of parameters to `current-active-maps'.
18902
18903 * doc.c (Fsubstitute_command_keys): Adjust call of
18904 `current-active-maps'.
18905
189062007-06-25 David Kastrup <dak@gnu.org>
18907
18908 * callint.c (Fcall_interactively): Make the parsing of interactive
18909 specs somewhat more readable.
18910
189112007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18912
18913 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
18914 to scroll bar gap also when bitmap fills fringe. Draw only foreground
18915 if extended background has already been filled.
18916
189172007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18918
18919 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
18920 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
18921
18922 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
18923 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
18924 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
18925 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
18926 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
18927 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
18928 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
18929 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
18930 Run timers during dialog popup.
18931 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
18932
189332007-06-21 Jason Rumney <jasonr@gnu.org>
18934
18935 * image.c (convert_mono_to_color_image): Swap fore and background.
18936
189372007-06-20 Jason Rumney <jasonr@gnu.org>
18938
18939 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
18940 (w32_free_bdf_font): Unmap memory not handle.
18941
189422007-06-20 Sam Steingold <sds@gnu.org>
18943
18944 * gmalloc.c (__morecore): Fix the declaration to comply with the
18945 definition.
18946
189472007-06-20 Juanma Barranquero <lekktu@gmail.com>
18948
18949 * w32term.c (w32_delete_display): Remove leftover declaration.
18950 (w32_define_cursor, w32_initialize): Make static.
18951
18952 * w32.c (_wsa_errlist): Fix typo in error message.
18953 (init_environment): Ignore any environment variable from the
18954 registry having a null value.
18955
189562007-06-20 Glenn Morris <rgm@gnu.org>
18957
18958 * Makefile.in (LIBGIF): Default to -lgif.
18959
189602007-06-17 Jason Rumney <jasonr@gnu.org>
18961
18962 * w32menu.c (add_menu_item): Don't use multibyte string functions on
18963 unicode strings.
18964
189652007-06-16 Juanma Barranquero <lekktu@gmail.com>
18966
18967 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
18968 Fix typo in docstring.
18969
189702007-06-16 Eli Zaretskii <eliz@gnu.org>
18971
18972 * w32menu.c (add_menu_item): Escape `&' characters in menu items
18973 and their keybindings.
18974
189752007-06-15 Chong Yidong <cyd@stupidchicken.com>
18976
18977 * composite.c (update_compositions): Fix last fix.
18978
189792007-06-14 Jason Rumney <jasonr@gnu.org>
18980
18981 * w32.c (get_process_times_fn): New function pointer.
18982 (globals_of_w32): Intialize it if present in kernel32.dll.
18983 (w32_get_internal_run_time): New function.
18984
18985 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
18986
189872007-06-14 Kenichi Handa <handa@etlken.m17n.org>
18988
18989 * composite.c (update_compositions): Check the validness of
18990 compositions.
18991
189922007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18993
18994 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
18995 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
18996
18997 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
18998 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
18999
19000 * macgui.h (USE_MAC_TOOLBAR): New define.
19001
19002 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19003 Return immediately unless popup is activated.
19004
19005 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
19006 background to scroll bar gap.
19007 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
19008 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
19009 scroll bars on frame edge. Check fringe background extension.
19010 Don't clear extended fringe background area.
19011 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
19012 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
19013 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
19014 [USE_MAC_TOOLBAR]: New macros.
19015 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
19016 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
19017 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
19018 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
19019 [USE_MAC_TOOLBAR]: New functions.
19020 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
19021 manually if previous repositioning has failed.
19022 (mac_handle_keyboard_event): Use precomputed event kind.
19023 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
19024 as tool bar item click. Handle mouse movement over tool bar items.
19025
19026 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
19027 toolbar_win_gravity.
19028 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
19029 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
19030 Add externs.
19031
19032 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
19033 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
19034
190352007-06-14 Chong Yidong <cyd@stupidchicken.com>
19036
19037 * image.c (search_image_cache): Remove unused variable.
19038
190392007-06-13 Chong Yidong <cyd@stupidchicken.com>
19040
19041 * xfns.c, xmenu.c: Link to xaw3d if available.
19042
190432007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19044
19045 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
19046 frame_foreground and frame_background.
19047
19048 * image.c (lookup_image): Save frame foreground and background colors.
19049 (search_image_cache): Check if saved and current frame colors match.
19050
190512007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
19052
19053 * regex.c (regex_compile): Remove the `regnum' counter.
19054 Use bufp->re_nsub instead. Add support for \(?N:RE\).
19055
190562007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
19057
19058 * term.c: Include intervals.h to declare Fget_text_property.
19059
190602007-06-10 Jason Rumney <jasonr@gnu.org>
19061
19062 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
19063
190642007-06-08 Juanma Barranquero <lekktu@gmail.com>
19065
19066 * callint.c (Fcall_interactively):
19067 * editfns.c (Fdelete_and_extract_region):
19068 * fileio.c (Fread_file_name):
19069 * fns.c (Fmapconcat):
19070 * keyboard.c (cmd_error_internal):
19071 * keymap.c (Fkey_description):
19072 * lread.c (openp):
19073 * minibuf.c (read_minibuf):
19074 * search.c (wordify):
19075 * sunfns.c (sel_read):
19076 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
19077 * xfns.c (x_default_scroll_bar_color_parameter):
19078 * xmenu.c (menu_help_callback):
19079 * xselect.c (Fx_get_atom_name):
19080 * xterm.c (x_term_init): Use empty_unibyte_string.
19081
190822007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
19083
19084 * alloc.c (init_strings): Initialize canonical empty strings.
19085 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
19086 canonical empty string when the requested size is 0.
19087
19088 * emacs.c (empty_unibyte_string): Rename from empty_string.
19089 (empty_multibyte_string): New canonical empty string.
19090 (syms_of_emacs): Don't initialize empty_string.
19091
19092 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
19093 string, if appropriate.
19094 (empty_unibyte_string, empty_multibyte_string): New externs.
19095 (empty_string): Remove extern.
19096
19097 * lread.c (syms_of_lread): Use empty_unibyte_string.
19098
190992007-06-07 Jason Rumney <jasonr@gnu.org>
19100
19101 * s/ms-w32.h: Don't define HAVE_TZNAME.
19102
19103 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
19104
191052007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19106
19107 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
19108
19109 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
19110 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
19111
19112 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19113 Don't call next handler.
19114 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
19115 Remove argument. Install handler to application.
19116 (set_frame_menubar): Don't change deep_p.
19117 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
19118 FRAME_OUTER_TO_INNER_DIFF_Y.
19119 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
19120 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
19121 [HAVE_DIALOGS]: New macros.
19122 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
19123 Use them.
19124 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
19125
19126 * macselect.c [MAC_OSX] (install_service_handler): Rename from
19127 init_service_handler. All callers changed. Return OSStatus value.
19128
19129 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
19130 All callers changed so as not to call SetPortWindowPort.
19131 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
19132 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
19133 mac_draw_string_common.
19134 (mac_draw_image_string_qd): Likewise.
19135 (mac_draw_string_common): Use them. Add INLINE.
19136 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
19137 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
19138 GetGlobalMouse.
19139 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
19140 and FRAME_OUTER_TO_INNER_DIFF_Y.
19141 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
19142 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
19143 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
19144 repositioning window to mac_handle_window_event.
19145 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
19146 saving window location to mac_handle_window_event
19147 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
19148 (install_menu_target_item_handler): Remove argument in extern.
19149 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
19150 Also accept command events.
19151 (do_keystroke): New function created from XTread_socket.
19152 (init_command_handler): Remove functions.
19153 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
19154 and save window location by kEventWindowShowing and kEventWindowHiding
19155 handlers here. Don't call next handler for window state change and
19156 focus events.
19157 (mac_handle_application_event, mac_handle_keyboard_event)
19158 [TARGET_API_MAC_CARBON]: New functions.
19159 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
19160 kEventWindowShowing and kEventWindowHiding events. Move installation
19161 of mouse, font, text input and menu target item handlers to
19162 install_application_handler.
19163 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
19164 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19165 New function.
19166 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19167 Register it.
19168 (XTread_socket) [TARGET_API_MAC_CARBON]:
19169 Consolidate SendEventToEventTarget calls.
19170 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
19171 Move application activation handler to mac_handle_application_event.
19172 Move keyboard handler to mac_handle_keyboard_event.
19173 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
19174 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
19175 init_command_handler. Call install_application_handler.
19176
19177 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
19178 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
19179
191802007-06-07 Glenn Morris <rgm@gnu.org>
19181
19182 * emacs.c (main): Use `emacs-copyright' in --version output.
19183
191842007-06-06 Chong Yidong <cyd@stupidchicken.com>
19185
19186 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
19187
191882007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19189
19190 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
19191
19192 * macgui.h: Replace WindowPtr with WindowRef.
19193
19194 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19195 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19196 Replace ControlHandle with ControlRef.
19197 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
19198
19199 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19200 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19201 Replace ControlHandle with ControlRef.
19202 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
19203 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
19204
19205 * macterm.h (struct scroll_bar): Rename member control_handle_low
19206 and control_handle_high to control_ref_low and control_ref_high.
19207 All uses changed.
19208 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
19209 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
19210 respectively. All uses changed.
19211 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
19212 (install_window_handler, remove_window_handler): Replace WindowPtr
19213 with WindowRef in externs.
19214
192152007-06-05 Juanma Barranquero <lekktu@gmail.com>
19216
19217 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
19218
192192007-06-03 Nick Roberts <nickrob@snap.net.nz>
19220
19221 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
19222
19223 * frame.c (Fmouse_position, Fmouse_pixel_position):
19224 Condition on HAVE_GPM too.
19225
19226 * term.c (term_mouse_highlight): Remove unused variables.
19227 (Fterm_open_connection): Set gpm_zerobased to 1.
19228 (term_mouse_movement, term_mouse_click, handle_one_term_event):
19229 Use zero based co-ordinates.
19230 (handle_one_term_event): Report a drag as mouse movement too.
19231
19232 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
19233
192342007-06-03 Chong Yidong <cyd@stupidchicken.com>
19235
19236 * image.c (search_image_cache): New function. Require background
19237 color match if background color is unspecified in the image spec.
19238 (uncache_image, lookup_image): Use it.
19239
192402007-06-01 Juanma Barranquero <lekktu@gmail.com>
19241
19242 * window.c (Fshrink_window): Reflow docstring.
19243
192442007-06-02 Chong Yidong <cyd@stupidchicken.com>
19245
19246 * Version 22.1 released.
19247
192482007-06-01 Richard Stallman <rms@gnu.org>
19249
19250 * xfns.c (x_encode_text): Add GCPRO.
19251
192522007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19253
19254 * xfns.c (x_set_name_internal): Save encoded name before
19255 x_encode_text in case string data is relocated.
19256
192572007-05-31 Richard Stallman <rms@gnu.org>
19258
19259 * buffer.c (syms_of_buffer): Doc fix.
19260
192612007-05-30 Nick Roberts <nickrob@snap.net.nz>
19262
19263 * sysdep.c (init_sys_modes): Add rather than replace with
19264 O_NONBLOCK.
19265
19266 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
19267 term_mouse_moveto.
19268
19269 * termhooks.h (term_mouse_moveto): New extern.
19270
19271 * term.c (mouse_face_window): Rename...
19272 (Qmouse_face_window): ...to this.
19273 (term_show_mouse_face, term_clear_mouse_face)
19274 (term_mouse_highlight): Use Qmouse_face_window.
19275 (term_mouse_moveto): New function.
19276 (term_mouse_position): Make it work.
19277 (syms_of_term): Uncomment assignment to mouse_position_hook.
19278 Staticpro Qmouse_face_window.
19279
192802007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19281
19282 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
19283 around current_column call.
19284
192852007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
19286
19287 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
19288 * xdisp.c (next_element_from_buffer):
19289 * window.c (delete_window):
19290 * term.c (term_mouse_highlight):
19291 * msdos.c (getdefdir):
19292 * macterm.c (mac_create_bitmap_from_bitmap_data)
19293 (init_font_name_table):
19294 * fns.c (Fsxhash):
19295 * data.c (Fmake_local_variable):
19296 * ccl.c (ccl_driver): Likewise.
19297
192982007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19299
19300 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
19301 Call mac_wakeup_from_rne on window size change.
19302
193032007-05-25 Chong Yidong <cyd@stupidchicken.com>
19304
19305 * image.c (uncache_image): Fix typo.
19306
193072007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
19308
19309 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
19310
193112007-05-22 Richard Stallman <rms@gnu.org>
19312
19313 * xterm.c (x_connection_closed): Remove NO_RETURN.
19314
193152007-05-22 Martin Rudalics <rudalics@gmx.at>
19316
19317 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
19318
193192007-05-21 Chong Yidong <cyd@stupidchicken.com>
19320
19321 * image.c (uncache_image): New function.
19322 (Fimage_refresh): New function.
19323
193242007-05-20 Jan Djärv <jan.h.d@swipnet.se>
19325
19326 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
19327
193282007-05-20 Nick Roberts <nickrob@snap.net.nz>
19329
19330 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
19331 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
19332
193332007-05-20 Nick Roberts <nickrob@snap.net.nz>
19334
19335 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
19336 conditional on [HAVE_GPM_H].
19337
193382007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
19339
19340 * syntax.c (skip_chars): Update syntax-table only after we checked that
19341 the new location is valid.
19342
193432007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19344
19345 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
19346 mac_get_window_bounds.
19347
193482007-05-20 Nick Roberts <nickrob@snap.net.nz>
19349
19350 * Makefile.in (LIBGPM): Allow it to be set from configure.
19351 If set then link Emacs with it.
19352
19353 * config.in: Regenerate.
19354
19355 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
19356 New externs.
19357
19358 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
19359 Include gpm.h.
19360 (handle_one_term_event, term_gpm): New externs.
19361
19362 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
19363 and allow it to be interrupted by SIGIO.
19364
19365 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
19366 (wait_reading_process_output): Wait on gpm_fd too.
19367 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
19368 (add_gpm_wait_descriptor_called_flag): New variable.
19369 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
19370
19371 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
19372 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
19373 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
19374 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
19375 (make_lispy_event): Add case GPM_CLICK_EVENT.
19376 (read_avail_input): Handle mouse input.
19377
19378 * term.c (write_glyphs_with_face): New function.
19379 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
19380 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
19381 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
19382 (mouse_face_face_id, term_gpm, pos_x, pos_y)
19383 (last_mouse_x, last_mouse_y): New variables.
19384 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
19385 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
19386 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
19387 (Fterm_close_connection): New functions.
19388 (term_init): Initialise mouse_face_window.
19389
193902007-05-19 Chong Yidong <cyd@stupidchicken.com>
19391
19392 * xdisp.c (redisplay_window): If first window line is a
19393 continuation line, recompute the new window start instead of
19394 recentering.
19395
193962007-05-18 Glenn Morris <rgm@gnu.org>
19397
19398 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
19399 Suggested by Alfred M. Szmidt <ams@gnu.org>.
19400
194012007-05-17 Glenn Morris <rgm@gnu.org>
19402
19403 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
19404
194052007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19406
19407 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
19408 dead key repeat and up events.
19409
194102007-05-14 Chong Yidong <cyd@stupidchicken.com>
19411
19412 * image.c (pbm_load): Check image size for monochrome pbm.
19413
194142007-05-13 Chong Yidong <cyd@stupidchicken.com>
19415
19416 * xterm.c (XTread_socket): Revert last change.
19417
194182007-05-12 Chong Yidong <cyd@stupidchicken.com>
19419
19420 * image.c (pbm_load): Correctly check image size for greyscale pbm.
19421
19422 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
19423
194242007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19425
19426 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
19427 mixup (YAILOM).
19428
194292007-05-07 Andreas Schwab <schwab@suse.de>
19430
19431 * keymap.c (Flookup_key): Fix typo in last change.
19432
194332007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19434
19435 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
19436 mapping for unibyte strings.
19437
194382007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19439
19440 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
19441 (Fx_popup_dialog) [MAC_OSX]: Likewise.
19442
194432007-04-29 Richard Stallman <rms@gnu.org>
19444
19445 * insdel.c (replace_range): For undo, record insertion first.
19446
194472007-04-29 Andreas Schwab <schwab@suse.de>
19448
19449 * lisp.h (VECSIZE): Use OFFSETOF.
19450
194512007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19452
19453 * xdisp.c (try_window_reusing_current_matrix): Fix number of
19454 disabled lines.
19455
194562007-04-28 Richard Stallman <rms@gnu.org>
19457
19458 * lread.c (read_escape): In a string, \s is always space.
19459
194602007-04-27 Jan Djärv <jan.h.d@swipnet.se>
19461
19462 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
19463
19464 * gtkutil.c (xg_update_menubar, create_menus): Create empty
19465 submenu for menu bar items.
19466
19467See ChangeLog.10 for earlier changes.
19468
19469;; Local Variables:
19470;; coding: utf-8
19471;; add-log-time-zone-rule: t
aac0c6e3
MR
19472;; End:
19473
76b6f707 19474 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
19475
19476 This file is part of GNU Emacs.
19477
19478 GNU Emacs is free software: you can redistribute it and/or modify
19479 it under the terms of the GNU General Public License as published by
19480 the Free Software Foundation, either version 3 of the License, or
19481 (at your option) any later version.
19482
19483 GNU Emacs is distributed in the hope that it will be useful,
19484 but WITHOUT ANY WARRANTY; without even the implied warranty of
19485 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19486 GNU General Public License for more details.
19487
19488 You should have received a copy of the GNU General Public License
19489 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
19490
19491;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40