* nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
5dd9a6f7
AR
12009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2
3 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
4
c902b920
JR
52009-07-22 Jason Rumney <jasonr@gnu.org>
6
7 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]: Position
8 IME window at cursor (Bug#2570).
9 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
10 (globals_of_w32fns): Dynamically load functions required above.
11
12 * w32term.c (w32_draw_window_cursor): Send message to reposition
13 any IME window.
14
090101cf
CY
152009-07-21 Chong Yidong <cyd@stupidchicken.com>
16
17 * fileio.c: Revert 2009-07-16 changes.
18 (Vauto_save_include_big_deletions): New variable.
19 (Fdo_auto_save): Disable auto-save only if
20 auto-save-include-big-deletions is nil.
21
e6583e3d
CY
222009-07-21 Chong Yidong <cyd@stupidchicken.com>
23
24 * xdisp.c (move_it_to): For continued lines ending in a tab, take
25 the overflowed pixels into account (Bug#3879).
26
ece435a5
KR
272009-07-21 Ken Raeburn <raeburn@raeburn.org>
28
29 * lread.c (load_depth): New variable.
30 (Fload, load_unwind, init_lread): Set it to the load recursion
31 depth; set load_in_progress as a simple boolean based on the
32 current load_depth. (Bug#3892)
33
40b2d973
AR
342009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
35
36 * nsfont.m (ns_has_attribute): Remove.
37 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
38
10be7e0d
JL
392009-07-18 Juri Linkov <juri@jurta.org>
40
41 * process.c (Fset_process_query_on_exit_flag): Mention killing
42 a buffer in docstring.
43
fa055055
KH
442009-07-17 Kenichi Handa <handa@m17n.org>
45
46 * casetab.c (shuffle): Fix the logic of setting up the cycle.
47
042f7b69
YM
482009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
49
50 * nsfns.m (Fns_set_alpha): Remove function.
51 (syms_of_nsfns): Don't defsubr it.
52
53 * nsterm.m (ns_get_color): Remove incompatible color formats.
54 (ns_color_to_lisp): Generate #rrggbb color format string.
55
4be941e3
RS
562009-07-16 Richard Stallman <rms@gnu.org>
57
58 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
59 (Fset_buffer_auto_saved): Handle save_length = -2.
60
4e6b227d
CY
612009-07-16 Chong Yidong <cyd@stupidchicken.com>
62
63 * xterm.c (Qx_gtk_map_stock): New var.
64
65 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
66 of calling intern each time.
67
a1856973
YM
682009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
69
70 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
71 does tiling.
72
73 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
74
497e54d8
KH
752009-07-14 Kenichi Handa <handa@m17n.org>
76
72d36834
KH
77 * font.c (font_vconcat_entity_vectors): New function.
78 (struct font_sort_data): New member font_driver_preference.
79 (font_compare): Check font_driver_preference.
80 (font_sort_entities): The format of the first argument changed.
81 (font_delete_unmatched): Likewise.
82 (font_list_entities): The return type changed.
83 (font_select_entity): The format of the second argument changed.
84 (font_find_for_lface): Adjusted for the above changes. Don't
85 suppress the checking of C even if the repertory supports it.
86 (Flist_fonts): Adjusted for the above changes.
87
497e54d8
KH
88 * ftfont.c (ftfont_spec_pattern): New arg langname. Caller
89 changed.
90 (ftfont_list): Adjusted for the change of ftfont_spec_pattern.
91 Reject a font who has adstyle property that is different from a
92 langname derived from registry property.
93 (ftfont_match): Adjusted for the change of ftfont_spec_pattern.
94
b6046155
EZ
952009-07-13 Eli Zaretskii <eliz@gnu.org>
96
97 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
98 local copy of dirfilename.
99
fb6b6049
KH
1002009-07-13 Kenichi Handa <handa@m17n.org>
101
e2402a5e
KH
102 * chartab.c (sub_char_table_ref_and_range): Fix the range check
103 against max_char.
104
fb6b6049
KH
105 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
106 calling XSYMBOL (sym).
107
65156807
EZ
1082009-07-11 Eli Zaretskii <eliz@gnu.org>
109
110 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]: New
111 function.
112 (directory_files_internal) [WINDOWSNT]: Bind
113 w32-get-true-file-attributes to either t or nil, depending whether
114 the filesystem of the directory is fast or slow.
115
116 * w32.c (logon_network_drive): Don't assume PATH is an absolute
117 file name.
118 (is_slow_fs): New function.
119 (stat): Use it to determine whether to issue more system calls to
120 get accurate file attributes, when w32-get-true-file-attributes is
121 `local'.
122
e0ab5fcf
JD
1232009-07-10 Jan Djärv <jan.h.d@swipnet.se>
124
125 * xfns.c (Fx_select_font): Remember last font selected in
126 x_last_font_name and use that the next time. Also try the frame
127 parameter font-parameter as default to the font dialog.
128
784ceded
KH
1292009-07-10 Kenichi Handa <handa@m17n.org>
130
131 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
132
fb8edc0b
EZ
1332009-07-09 Eli Zaretskii <eliz@gnu.org>
134
017dab84
EZ
135 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc
136 fix.
137
fb8edc0b
EZ
138 * w32.c (stat): Treat UNC file names as residing on remote
139 drives. (Bug#3542)
140
635c75b1
KH
1412009-07-09 Kenichi Handa <handa@m17n.org>
142
143 * fontset.c (fontset_find_font): Fix previous change.
144
c1d5ce94
MA
1452009-07-08 Michael Albinus <michael.albinus@gmx.de>
146
147 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
148 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
149 error flag.
150
edb61b39
KH
1512009-07-08 Kenichi Handa <handa@m17n.org>
152
374bf7e4
KH
153 * fontset.c (fontset_find_font): Fix the logic of handling
154 charset_matched.
155 (font_for_char): Delete unused var.
156 (generate_ascii_font_name): Delete it.
157
edb61b39
KH
158 * coding.h (JIS_TO_SJIS2): Fix the code range check.
159
160 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
161 (encode_coding_sjis): Fix the code range check.
162
0f3f018c
CY
1632009-07-07 Chong Yidong <cyd@stupidchicken.com>
164
165 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
166 (Fexpand_file_name): Copy string data properly (Bug#3772).
167
fcaf6f3a
JD
1682009-07-07 Jan Djärv <jan.h.d@swipnet.se>
169
170 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
171 first MapNotify.
172
6809ca75
KH
1732009-07-07 Kenichi Handa <handa@m17n.org>
174
175 * character.h (unibyte_has_multibyte_table): Delete extern.
176 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
177
178 * charset.c (Fset_charset_priority): Update charset_unibyte.
179 (syms_of_charset): Initialize charset_unibyte.
180
181 * character.c (unibyte_has_multibyte_table): Delete it.
182 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
183 charset_unibyte.
184 (multibyte_char_to_unibyte_safe): Likewise.
185 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
186
187 * xdisp.c (get_next_display_element): Decode it->c by
188 charset_unibyte.
189 (x_produce_glyphs): Likewise.
190
191 * .gdbinit (xcharset): Fix the treating $arg0.
192
ad9e2d54
EZ
1932009-07-04 Eli Zaretskii <eliz@gnu.org>
194
195 Emulation of `getloadavg' on MS-Windows.
196 * w32.c: Include float.h
197 (g_b_init_get_native_system_info, g_b_init_get_system_times)
198 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
199 (get_native_system_info, get_system_times): New functions.
200 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
201 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
202 (globals_of_w32): Initialize g_b_init_get_native_system_info,
203 g_b_init_get_system_times, and num_of_processors.
204
0a3472c7
JR
2052009-07-03 Jason Rumney <jasonr@gnu.org>
206
207 * w32term.c (w32_initialize): Use standard types.
208
80904120
EZ
2092009-07-03 Eli Zaretskii <eliz@gnu.org>
210
211 * dired.c (Ffile_attributes): Decode user and group names by the
212 locale's encoding. (Bug#3443)
213
6978862d
DN
2142009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
215
f8d23104
DN
216 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
217 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
218
219 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
220
221 * term.c (init_tty): Remove spurious #ifdef.
222
6978862d
DN
223 * m/mips.h: Mention this file is also used for netbsd.
224 * m/pmax.h: Remove file.
225
e044e4fc
JD
2262009-07-03 Jan Djärv <jan.h.d@swipnet.se>
227
228 * xterm.h (struct x_display_info): Add invisible_cursor.
229 (struct x_output): Add current_cursor.
230
231 * xterm.c (XTtoggle_invisible_pointer): New function.
232 (x_define_frame_cursor): Don't define cursor if invisible or the
233 same as before. Set current_cursor.
234 (x_create_terminal): Set toggle_invisible_pointer_hook.
235
236 * xfns.c (make_invisible_cursor): New function.
237 (x_set_mouse_color): Call make_invisible_cursor.
238 Set current_cursor.
239 (x_window): Set current_cursor.
240
241 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
242
243 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
244 inserting a character.
245 (read_avail_input): Call frame_make_pointer_visible.
246
247 * frame.c (Vmake_pointer_invisible): New variable.
248 (frame_make_pointer_invisible, frame_make_pointer_visible): New
249 functions.
250 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
251
252 * frame.h: Declare frame_make_pointer_invisible and
253 frame_make_pointer_visible.
254 (struct frame): Add pointer_invisible.
255
574c8efa
JD
2562009-07-02 Jan Djärv <jan.h.d@swipnet.se>
257
7b507248
JD
258 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
259 frame isn't visible.
260 (xg_frame_resized): If width/height is -1, get size of window
261 from X server.
262
263 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
264 for MapNotify.
265
835bdaa7
JD
266 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
267 here or call change_frame_size. Just call flush_and_sync.
268 (flush_and_sync): Reintroduced.
574c8efa 269
3f1c6666 2702009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 271
acd51077
JD
272 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky
273
274 * xterm.c (x_handle_net_wm_state): Also look for sticky.
275 (x_term_init): Initialize Xatom_net_wm_state_sticky.
276
277 * frame.h: Declare Qsticky.
278
cad9ef74
JD
279 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
280
281 * nsfns.m (ns_frame_parm_handlers): Ditto.
282
283 * frame.c: Declare Qsticky.
284 (frame_parms): Add sticky.
285
286 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
287
288 * xterm.h: Declare x_set_sticky.
289
290 * xterm.c (x_set_sticky): New function.
291
69b16610
JD
292 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
293 (xg_tool_bar_menu_proxy): Attach enter/leave events to
294 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
295
296 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
297
298 * frame.c: Qmaximized is new.
299 (x_set_frame_parameters): Do not handle fullscreen specially.
300 Only set width and height if explicitly set.
301 (x_set_fullscreen): Handle Qmaximized.
302 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
303 (syms_of_frame): Initialize Qmaximized.
304
305 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED. Declare
306 Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
307
308 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
309 for Expose event. Add call to x_check_fullscreen for MapNotify event.
310 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
311 set gravity to NorthWestGravity when USE_GTK.
312 (set_wm_state): New function.
313 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
314 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
315 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
316 or the case when no window manager is running. That means remove calls
317 to x_real_positions and x_fullscreen_adjust.
318
319 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
320 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
321 flush_and_sync.
322 (xg_height_changed): New function.
323 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
324 and gtk_window_set_policy. Set frame gravity after parsing the geometry
325 string.
326 (xg_update_frame_menubar, free_frame_menubar)
327 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
328 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
329 Remove calls to xg_frame_set_char_size.
330
fd503d99
KH
3312009-07-01 Kenichi Handa <handa@m17n.org>
332
333 * keyboard.c (decode_keyboard_code): New function.
334 (tty_read_avail_input): Decode the input bytes if necessary.
335
336 * coding.c (setup_coding_system): Initialize
337 coding->carryover_bytes to 0.
338 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
339 use Qno_conversion.
340
24ed93fb
YM
3412009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
342
343 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
344
99061dfc
CY
3452009-06-30 Chong Yidong <cyd@stupidchicken.com>
346
347 * xftfont.c (xftfont_open): Avoid passing NULL argument to
348 XftLockFace.
349
ff90fbde
JR
3502009-06-30 Jason Rumney <jasonr@gnu.org>
351
352 * w32term.c (w32_initialize): Use GetModuleHandle for library that
353 is already loaded.
354 Set user model ID if supported (bug#1849).
355
5f445726
JM
3562009-06-29 Jim Meyering <meyering@redhat.com>
357
358 Remove useless if-before-xfree test.
359 * nsfont.m (nsfont_close): Remove useless test.
360 * term.c (delete_tty): Likewise.
361 * w32.c (system_process_attributes): Likewise.
362 * w32font.c (w32font_close): Likewise.
363 * xfaces.c (x_free_gc): Likewise.
364 * xselect.c (buffer): Likewise.
365
b9607587
AS
3662009-06-28 Andreas Schwab <schwab@linux-m68k.org>
367
368 * process.c (send_process): Keep decoded string in a local
369 variable and protect it from GC. (Bug#3521)
370
89ba96f4
EZ
3712009-06-28 Eli Zaretskii <eliz@gnu.org>
372
373 * term.c (create_tty_output) [MSDOS]: #ifdef away.
374 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
375
098a1589
CY
3762009-06-28 Chong Yidong <cyd@stupidchicken.com>
377
485422be
CY
378 * xdisp.c (start_display, handle_face_prop)
379 (move_it_vertically_backward, cursor_row_fully_visible_p)
380 (redisplay_window, try_window_id, produce_image_glyph): Delete
381 some #ifdef-ed out code chunks that are now obsolete.
382
098a1589
CY
383 * xterm.c (x_update_window_begin, x_new_focus_frame)
384 (x_scroll_bar_handle_click, handle_one_xevent)
385 (handle_one_xevent, XTread_socket, x_focus_on_frame)
386 (x_make_frame_visible, x_make_frame_invisible)
387 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
388 code chunks that are now obsolete.
389
78c38319
MA
3902009-06-28 Michael Albinus <michael.albinus@gmx.de>
391
392 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
393 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
394 for hours, when optimzation is enabled.
395 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
396 (xd_read_message): Make them static.
397
4189ed40
CY
3982009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
399
400 * term.c (turn_on_face): Allow simultaneously bold and dim
401 terminal faces (Bug#3530).
402
cd9b5e16
CY
4032009-06-27 Chong Yidong <cyd@stupidchicken.com>
404
4e23bedb
CY
405 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
406
cd9b5e16
CY
407 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
408 truncation glyphs (Bug#3686).
409
07cc3c35
GM
4102009-06-27 Glenn Morris <rgm@gnu.org>
411
412 * m/pmax.h: Restore file, with only netbsd portions.
413
25c5550f
DR
4142009-06-26 David Reitter <david.reitter@gmail.com>
415
cd9b5e16 416 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 417
42d4a64f
KH
4182009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
419
420 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
421 the arg FORCE_SYMBOL.
422
930fe55b 4232009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
424
425 * fontset.c (fontset_find_font): When a usable rfont_def is found
426 in a fallback font-group, make it the first element of the group.
427
57ebc3fd
CY
4282009-06-24 Chong Yidong <cyd@stupidchicken.com>
429
430 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
431
f084f942
KH
4322009-06-24 Kenichi Handa <handa@m17n.org>
433
434 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
435 set for C.
436 (fontset_font): Record the availability of a font for C both in
437 the realized fontsets of the current one and the default one.
438
2f686c87
DN
4392009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
440
441 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
442 conditional, it is always defined on AIX.
443
666e158e
MB
4442009-06-23 Miles Bader <miles@gnu.org>
445
446 * window.c (Vrecenter_redisplay): New variable.
447 (syms_of_window): Initialize it.
448 (Qtty): New extern declaration.
449 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
450
c6da7cd2
JM
4512009-06-23 Jim Meyering <meyering@redhat.com>
452
632c2030
CY
453 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt): Use
454 xmalloc and xrealloc (not malloc and realloc), so subsequent heap
455 pointer dereferences are guaranteed to be valid.
c6da7cd2 456
678dca3d
KH
4572009-06-23 Kenichi Handa <handa@m17n.org>
458
74d75424
KH
459 * emacs.c (main): Call init_font ().
460
461 * font.h (Vfont_log): Extern it.
462 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
463
464 * font.c (font_sort_entities, font_list_entities)
465 (font_matching_entity, font_open_entity)
466 (font_close_object): Change font_add_log to FONT_ADD_LOG.
467 (Vfont_log): Delete static.
468 (font_log_env_checked): Delete this variable.
469 (font_add_log): Don't check font_log_env_checked.
470 (font_deferred_log): Check Vfont_log.
471 (init_font): New function.
472
678dca3d
KH
473 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
474
475 * w32font.c: Change font_add_log to FONT_ADD_LOG.
476
477 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
478
479 * xfont.c: Change font_add_log to FONT_ADD_LOG.
480
481 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
482 (face_for_char): Don't call font_deferred_log here.
483 (font_for_char): Likewise.
484
8a668709
CY
4852009-06-22 Chong Yidong <cyd@stupidchicken.com>
486
9a01ee33
CY
487 * w32term.c (x_draw_glyph_string): Use the glyph string's width
488 rather than its background_width for drawing the overline and
489 underline (Bug#489).
490
491 * xterm.c (x_draw_glyph_string): Use the glyph string's width
492 rather than its background_width for drawing the overline and
493 underline (Bug#489).
ec7c9926
CY
494 (xg_default_icon_file): New variable.
495 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
496 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 497
8a668709
CY
498 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
499 (load_overlay_strings): Remove externs.
500 (fast_find_position): Function deleted.
501 (mouse_face_from_buffer_pos): New function, based on
502 fast_find_position. Correctly handle before-strings,
503 display-strings, and after-strings (Bug#1220).
504 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
505
4d4c02d8
CY
5062009-06-21 Chong Yidong <cyd@stupidchicken.com>
507
508 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for
509 !HAVE_WINDOW_SYSTEM.
510 (move_it_in_display_line_to, move_it_in_display_line_to)
511 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
512
70243478
CY
5132009-06-21 Chong Yidong <cyd@stupidchicken.com>
514
515 * Branch for 23.1.
516
13087e59
JR
5172009-06-21 Jason Rumney <jasonr@gnu.org>
518
519 * w32term.c (keyboard_codepage): New static variable.
520 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
521 (w32_read_socket) [WM_CHAR]: Use it to decode character
522 input (bug#3237).
523 (w32_initialize): Initialize it.
524 (codepage_for_locale): New function.
525
4735b74e
KR
5262009-06-20 Ken Raeburn <raeburn@raeburn.org>
527
528 * process.c (status_message): Pass Faset index argument as a lisp
529 object, so as to work with USE_LISP_UNION_TYPE.
530
0e727afa
YM
5312009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
532
533 * coding.c (Ffind_coding_systems_region_internal):
534 Cache checked characters.
535
cf299835
KH
5362009-06-18 Kenichi Handa <handa@m17n.org>
537
538 * coding.c (decode_coding_iso_2022): Check MSB of bytes more
539 rigidly.
540
90f20d94
AS
5412009-06-18 Andreas Schwab <aschwab@redhat.com>
542
543 * xdisp.c (redisplay_internal): Check that the frame is still
544 live after redisplay of its windows.
545 (redisplay_windows): Check that the window is still live.
546
7f1faf1c
KH
5472009-06-17 Andreas Schwab <schwab@linux-m68k.org>
548
549 * coding.c (detect_coding_utf_16): Fix previous change.
550
cc13543e
KH
5512009-06-16 Kenichi Handa <handa@m17n.org>
552
553 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
554 UTF-16 by checking the dispersion of Eth and Oth bytes.
555
977b85f4
AS
5562009-06-15 Andreas Schwab <schwab@linux-m68k.org>
557
558 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
559
66bd43d1
KH
5602009-06-15 Kenichi Handa <handa@m17n.org>
561
562 * process.c (status_message): Fix previous change. Be sure to
563 decode a localized string.
564
cb5ca9c5
YM
5652009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
566
567 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
568 add comment explaining why.
569
ec7709ba 5702009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 571
ec7709ba 572 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 573
4b7f335c
AR
5742009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
575
576 * nsfont.m (ns_attribute_value): Remove.
577 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
578 (ns_has_attribute): Shrink the normal range.
579 (ns_findfonts): Don't worry about requested spec in determining
580 need for synthItal.
e41820ee 581 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 582
73b26103
SZ
5832009-06-14 Seiji Zenitani <zenitani@mac.com>
584
585 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
586
5753e4da
KH
5872009-06-11 Kenichi Handa <handa@m17n.org>
588
589 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
590 overhang for the static composition case.
591
3561b671
KH
5922009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
593
5753e4da
KH
594 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
595 overhang for the automatic composition case.
596
3561b671
KH
597 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
598 composition case.
599
852bbd41
CY
6002009-06-10 Chong Yidong <cyd@stupidchicken.com>
601
602 * xdisp.c (get_next_display_element): When handling wrap-prefix
603 and line-prefix, treat \n as a control character (bug#3502).
604
9903d1e6
KH
6052009-06-10 Kenichi Handa <handa@m17n.org>
606
607 * font.c (font_parse_family_registry): Fix for one-char foundry.
608 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
609
0bcbaaaa
CY
6102009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
611
612 * process.c (status_message): Fix handling of multibyte signal
613 string (Bug#3499).
614
40aa3f13
JM
6152009-06-09 Jim Meyering <meyering@redhat.com>
616
1f80c7e2
CY
617 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
618 color name is missing.
40aa3f13 619
72d51285
KH
6202009-06-09 Kenichi Handa <handa@m17n.org>
621
622 * charset.c (Fmap_charset_chars): In docstring, state clearly that
623 FROM-CODE and TO-CODE are codepoints of CHARSET.
624
c1d04d84
AR
6252009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
626
627 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
628
6292009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
630
631 Changes to support :script/:lang/:otf in NS font driver.
632 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
633 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
634 indicate not part of font driver interface, and change callers.
635 (ns_get_family): Remove pointless null check.
636 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
637 ns_spec_to_descriptor, ns_descriptor_to_entity.
638 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
639 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
640 (ns_spec_to_descriptor, ns_descriptor_to_entity)
641 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
642 (ns_get_req_script, ns_accumulate_script_ranges)
643 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
644 New functions.
645 (nsfont_list, nsfont_match): Use ns_findfonts.
646 (nsfont_open): Use font descriptor instead of traits.
647 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
648 (dump_glyphstring): Rename to ns_dump_glyphstring.
649
c7eb9816
AR
650 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
651
c1d04d84
AR
652 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
653
654 * fontset.c (fontset_from_font): Remove NS-specific code.
655
ec7709ba 6562009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
657
658 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
659 nonactive windows.
660
6612009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
662
663 * nsterm.m (ns_init_paths): Append path separator to INFOPATH
664 variable.
665
68852c13 6662009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
667
668 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
669
6756cd1d
CY
6702009-06-07 Chong Yidong <cyd@stupidchicken.com>
671
672 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
673 account for the overflowing of newlines into the last glyph on the
674 display line (Bug#3482).
675
28bf482a
DR
6762009-06-05 David Reitter <david.reitter@gmail.com>
677
ec7709ba
JB
678 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
679 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
680 Fns_selection_exists_p, Fns_selection_owner_p.
681
fdb55376
JR
6822009-06-03 Jason Rumney <jasonr@gnu.org>
683
684 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
685 available. (Bug#3379)
686
05129fbe
KH
6872009-05-29 Kenichi Handa <handa@m17n.org>
688
689 * coding.c (get_translation_table): Check
690 Venable_character_translation.
691
ec7709ba 6922009-05-26 David Reitter <david.reitter@gmail.com>
15891144 693
ec7709ba
JB
694 * nsterm.m (ns_raise_frame): Only raise frame if visible.
695 (x_make_frame_visible): Move frame to front rather than calling
15891144 696 ns_raise_frame().
ec7709ba 697 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 698 isn't key window.
ec7709ba 699 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
700 drawRect may be called by NSView even if the frame is hidden.
701
ec7709ba
JB
702 * nsfns.m (Fx_create_frame): Follow other ports in
703 determining visibility; default to t. Ensure async_visible is set.
15891144 704
21f73755
EZ
7052009-05-23 Eli Zaretskii <eliz@gnu.org>
706
707 * dired.c (Ffile_attributes): Doc fix.
708
34001e41
CY
7092009-05-22 Chong Yidong <cyd@stupidchicken.com>
710
711 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
712
46306a17
SM
7132009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
714
715 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
716 and xfont_scratch_props.
717 (syms_of_xfont): Do it here instead.
718 (xfont_find_ccl_program): Delete, unused.
719 (xfont_open): Delete unused var `i'.
720
ef6e0694
KH
7212009-05-21 Kenichi Handa <handa@m17n.org>
722
723 * fontset.c (Qlatin): Don't make it static.
724
46306a17
SM
725 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
726 New functions.
ef6e0694
KH
727 (xfont_scripts_cache, xfont_scratch_props): New variables.
728 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
729 (xfont_list_pattern): Argument changed. Callers changed.
730 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
731 (xfont_list): Don't reject a font spec with :script property.
732 (xfont_has_char): Fix setting of encoding.
733 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
734 xfont_scratch_props.
735
7362009-05-19 Kenichi Handa <handa@m17n.org>
737
46306a17 738 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
739 Callers changed.
740
7412009-05-18 Kenichi Handa <handa@m17n.org>
742
743 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
744
ac71ced7
SM
7452009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
746
747 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
748 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
749
1c6d1051
YM
7502009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
751
752 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
753 (x_delete_terminal): Dissociate resource database from display and
754 then call XrmDestroyDatabase before closing display.
755
9b9b779c
AR
7562009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
757
758 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
759 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
760 whether selected frame is viable before raising it (based on patch
761 by David Reitter), and improve commentary.
762 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 763
cccd42d5
KH
7642009-05-15 Kenichi Handa <handa@m17n.org>
765
766 * font.c (Ffont_spec): Check arguments.
767
337fbd17
CY
7682009-05-14 Chong Yidong <cyd@stupidchicken.com>
769
770 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
771 weight when testing attributes (Bug#3282).
772
47a6002f
JD
7732009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
774
775 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
776 what we expect to get in the next ConfigureNotify event.
777
9cb363db
YM
778 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
779 before Xft one (Bug#1696).
780
b9126609
CY
7812009-05-07 David Reitter <david.reitter@gmail.com>
782
783 * nsfns.m (Fx_display_planes): Compute bitplanes using
784 NSBitsPerPixelFromDepth (Bug#3207).
785
27a69fd9
CY
7862009-05-10 Chong Yidong <cyd@stupidchicken.com>
787
788 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
789
00f37552
TTN
7902009-05-10 Ulrich Mueller <ulm@gentoo.org>
791
792 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
793
2d82a920
DR
7942009-05-07 David Reitter <david.reitter@gmail.com>
795
ec7709ba
JB
796 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
797 Respect mouse face background.
2d82a920 798
46b0d52d
DR
7992009-05-07 David Reitter <david.reitter@gmail.com>
800
ec7709ba
JB
801 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
802 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
803 in ns_update_begin and ns_update_end.
804
ce1b23bb
SM
8052009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
806
5996e1b7
SM
807 * nsfns.m (ns_get_screen): Rewrite.
808 Don't presume selected-frame is of type `ns'.
809
ba98e3a0
SM
810 * font.c (font_update_drivers): Sanity fallback to avoid disabling
811 all drivers.
812
ce1b23bb
SM
813 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
814
bcda200f
YM
8152009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
816
817 * keyboard.h (add_user_signal): Fix typo in extern.
818
819 * lisp.h (add_user_signal): Remove extern.
820
821 * unexelf.c (unexec): Consider a section to precede the .bss section
822 if its addresses overlap that of .bss.
823 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
824 instead of dumping process.
825
864660a2
SM
8262009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
827
828 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
829
50da4e56
SM
8302009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
831
832 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
833
51520a1a
DN
8342009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
835
836 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
837 any statements.
838
409ea3a1
AS
8392009-05-02 Andreas Schwab <schwab@linux-m68k.org>
840
59c4c60f
AS
841 * process.c (read_process_output): Make sure the current buffer is
842 always restored.
843
409ea3a1
AS
844 * coding.c (record_conversion_result): Don't modify
845 Vlast_code_conversion_error for successful result.
846 (alloc_destination): Don't clobber conversion result. (Bug#1650)
847
56f00ed2
KH
8482009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
849
850 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 851 (load_charset_map): Remove unnecessary code.
56f00ed2 852
4491c9d2
DR
8532009-04-30 David Reitter <david.reitter@gmail.com>
854
35f5b128 855 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
856 through f24.
857
6970f632
CY
8582009-04-30 Chong Yidong <cyd@stupidchicken.com>
859
860 * xfaces.c (face_at_buffer_position): New arg base_face_id.
861
862 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
863 face_at_buffer_position.
864 (face_before_or_after_it_pos, get_next_display_element)
865 (note_mouse_highlight): Update face_at_buffer_position call.
866
867 * term.c (term_mouse_highlight):
868 * msdos.c (IT_note_mouse_highlight):
869 * fontset.c (Finternal_char_font):
35f5b128 870 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
871
872 * dispextern.h (face_at_buffer_position): Update prototype.
873
0c616f63
KH
8742009-04-30 Kenichi Handa <handa@m17n.org>
875
35f5b128 876 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 877
ad3aaf33
AS
8782009-04-29 Andreas Schwab <schwab@linux-m68k.org>
879
880 * callproc.c (Fcall_process): Fix GC protection. Make sure
881 current buffer is always restored.
882
c3c963a0
YM
8832009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
884
885 * atimer.c (init_atimer): Also clear stopped_atimers.
886
887 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
888
7e3386cb
YM
889 * process.c (create_process): Clean up merger residues of
890 2008-07-17 change.
891
91f68422
CY
8922009-04-29 Ulrich Mueller <ulm@gentoo.org>
893
894 * lread.c (Vread_circle): New variable.
895 (read1): Disable recursive read if Vread_circle is nil.
896
24b34550
KH
8972009-04-29 Kenichi Handa <handa@m17n.org>
898
899 * fontset.h (set_default_ascii_font): Delete extern.
900
901 * fontset.c (set_default_ascii_font): Delete this unused function.
902
903 * frame.c (x_set_font): When ARG is a font-object, check if the
904 font-object matches with the ASCII font-spec of the frame's
9c358bda 905 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 906
77bf07e1
AS
9072009-04-28 Andreas Schwab <schwab@linux-m68k.org>
908
909 * fns.c (Flocale_info): Protect vector from GC during decoding.
910
911 * process.c (Fstart_process): Protect argv strings from GC during
912 encoding.
913
2c55aacf
AS
9142009-04-27 Andreas Schwab <schwab@linux-m68k.org>
915
916 * sysdep.c: Include <ctype.h>.
917
b892d3c9
DR
9182009-04-27 David Reitter <david.reitter@gmail.com>
919
35f5b128 920 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
921 Remove commented-out code.
922
9d0644c4
JB
9232009-04-26 Johan Bockgård <bojohan@gnu.org>
924
925 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
926
b7053016
JR
9272009-04-25 Jason Rumney <jasonr@gnu.org>
928
929 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
930
4e8231f3
YM
9312009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
932
933 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
934 Swap bytes in short integer if fringe bitmap width > 8.
935
493dcf2c
KH
9362009-04-23 Kenichi Handa <handa@m17n.org>
937
938 * xfaces.c (Fx_list_fonts): If a font size is specified in
939 PATTERN, set it in returned scalable fonts.
940
401e9e57
CY
9412009-04-22 Chong Yidong <cyd@stupidchicken.com>
942
708e05dc
CY
943 * keyboard.c (Fset_input_meta_mode): Doc fix.
944
945 * dispnew.c (Fsend_string_to_terminal): Doc fix.
946
947 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc
948 fixes.
949
950 * coding.c (Fterminal_coding_system): Doc fix.
951
952 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
953 (Fx_display_pixel_height, Fx_display_planes)
954 (Fx_display_color_cells, Fx_server_max_request_size)
955 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
956 (Fx_display_mm_height, Fx_display_mm_width)
957 (Fx_display_backing_store, Fx_display_visual_class)
958 (Fx_display_save_under, Fx_close_connection, Fx_synchronize): Doc
959 fixes, replacing "terminal id" with "terminal object".
960 (check_x_display_info): Handle terminal objects instead of
961 terminal ids.
962
401e9e57
CY
963 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
964 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
fdc496e7
CY
965 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions): Doc
966 fixes, replacing "terminal id" with "terminal object".
401e9e57 967
df80c7f0
KH
9682009-04-21 Kenichi Handa <handa@m17n.org>
969
5a8f12af 970 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 971 (font_score): Check AVGWIDTH too.
908567ef 972
df80c7f0
KH
973 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
974 worst case.
975 (decode_coding_emacs_mule, decode_coding_iso_2022)
976 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
977 Likewise.
978
705af33f
JR
9792009-04-19 Jason Rumney <jasonr@gnu.org>
980
981 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 982 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
983
984 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
985 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
986 get_phys_cursor_geometry.
987
b71ac3dd 988 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
989 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
990 using get_phys_cursor_geometry.
991
992 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
993 correctly calculated.
994
dc2933eb
JD
9952009-04-19 Jan Djärv <jan.h.d@swipnet.se>
996
997 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar): Use
998 G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
999 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
1000 is deprecated.
1001
973e7849
AS
10022009-04-18 Andreas Schwab <schwab@linux-m68k.org>
1003
1004 * font.c (font_put_frame_data): Use xfree instead of free.
1005
314d66f4
JB
10062009-04-17 Juanma Barranquero <lekktu@gmail.com>
1007
1008 * w32font.c (Qja, Qko): Remove declarations.
1009 (syms_of_w32font): Don't DEFSYM them.
1010
cf702558
CY
10112009-04-17 Chong Yidong <cyd@stupidchicken.com>
1012
1013 * font.c (Qja, Qko): Move definitions here from ftfont.c.
1014
1015 * font.h (Qja, Qko): Extern them.
1016
1017 * ftfont.c (Qja, Qko): Remove declarations.
1018
1019 * xfont.c (Qja, Qko): Remove declarations.
1020
b50504f5
KH
10212009-04-17 Kenichi Handa <handa@m17n.org>
1022
bde25748
KH
1023 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
1024 string from a vector to handle Latin-1 characters correctly.
1025
b50504f5
KH
1026 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
1027 entity even if the cache hits.
1028
f4646fff
AS
10292009-04-16 Andreas Schwab <schwab@linux-m68k.org>
1030
1031 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 1032 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 1033
e7deaab0
AS
1034 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
1035 * lisp.h: Adjust prototypes.
1036
0a0e7d49
CY
10372009-04-16 Chong Yidong <cyd@stupidchicken.com>
1038
1039 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
1040 change (Bug#3003).
1041
3c908a57
KH
10422009-04-16 Kenichi Handa <handa@m17n.org>
1043
bd0af90d
KH
1044 * xfont.c (xfont_has_char): Special handling of `ja' and `ko'
1045 adstyle.
1046
1047 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
1048 adstyle.
1049
1050 * ftfont.c (Qja, Qko): Don't make them static.
1051 (enum ftfont_cache_for): New enum.
1052 (fc_charset_table): Undo the previous change.
1053 (ftfont_get_latin1_charset): Delete it.
1054 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache. Set
1055 FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
1056 non-scarable font, try to get AVERAGE_WIDTH.
1057 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
1058 Change ft_face_cache from a list of a hash-table. Don't check
1059 `ja' and `ko' adstyle here.
1060 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
1061 FTFONT_CACHE_FOR_CHARET.
1062 (ftfont_get_charset): Undo the previous change.
1063 (ftfont_open): Call ftfont_lookup_cache with
1064 FTFONT_CACHE_FOR_FACE.
1065 (ftfont_close): Likewise.
1066 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
1067
1068 * font.c (font_sort_entites): Change the meaning of the arg
1069 BEST-ONLY. Don't optimize for VEC of lenght 1.
1070 (font_select_entity): Just return the value of font_sort_entites.
1071
1072 * xfaces.c (merge_face_vectors): Reflect font properties in
1073 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
1074 font_clear_prop if a face attribute doesn't change.
1075
3c908a57
KH
1076 * charset.h (charset_ksc5601): Extern it.
1077
1078 * charset.c (charset_ksc5601): New variable.
1079 (Fdefine_charset_internal): Set charset_ksc5601.
1080 (init_charset_once): Initialize charset_ksc5601 to -1.
1081
d65859c3
DN
10822009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1083
1084 * fileio.c (history_delete_duplicates): Remove unused declaration.
1085
1086 * callint.c (history_delete_duplicates): New declaration.
1087 (Fcall_interactively): Remove command history duplicates when
1088 history_delete_duplicates is true.
1089
3ba010e5
EZ
10902009-04-14 Eli Zaretskii <eliz@gnu.org>
1091
1092 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
1093
06f19b91
KH
10942009-04-14 Kenichi Handa <handa@m17n.org>
1095
1096 * font.c (Ffont_info): Fix docstring. Fix the second element of
1097 the returned value (bug#2949).
1098
2cce8bfc
CY
10992009-04-14 Chong Yidong <cyd@stupidchicken.com>
1100
1101 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
1102
d156542d
KH
11032009-04-14 Kenichi Handa <handa@m17n.org>
1104
1105 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
1106 encoding charset is ascii_compatible.
1107
1108 * charset.c (Fdefine_charset_internal): Make charset
1109 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
1110 code_offset is 0, and covers all ASCII characters.
1111
86fa089e
SM
11122009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1113
1114 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
1115 (ns_string_to_pasteboard_internal):
1116 * nsmenu.m (process_dialog):
1117 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
1118 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
1119 * lisp.h (Fx_load_color_file): Declare.
1120
a8a3728b
KH
11212009-04-13 Kenichi Handa <handa@m17n.org>
1122
1123 * font.c (font_delete_unmatched): Preserve the order of list
1124 elements.
1125 (font_select_entity): Suppress the code to optimize for the same
1126 kind of fonts.
1127 (font_load_for_lface): Get a font that supports at least ASCII
1128 characters.
1129
1130 * ftfont.c (Qja, Qko): New variables.
1131 (fc_charset_table): Delete uniquifier data for iso8859-1.
1132 (ftfont_get_latin1_charset): New function.
1133 (get_adstyle_property): New function.
1134 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
1135 bitmap fonts.
1136 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
1137 Delete iso-8859-1 range from the charset of fonts whose adstyle is
1138 `ko' or `ja'.
1139 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1140 (ftfont_get_charset): For iso8859-1, call
1141 ftfont_get_latin1_charset.
1142 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
1143 property.
1144 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
1145 (syms_of_ftfont): DEFSYM Qja and Qko.
1146
483670b5
KH
11472009-04-09 Kenichi Handa <handa@m17n.org>
1148
12b55765
KH
1149 * charset.c (map_charset_chars): For a charset of `superset'
1150 method, fix calculation of code range.
1151
483670b5
KH
1152 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
1153 from the list of extra properties.
1154 (font_clear_prop): Be sure to delete `:name' font property.
1155
57d3b93b
KH
11562009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1157
b4b2c2ca
YM
1158 * dispnew.c (redraw_overlapping_rows): Fix detection of
1159 overlapping for topmost and bottommost rows.
1160
57d3b93b
KH
1161 * ftfont.c (ftfont_text_extents): Fix calculation of
1162 metrics->descent.
1163
472c3609
JR
11642009-04-06 Jason Rumney <jasonr@gnu.org>
1165
1166 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
1167
ab193662
KH
11682009-04-06 Kenichi Handa <handa@m17n.org>
1169
1170 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
1171
1172 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
1173
0c26f026
KH
11742009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1175
1176 * ftfont.c (ftfont_open): Fix checking of the return value of
1177 FT_Load_Char. Fix setting font->underline_thickness.
1178
e173bbce
CY
11792009-04-04 Chong Yidong <cyd@stupidchicken.com>
1180
1181 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
1182 (Fterminal_parameters, Fterminal_parameter)
1183 (Fset_terminal_parameter): In doc string, refer to terminal
1184 objects rather than terminal ids.
1185
693a2698
EZ
11862009-04-04 Eli Zaretskii <eliz@gnu.org>
1187
1188 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
1189 ret_lim_data. (Bug#2867)
1190
d5221487
CY
11912009-04-03 Chong Yidong <cyd@stupidchicken.com>
1192
1193 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
1194 so they don't get wider than the window, matching 2006-01-23
1195 change to the partner function in xdisp.c (Bug#2800).
1196
223509a3
KH
11972009-04-03 Kenichi Handa <handa@m17n.org>
1198
1199 * print.c (print_object): Make each lowest sub_char_table start a
1200 new line (Bug#2866).
1201
74fcd0b1
KH
12022009-04-02 Kenichi Handa <handa@m17n.org>
1203
1204 * fontset.c (fontset_font): Record no-font when a fontset
1205 explicitly tells not to try another font-specs.
1206
c542407d
SM
12072009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
1208
1209 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
1210
e3869731
KH
12112009-03-30 Kenichi Handa <handa@m17n.org>
1212
d8d2f142
KH
1213 * fontset.c (fontset_from_font): Specify only registry in a
1214 font-spec for all characters supported by that registry.
1215
e3869731
KH
1216 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
1217 even if HAVE_M17N_FLT is not defined.
1218
5da5f805
CY
12192009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
1220
1221 * ftfont.c: Conditionalize prototyping and use of
1222 ftfont_variation_glyphs.
1223
ab226c50
SM
12242009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1225
9628fed7
SM
1226 * frame.c (delete_frame): Work around compiler bug.
1227
1228 * editfns.c (general_insert_function): Adjust to insdel.c changes.
1229 * insdel.c (prepare_to_modify_buffer, signal_before_change):
1230 Some more EMACS_INT.
1231 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
1232
1233 * xdisp.c (dump_glyph): Fix typo.
1234
ae19ba7c
SM
1235 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
1236 (adjust_markers_gap_motion, adjust_markers_for_delete)
1237 (adjust_markers_for_insert, adjust_point)
1238 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
1239 (make_gap, copy_text, count_size_as_multibyte, insert)
1240 (insert_and_inherit, insert_before_markers)
1241 (insert_before_markers_and_inherit, insert_1)
1242 (count_combining_before, count_combining_after, insert_1_both)
1243 (insert_from_string, insert_from_string_before_markers)
1244 (insert_from_string_1, insert_from_gap, insert_from_buffer)
1245 (insert_from_buffer_1, adjust_after_replace)
1246 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
1247 (replace_range_2, del_range, del_range_1, del_range_byte)
1248 (del_range_both, del_range_2, modify_region)
1249 (prepare_to_modify_buffer, signal_before_change)
1250 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
1251 for buffer positions and sizes.
1252 * lisp.h: Adjust prototypes accordingly.
1253
1254 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
1255 (non_regular_inserted, non_regular_nbytes, read_non_regular)
1256 (Finsert_file_contents): Use EMACS_INT for buffer positions.
1257
ab226c50
SM
1258 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
1259
46dfb8fb
JD
12602009-03-27 Jan Djärv <jan.h.d@swipnet.se>
1261
1262 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
1263 lines and columns so we keep the same pixel height and width.
1264
1265 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
1266 the property _NET_WM_STATE has changed.
46dfb8fb
JD
1267 (x_handle_net_wm_state): New function to update frame parameter
1268 fullscreen.
1269 (x_term_init): Initialize atoms for _NET_WM_STATE.
1270
1271 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
1272
d347e494
SM
12732009-03-27 Kevin Ryde <user42@zip.com.au>
1274
1275 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
1276 Gpm_GetEvent as an error that justifies closing the filedescriptor.
1277 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
1278 (Fgpm_mouse_stop): Pass that new parameter.
1279 * termhooks.h (close_gpm): Adjust prototype.
1280
84db11d6
SM
12812009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
1282
c95a5008
SM
1283 * lisp.h (Fx_focus_frame): Declare.
1284
84db11d6
SM
1285 * callint.c (Fcall_interactively): For '^' just delegate the work to
1286 handle-shift-selection.
1287 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
1288
0a1958d6
CY
12892009-03-24 Chong Yidong <cyd@stupidchicken.com>
1290
0bfdff23
CY
1291 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
1292
0a1958d6
CY
1293 * data.c (Qinteractive_form): New variable.
1294 (Finteractive_form): Use it.
1295
1296 * eval.c (Fcommandp): Use Qinteractive_form.
1297
58aec0d6
JR
12982009-03-24 Jason Rumney <jasonr@gnu.org>
1299
1300 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
1301 Calculate total size precisely. Decode environment variables
1302 before substituting. (Bug#38)
1303
553dd618
KH
13042009-03-24 Kenichi Handa <handa@m17n.org>
1305
1306 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 1307 encoding (Bug#2722).
553dd618 1308
c39ea606
JD
13092009-03-23 Jan Djärv <jan.h.d@swipnet.se>
1310
1311 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
1312 that gdpy is set.
1313
bc9b2b5e
AM
13142009-03-22 Alan Mackenzie <acm@muc.de>
1315
1316 * callint.c (Finteractive): Clarify the doc string - even
1317 promptless elements need \n separators.
1318
9f995a76
JR
13192009-03-22 Jason Rumney <jasonr@gnu.org>
1320
1321 * w32term.c (syms_of_w32term): Doc fix for
1322 x-use-underline-position-properties.
1323
22749e9a
EZ
13242009-03-21 Eli Zaretskii <eliz@gnu.org>
1325
1326 * w32.c (getpwuid): Change argument type to unsigned.
1327 (struct w32_id): Change type of `rid' member to unsigned.
1328 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
1329 argument ID to unsigned. All callers changed.
1330 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
1331
e00553bf
EZ
13322009-03-20 Eli Zaretskii <eliz@gnu.org>
1333
1334 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
1335 negative, produce a float value.
1336
1337 * dired.c (make_uid, make_gid): New functions.
1338 (Ffile_attributes): Use them to avoid negative UID and GID.
1339
f761d6b6
JB
13402009-03-20 Juanma Barranquero <lekktu@gmail.com>
1341
1342 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
1343 (syms_of_keyboard) <command-hook-internal, input-method-function>:
1344 Fix typos in docstrings.
1345
d507f8d7
KH
13462009-03-19 Kenichi Handa <handa@m17n.org>
1347
1348 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
1349 changed, use font_load_for_lface to get a new font object.
1350 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
1351
1352 * frame.c (x_set_font): Handle the case that ARG is a cons.
1353
c68845e0
GM
13542009-03-19 Glenn Morris <rgm@gnu.org>
1355
1356 * fileio.c (Fsubstitute_in_file_name): Doc fix.
1357
bfa49dd1
CY
13582009-03-19 Chong Yidong <cyd@stupidchicken.com>
1359
1360 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
1361
8458d4c1
KH
13622009-03-19 Kenichi Handa <handa@m17n.org>
1363
1364 * charset.c (load_charset_map_from_file): When a mapfile can't be
1365 loaded, signal an error.
1366
78e7d1fe
EZ
13672009-03-18 Eli Zaretskii <eliz@gnu.org>
1368
1369 * dired.c (Ffile_attributes): Make sure UID and GID are always
1370 positive, even if the value is too large for a positive EMACS_INT.
1371 Doc fix.
1372
1373 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
1374
5da9fdfa
YM
13752009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1376
1377 * xmenu.c (xdialog_show): Move Fredisplay call ...
1378 (Fx_popup_dialog): ... here.
1379
7519c40d
SM
13802009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
1381
1382 * dired.c (file_name_completion): Disable the first optimization just
1383 installed, since it is not implemented correctly.
1384
2cd298e2
SM
13852009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1386
1387 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 1388 only if the entry can affect bestmatch.
2cd298e2
SM
1389 Stop the search early, as Ftry_completion already does.
1390
48d37adf
CY
13912009-03-17 Chong Yidong <cyd@stupidchicken.com>
1392
e10c9c93 1393 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 1394
9286b16a
CY
13952009-03-15 Chong Yidong <cyd@stupidchicken.com>
1396
1397 * keyboard.c (parse_menu_item): Don't display remappings as menu
1398 equivalent bindings (Bug#788).
1399
f7b146dc
JR
14002009-03-15 Jason Rumney <jasonr@gnu.org>
1401
1402 * w32term.h (WM_EMACS_PAINT): New message.
1403 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
1404 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
1405 before passing to lisp thread. (Bug#950)
1406
f761d6b6 14072009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 1408
d93f9575
CY
1409 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
1410 variable as it was never reset.
1411 (ns_term_init): Remove initialization of Lisp-settable defaults
1412 and ns_expand_space.
1413 (-setPanelFromDefaultValues): Remove ns_expand_space.
1414 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
1415 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
1416 i.e. no additional spacing, similar to Carbon port.
1417
d93f9575
CY
1418 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
1419 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 1420
305018ec
JD
14212009-03-14 Jan Djärv <jan.h.d@swipnet.se>
1422
1423 * sound.c (alsa_configure): Remove call to deprecated
1424 snd_pcm_sw_params_set_xfer_align.
1425
f761d6b6 14262009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
1427
1428 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
1429 after clicking in a detached tool bar.
1430 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
1431
46e722a9
SM
14322009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
1433
348db3dd
SM
1434 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
1435 int/Lisp_Object mixup).
46e722a9 1436
a3d16f39
KH
14372009-03-13 Kenichi Handa <handa@m17n.org>
1438
1439 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 1440 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
1441 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
1442 (set_fontset_font): Change ARG to a vector. Handle range_list in
1443 ARG correctly.
1444 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 1445 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
1446 the above change.
1447 (fontset_from_font): Fix previous change.
fe24f56a 1448 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
1449 entry. If FONTSET is the default fontset, don't set the extra
1450 slot of the returning char-table.
1451
b066e6b6
JB
14522009-03-12 Juanma Barranquero <lekktu@gmail.com>
1453
1454 * nsfns.m (Fx_close_connection): Doc fix.
1455 (Fns_do_applescript): Reflow docstring.
1456 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
1457 (Fx_display_pixel_width, Fx_display_pixel_height)
1458 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
1459 Fix typos in docstrings.
1460 (Fns_set_alpha): Fix typos in error messages.
1461
d472514e 14622009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 1463
d472514e 1464 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
1465 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
1466 were used for such events.
1467
d472514e
JB
1468 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
1469 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 1470
d472514e 1471 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
1472 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
1473
fb930676
KH
14742009-03-11 Kenichi Handa <handa@m17n.org>
1475
ff85581a
KH
1476 * font.h (font_open_by_spec): Extern it.
1477
c50b7e98
KH
1478 * font.c (font_open_by_spec): New function.
1479 (font_open_by_name): Use font_open_by_spec.
1480
fb930676
KH
1481 * frame.c (x_set_font): When ARG is a font-object, don't alter the
1482 fontset of the frame.
1483
1484 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
1485 modify the default font of frames that use this fontset.
1486 (num_auto_fontsets): New variable.
1487 (fontset_from_font): Use num_auto_fontsets to decide a fontset
1488 name. Be sure to set FONTSET_ASCII to the correct font name.
1489 (update_auto_fontset_alist): New function.
1490
df4e8455
JB
14912009-03-11 Juanma Barranquero <lekktu@gmail.com>
1492
1493 * makefile.w32-in: Update dependencies.
1494
0a375797
AR
14952009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
1496
1497 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
1498
61313fa3
SM
14992009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
1500
1501 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
1502
b55103fb
CY
15032009-03-10 Chong Yidong <cyd@stupidchicken.com>
1504
1505 * lread.c (Feval_buffer): Doc fix.
1506
dde2559c
KH
15072009-03-09 Kenichi Handa <handa@m17n.org>
1508
1509 * charset.c (Qfile_name_handler_alist): Extern it.
1510 (load_charset_map_from_file): Temporarily bind
1511 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
1512
df4e8455 15132009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 1514
47f588bb
GM
1515 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
1516 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 1517
4ddf94bd
AR
15182009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
1519
4c9bdfc2
AR
1520 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
1521 (x_set_window_size): Change back to calculated method of setting
1522 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
1523 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
1524 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
1525
fe41ae9e
AR
1526 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
1527
4c9bdfc2
AR
1528 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
1529 accelerator in parens under GNUstep.
1530
825d0875
KH
15312009-03-06 Kenichi Handa <handa@m17n.org>
1532
1533 These changes are to detect incorrect composition sequence without
f3b3be74 1534 looking ahead the source. (Bug#2370)
825d0875
KH
1535
1536 * coding.h: Include "composite.h".
1537 (enum compisition_state): New enum.
1538 (struct compisition_status): New struct.
1539 (struct iso_2022_spec): New member cmp_status.
1540 (struct emacs_mule_spec): New struct.
1541 (struct coding_system): New members ctext_extended_segment_len and
1542 embedded_utf_8. Change the union member
1543 spec.emacs_mule_full_support to spec.emacs_mule.
1544
1545 * coding.c (CODING_ISO_CMP_STATUS): New macro.
1546 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 1547 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
1548 (ADD_COMPOSITION_DATA): New arg nbytes.
1549 (emacs_mule_char): New arg cmp_status.
1550 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
1551 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
1552 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
1553 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
1554 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
1555 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
1556 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
1557 (EMACS_MULE_COMPOSITION_END): New macro.
1558 (emacs_mule_finish_composition): New function.
1559 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
1560 (decode_coding_emacs_mule): Avoid long looking ahead while
1561 handling composition.
1562 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
1563 (ENCODE_COMPOSITION_RULE): New macro.
1564 (finish_composition): New function.
1565 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
1566 (DECODE_COMPOSITION_START): New implementation.
1567 (DECODE_COMPOSITION_END): Likewise.
1568 (STORE_COMPOSITION_RULE): New macro.
1569 (decode_coding_iso_2022): Avoid long looking ahead while handling
1570 composition, CTEXT extended segment, and embedded UTF-8.
1571 (setup_coding_system): For a coding of type iso-2022, reset
1572 CODING_ISO_EXTSEGMENT_LEN (coding) and
1573 CODING_ISO_EMBEDDED_UTF_8 (coding).
1574 (get_translation): Delete arguments last_block, from_nchars,
1575 to_nchars. Callers changed.
1576 (produce_chars): Don't modify charbuf. Adjusted for the change of
1577 get_translation.
98a326f7 1578 (produce_composition): Adjust for the new annotation sequence.
825d0875 1579 (handle_composition_annotation): Likewise.
98a326f7 1580 (consume_chars): Adjust for the change of get_translation.
825d0875 1581
ccbc4452
AR
15822009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
1583
4ddf94bd 1584 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 1585
988a7ddb
KH
15862009-03-05 Kenichi Handa <handa@m17n.org>
1587
1588 * font.c (font_select_entity): New function.
1589 (font_find_for_lface): Use font_select_entity to select a font.
1590
1591 * fontset.c (fontset_find_font): If a font found without
a8a3728b 1592 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
1593 font with C restriction.
1594
98a326f7 15952009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 1596
be1bce46 1597 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 1598
10ea2b82
JR
15992009-03-04 Jason Rumney <jasonr@gnu.org>
1600
2c93b248 1601 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 1602 characters that have already been read. (Bug#2569)
2c93b248 1603
10ea2b82
JR
1604 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
1605 Log an error message if check_image_size failed.
1606 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 1607 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 1608
71a0c011
EZ
16092009-03-02 Eli Zaretskii <eliz@gnu.org>
1610
1611 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
1612 when decoding process output.
1613
2f63bba8
RS
16142009-03-01 Richard M Stallman <rms@gnu.org>
1615
1616 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
1617
1618 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
1619
0a9564cb
EZ
16202009-02-28 Eli Zaretskii <eliz@gnu.org>
1621
1622 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
1623 (decode_coding_emacs_mule, decode_coding_iso_2022)
1624 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
1625 (decode_coding_raw_text, decode_coding_charset)
1626 (setup_coding_system, decode_eol, decode_coding, consume_chars):
1627 Honor inhibit-eol-conversion. (Bug #2186)
1628
449148b3
JR
16292009-02-28 Jason Rumney <jasonr@gnu.org>
1630
1631 * coding.c (detect_coding_charset): If not checking latin extra,
1632 fail on characters between 0x80 and 0xA0. (Bug#2354)
1633
a4aee864
EZ
16342009-02-28 Eli Zaretskii <eliz@gnu.org>
1635
1636 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 1637 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 1638
d88bee5a
GM
16392009-02-27 Glenn Morris <rgm@gnu.org>
1640
1641 * callint.c (Finteractive): Doc fix.
1642
a808f22d
KH
16432009-02-27 Kenichi Handa <handa@m17n.org>
1644
1645 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
1646
caf8d60c
CY
16472009-02-27 Chong Yidong <cyd@stupidchicken.com>
1648
1649 * font.c (font_style_to_value): Set value for unknown symbols to
1650 100 instead of 255.
b61137ea
CY
1651 (weight_table, slant_table, width_table): Treat "unspecified" as
1652 the default value.
caf8d60c 1653
1a0de25c
JB
16542009-02-26 Juanma Barranquero <lekktu@gmail.com>
1655
1656 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
1657
8fc45744
JB
16582009-02-25 Juanma Barranquero <lekktu@gmail.com>
1659
107bd7d1
JB
1660 * lread.c (Fload): Stop checking Vloads_in_progress and signal
1661 error as soon as a recursive load is detected.
8fc45744 1662
f097e223
AR
16632009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1664
1665 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
1666 before caching.
1667
8810a12f
KH
16682009-02-24 Kenichi Handa <handa@m17n.org>
1669
1670 * fontset.c (fontset_find_font): Fix the condition for checking
1671 unavailable font.
1672
2c7d1565
GM
16732009-02-24 Glenn Morris <rgm@gnu.org>
1674
1675 * xfaces.c (Finternal_set_font_selection_order): Remove leading
1676 whitespace that confuses documentation.
1677
a20878b6
MB
16782009-02-23 Miles Bader <miles@gnu.org>
1679
1680 * process.c (Flist_system_processes, Fprocess_attributes)
1681 (syms_of_process): Rename `system-process-attributes' to
1682 `process-attributes'.
1683
b3b58c01
AS
16842009-02-22 Andreas Schwab <schwab@linux-m68k.org>
1685
1b3b981b
AS
1686 * coding.h (struct coding_system): Make safe_charsets a pointer to
1687 unsigned char.
1688 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
1689 being 255.
1690 (SAFE_CHARSET_P): Likewise.
1691 (setup_iso_safe_charsets): Properly setup safe_charsets.
1692 (Fdefine_coding_system_internal): Likewise.
1693 (setup_coding_system): Likewise. Remove unneeded casts.
1694 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
1695 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
1696 unneeded casts.
1697
b3b58c01
AS
1698 * insdel.c (del_range_2): Don't modify gap contents when called
1699 from decode_coding_object. (Bug#1809)
1700
0b6f228c
CY
17012009-02-21 Chong Yidong <cyd@stupidchicken.com>
1702
1703 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
1704 Qfont_object.
1705 (Ftype_of): Recognize font objects.
1706
1707 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
1708
1709 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
1710 moved to data.c.
1711
52f8870b
AR
17122009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
1713
1714 * nsterm.m (x_make_frame_invisible): Unset async_visible,
1715 async_iconified. Based on a patch by Christian Lynbech
1716 <christian.lynbech@tieto.com>.
1717 (EmacsView-windowDidMiniaturize:): Unset async_visible.
1718
7087d5e9
GM
17192009-02-20 Glenn Morris <rgm@gnu.org>
1720
1721 * syntax.c (Fskip_chars_forward): Fix doc typo.
1722
41d2ceef
CY
17232009-02-20 Chong Yidong <cyd@stupidchicken.com>
1724
1725 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
1726
1a3b7ca6
CY
17272009-02-19 Chong Yidong <cyd@stupidchicken.com>
1728
1729 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
1730
73cce38d
KH
17312009-02-19 Kenichi Handa <handa@m17n.org>
1732
1733 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 1734 Don't overflow coding->carryover. (Bug#2370)
73cce38d 1735
a51092ee
DN
17362009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
1737
1738 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
1739
c423ecca
KH
17402009-02-18 Kenichi Handa <handa@m17n.org>
1741
1742 * font.c (font_check_otf_features): Fix handling of `nil' element.
1743 (Ffont_spec): Describe :lang and :otf in the docstring.
1744
4c1958f4
AS
17452009-02-16 Andreas Schwab <schwab@suse.de>
1746
1747 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
1748 string.
1749
5704f39a
KH
17502009-02-16 Kenichi Handa <handa@m17n.org>
1751
1752 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 1753 (Bug#1723)
5704f39a 1754
8f0085aa
CY
17552009-02-14 Chong Yidong <cyd@stupidchicken.com>
1756
a057d86a 1757 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
1758
1759 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
1760 (handle_line_prefix): Suppress wrapping of wrap prefixes.
1761
aff01dd9
EZ
17622009-02-14 Eli Zaretskii <eliz@gnu.org>
1763
1764 * msdos.c (MAX_SCREEN_BUF): New macro.
1765 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
1766 Encode the entire run of glyphs sharing the same face, instead of
1767 doing that one glyph at a time (fixes a bug with displaying
1768 double-size characters).
1769
ba301db3
AR
17702009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
1771
1772 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
1773
1774 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
1775 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 1776 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
1777
1778 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 1779 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 1780
51d861de
SM
17812009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
1782
1783 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
1784 invisible areas.
1785
7fed8996
JR
17862009-02-12 Jason Rumney <jasonr@gnu.org>
1787
631ea4fb
JR
1788 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
1789 (add_font_entity_to_list): Call check_face_name even when family
1790 is unspecified.
1791
cb4a3e42
JR
1792 * w32term.c (x_display_pixel_height, x_display_pixel_width):
1793 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 1794 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 1795
7fed8996 1796 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 1797 raster fonts. (Bug#2219)
7fed8996 1798
895416e3
KH
17992009-02-12 Kenichi Handa <handa@m17n.org>
1800
1801 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
1802 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
1803 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 1804 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
1805 (find_automatic_composition): While looking forward and backward,
1806 check static composition. Fix where to stop looking forward.
1807 (composition_adjust_point): Fix checking of static composition.
1808 (Fcomposition_get_gstring): Pay attention to
1dacf998 1809 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
1810
1811 * lisp.h (fast_looking_at): Extern it.
1812
1813 * search.c (fast_looking_at): New function.
1814
51d861de 1815 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
1816 <struct glyph>.u.cmp.to.
1817 (append_composite_glyph): Likewise.
1818
51d861de 1819 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
1820 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
1821 composition.
51d861de 1822 (append_composite_glyph): Adjust for the change of
895416e3
KH
1823 <strcut glyph>.u.cmp.to.
1824
8510724d
JB
18252009-02-11 Juanma Barranquero <lekktu@gmail.com>
1826
1827 * casetab.c (init_casetab_once):
1828 * coding.c (ALLOC_CONVERSION_WORK_AREA):
1829 * font.c (font_update_lface):
1830 * fontset.c (Fnew_fontset):
1831 * ftfont.c (ftfont_drive_otf):
1832 * xfont.c (xfont_open):
1833 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
1834
294fa707
SM
18352009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
1836
1837 * fileio.c (Fwrite_region): !NILP -> CONSP.
1838
b5bfebec
AS
18392009-02-10 Andreas Schwab <schwab@suse.de>
1840
1841 * process.c (send_process): Properly relocate pointer into data
adab88bd 1842 when using encoded data. (Bug#2272)
b5bfebec 1843
cb84a2be
KH
18442009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
1845
1846 * coding.c (detect_coding_charset): Fix previous change.
1847
89e09428
JR
18482009-02-08 Jason Rumney <jasonr@gnu.org>
1849
1850 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 1851 disappeared while hourglass was displayed. (Bug #2193)
89e09428 1852
4470a277
AS
18532009-02-07 Andreas Schwab <schwab@suse.de>
1854
1855 * unexelf.c (unexec): Fix error message.
1856
3175b12a
AR
18572009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
1858
1859 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 1860 when modal window is active. (Bug #2152)
3175b12a
AR
1861 (applicationShouldTerminate:): Remove now-unneeded while loop
1862 around NSRunAlertPanel.
1863
1864 * nsmenu.m (popupSession): New file-global variable.
1865 (pop_down_menu): End the popupSession before closing dialog.
1866 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
1867 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
1868 don't query NSApp for events (just sleep instead).
1869
8434d0b8
EZ
18702009-02-07 Eli Zaretskii <eliz@gnu.org>
1871
51d861de
SM
1872 * coding.c (syms_of_coding) <translation-table-for-input>:
1873 Modify doc string to discourage use for character code unification.
8434d0b8 1874
aa82edfd
CY
18752009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1876
1877 * atimer.c (run_timers): Update pending_atimers.
1878
2d283c7c
CY
18792009-02-06 Chong Yidong <cyd@stupidchicken.com>
1880
eb306cab
CY
1881 * image.c (svg_load_image): Fix last change.
1882
2d283c7c
CY
1883 * xfns.c (Fx_create_frame): Signal an error if no font is
1884 found (Bug#2147).
1885
4d8e170e
JB
18862009-02-05 Juanma Barranquero <lekktu@gmail.com>
1887
1888 * character.c (syms_of_character) <script-representative-chars>:
1889 Fix typo in docstring.
1890
c96169a0
AR
18912009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
1892
1893 * nsmenu.m (pop_down_menu): New function.
1894 (ns_popup_dialog): Call it on unwind.
1895 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
1896 call timer_check() (Bug#2154).
1897 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
1898 handling_signal is set.
1899 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
1900
1901 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G
1902
1903 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
1904
1905 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
1906
51d861de
SM
1907 * keyboard.c (poll_for_input_1, handle_async_input):
1908 Set handling_signal under HAVE_NS.
c96169a0 1909
aacd8ba1
GM
19102009-02-04 Glenn Morris <rgm@gnu.org>
1911
1912 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
1913
4cb75c4b
KH
19142009-02-04 Kenichi Handa <handa@m17n.org>
1915
1916 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
1917
1918 * charset.c (Fchar_charset): New optional arg restriction.
1919
1920 * coding.h (coding_system_charset_list): Extern it.
1921
1922 * coding.c (coding_system_charset_list): New function.
1923
1924 * composite.c: Include coding.h and termhooks.h.
1925 (composition_gstring_p): Fix for the terminal case.
1926 (composition_gstring_width): Likewise.
1927 (fill_gstring_body): Likewise.
1928 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
1929 the frame.
1930 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
1931 is within a composition.
867d4bb3 1932 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
1933
1934 * term.c (encode_terminal_code): Fix handling of composition.
1935 (produce_composite_glyph): For static composition, get pixel_width
1936 from struct composition.
1937
826ba17e
AS
19382009-02-02 Andreas Schwab <schwab@suse.de>
1939
1940 * unexelf.c (unexec): Handle unaligned bss offset.
1941
8ad093db
AR
19422009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
1943
1944 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
1945 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 1946
8ad093db
AR
1947 * keyboard.c (handle_interrupt): Don't call
1948 quit_throw_to_read_char() under NS.
d0a76a6e 1949
8ad093db
AR
1950 * blockinput.h: Remove NS-specific code.
1951
4d18a7a2
DN
19522009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
1953
db878925
DN
1954 * dispnew.c (window_change_signal): Don't try to get the size of a
1955 suspended tty frame.
1956 * term.c (Fresume_tty): Resize if the size has changed while the
1957 tty was suspended.
1958
4d18a7a2
DN
1959 * alloc.c (mark_stack): Properly conditionalize previous change.
1960
8984df7c
JB
19612009-01-30 Juanma Barranquero <lekktu@gmail.com>
1962
1963 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
1964 * w32term.c (w32_read_socket) [SYNC_INPUT]:
1965 Remove; this code is not used on Windows.
1966
75f4f1ac
EZ
19672009-01-30 Eli Zaretskii <eliz@gnu.org>
1968
1969 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
1970 EOLs that also has stray ^M characters.
1971
07a1e794
JB
19722009-01-30 Juanma Barranquero <lekktu@gmail.com>
1973
1974 * atimer.c (run_timers, alarm_signal_handler):
1975 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
1976 * w32inevt.c (w32_console_read_socket):
1977 * w32term.c (w32_read_socket):
1978 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
1979
a8b11cc9
CY
19802009-01-30 Chong Yidong <cyd@stupidchicken.com>
1981
1982 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
1983 Initialize it as a relative filename pattern.
1984 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
1985 (Fcall_process_region): Simplify temp file creation using
1986 temporary-file-directory.
1987
c279587b
EZ
19882009-01-29 Eli Zaretskii <eliz@gnu.org>
1989
1990 * msdos.c: Rename pending_signals to msdos_pending_signals.
1991 (sig_suspender, sigprocmask): Adjust.
1992
a8fe3242
CY
19932009-01-29 Chong Yidong <cyd@stupidchicken.com>
1994
1995 * keyboard.c (pending_signals): New var.
1996 (poll_for_input, input_available_signal, init_keyboard): Set it.
1997 (process_pending_signals): New function.
1998
1999 * lisp.h (QUIT): Check pending_signals instead of
2000 interrupt_input_pending. Use process_pending_signals.
2001
51d861de 2002 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 2003
51d861de 2004 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
2005
2006 * sysdep.c (emacs_write): Use process_pending_signals.
2007
2008 * xterm.c (XTread_socket): Update pending_signals.
2009
2010 * w32term.c (w32_read_socket): Update pending_signals.
2011
2012 * w32inevt.c (w32_console_read_socket): Update pending_signals.
2013
6570a1c4
KH
20142009-01-29 Kenichi Handa <handa@m17n.org>
2015
2016 * xftfont.c (xftfont_has_char): New function.
2017 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
2018
d72a4afa
AR
20192009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2020
2021 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
2022 under GNUstep.
2023 (ns_query_color): New declaration.
2024
2025 * nsterm.m (ns_confirm_quit): New variable.
2026 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
2027 (EmacsApp-applicationShouldTerminate:): Use it.
2028 (EmacsPrefsController): Let user set it.
2029 (ns_query_color): New function.
2030 (ns_defined_color): Use it.
2031 (ns_initialize): Drop.
2032 (ns_term_init): Add two lines from ns_initialize(), and set
2033 input_interrupt_mode to nil.
2034
2035 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 2036 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 2037
9fe78804
KH
20382009-01-28 Kenichi Handa <handa@m17n.org>
2039
2040 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
2041 (fontset_get_font_group): Remember that no font-group is specified
2042 for C.
9fe78804 2043
fa57de36
CY
20442009-01-27 Chong Yidong <cyd@stupidchicken.com>
2045
930600e9
CY
2046 * fns.c (concat): Check for string overflow (bug#1787).
2047
fa57de36
CY
2048 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
2049 Quadruple undo limits (bug#1501).
2050
7179ce7b
KH
20512009-01-27 Kenichi Handa <handa@m17n.org>
2052
2053 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
2054 directly use GT_Get_Char_index.
2055
2056 * xftfont.c (struct xftfont_info): New member `index'.
2057
2058 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 2059 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 2060
5be8fcc0
CY
20612009-01-26 Kenichi Handa <handa@m17n.org>
2062
2063 * fontset.c (fontset_find_font): Fix handling of non-cons return
2064 value of fontset_get_font_group.
2065 (fontset_font): Revert last change.
2066
19ae3e61
JR
20672009-01-26 Jason Rumney <jasonr@gnu.org>
2068
2069 * w32font.c (w32font_list_internal): Return quickly if registry is
2070 unknown. Simplify final return.
2071 (add_font_entity_to_list): Break complex logic down into more
2072 manageable chunks. Move unknown registry check to
2073 w32font_list_internal.
2074
8612b71a
AR
20752009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
2076
2077 Changes to remove Feval calls from GUI under NS.
2078
d8038940
JB
2079 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
2080 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
2081 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
2082
2083 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
2084 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
2085 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
2086 instead of NON_ASCII_KEYSTROKE_EVENT.
2087 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
2088 (EmacsApp-applicationShouldTerminate:): Query user.
2089 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
2090 instead of Feval.
2091
2092 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
2093
2094 * keyboard.c (kbd_buffer_get_event): Check for it.
2095 (keys_of_keyboard): Define lispy keys for
2096 ns-put/unput-working-text.
2097
2098 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
2099 versions.
2100 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
2101
6288ae55
CY
21022009-01-25 Chong Yidong <cyd@stupidchicken.com>
2103
2104 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 2105 setting current_buffer directly. (Bug#2044)
6288ae55 2106
289e7f8f
CY
21072009-01-24 Chong Yidong <cyd@stupidchicken.com>
2108
5ce87308 2109 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 2110 any work. (Bug#1952, bug#1990).
5ce87308 2111
64cc3cf6 2112 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 2113
b3243e6f
AR
21142009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2115
2116 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
2117 (ns_no_defaults): New declaration.
2118 (main): Use it.
e0d2e69a 2119
d900b2af 2120 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 2121
d900b2af 2122 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 2123
d900b2af
AR
2124 * nsterm.m (ns_no_defaults): New variable.
2125 (ns_initialize): Don't read defaults when ns_no_defaults.
2126 (EmacsView-readSelectionFromPasteboard:)
2127 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 2128 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
2129 (ns_dumpglyphs_stretch): New function.
2130 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 2131 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 2132
e0d2e69a
AR
2133 * nsimage.m (setPixmapData:): Set to ignore image DPI.
2134
3ac71f5d
CY
21352009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
2136
2137 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
2138 call for Sparc64.
2139
3fe53a83
AR
21402009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2141
2142 * nsfns.m:
2143 * nsgui.h:
2144 * nsmenu.m:
2145 * nsselect.m:
2146 * nsterm.h:
2147 * nsterm.m: Remove '23' comments that indicated code added during
2148 update from emacs-20 -> emacs-23.
2149
10f87c6f 21502009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
2151
2152 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 2153 ns_alternate_modifier. (Bug#1217)
a3b53a85 2154
c7cef62d
AR
2155 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
2156 Display all shortcuts, including those w/o super modifier.
2157
575fb8bd
AR
2158 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
2159
918b848b
CY
21602009-01-22 Chong Yidong <cyd@stupidchicken.com>
2161
2162 * fileio.c (Vwrite_region_post_annotation_function)
2163 (Vwrite_region_annotation_buffers): New vars.
2164 (build_annotations_unwind): Just reset
2165 Vwrite_region_annotation_buffers.
2166 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
2167 Call write-region-post-annotation-function.
2168 (build_annotations): Add to Vwrite_region_annotation_buffers if
2169 buffer changes.
2170
a39e2539
AR
21712009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2172
2173 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
2174 Tiger.
51d861de
SM
2175 * nsfns.m (ns_do_applescript):
2176 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 2177
35ed44db
AR
21782009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
2179
2180 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
2181
cbe0b5bf
AR
21822009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2183
2184 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 2185
6049d3a0
AR
2186 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
2187
2188 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
2189 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
2190 handle Ctrl-tab. (Bug#1841)
2191 (ns_get_color): Use unsigned long long for scanned hex string value.
2192 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 2193 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 2194 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 2195 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 2196 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 2197 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 2198 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 2199
d3810c21 2200 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 2201 DPI. (Bug#1316)
d3810c21
AR
2202 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
2203 values in onTiger section.
4c7077c3 2204
e301e634
CY
22052009-01-19 Chong Yidong <cyd@stupidchicken.com>
2206
7f82490b
CY
2207 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
2208 Check return value of font_spec_from_name.
64cc3cf6 2209 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
2210
2211 * font.c (font_spec_from_name): Return Qnil if font name could not
2212 be parsed.
2213 (font_parse_name): Treat a `?' character as part of an XLFD.
2214
e301e634
CY
2215 * fns.c (Fsubstring): Doc fix.
2216
1c0db158
KH
22172009-01-19 Kenichi Handa <handa@m17n.org>
2218
51d861de 2219 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
2220 (ftfont_list): Likewise.
2221
acf20901
JB
22222009-01-18 Juanma Barranquero <lekktu@gmail.com>
2223
fff4e459
JB
2224 * dbusbind.c (Fdbus_register_signal):
2225 * process.c (conv_sockaddr_to_lisp):
2226 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
2227
acf20901
JB
2228 * callproc.c (Fgetenv_internal): Doc fix.
2229
e7abcdfb
CY
22302009-01-16 Chong Yidong <cyd@stupidchicken.com>
2231
2232 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
2233 it is not even used.
2234
b60861e6
GM
22352009-01-16 Glenn Morris <rgm@gnu.org>
2236
2237 * font.c (Ffont_variation_glyphs): Silence compiler.
2238
8db52afe
JB
22392009-01-15 Juanma Barranquero <lekktu@gmail.com>
2240
2241 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
2242 Reported by David Robinow <drobinow@gmail.com>.
2243
4cddb209
KH
22442009-01-15 Kenichi Handa <handa@m17n.org>
2245
51d861de 2246 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 2247
f247f67b
JR
22482009-01-14 Jason Rumney <jasonr@gnu.org>
2249
2250 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 2251 never a fontset. (Bug#1562)
f247f67b 2252
f56a4450
KH
22532009-01-14 Kenichi Handa <handa@m17n.org>
2254
2255 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 2256 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 2257
4e99855e
CY
22582009-01-13 Chong Yidong <cyd@stupidchicken.com>
2259
2260 * font.c (font_clear_prop): If clearing the family, clear the font
2261 width index too.
2262
fff4e459 2263 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 2264
24f01470
JB
22652009-01-12 Juanma Barranquero <lekktu@gmail.com>
2266
2267 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
2268 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
2269 functions, use sizeof.
2270
a41240a3
MR
22712009-01-12 Martin Rudalics <rudalics@gmx.at>
2272
2273 * keyboard.c (read_char): Fix case where last_nonmenu_event
2274 returned a bad value with submenus. (Bug#447)
2275
944636b8
CY
22762009-01-12 Chong Yidong <cyd@stupidchicken.com>
2277
2278 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
2279 family, clear the font width index too.
2280
0dad7c6f
JR
22812009-01-11 Jason Rumney <jasonr@gnu.org>
2282
2283 * keyboard.c (cmd_error_internal): Exit when errors occur before
2284 frame creation and not in daemon mode. (Bug#1836)
2285
7c2363af
CY
22862009-01-10 Chong Yidong <cyd@stupidchicken.com>
2287
2288 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
2289 of a display vector, backtrack.
2290 (try_window_reusing_current_matrix): Check glyph type before
2291 referencing charpos member.
2292
97b1b294
EZ
22932009-01-10 Eli Zaretskii <eliz@gnu.org>
2294
2295 Fix Bug #876:
2296
2297 * coding.c (inhibit_null_byte_detection): New variable.
2298 (detect_coding, detect_coding_system): Don't pay attention to null
2299 bytes if inhibit_null_byte_detection is non-zero.
51d861de 2300 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
2301 <inhibit-iso-escape-detection>: Doc fix.
2302
4624b6e3
JR
23032009-01-09 Jason Rumney <jasonr@gnu.org>
2304
2305 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 2306 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
2307 Only report Unicode Plane 2 fonts as unicode-sip.
2308
323b840c
CY
23092009-01-09 Chong Yidong <cyd@stupidchicken.com>
2310
51d861de
SM
2311 * xfaces.c (Fx_font_family_list): Delete function.
2312 Move compatibility version to faces.el.
323b840c 2313
51d861de 2314 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 2315
eba7400d
MR
23162009-01-09 Martin Rudalics <rudalics@gmx.at>
2317
2318 * frame.c (x_set_frame_parameters): Remember requested value for
2319 fullscreen before it's reset by the parameter handler.
2320
4b09796d
GM
23212009-01-09 Glenn Morris <rgm@gnu.org>
2322
2323 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 2324 (last_command_event): ... and update all users.
4b09796d
GM
2325 (last_input_char): For clarity, rename to...
2326 (last_input_event): ... and update all users.
2327 (last-command-char, last-input-char): Move to subr.el as aliases.
2328 * cmds.c, commands.h: Update for last_command_char rename.
2329
14ccea62
CY
23302009-01-08 Chong Yidong <cyd@stupidchicken.com>
2331
51d861de 2332 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 2333
5f004711
JR
23342009-01-08 Jason Rumney <jasonr@gnu.org>
2335
2336 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
2337 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
2338 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
2339 Don't declare.
fff4e459 2340 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
2341 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
2342
b71f6f73
KH
23432009-01-07 Kenichi Handa <handa@m17n.org>
2344
50b06221 2345 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 2346 remember the coding system used for decoding in
50b06221
KH
2347 coding_system (Bug#1039).
2348
b71f6f73 2349 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 2350 breaking the loop. (Bug#870)
b71f6f73
KH
2351 (decode_coding_utf_16, decode_coding_emacs_mule)
2352 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
2353 (decode_coding_charset): Likewise.
2354
56f668f7
MR
23552009-01-05 Martin Rudalics <rudalics@gmx.at>
2356
2357 * frame.c (x_set_frame_parameters): Make sure height (width) get
2358 applied when fullwidth (fullheight) is set. (Bug#1522)
2359
5da9424d
JB
23602009-01-04 Juanma Barranquero <lekktu@gmail.com>
2361
2362 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
2363 (utc_base): Declare as ULONGLONG, not long double.
2364 (convert_time_raw): Delete.
2365 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
2366 (initialize_utc_base): New function.
2367 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
2368 (convert_from_time_t): Use initialize_utc_base; compute result with
2369 64-bit arithmetic.
2370 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
2371
c4605e09
EZ
23722009-01-03 Eli Zaretskii <eliz@gnu.org>
2373
9acef61c 2374 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
2375 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
2376 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
2377 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
2378 [!subprocesses]: Define.
2379 (syms_of_process) [!subprocesses]: Intern and staticpro them.
2380 (Flist_system_processes, Fsystem_process_attributes)
2381 [!subprocesses]: Call list_system_processes and
2382 system_process_attributes instead of returning Qnil.
2383
9acef61c
JB
2384 * dosfns.c (system_process_attributes, list_system_processes):
2385 New functions.
c4605e09
EZ
2386
2387 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
2388
2389 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
2390 Don't use the default (no-op) implementation.
2391
8b7d0a16
JR
23922009-01-03 Jason Rumney <jasonr@gnu.org>
2393
a6d46bc1
JR
2394 * keyboard.c (parse_modifiers_uncached): Wheel events are
2395 clicks (bug#687).
2396
8b7d0a16
JR
2397 * w32term.c (x_query_colors, x_query_color): New functions.
2398
2399 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
2400 (svg_load_image): Cast returned pointers from dynamically loaded
2401 functions. Eliminate W32 specific code.
2402
bfe11752
DN
24032009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
2404
89e2438a
DN
2405 * nsfns.m (x_set_foreground_color, x_set_background_color)
2406 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
2407 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
2408 x_ prefix instead of ns_. Update references.
2409 (syms_of_nsfns): Add a FIXME comment.
2410
2411 * nsterm.m (x_set_cursor_type): New prototype.
2412 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
2413
bfe11752
DN
2414 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
2415 for Solaris instead of incorrectly providing Qutime and Qcutime.
2416
031da700
EZ
24172009-01-02 Eli Zaretskii <eliz@gnu.org>
2418
2419 * w32.c (process_times): Compute sum of utime and stime.
2420 (system_process_attributes): Add Qtime to the alist.
2421
2422 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
2423 and add them to the alist.
2424
2425 * process.c (top level) <Qtime, Qctime>: New variables.
2426 (syms_of_process): staticpro them.
2427 (Fsystem_process_attributes): Add their documentation to the doc
2428 string.
2429
2430 * process.h: Declare Qtime and Qctime.
2431
df23bf08
JR
24322009-01-02 Jason Rumney <jasonr@gnu.org>
2433
9acef61c 2434 * image.c (Qgobject): New symbol.
df23bf08
JR
2435 (syms_of_image): Initialize it.
2436 (init_svg_functions): Load some functions from gobject library.
2437
5bbdf7aa
DN
24382009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
2439
2440 * frame.c (make_terminal_frame): Remove redundant code and useless
2441 block.
2442
63136da6
AS
24432009-01-01 Andreas Schwab <schwab@suse.de>
2444
2445 * process.c (conv_sockaddr_to_lisp): Add workaround for
2446 getsockname bug on BSD.
2447
9ef69046
CY
24482009-01-01 Chong Yidong <cyd@stupidchicken.com>
2449
d6fafbe0
CY
2450 * xfns.c (x_create_tip_frame): Set border width of the X window.
2451
51d861de 2452 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 2453
f9c34147
JR
24542009-01-01 Jason Rumney <jasonr@gnu.org>
2455
9acef61c 2456 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
2457 Don't block input, as per earlier xterm.c changes.
2458
f5497e45
AR
24592008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
2460
2461 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
2462 (ns_appkit_version_int): New function.
2463 (x-server-version): Use ns_appkit_version_int and follow 21+
2464 convention of returning 3 integers.
2465
c19cab20
KH
24662008-12-30 Kenichi Handa <handa@m17n.org>
2467
2468 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
2469 (CHAR_SURROGATE_PAIR_P): New macro.
2470
2471 * font.h (struct font_driver): New member get_variation_glyphs.
2472
9acef61c 2473 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
2474 (Ffont_variation_glyphs): New function.
2475 (syms_of_font): Defsubr it.
2476
2477 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
2478 ftfont_variation_glyphs.
2479 (setup_otf_gstring): New function.
2480 (ftfont_drive_otf): Use it.
2481 (ftfont_shape_by_flt): Handle variation selector.
2482 (ftfont_variation_glyphs): New function.
2483
28cd591f
MR
24842008-12-30 Martin Rudalics <rudalics@gmx.at>
2485
2486 * frame.c (Vemacs_iconified): Remove.
2487
7f714baf
JR
24882008-12-30 Jason Rumney <jasonr@gnu.org>
2489
2490 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 2491 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 2492
9d2d22ab
CY
24932008-12-30 Chong Yidong <cyd@stupidchicken.com>
2494
2495 * indent.c (Fvertical_motion): Don't advance iterator if we have
2496 reseated to the desired position.
2497
2498 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
2499 checking for pos match.
2500
545312c2
KH
25012008-12-30 Kenichi Handa <handa@m17n.org>
2502
1ede3eb6
KH
2503 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
2504 just get the low 8-bit of the code.
2505
545312c2
KH
2506 * font.c (font_intern_prop): Validate str as multibyte.
2507
bd7bbf29
DN
25082008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
2509
31e0750e
DN
2510 * dispextern.h (struct face): Move lface and hash from the middle
2511 of bitfields.
2512
bd7bbf29
DN
2513 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
2514
b5672e7c
DN
25152008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
2516
2517 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
2518 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
2519 instead of intervals.h.
2520
d704470f
AS
25212008-12-26 Andreas Schwab <schwab@suse.de>
2522
2523 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
2524 cons.
2525
54b33868
MR
25262008-12-26 Martin Rudalics <rudalics@gmx.at>
2527
2528 * textprop.c (Qminibuffer_prompt): New variable.
2529 (syms_of_textprop): Initialize it.
2530 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
2531 in minibuffer-prompt face. (Bug#1662)
2532
40b615d6
JR
25332008-12-25 Jason Rumney <jasonr@gnu.org>
2534
2535 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
2536
baae5c2d
JR
25372008-12-24 Jason Rumney <jasonr@gnu.org>
2538
2539 * ralloc.c (r_alloc_reset_variable): New function.
2540
2541 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 2542 record of what points where. (Bug#716)
baae5c2d 2543
a9051c88
DN
25442008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
2545
2546 * minibuf.c (read_minibuf): Follow the non-interactive case when
2547 running as a daemon, before detaching.
2548
8b146312
AS
25492008-12-22 Andreas Schwab <schwab@suse.de>
2550
2551 * buffer.c (init_buffer): Use realloc instead of xrealloc.
2552 * gtkutil.c (free_widget_value): Use xfree instead of free.
2553
56f2de10
MR
25542008-12-22 Martin Rudalics <rudalics@gmx.at>
2555
2556 * frame.c (delete_frame): New function derived from
2557 Fdelete_frame to handle Qnoelisp value for FORCE argument.
2558 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
2559 (Fdelete_frame): Call delete_frame. Remove line from doc-string
2560 saying that FORCE non-nil doesn't run `delete-frame-functions'.
2561 * frame.h: Extern delete_frame.
2562 * window.c (window_loop):
2563 * terminal.c (delete_terminal):
2564 * xterm.c (x_connection_closed):
2565 * xfns.c (Fx_hide_tip):
9acef61c 2566 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 2567
1fc200d6
JR
25682008-12-21 Jason Rumney <jasonr@gnu.org>
2569
2570 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
2571 when character maps to .notdef character.
2572
5e252df2
SM
25732008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
2574
2575 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
2576
99b72cc4
JR
25772008-12-20 Jason Rumney <jasonr@gnu.org>
2578
2579 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 2580 a graphical frame on Windows. (Bug#1325)
99b72cc4 2581
acc49a52
JD
25822008-12-20 Jan Djärv <jan.h.d@swipnet.se>
2583
2584 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
2585
6ea15123
CY
25862008-12-20 Chong Yidong <cyd@stupidchicken.com>
2587
2588 * minibuf.c (Fread_buffer): Doc fix.
2589
b2dab6c8
JR
25902008-12-20 Jason Rumney <jasonr@gnu.org>
2591
54ea0c87 2592 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 2593 server name in UNC paths. (Bug#719)
54ea0c87 2594
b2dab6c8 2595 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 2596 charbuf. (Bug#1035)
b2dab6c8 2597
6d1921be
DN
25982008-12-19 Daniel Engeler <engeler@gmail.com>
2599
2600 * sysdep.c (serial_configure): Fix typo.
2601
53934c98
DN
26022008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
2603
2604 * sysdep.c: Include alloca.h.
f4f634e8
DN
2605 (system_process_attributes): Add implementation for Solaris.
2606
2607 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 2608
06e111a6
DN
26092008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
2610
2611 Reorganize implementation of Flist_system_processes and
2612 Fsystem_process_attributes. No functional changes.
2613 * process.c: Don't #include pwd.h, grp.h and limits.h.
2614 (Flist_system_processes): Just call list_system_processes.
2615 (Fsystem_process_attributes): Just call system_process_attributes.
2616 (procfs_list_system_processes, time_from_jiffies)
2617 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
2618 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
2619
2620 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
2621 (list_system_processes): Rename from
2622 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
2623 Provide a do nothing implementation.
2624 (system_process_attributes): Rename from
2625 procfs_list_system_processes.
2626 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 2627 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
2628
2629 * w32.c (list_system_processes): Rename from
2630 w32_list_system_processes.
2631 (system_process_attributes): Rename from
2632 w32_system_process_attributes.
2633
2634 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
2635
2636 * process.h (w32_list_system_processes)
2637 (w32_system_process_attributes): Remove.
2638 (list_system_processes, system_process_attributes): New
2639 prototypes.
2640
6a705b23
KH
26412008-12-19 Kenichi Handa <handa@m17n.org>
2642
2643 * xfont.c (xfont_decode_coding_xlfd): New function.
2644 (xfont_encode_coding_xlfd): New function.
2645 (xfont_list_pattern): Decode XLFD by iso-8859-1.
2646 (xfont_list): Decode and encode XLFD by iso-8859-1.
2647 (xfont_match): Likewise.
2648 (xfont_list_family): Likewise.
2649 (xfont_open): Likewise.
2650
d66c0241 2651 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
2652 names are utf-8.
2653
d66c0241 2654 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
2655 names are utf-8.
2656
5a130941
JD
26572008-12-18 Jan Djärv <jan.h.d@swipnet.se>
2658
2659 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
2660 changed.
bfd20325
JD
2661 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
2662 clicked on a detached tool bar button.
5a130941 2663
fd95644b
DN
26642008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
2665
2666 * emacs.c (main): Print and error and exit when no data is read
2667 from the pipe.
2668
e6eee6ae
JR
26692008-12-17 Jason Rumney <jasonr@gnu.org>
2670
2671 * w32font.c (w32font_has_char): Always return -1.
2672
a35dd56b
KH
26732008-12-16 Kenichi Handa <handa@m17n.org>
2674
2675 * font.c (font_open_entity): Fix previous change.
2676
0e3635c2
DN
26772008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
2678
2679 * process.c: Include <limits.h>.
2680
d4835507 26812008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
2682
2683 * font.c (font_update_drivers): Fix mistake in reconstructing the
2684 driver list.
2685
26862008-12-16 Chong Yidong <cyd@stupidchicken.com>
2687
2688 * font.c (font_clear_cache): Fix format of font cache data.
2689
e2cbc401
CY
26902008-12-15 Chong Yidong <cyd@stupidchicken.com>
2691
2692 * xftfont.c (xftfont_open): Free Xft font pattern if
2693 XftFontOpenPattern fails.
2694
2695 * xterm.c (x_free_frame_resources): Remove extraneous call to
2696 free_frame_faces.
2697
b131d535
CY
26982008-12-13 Chong Yidong <cyd@stupidchicken.com>
2699
2700 * xterm.c (x_delete_display): Move xim_close_dpy call to
2701 x_delete_terminal.
2702 (x_delete_terminal): Call xim_close_dpy.
2703
e6df5336
JR
27042008-12-13 Jason Rumney <jasonr@gnu.org>
2705
2706 * w32font.c (intern_font_name): New function.
2707 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
2708 (w32font_open_internal, Fx_select_font): Decode font name.
2709 (fill_in_logfont, list_all_matching_fonts): Encode font name.
2710
2711 * w32font.h (intern_font_name): Declare new function.
2712
2713 * w32uniscribe.c (add_opentype_font_name_to_list):
2714 Use intern_font_name.
2715
20d68145
CY
27162008-12-13 Chong Yidong <cyd@stupidchicken.com>
2717
9f2554de
CY
2718 * frame.c (Fdelete_frame): Call free_font_driver_list.
2719
3d9bec9a
CY
2720 * font.c (free_font_driver_list): Implement missing function.
2721
20d68145
CY
2722 * w32term.c (w32_term_init): Don't initialize the image cache
2723 here; it will be done in init_frame_faces.
2724
2725 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
2726 (struct x_display_info): Remove unused member null_pixel. New
2727 member xim_callback_data.
2728
2729 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
2730 (xim_initialize): Save pointer to callback function data.
2731 (xim_close_dpy): Free callback function data. Call XCloseIM,
2732 reverting 2008-11-04 change by David Smith.
2733 (x_term_init): Don't initialize the image cache here; it will be
2734 done in init_frame_faces. Remove ancient "null_pixel" cruft.
2735 (x_delete_display): Free x_dnd_atoms member.
2736
96f9306b
KH
27372008-12-13 Kenichi Handa <handa@m17n.org>
2738
6dec9044
JB
2739 * font.c (font_rescale_ratio): Moved from xfaces.c.
2740 Argument type changed. Handle a font-spec too.
96f9306b 2741 (font_score): Check Vface_font_rescale_alist.
6dec9044 2742 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
2743
2744 * xfaces.c (font_rescale_ratio): Moved to font.c.
2745
8d5b4964
CY
27462008-12-13 Chong Yidong <cyd@stupidchicken.com>
2747
2748 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
2749
e6df5336
JR
27502008-12-12 Jason Rumney <jasonr@gnu.org>
2751
2752 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
2753 Vwindow_system_version to the real w32 major version.
2754
97c6058a
DN
27552008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
2756
2757 * term.c (init_tty): Move setting the terminal name before the
2758 potential user: maybe_fatal.
2759
ec4e88d7
CY
27602008-12-11 Chong Yidong <cyd@stupidchicken.com>
2761
d4835507
JB
2762 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
2763 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 2764
b4233ec9
JR
27652008-12-11 Jason Rumney <jasonr@gnu.org>
2766
8ec71e23 2767 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 2768 SYMBOL_CHARSET. (Bug#547)
8ec71e23 2769
b4233ec9 2770 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 2771 size for surrogates. (Bug#1096, bug#872)
b4233ec9 2772
011a0143
JB
27732008-12-11 Juanma Barranquero <lekktu@gmail.com>
2774
2775 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
2776
3c309f34
JB
27772008-12-11 Juanma Barranquero <lekktu@gmail.com>
2778
2779 * process.c (Fsystem_process_attributes, syms_of_process):
2780 Fix typo in name of Ssystem_process_attributes.
2781 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
2782
fedc6ab5
JB
27832008-12-11 Juanma Barranquero <lekktu@gmail.com>
2784
2785 * syntax.c (Fmodify_syntax_entry): Doc fix.
2786
ba3de0e8
JB
27872008-12-10 Juanma Barranquero <lekktu@gmail.com>
2788
2789 * font.c (Ffont_spec): Move usage to end of docstring.
2790
174f1c74
JR
27912008-12-10 Jason Rumney <jasonr@gnu.org>
2792
2793 * w32font.c (Qcham): New symbol.
2794 (font_supported_scripts): Add cham, and comments for other new
2795 scripts in bitfield from OpenType spec.
9d32f818
JR
2796 (add_font_entity_to_list): Limit unicode-sip fonts to those that
2797 contain characters beyond the bmp.
174f1c74 2798
7b649478
KH
27992008-12-10 Kenichi Handa <handa@m17n.org>
2800
2801 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 2802 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
2803 Qunicode_sip.
2804
2133e2d1
JB
28052008-12-10 Juanma Barranquero <lekktu@gmail.com>
2806
2807 * coding.c (QCdefault_char): Rename from QCdefalut_char.
2808 (Fcoding_system_put): Use QCdefault_char.
2809 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
2810
9af886ee
CY
28112008-12-09 Chong Yidong <cyd@stupidchicken.com>
2812
74d819eb
CY
2813 * xftfont.c (syms_of_xftfont): Fix typo.
2814
4ccfa1c0 2815 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 2816
7c19d3ae
DN
28172008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
2818
2819 * emacs.c (main): Close daemon_pipe on exec.
2820
567826bb
CY
28212008-12-08 Chong Yidong <cyd@stupidchicken.com>
2822
2823 * termchar.h (struct tty): New members termcap_term_buffer and
2824 termcap_strings_buffer.
2825
2826 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 2827 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
2828 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
2829 All callers changed.
2830 (init_tty): Store termcap data and string buffers in new struct
2831 tty members termcap_term_buffer and termcap_strings_buffer.
2832 (delete_tty): Free them.
4ccfa1c0 2833 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 2834
aa96c42b
SZ
28352008-12-07 Seiji Zenitani <zenitani@mac.com>
2836
2837 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 2838 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 2839
b7e1d896
CY
28402008-12-06 Chong Yidong <cyd@stupidchicken.com>
2841
2842 * coding.c (make_conversion_work_buffer): Disable buffer
2843 modification hooks in the work buffer.
2844
b5ec91a5
EZ
28452008-12-05 Eli Zaretskii <eliz@gnu.org>
2846
2847 * process.c (procfs_system_process_attributes): If `nread' has a
2848 negative value, assign zero to it.
2849
a5d2a52b
CY
28502008-12-05 Chong Yidong <cyd@stupidchicken.com>
2851
68c5540b 2852 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 2853
7bf1bb21
KH
28542008-12-05 Kenichi Handa <handa@m17n.org>
2855
2856 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
2857 second character is a combining character.
2858
2fdc7d00
EZ
28592008-12-05 Eli Zaretskii <eliz@gnu.org>
2860
2861 * process.c (procfs_system_process_attributes): Don't use cmd,
2862 cmdsize, and q without initializing them first.
2863
bf6bfba8
JR
28642008-12-04 Jason Rumney <jasonr@gnu.org>
2865
2866 * w32font.c (w32font_draw): Initialize orig_clip before getting
2867 it, and delete it when finished.
2868
a3b1a468
DN
28692008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
2870
2871 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
2872 case when running as a daemon before detaching.
2873
8b8be8eb
JB
28742008-12-03 Juanma Barranquero <lekktu@gmail.com>
2875
805f2638 2876 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 2877
b1bde622
KH
28782008-12-03 Kenichi Handa <handa@m17n.org>
2879
e500c47d
KH
2880 * font.c (font_at): Set `multibyte' at first.
2881
ca516334
KH
2882 * coding.c (decode_coding_charset): Check type of an element of
2883 vector VALIDS.
7bf1bb21 2884 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 2885
4ccfa1c0 2886 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
2887 (font_for_char): Likewise.
2888
1e5ecd37
CY
28892008-12-03 Chong Yidong <cyd@stupidchicken.com>
2890
d5b01609 2891 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
2892 (font_update_lface): Handle fonts with corrupted size specs,
2893 i.e. non-int and non-float.
d5b01609 2894
11e3a6e4 2895 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 2896 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 2897 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 2898
ab06788b
CY
2899 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
2900
1e5ecd37 2901 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 2902 underline_minimum_offset for underline position.
1e5ecd37 2903
63c125ab
DN
29042008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
2905
2906 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
2907
2908 * character.c (c_string_width): Specify the type for LEN.
2909
3a8406e1
KH
29102008-12-03 Kenichi Handa <handa@m17n.org>
2911
4ccfa1c0 2912 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 2913 (decode_coding_utf_8): Likewise.
4ccfa1c0 2914 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 2915 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 2916
651df7d9
CY
29172008-12-02 Chong Yidong <cyd@stupidchicken.com>
2918
2919 * keyboard.c (make_lispy_position): Only use PT if the selected
2920 window is current.
2921
1f625c6c
AS
29222008-12-02 Andreas Schwab <schwab@suse.de>
2923
f7741ce9
AS
2924 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
2925
1f625c6c
AS
2926 * doprnt.c (doprnt1): Fix size of charbuf.
2927
92bc2678
CY
29282008-12-02 Chong Yidong <cyd@stupidchicken.com>
2929
2930 * keyboard.c (timer_check): Revert last change.
2931
93b9e8cc
JB
29322008-12-02 Juanma Barranquero <lekktu@gmail.com>
2933
2934 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
2935
fd7a37d5
JB
29362008-12-01 Juanma Barranquero <lekktu@gmail.com>
2937
2938 * makefile.w32-in: Update dependencies.
2939 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
2940
c115043b
AS
29412008-12-01 Andreas Schwab <schwab@suse.de>
2942
2943 * font.c (register_font_driver): Use xmalloc.
2944 (font_put_frame_data): Likewise.
2945
f5668d2a
CY
29462008-12-01 Chong Yidong <cyd@stupidchicken.com>
2947
860d96be
CY
2948 * xfaces.c (realize_x_face): Make abort condition clearer.
2949
f5668d2a
CY
2950 * gtkutil.c (update_frame_tool_bar): Initialize variable.
2951
379c17e7
CY
29522008-11-30 Chong Yidong <cyd@stupidchicken.com>
2953
2954 * keyboard.c (timer_check): After a timer runs, ensure that the
2955 selected window's buffer is current.
2956
35f36d65
JB
29572008-11-30 Juanma Barranquero <lekktu@gmail.com>
2958
f952c61c
JB
2959 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
2960 It was accidentally restored by the Unicode merge.
2961
35f36d65
JB
2962 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
2963
b23077df
JB
29642008-11-29 Juanma Barranquero <lekktu@gmail.com>
2965
2966 * w32proc.c: Include "coding.h".
2967 (Fw32_short_file_name): Encode filename passed to Windows API.
2968 (Fw32_long_file_name): Encode filename passed to Windows API and
2969 decode back the result. (Bug#1433)
2970
b8ebe9dd
KH
29712008-11-29 Kenichi Handa <handa@m17n.org>
2972
8cc53f96
KH
2973 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
2974 not before accessing it.
2975
b8ebe9dd
KH
2976 * charset.c (Fdefine_charset_internal): After calculating
2977 min_char, max_char, and fastmap, copy the charset structure again.
2978 (encode_char): Fix the previous change.
2979
59bc82c0
SZ
29802008-11-28 Seiji Zenitani <zenitani@mac.com>
2981
2982 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
2983
2984 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
2985
2986 * nsterm.m (x_set_frame_alpha): New function.
2987
32247e3d
EZ
29882008-11-27 Eli Zaretskii <eliz@gnu.org>
2989
2990 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
2991
b003e5ff
JB
29922008-11-27 Juanma Barranquero <lekktu@gmail.com>
2993
2994 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
2995 pointer to check_face_name.
2996
708550f5
KH
29972008-11-27 Kenichi Handa <handa@m17n.org>
2998
2999 * category.h (SET_CATEGORY_SET): Call set_category_set.
3000 (set_category_set): Extern it.
3001
3002 * category.c (hash_get_category_set): New function.
3003 (Fmodify_category_entry): Adjusted for the change of
3004 char_table_ref_and_range. Call hash_get_category_set to get a
3005 category set to store in the table.
3006
3007 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
3008 Funify_charset.
3009
2ae37cf0 3010 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
3011 (DECODE_CHAR): Check if the decoder vector is ready.
3012 (ENCODE_CHAR): Check if the encoder char-table is ready.
3013 (maybe_unify_char): Extern it.
3014
3015 * charset.c (Vchar_unified_charset_table): Delete it.
3016 (inhibit_load_charset_map): New variable.
3017 (temp_charset_work): New variable.
3018 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
3019 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
3020 New macros.
3021 (load_charset_map): Meaning of control_flag changed. If
3022 inhibit_load_charset_map is nonzero, setup a table in
3023 temp_charset_work.
3024 (load_charset): New argument control_flag.
3025 (map_charset_for_dump): New function.
3026 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
3027 map_charset_for_dump.
3028 (Fdefine_charset_internal): If the charset method is MAP, load
3029 mapping tables by calling load_charset.
3030 (Funify_charset): Don't load a mapping table but directly set
3031 Vchar_unify_table.
3032 (maybe_unify_char): New function.
3033 (decode_char): Don't handle the deleted method MAP_DEFERRED.
3034 Handle the case of inhibit_load_charset_map being nonzero.
3035 (encode_char): Don't handle the deleted method MAP_DEFERRED.
3036 Handle the case of inhibit_load_charset_map being nonzero.
3037 (Fclear_charset_maps): Just free temp_charset_work.
3038 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
3039 variable.
3040
3041 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
3042 change of char_table_ref_and_range.
3043 (char_table_ref_and_range): Change the meaning of argument FROM
3044 and TO. Now the caller must provide initial values for *FROM
3045 and *TO.
3046
3047 * fontset.c (fontset_add): Adjusted for the change of
3048 char_table_ref_and_range.
3049 (fontset_get_font_group): Likewise.
3050 (Ffontset_info): Likewise.
3051
3052 * keymap.c (describe_vector): Adjusted for the change of
3053 char_table_ref_and_range. For char-table, put boundary between
3054 non-ASCII and 8-bit characters.
3055
3056 * print.c (print_object): For bool-vector, delete unnecessary
3057 check of ASCII_BYTE_P.
3058
9196133b
JR
30592008-11-26 Jason Rumney <jasonr@gnu.org>
3060
3061 * w32font.c (w32font_open_internal): Don't include external
9acef61c 3062 leading in font height. (Bug#879)
9196133b 3063
9f688acf
GM
30642008-11-26 Glenn Morris <rgm@gnu.org>
3065
3066 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
3067 redefinition with ifdef. (Bug#1383)
3068
90d19aff
AR
30692008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3070
3071 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
3072
4ccfa1c0 30732008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
3074
3075 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
3076 New EmacsView methods.
3077 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
3078 Fixes bug #1048,1357,1414.
3079
30802008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3081
3082 Fix bug #1362.
3083 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
3084 is not an indexed color.
3085 * nsterm.m (free_indexed_color): Add argument checking.
3086 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
3087
e7d5ecb3
CY
30882008-11-24 Chong Yidong <cyd@stupidchicken.com>
3089
3090 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
3091 Document confirm-after-completion value for
3092 minibuffer-completion-confirm.
3093
c285743c
JR
30942008-11-24 Jason Rumney <jasonr@gnu.org>
3095
3096 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
3097 warning.
3098
b0857706
JR
30992008-11-23 Jason Rumney <jasonr@gnu.org>
3100
3101 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
3102 restored before returning.
3103
3104 * w32font.c (check_face_name): New function.
3105 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 3106 fonts. (Bug#642)
b0857706 3107
ee50ff07
MR
31082008-11-22 Martin Rudalics <rudalics@gmx.at>
3109
3110 * buffer.c (Fswitch_to_buffer): Reword and mention new option
3111 confirm-nonexistent-file-or-buffer in doc-string.
3112
b8ff72fa
SM
31132008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
3114
3115 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
3116 Fix copy/paste typo. Add checks.
3117
cee53ed4
KH
31182008-11-21 Kenichi Handa <handa@m17n.org>
3119
3120 * coding.c (detect_coding_iso_2022): Reject invalid composition
3121 sequence.
3122 (DECODE_COMPOSITION_START): If the current source is the last
3123 block, and the current composition doesn't end, regard this
3124 sequence as invalid.
3125 (decode_coding_iso_2022): Handle invalid composition sequence.
3126
f6ef1e65
MR
31272008-11-20 Martin Rudalics <rudalics@gmx.at>
3128
3129 * window.c (coordinates_in_window): Don't return
3130 ON_VERTICAL_BORDER for the rightmost position of a mode/header
3131 line when the window is not the rightmost one. (Bug#1372)
3132
e08b1705
MR
31332008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
3134
3135 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
3136
ad98e89f
EZ
31372008-11-15 Eli Zaretskii <eliz@gnu.org>
3138
3139 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
3140 and bright_bg if noninteractive is non-zero.
3141
fb098a4b
CY
31422008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3143
3144 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
3145 x_draw_glyph_string_background.
3146
3147 * w32term.c (x_draw_glyph_string): Likewise.
3148
ce952b6e
CY
31492008-11-15 Chong Yidong <cyd@stupidchicken.com>
3150
3151 * xterm.c (x_draw_glyph_string): Stop drawing the background of
3152 the next glyph string once past the overhang width.
3153
3154 * nsterm.m (ns_draw_glyph_string): Likewise.
3155
3156 * w32term.c (x_draw_glyph_string): Likewise.
3157
26ea7079
CY
31582008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
3159
3160 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
3161 double file close.
3162
1c33c906
MR
31632008-11-14 Martin Rudalics <rudalics@gmx.at>
3164
3165 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
3166 dedicated status of window before attempting to display another
3167 buffer in it.
3168
8fc29035
JB
31692008-11-14 Juanma Barranquero <lekktu@gmail.com>
3170
3171 * msdos.c (Fmsdos_long_file_names):
3172 (syms_of_msdos) <dos-unsupported-char-glyph>:
3173 * dosfns.c (Fint86): Fix typos in docstrings.
3174
55fb4286
EZ
31752008-11-14 Eli Zaretskii <eliz@gnu.org>
3176
3177 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
3178
3fda0315
KY
31792008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
3180
3181 * puresize.h (BASE_PURESIZE): Increase to 1260000.
3182
7e849c17
CY
31832008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
3184
3185 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
3186
3187 * frame.h: Negative alpha means "don't touch".
3188
3189 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
3190
3191 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
3192
b9fd67bd
DN
31932008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
3194
3195 * hftctl.c:
3196 * chpdef.h:
3197 * acldef.h: Remove files used only for systems no longer supported.
3198
3199 * Makefile.in: Fix .o alphabetical ordering.
3200 (hftctl.o): Remove dependency, file removed.
3201 (keymap.o, print.o): Depend on charset.h.
3202
d5998e03
KH
32032008-11-10 Kenichi Handa <handa@m17n.org>
3204
2ae37cf0 3205 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 3206
be70e183
CY
32072008-11-08 Chong Yidong <cyd@stupidchicken.com>
3208
3209 * dired.c (file_name_completion): If completion_ignore_case is
3210 enabled, ignore case when checking completion-regexp-list.
3211
7cf94eac
EZ
32122008-11-08 Eli Zaretskii <eliz@gnu.org>
3213
3214 * vm-limit.c (get_lim_data): Fix last change.
3215
ee107a89
KH
32162008-11-08 Kenichi Handa <handa@m17n.org>
3217
3218 * character.c (Fget_byte): New function.
3219 (syms_of_character): Defsubr Fget_byte.
3220
5fd15622
CY
32212008-11-07 Chong Yidong <cyd@stupidchicken.com>
3222
3223 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
3224 cursor position is valid after scrolling.
3225
13d62fad
JB
32262008-11-06 Juanma Barranquero <lekktu@gmail.com>
3227
3228 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
3229
a1dd2936
GM
32302008-11-06 Glenn Morris <rgm@gnu.org>
3231
3232 * xterm.c (handle_one_xevent): Don't let popup menus cause
3233 mouse-autoselect-window related window switching. (Bug#1261)
3234
860cd236
CY
32352008-11-04 David Smith <davidsmith@acm.org> (tiny change)
3236
3237 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
3238
653a3150
AS
32392008-11-04 Andreas Schwab <schwab@suse.de>
3240
3241 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
3242
870f5cac
CY
32432008-11-03 Chong Yidong <cyd@stupidchicken.com>
3244
3245 * xfns.c (Fx_wm_set_size_hint): New function.
3246
1e02f3cb
MR
32472008-11-03 Martin Rudalics <rudalics@gmx.at>
3248
3249 * textprop.c (Fprevious_single_char_property_change): Return 0
3250 when there's no change in a string. (Bug#1301)
3251
e630dfc6
MR
32522008-11-02 Martin Rudalics <rudalics@gmx.at>
3253
3254 * frame.c (do_switch_frame): New argument NORECORD passed to
3255 Fselect_window.
3256 (Fselect_frame): New argument NORECORD passed to
3257 do_switch_frame.
3258 (Fset_frame_selected_window): New argument NORECORD passed to
3259 Fselect_frame.
3260 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
3261 in call of do_switch_frame.
3262 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
3263 Handle NORECORD argument in call of Fselect_frame.
3264 * lisp.h (do_switch_frame, Fselect_frame)
3265 (Fset_frame_selected_window): Adjust declarations.
3266 * window.c (select_frame_norecord): New function.
3267 (run_window_configuration_change_hook): Use it and call
3268 Fselect_frame with NORECORD set.
3269 (Fselect_window): Pass NORECORD to Fselect_frame.
3270 (Fset_window_configuration): Handle NORECORD argument in call of
3271 do_switch_frame.
3272 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
3273 Fset_frame_selected_window.
3274 * keyboard.c (command_loop_1): Handle NORECORD in call of
3275 Fselect_frame (currently ifdefd).
3276
9020b223
GM
32772008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
3278
3279 * emacs.c (USAGE2): Untabify.
3280
793ffee8
SM
32812008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
3282
3283 * composite.c (fill_gstring_header): Fix copy/paste typo.
3284
ab6d1131
MR
32852008-10-31 Martin Rudalics <rudalics@gmx.at>
3286
3287 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
3288 (Fother_window): Rename argument and rewrite doc-string.
3289 (select_window_norecord): Fix return value. (Bug#1276)
3290
601a9cf1
JB
32912008-10-30 Juanma Barranquero <lekktu@gmail.com>
3292
3293 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
3294 new frames overriding foreground for tooltips. Based on similar patch
3295 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
3296
813b0652
CY
32972008-10-29 Chong Yidong <cyd@stupidchicken.com>
3298
3299 * emacs.c (Fdaemon_initialized): Initialize nfd.
3300
4414f58f
MR
33012008-10-29 Martin Rudalics <rudalics@gmx.at>
3302
3303 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
3304 (Fwindow_text_height): Clarify doc-strings.
3305 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
3306 doc-string of window-scroll-functions.
3307
ecdcaa09
RS
33082008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
3309
3310 * category.c (syms_of_category): Fix typo in docstring.
3311
23fe745a
JB
33122008-10-28 Juanma Barranquero <lekktu@gmail.com>
3313
3314 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
3315 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
3316 Fix typos in docstrings.
3317
ff808935
DN
33182008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
3319
3320 * emacs.c (daemon_pipe): Make non-static.
3321 (IS_DAEMON): Move definition ...
3322 * lisp.h (IS_DAEMON): ... here.
3323 (daemon_pipe): Declare.
3324 (is_daemon): Remove.
3325 * dispnew.c (init_display): Use IS_DAEMON.
3326
fc012771
SM
33272008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
3328
3329 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
3330 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
3331
3332 * emacs.c (is_daemon): Remove.
3333 (main): Don't set is_daemon.
3334 (IS_DAEMON): New macro.
3335 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 3336 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
3337 parent exits.
3338 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
3339
d8bdbe6f
CY
33402008-10-27 Chong Yidong <cyd@stupidchicken.com>
3341
d1a072bf
CY
3342 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
3343 over-sized glyph, draw it with the default glyph width.
3344
e2e325aa
CY
3345 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
3346 glyph, draw it with the default glyph width.
3347
3348 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
3349 glyph, draw it with the default glyph width.
3350
d8bdbe6f
CY
3351 * xdisp.c (try_scrolling): When computing the distance from the
3352 scroll margin to PT, try moving some distance past the window
3353 bottom before giving up.
3354
7bfac547
MR
33552008-10-27 Martin Rudalics <rudalics@gmx.at>
3356
3357 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
3358 (Fset_window_buffer): Explain in doc-string that a window can be
3359 "strongly" dedicated to its buffer.
3360
4ff029f6
DN
33612008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
3362
3363 * emacs.c (daemon_name): New variable.
3364 (main): Deal with --daemon=SERVER_NAME.
3365 (Fdaemonp): Return a name if one was passed to --daemon.
3366
5790ef40
DN
33672008-10-26 Romain Francoise <romain@orebokech.com>
3368
f9bd0df9 3369 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
3370 (main): Create a pipe before forking, make the parent exit only after
3371 the child has closed its end of the pipe. Move closing the
3372 descriptors ...
3373 (Fdaemon_initialized): ... here. New function.
3374
f5385255
SM
33752008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
3376
4d632321
SM
3377 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
3378 the previous unoptimized table.
3379
f5385255
SM
3380 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
3381 the distinction between non-nil and non-t value of `dedicated'.
3382
6c56a0f3
CY
33832008-10-25 Chong Yidong <cyd@stupidchicken.com>
3384
3385 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 3386 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 3387
fec89261
MR
33882008-10-25 Martin Rudalics <rudalics@gmx.at>
3389
3390 * window.c (Fget_buffer_window, Fdelete_windows_on)
3391 (Freplace_buffer_in_windows): Make buffer argument optional and
3392 rename to buffer_or_name.
3393
34fcddd0
CY
33942008-10-24 Chong Yidong <cyd@stupidchicken.com>
3395
f5385255
SM
3396 * xdisp.c (handle_single_display_spec, handle_display_prop):
3397 Undo 2005-05-16 change.
34fcddd0
CY
3398 (handle_stop): Pop iterator if it's loaded with an empty string.
3399 (get_overlay_strings_1): Don't save iterator if it's loaded with
3400 an empty string (bug#1201).
3401
064766f2
KH
34022008-10-24 Kenichi Handa <handa@m17n.org>
3403
3404 * ftfont.c (ftfont_otf_features): Fix previous change.
3405 (ftfont_otf_capability): Check FeatureList.FeatureCount before
3406 calling ftfont_otf_features.
3407
f9bd0df9 34082008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
3409
3410 * font.c (font_match_p): Fix for the case that a vector of
3411 characters is in script-representative-chars.
3412
1dae9197
MA
34132008-10-24 Michael Albinus <michael.albinus@gmx.de>
3414
3415 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 3416 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
3417 (xd_read_queued_messages): Catch Qdbus_error from the macros.
3418 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
3419 macro. (Bug#1186).
3420
f9bd0df9 34212008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
3422
3423 * s/sol2-10.h: New file.
3424
878a4584
JB
34252008-10-23 Juanma Barranquero <lekktu@gmail.com>
3426
3427 * xdisp.c (fill_glyph_string): Fix typo in source (though the
3428 poor beast has survived 9+ years and the jump from xterm.c!).
3429
cd265ca6
MR
34302008-10-23 Martin Rudalics <rudalics@gmx.at>
3431
3432 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
3433 Reword doc-string.
f5385255 3434 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 3435
472a4dc9
JB
34362008-10-23 Juanma Barranquero <lekktu@gmail.com>
3437
3438 * character.c (syms_of_character) <script-representative-chars>:
3439 <unicode-category-table>: Doc fixes.
3440
159bd5a2
NF
34412008-10-23 Noah Friedman <friedman@splode.com>
3442
3443 * coding.c (make_conversion_work_buffer): Check that
3444 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
3445 Fget_buffer_create.
3446
49f9c344
KH
34472008-10-23 Kenichi Handa <handa@m17n.org>
3448
3449 * font.c (font_add_log): Check the values of extra properties.
3450
12bb3111
MR
34512008-10-22 Martin Rudalics <rudalics@gmx.at>
3452
3453 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
3454 Reword doc-string.
3455 (Fset_window_parameter): Use NILP.
3456 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 3457 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 3458
bbeb4e99
JB
34592008-10-22 Juanma Barranquero <lekktu@gmail.com>
3460
3461 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
3462
34632008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
3464
3465 * nsfns.m (ns_appkit_version): New function.
3466 (x-server-version): Use it.
3467 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
3468 (x-server-vendor): Don't check_ns().
3469
3470 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
3471
a9b555d3
JB
34722008-10-22 Juanma Barranquero <lekktu@gmail.com>
3473
3474 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
3475 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
3476
4626499f
KH
34772008-10-22 Kenichi Handa <handa@m17n.org>
3478
e3681952
KH
3479 * syntax.c (scan_words): Call word_boundary_p instead of comparing
3480 scripts.
3481
4626499f
KH
3482 * category.c (word_boundary_p): Check scripts instead of charset.
3483 Handle nil value in word-separating-categories and
3484 word-combining-categories.
3485 (syms_of_category): Fix docstrings of word-separating-categories
3486 and word-combining-categories.
3487
1560f91a
EZ
34882008-10-21 Eli Zaretskii <eliz@gnu.org>
3489
3490 * coding.c (Fencode_coding_region, Fdecode_coding_region)
3491 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
3492
f4668441
MR
34932008-10-21 Martin Rudalics <rudalics@gmx.at>
3494
3495 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
3496 Rename arg "buffer" to "buffer_or_name".
3497 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
3498 it optional.
3499 (no_switch_window): Remove since the return value is not used.
a9b555d3 3500 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
3501 Consider window as dedicated when Fwindow_dedicated_p returns a
3502 non-nil value.
3503 * lisp.h: Remove prototype for no_switch_window.
3504
fd75ddb2
JD
35052008-10-21 Jan Djärv <jan.h.d@swipnet.se>
3506
3507 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 3508 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 3509
07295713
KH
35102008-10-21 Kenichi Handa <handa@m17n.org>
3511
3512 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
3513 check Vlatin_extra_code_table.
3514
712adc82
EZ
35152008-10-20 Eli Zaretskii <eliz@gnu.org>
3516
3517 * fileio.c (Fset_file_modes): Doc fix.
3518
f549eb0b
MA
35192008-10-19 Michael Albinus <michael.albinus@gmx.de>
3520
3521 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
3522 in arrays.
3523
aac0c6e3
MR
35242008-10-19 Martin Rudalics <rudalics@gmx.at>
3525
3526 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
3527 Mention kill-buffer in doc-string.
3528 (Fset_window_buffer): Reinsert tem check removed in last commit.
3529 (Fenlarge_window, Fshrink_window): Have argument names and
3530 doc-string follow Elisp manual more closely.
3531
35322008-10-18 Eli Zaretskii <eliz@gnu.org>
3533
3534 * fileio.c (Fset_file_modes): Doc fix.
3535
35362008-10-18 Martin Rudalics <rudalics@gmx.at>
3537
3538 * window.c (Fwindow_width, Fset_window_start)
3539 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
3540 (Fdelete_windows_on, Freplace_buffer_in_windows):
3541 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
3542 (Fwindow_dedicated_p): Make window argument optional.
3543 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
3544 (Fset_window_buffer): Respect any non-nil dedicated value for
3545 window. Rename "buffer" argument to "buffer_or_name".
3546
35472008-10-18 Ulrich Mueller <ulm@gentoo.org>
3548
3549 * m/sh3.h: New file, machine description for SuperH.
3550
35512008-10-17 Martin Rudalics <rudalics@gmx.at>
3552
3553 * window.c (Fsplit_window): Rename arg horflag to horizontal.
3554
35552008-10-17 Kenichi Handa <handa@m17n.org>
3556
3557 * ftfont.c (ftfont_otf_features): Fix indexing
3558 gsub_gpos->FeatureList.Feature. Check the validity of indices.
3559
35602008-10-16 Magnus Henoch <mange@freemail.hu>
3561
3562 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
3563 (Fdbus_call_method_asynchronously): Ditto.
3564 This change makes C-h f display the argument list.
3565
35662008-10-16 Chong Yidong <cyd@stupidchicken.com>
3567
3568 * fileio.c (Fexpand_file_name): Doc fix.
3569
3570 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
3571 of :foreground and :background equivalent to unspecified (20.x
3572 compatibility).
3573
35742008-10-15 Eli Zaretskii <eliz@gnu.org>
3575
3576 * buffer.c (syms_of_buffer): Doc fix.
3577
35782008-10-14 Kenichi Handa <handa@m17n.org>
3579
3580 * font.c (font_clear_prop): When clearing font width, clear the
3581 average width field too.
3582
35832008-10-12 Andreas Schwab <schwab@suse.de>
3584
3585 * ftfont.c (ftfont_shape_by_flt): Make static.
3586 * ftfont.h (ftfont_shape_by_flt): Don't declare.
3587
3588 * font.c: Don't include <m17n-flt.h>.
3589
35902008-10-10 Eli Zaretskii <eliz@gnu.org>
3591
3592 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
3593
35942008-10-09 Eli Zaretskii <eliz@gnu.org>
3595
3596 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
3597 away code.
3598
35992008-10-09 Chong Yidong <cyd@stupidchicken.com>
3600
3601 * dispnew.c (update_text_area): Avoid looping due to large glyph
3602 overhangs (bug#1070).
3603
36042008-10-09 Kenichi Handa <handa@m17n.org>
3605
3606 * fontset.c (face_for_char): If face->fontset is negative, just
3607 return ascii_face.
3608
f5385255
SM
3609 * font.c (font_delete_unmatched): Fix previous change.
3610 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
3611
36122008-10-09 Martin Rudalics <rudalics@gmx.at>
3613
3614 * frame.c (Fraise_frame): On text-only terminals select frame in
3615 order to make it visible. (Bug#1061)
3616
36172008-10-08 Chong Yidong <cyd@stupidchicken.com>
3618
3619 * fontset.c (fontset_find_font): Check frame validity.
3620
36212008-10-07 Chong Yidong <cyd@stupidchicken.com>
3622
a9b555d3 3623 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
3624 (xg_display_close): Allow Emacs to close all displays (bug#985).
3625
36262008-10-06 Andreas Schwab <schwab@suse.de>
3627
f5385255 3628 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
3629
36302008-10-06 Chong Yidong <cyd@stupidchicken.com>
3631
f5385255 3632 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 3633
a9b555d3 3634 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
3635
3636 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
3637 during initialization.
3638
36392008-10-04 Eli Zaretskii <eliz@gnu.org>
3640
3641 * xdisp.c (redisplay_internal): If frame switched, redisplay the
3642 whole thing on MSDOS frames as well as on a TTY.
3643
3644 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
3645 well as for TTY.
3646 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
3647 well as on a TTY.
3648
3649 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
3650 as well as for TTY.
3651
3652 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
3653
3654 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
3655 MSDOS frames as well.
3656
36572008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
3658
3659 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
3660 correct arguments.
b71ac3dd 3661 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
3662
36632008-10-03 Glenn Morris <rgm@gnu.org>
3664
3665 * emacs.c (USAGE1): Add --daemon.
3666
36672008-10-02 Eli Zaretskii <eliz@gnu.org>
3668
3669 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
3670 100, so it's in percents as advertised.
3671
36722008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
3673
3674 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
3675 (ns_output.current_cursor, ns_output.desired_cursor)
3676 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
3677 (FRAME_NEW_CURSOR_COLOR): Remove.
3678
3679 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 3680 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
3681 enumeration (HOLLOW_BOX_CURSOR, etc.).
3682
3683 * nsterm.m (ns_frame_rehighlight): Remove commented code.
3684 (draw_window_cursor): Simplify code.
f5385255
SM
3685 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
3686 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 3687 updates manually.
a9b555d3
JB
3688 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
3689 Use core Emacs cursor types.
aac0c6e3 3690
b8ff72fa 3691 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
3692
36932008-10-02 Martin Rudalics <rudalics@gmx.at>
3694
3695 * process.c (Faccept_process_output): Fix doc-string.
3696
36972008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
3698
3699 * gmalloc.c (__sbrk): Also define for uClibc.
3700
3701 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
3702 for uClibc.
3703
37042008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3705
3706 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
3707 styles.
3708 (nsfont_open): Reenable the cache.
3709
37102008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3711
3712 * font.c (font_matching_entity): Reflect ATTRS in font selection.
3713 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
3714
37152008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
3716
3717 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
3718 a suspended terminal.
3719
37202008-09-30 Michael Albinus <michael.albinus@gmx.de>
3721
3722 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
3723
37242008-09-30 Eli Zaretskii <eliz@gnu.org>
3725
3726 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
3727
37282008-09-30 Chong Yidong <cyd@stupidchicken.com>
3729
3730 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
3731 in a continued line coincides with a line beginning.
3732
37332008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3734
3735 * nsfont.m (nsfont_trait_distance): Fix bug.
3736 (nsfont_list): Return a list rather than a vector (syncs with Handa
3737 changes of 2008-05-14).
3738 (nsfont_open): Improve logging.
3739
37402008-09-29 Andreas Schwab <schwab@suse.de>
3741
3742 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
3743
37442008-09-28 Martin Rudalics <rudalics@gmx.at>
3745
3746 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
3747 name as char-resolve-modifiers.
3748 Reported by: Markus Triska <markus.triska@gmx.at>
3749
37502008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
3751
3752 * dispnew.c (init_display): Return earlier when running as a daemon.
3753
37542008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3755
3756 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
3757
37582008-09-27 Eli Zaretskii <eliz@gnu.org>
3759
3760 * composite.c (Fcomposition_get_gstring)
3761 (Fcompose_region_internal, Fcompose_string_internal)
3762 (Ffind_composition_internal): Doc fix.
3763 (syms_of_composite) <compose-chars-after-function>: Doc fix.
3764 (syms_of_composite) <auto-composition-function>: Doc fix.
3765 (syms_of_composite) <composition-function-table>: Doc fix.
3766
37672008-09-25 Chong Yidong <cyd@stupidchicken.com>
3768
3769 * search.c (wordify): New argument for lax word-ends.
3770 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
3771
37722008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
3773
3774 * lisp.h (is_daemon): Declare.
3775 * dispnew.c (init_display): Do not try to initialize the terminal
3776 when running as a daemon.
3777
37782008-09-22 Chong Yidong <cyd@stupidchicken.com>
3779
3780 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
3781 x_display_pixel_height.
3782
37832008-09-22 Martin Rudalics <rudalics@gmx.at>
3784
3785 * undo.c (record_point): Don't call Fundo_boundary for first
3786 change. (Bug#731)
3787
37882008-09-22 Juanma Barranquero <lekktu@gmail.com>
3789
3790 * emacs.c (Fdaemonp): Doc fix.
3791
37922008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
3793
3794 * emacs.c (main): Place #ifdef in the proper place.
3795
37962008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
3797
3798 * emacs.c (standard_args): Add --daemon.
3799 (main): Disconnect from the terminal when --daemon is passed.
3800 (is_daemon): New variable.
3801 (Fdaemonp): New function.
3802 (syms_of_emacs): Defsubr it.
3803
38042008-09-20 Chong Yidong <cyd@stupidchicken.com>
3805
3806 * xdisp.c (get_next_display_element): Handle string display
3807 correctly when checking for the end of a box run.
3808
38092008-09-20 Glenn Morris <rgm@gnu.org>
3810
3811 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
3812 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
3813 (Frename_file): Avoid copying to trash if a rename involves
3814 a delete. (Bug#964).
3815
38162008-09-20 Eli Zaretskii <eliz@gnu.org>
3817
3818 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
3819 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
3820 frames as well as termcap frames.
3821 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
3822 get_named_tty.
3823
38242008-09-19 Eli Zaretskii <eliz@gnu.org>
3825
3826 * process.c (procfs_system_process_attributes): Fix cmdline in
3827 case /proc/PID/cmdline is empty.
3828
3829 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
3830 x_display_pixel_height.
3831
38322008-09-19 Juanma Barranquero <lekktu@gmail.com>
3833
3834 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
3835
3836 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
3837 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
3838
38392008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
3840
3841 * dispextern.h (struct it): Move line_wrap away from the middle of
3842 bitfields. Move voffset in struct iterator_stack_entry after the
3843 bitfields. Move tab_width near after another short.
3844
38452008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
3846
3847 * frame.h (struct frame): Move alpha from the middle of bitfields.
3848
3849 * window.h (struct window): Move frozen_window_start_p after the
3850 rest of the bitfields to reduce padding.
3851
38522008-09-18 Chong Yidong <cyd@stupidchicken.com>
3853
3854 * xterm.h (x_display_info): Remove `height' and `width' members.
3855
3856 * nsterm.h (ns_display_info): Remove `height' and `width' members.
3857
3858 * w32term.h (w32_display_info): Remove `height', `width',
3859 `height_in', and `width_in' members.
3860
b8ff72fa
SM
3861 * xterm.c (x_display_pixel_height, x_display_pixel_width):
3862 New functions.
aac0c6e3
MR
3863 (x_calc_absolute_position): Use them.
3864 (x_term_init): Omit removed `height' and `width' members.
3865
b8ff72fa
SM
3866 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3867 New functions.
aac0c6e3
MR
3868 (w32_read_socket, x_calc_absolute_position): Use them.
3869 (w32_initialize_display_info, w32_term_init): Omit removed members
3870 of w32_display_info.
3871
b8ff72fa
SM
3872 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
3873 New functions.
3874 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 3875
b8ff72fa
SM
3876 * xterm.c (x_display_pixel_height, x_display_pixel_width):
3877 New functions.
aac0c6e3
MR
3878 (x_calc_absolute_position): Use them.
3879 (x_term_init): Omit removed `height' and `width' members.
3880
3881 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
3882 (compute_tip_xy):
3883 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
3884 * xmenu.c (menu_position_func): Use x_display_pixel_height and
3885 x_display_pixel_width.
3886
38872008-09-18 Kenichi Handa <handa@m17n.org>
3888
3889 * composite.c (fill_gstring_header): Don't check FROM and TO here.
3890 (composition_compute_stop_pos): Fix handling of static composition.
3891 (Fcomposition_get_gstring): Check FROM and TO at first.
3892
38932008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
3894
46e722a9 3895 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
3896 mixup (YAILOM).
3897
38982008-09-17 Chong Yidong <cyd@stupidchicken.com>
3899
3900 * indent.c (Fvertical_motion): Use position reported by iterator
3901 instead of PT for determining screen motion (bug#943).
3902
39032008-09-17 Romain Francoise <romain@orebokech.com>
3904
3905 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
3906
39072008-09-17 Kenichi Handa <handa@m17n.org>
3908
3909 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
3910
3911 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
3912 if necessary.
3913
39142008-09-16 Kenichi Handa <handa@m17n.org>
3915
3916 * coding.c (make_conversion_work_buffer): Avoid calling
3917 Fget_buffer_create if it is not necessary.
3918
39192008-09-15 Martin Rudalics <rudalics@gmx.at>
3920
3921 * window.c (Fselect_window): Don't update window_select_count and
3922 use_time when norecord is not nil.
3923
39242008-09-14 Kenichi Handa <handa@m17n.org>
3925
3926 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
3927 specpdl_ptr.
3928
39292008-09-12 Kenichi Handa <handa@m17n.org>
3930
3931 * indent.c (scan_for_column): Don't handle automatic composition
3932 if the current buffer is not associated with a window.
3933
3934 * composite.c (composition_reseat_it): If the current buffer is
3935 not associated with a window, ignore the automatic composition.
3936 (find_automatic_composition): Likewise.
3937
39382008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3939
3940 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
3941 (Fgpm_mouse_stop): Use it.
3942 * termhooks.h (close_gpm): Declare.
3943 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
3944 connection if Gpm_GetEvent fails.
3945
3946 * window.c (set_window_buffer): Always preserve current-buffer.
3947
39482008-09-12 Glenn Morris <rgm@gnu.org>
3949
3950 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
3951
39522008-09-11 Glenn Morris <rgm@gnu.org>
3953
3954 * charset.c (charset-map-path): Doc fix.
3955
39562008-09-10 Kenichi Handa <handa@m17n.org>
3957
3958 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
3959
3960 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
3961 compose a grapheme cluster with the preceding base glyph.
3962
3963 * composite.c (composition_compute_stop_pos): Fix previous change.
3964 Reset cmp_it->id to -1 at first.
3965
39662008-09-10 Glenn Morris <rgm@gnu.org>
3967
3968 * Makefile.in (character.o, chartab.o): Fix config.h typo.
3969
39702008-09-09 Chong Yidong <cyd@stupidchicken.com>
3971
3972 * keyboard.c (read_key_sequence): Reapply translation maps when
3973 switching keyboards.
3974
39752008-09-09 Kenichi Handa <handa@m17n.org>
3976
3977 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
3978 characters.
3979
3980 * composite.c (FORWARD_CHAR): Fix calculation
3981 of (POSITION).pos_byte.
3982 (composition_compute_stop_pos): Limit the search of composition to
3983 at most 500 characters ahead. If we reach the limit or find a
3984 newline, set cmp_it->ch to -2 and return 0.
3985 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
3986
39872008-09-08 Kenichi Handa <handa@m17n.org>
3988
3989 * indent.c (Fvertical_motion): Be sure to set
3990 it_overshoot_expected if it.cmp_it.id is non-negative.
3991
39922008-09-07 Andreas Schwab <schwab@suse.de>
3993
3994 * callproc.c (Fcall_process): Don't hold references to string data
3995 across garbage collection. Move initialisation of new_argv down
3996 to avoid compiler bug.
3997
39982008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
3999
4000 * process.c (Fsystem_process_attributes): Doc fix.
4001
40022008-09-07 Chong Yidong <cyd@stupidchicken.com>
4003
4004 * callproc.c (Fcall_process): Canonicalize current directory name.
4005
4006 * xdisp.c (move_it_to): When moving by vpos, ensure that the
4007 iterator advances to the next line if the current line ends in a
4008 continued tab.
4009
40102008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
4011
4012 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
4013 member to point to cmp_from.
4014
4015 * xdisp.c: Doc fix for references to gidx data member.
4016
40172008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
4018
4019 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
4020
40212008-09-07 Kenichi Handa <handa@m17n.org>
4022
4023 * composite.c (FORWARD_CHAR): Check STOP after
4024 incrementing (POSITION).pos.
4025
40262008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4027
4028 * process.c (Fsystem_process_attributes): Doc fix.
4029
40302008-09-06 Chong Yidong <cyd@stupidchicken.com>
4031
4032 * keyboard.c (Ftop_level): Doc fix.
4033
40342008-09-06 Eli Zaretskii <eliz@gnu.org>
4035
4036 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
4037 minibuffer, don't let lower part of menu invade the echo area.
4038
4039 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
4040 "char *q" to access menu text and advance through it. Revert the
4041 change that displayed ">" instead of ASCII character 0x10.
4042
40432008-09-05 Eli Zaretskii <eliz@gnu.org>
4044
4045 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
4046 toggle boxes and radio buttons on MS-DOS as well.
4047
40482008-09-05 Kenichi Handa <handa@m17n.org>
4049
4050 * composite.c (autocmp_chars): Check lookback count.
4051 (composition_compute_stop_pos): Set cmp_it->lookback.
4052 (composition_reseat_it): Check lookback count.
4053 (struct position_record): New struct.
4054 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
4055 (find_automatic_composition): New function.
4056 (composition_adjust_point): Use find_automatic_composition.
4057
4058 * dispextern.h (struct composition_it): New member lookback.
4059
40602008-09-02 Chong Yidong <cyd@stupidchicken.com>
4061
4062 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
4063 if moving by a single line.
4064
40652008-09-02 Andreas Schwab <schwab@suse.de>
4066
4067 * xterm.c (x_delete_display): Fix merge error.
4068
4069 * fileio.c (Fexpand_file_name): Remove unused variables.
4070
40712008-09-02 Eli Zaretskii <eliz@gnu.org>
4072
4073 * fileio.c (Fexpand_file_name): Copy argument `name' into local
4074 storage on all platforms, not just on DOS_NT.
4075
40762008-09-02 Jason Rumney <jasonr@gnu.org>
4077
b8ff72fa
SM
4078 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
4079 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
4080
40812008-09-01 Chong Yidong <cyd@stupidchicken.com>
4082
4083 * xfaces.c (Finternal_set_alternative_font_family_alist)
4084 (Finternal_set_alternative_font_registry_alist): Properly copy
4085 entire alist structure.
4086
40872008-09-01 Kenichi Handa <handa@m17n.org>
4088
d66c0241 4089 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 4090 representative chars of the script is a vector.
d66c0241
JB
4091 (ftfont_list): Handle the case where the representative chars of
4092 the script is a vector.
aac0c6e3
MR
4093
4094 * character.c (syms_of_character): Docstring of
4095 script-representative-chars fixed.
4096
40972008-08-31 Eli Zaretskii <eliz@gnu.org>
4098
4099 * msdos.c (BUILD_CHAR_GLYPH): New macro.
4100 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
4101 the menu. Allocate larger buffer for `text', to account for
4102 possible ^C characters.
4103
41042008-08-31 Martin Rudalics <rudalics@gmx.at>
4105
4106 * xdisp.c (prepare_menu_bars): Don't call
4107 Vwindow_size_change_functions with arg Qt.
4108
41092008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
4110
4111 * font.h (font_range):
4112 * fileio.c (report_file_error):
46e722a9
SM
4113 * composite.c (composition_update_it): Yet another int/Lisp_Object
4114 mixup (YAILOM).
aac0c6e3
MR
4115
41162008-08-30 Glenn Morris <rgm@gnu.org>
4117
4118 * data.c (Fmake_variable_frame_local): Doc fix.
4119
4120 * frame.c (Fmodify_frame_parameters): Doc fix.
4121
41222008-08-30 Eli Zaretskii <eliz@gnu.org>
4123
4124 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
4125 needed by GetTokenInformation.
4126 (w32_system_process_attributes): Check return values of all system
4127 APIs.
4128
4129 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
4130 only when the state changes.
4131 (IT_update_begin, IT_update_end): Add termscript trace.
4132
4133 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
4134 clipboard is unavailable. Set dst to NULL if it doesn't point to
4135 malloc'ed data.
4136 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
4137 passing random values to xfree.
4138
4139 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 4140 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
4141
41422008-08-29 Jason Rumney <jasonr@gnu.org>
4143
4144 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
4145
41462008-08-29 Eli Zaretskii <eliz@gnu.org>
4147
4148 * composite.c (fill_gstring_body): Avoid compiler warnings.
4149
4150 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
4151 LGLYPH_SET_CODE to avoid compiler warnings.
4152
2ae37cf0 4153 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
4154
4155 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
4156
4157 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
4158 LGLYPH_SET_CODE.
4159
41602008-08-29 Kenichi Handa <handa@m17n.org>
4161
4162 * fileio.c (report_file_error): Don't downcase the first character
4163 of errstring if it is still unibyte.
4164
41652008-08-29 Kenichi Handa <handa@m17n.org>
4166
4167 These changes are to re-implement the automatic composition so
4168 that it doesn't use text properties.
4169
4170 * Makefile.in (ftfont.o): Depend on composite.h.
4171 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
4172
4173 * character.h (Vunicode_category_table): Extern it.
4174
4175 * character.c (Vunicode_category_table): New variable.
4176 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
4177
4178 * chartab.c (optimize_sub_char_table): Perform more greedy
4179 optimization.
4180
b8ff72fa
SM
4181 * composite.h (enum composition_method):
4182 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
4183 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
4184 (Vcomposition_function_table): Extern it.
4185 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
4186 (composition_gstring_put_cache, composition_gstring_from_id)
4187 (composition_gstring_p, composition_gstring_width)
4188 (composition_compute_stop_pos, composition_reseat_it)
4189 (composition_update_it, composition_adjust_point): Extern them.
4190 (Fcomposition_get_gstring): EXFUN it.
4191
d66c0241 4192 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
4193 (Vcomposition_function_table)
4194 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
4195 (gstring_hash_table, gstring_work, gstring_work_headers):
4196 New variables.
aac0c6e3
MR
4197 (gstring_lookup_cache, composition_gstring_put_cache)
4198 (composition_gstring_from_id, composition_gstring_p)
4199 (composition_gstring_width, fill_gstring_header)
4200 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
4201 (composition_reseat_it, composition_update_it)
b8ff72fa 4202 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
4203 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
4204 and gstring_work_headers. DEFVAR_LISP composition-function-table.
4205 Defsubr compostion_get_gstring.
4206
4207 * dispextern.h (struct glyph): New union u.cmp. Delete the member
4208 cmp_id.
4209 (struct glyph_string): Delete the member gidx. New members
4210 cmp_id, cmp_from, and cmp_to.
4211 (enum it_method): Delete GET_FROM_COMPOSITION.
4212 (struct composition_it): New struct.
4213 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
4214 Delete c, len, cmp_id, cmp_len in u.comp.
4215
4216 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 4217 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 4218 (enum lglyph_indices): Likewise.
b8ff72fa 4219 (font_range): Adjust extern.
aac0c6e3
MR
4220 (font_fill_lglyph_metrics): Extern it.
4221
4222 * font.c (QCf): New variable.
4223 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4224 (font_prepare_composition): Delete this function.
4225 (font_range): Type and arguments changed.
4226 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
4227 (font_fill_lglyph_metrics): New function.
b8ff72fa 4228 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 4229 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
4230 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
4231 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
4232
4233 * fontset.h (font_for_char): Extern it.
4234
4235 * fontset.c (font_for_char): New function.
4236
4237 * ftfont.c: Include composite.h.
4238 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 4239 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
4240
4241 * indent.c: Include composite.h and dispextern.h.
4242 (check_composition): Delete this function.
4243 (scan_for_column): Handle composition by
4244 composition_compute_stop_pos, composition_reseat_it, and
4245 composition_update_it.
4246 (compute_motion): Likewise.
4247 (Fvertical_motion): Fix checking of composition.
4248
4249 * keyboard.c (adjust_point_for_property): Check composition by
4250 composition_adjust_point.
4251
b8ff72fa 4252 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
4253 struct glyph_string.
4254
b8ff72fa
SM
4255 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
4256 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
4257 struct glyph.
4258 (produce_composite_glyph): Likewise.
4259
b8ff72fa
SM
4260 * w32term.c (x_draw_composite_glyph_string_foreground):
4261 Adjust for the change of struct glyph_string.
aac0c6e3
MR
4262 (x_draw_glyph_string): Likewise.
4263
4264 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
4265 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4266
4267 * xdisp.c: Include font.h.
4268 (it_props): Delete the entry for Qauto_composed.
4269 (init_iterator): Initialize it->cmp_it.id to -1.
4270 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 4271 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
4272 (handle_auto_composed_prop): Delete it.
4273 (handle_composition_prop): Handle only static composition.
4274 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
4275 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 4276 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
4277 (pop_it): Likewise.
4278 (get_next_element): Delete next_element_from_composition.
4279 (CHAR_COMPOSED_P): New macro.
4280 (get_next_display_element): For automatic composition, get a face
4281 from the font in the glyph-string.
4282 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 4283 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
4284 (next_element_from_string): Check if the character at the current
4285 position is composed by CHAR_COMPOSED_P.
4286 (next_element_from_buffer): Likewise.
d66c0241
JB
4287 (next_element_from_composition): Adjust for the change of struct it.
4288 Update it->cmp_it.
b8ff72fa
SM
4289 (dump_glyph): Adjust for the change of struct glyph.
4290 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
4291 it and struct glyph. Don't handle automatic composition here.
4292 (fill_gstring_glyph_string): New function.
4293 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 4294 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
4295 (BUILD_GSTRING_GLYPH_STRING): New macro.
4296 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
4297 automatic composition.
b8ff72fa 4298 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 4299 struct glyph.
b8ff72fa 4300 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 4301
b8ff72fa 4302 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
4303 the change of struct glyph_string.
4304 (x_draw_glyph_string): Likewise.
4305
43062008-08-29 Glenn Morris <rgm@gnu.org>
4307
4308 * buffer.c (word-wrap): Doc fix.
4309 * xdisp.c (truncate-partial-width-windows): Doc fix.
4310 Increase default to 50.
4311
43122008-08-29 Chong Yidong <cyd@stupidchicken.com>
4313
4314 * xdisp.c (update_tool_bar_unwind): New function.
4315 (update_tool_bar): Temporarily set selected frame before building
4316 tool-bar items.
4317
43182008-08-28 Michael Albinus <michael.albinus@gmx.de>
4319
4320 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
4321 snprintf, respectively.
4322 (xd_append_arg): Convert strings with Fstring_make_unibyte.
4323
43242008-08-28 Chong Yidong <cyd@stupidchicken.com>
4325
4326 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
4327 LDFLAGS to GNUstep CC invocation.
4328
43292008-08-27 Chong Yidong <cyd@stupidchicken.com>
4330
4331 * indent.c (Fvertical_motion): Revert last change. Handle the
4332 general case where we are moving forward, and PT spans multiple
4333 screen lines.
4334
4335 * eval.c (find_handler_clause): Temporarily increase
4336 max-lisp-eval-depth while printing the backtrace buffer, to
4337 guarantee that help-mode code can run.
4338
43392008-08-27 Eli Zaretskii <eliz@gnu.org>
4340
4341 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
4342 colors under -rv.
4343 (IT_set_frame_parameters): Don't swap foreground and background
4344 colors if `(reverse . t)' is present in the frame properties.
4345 (internal_terminal_init): Call init_frame_faces only for the
4346 initial frame.
4347
43482008-08-27 Andreas Schwab <schwab@suse.de>
4349
4350 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
4351
43522008-08-27 Andreas Schwab <schwab@suse.de>
4353
4354 * search.c (search_buffer): Set char_base to zero only at the end.
4355
43562008-08-27 Kenichi Handa <handa@m17n.org>
4357
b8ff72fa 4358 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
4359
43602008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
4361
4362 * xterm.c (x_term_init): Temporarily hide the partially
4363 initialized terminal while calling vendor-specific-keysyms.
4364
43652008-08-26 Eli Zaretskii <eliz@gnu.org>
4366
4367 * msdos.c (internal_terminal_init): Most initializations done only
4368 once, especially initial_screen_colors[] and termscript open.
4369
43702008-08-26 Chong Yidong <cyd@stupidchicken.com>
4371
4372 * eval.c (Fcondition_case): Doc fix.
4373
4374 * widgetprv.h (EmacsFramePart): Change font member to the new font
4375 struct.
4376
4377 * widget.c: Include character.h and font.h for XSETFONT.
4378 (setup_frame_gcs): Compute X font id from font struct, just once.
4379
43802008-08-26 Eli Zaretskii <eliz@gnu.org>
4381
4382 * term.c (get_named_tty): Fix last change.
4383
43842008-08-26 Chong Yidong <cyd@stupidchicken.com>
4385
4386 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 4387 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
4388
43892008-08-25 Eli Zaretskii <eliz@gnu.org>
4390
4391 * frame.c (do_switch_frame): Mark previously displayed frame as
4392 obscured for FRAME_MSDOS_P frames as well.
4393
43942008-08-24 Eli Zaretskii <eliz@gnu.org>
4395
4396 * frame.c (make_terminal_frame): Initialize f->terminal,
4397 f->terminal->reference_count, and scroll bars on MS-DOS as well.
4398 Set the top frame to newly created frame.
4399 (Fmake_terminal_frame): Reuse the_only_display_info.
4400
4401 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
4402 estimating available memory.
4403
b97439ce 44042008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
4405
4406 * nsterm.m (ns_draw_window_cursor): Don't call
4407 NSDisableScreenUpdates and NSEnableScreenUpdates on
4408 non-NS_IMPL_COCOA systems.
4409
44102008-08-23 Andreas Schwab <schwab@suse.de>
4411
4412 * process.c (procfs_system_process_attributes): Fix use of
4413 uninitialized variables.
4414
44152008-08-23 Eli Zaretskii <eliz@gnu.org>
4416
4417 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
4418
4419 * dispnew.c (init_display): Remove MS-DOS specific conditions for
4420 calling tty-set-up-initial-frame-faces.
4421
b8ff72fa
SM
4422 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
4423 Allow MSDOS frames along with X frames.
aac0c6e3
MR
4424
4425 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
4426 addition to output_termcap.
4427
4428 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
4429
4430 * termchar.h (FRAME_TTY): Support output_msdos_raw.
4431 (struct tty_display_info) [MSDOS]: Add fields related to mouse
4432 highlight.
4433
4434 * process.c [!subprocesses]: Define QCname.
4435 (syms_of_process): Intern and staticpro it.
4436
4437 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
4438 Adjust for changes in encoding/decoding routines.
4439 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
4440 encode_coding and decode_coding.
4441
b8ff72fa 4442 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
4443
4444 * dosfns.c: Include frame.h before termhooks.h.
4445 (dos_cleanup): Use CURTTY ()->termscript instead of a global
4446 variable termscript.
4447
4448 * s/msdos.h (USER_FULL_NAME): Define.
4449 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
4450
4451 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
4452 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
4453 pw->pw_gecos.
4454
4455 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
4456 SELECTED_FRAME as additional (1st) argument.
4457 (tty_read_avail_input): Handle output_msdos_raw in
4458 addition to output_termcap.
4459
4460 * msdos.c: Include frame.h before termhooks.h.
4461 (mouse_on, mouse_off, mouse_moveto, mouse_init)
4462 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
4463 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
4464 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
4465 (IT_set_terminal_modes, IT_reset_terminal_modes)
4466 (IT_set_frame_parameters): Use tty->termscript instead of a global
4467 variable termscript.
4468 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
4469 global variable terminal_coding. Don't refer to
4470 Vnonascii_translation_table.
4471 (internal_terminal_init): Set Vwindow_system in current_kboard.
4472 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
4473 Announce date and time of session start, if termscript is open.
4474 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
4475 term.c:init_tty). Open termscript only of not already open.
4476 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
4477 here instead of dos_ttraw. Don't initialize display if this is an
4478 initial tty. Don't set FRAME_FONT.
4479 (Vwindow_system_version): Bump to 23.
4480 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
4481 is available, set up mouse_position_hook.
4482 (dos_ttraw, IT_set_terminal_modes): If called with initial
4483 terminal, do nothing.
4484 (IT_set_frame_parameters): Handle the Qtty_type frame
4485 parameter by calling internal_terminal_init.
4486 (dos_set_window_size, show_mouse_face)
4487 (clear_mouse_face, IT_note_mode_line_highlight)
4488 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
4489 (dos_rawgetc): Use tty_display_info instead of x_display_info.
4490 (initialize_msdos_display): New function.
4491 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
4492 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
4493 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
4494 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 4495 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
4496 (request_sigio, unrequest_sigio): Don't define, now defined on
4497 sysdep.c.
4498 (IT_write_glyphs): Rewrite to use encode_terminal_code.
4499
4500 * term.c [MSDOS]: Include msdos.h.
4501 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
4502 conditional to DOS_NT. Allow only one call to this function in a
4503 session. Don't allocate a new struct tty_display_info; instead,
4504 reuse the_only_display_info. Call get_tty_size to get screen
4505 dimensions. Call init_baud_rate to set bad_rate.
4506 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
4507 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 4508 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
4509 (get_tty_terminal, get_named_tty, Ftty_type)
4510 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
4511 output_termcap.
b8ff72fa
SM
4512 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
4513 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 4514 only when subprocesses are supported.
aac0c6e3
MR
4515
4516 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
4517 f->output_data.x.
4518 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
4519 terminal devices.
4520
5582fbc7 4521 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
4522 x_output.
4523 (FRAME_FONT): Use output_data.tty.
4524 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
4525 (struct x_display_info): Rename from display_info. Update all users in
4526 msdos.c.
aac0c6e3 4527 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 4528 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
4529 (dos_ttraw): Update prototype.
4530
4531 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
4532 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
4533
45342008-08-23 Jason Rumney <jasonr@gnu.org>
4535
4536 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
4537 (fn_TIFFSetDirectory): New library function used.
4538 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
4539 (tiff_load): Use :index to select among multiple images. Set count
4540 property when multiple images exist.
4541 (gif_format): Use :index, not :image.
4542
45432008-08-23 Chong Yidong <cyd@stupidchicken.com>
4544
4545 * xdisp.c (try_scrolling): Check INT_MAX instead of
4546 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
4547 to obtain INT_MAX.
4548
45492008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
4550
4551 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
4552
45532008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
4554
4555 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
4556 GNUstep library location.
4557
45582008-08-21 Chong Yidong <cyd@stupidchicken.com>
4559
4560 * xfaces.c (x_update_menu_appearance): Check validity of menu font
4561 before using it.
4562
4563 * puresize.h (BASE_PURESIZE): Increase to 1250000.
4564
45652008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4566
4567 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
4568 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
4569 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
4570 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
4571 (EmacsApp-cursor_blink_handler): Remove declaration.
4572 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
4573 match 01 Feb 2008 changes in xterm.c.
4574 (ns_read_socket): Add cast to avoid warning.
4575 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
4576 GNUstep.
4577
45782008-08-20 Chong Yidong <cyd@stupidchicken.com>
4579
4580 * xselect.c (x_get_foreign_selection): Return nil if desired
4581 selection could not be obtained, instead of signalling an error.
4582
45832008-08-20 David Reitter <david.reitter@gmail.com>
4584
4585 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
4586 * nsterm.m: Remove ns-specific code for cursor blinking.
4587 (ns_draw_window_cursor): Clear cursor properly rather than
4588 redrawing the area. Respect width of bar cursors.
4589 These changes enable the use of generic blink-cursor-mode and
4590 generic cursor types in NS and support smooth cursor movements (do
4591 not blink off after command).
4592 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
4593 Nextstep, too.
4594
45952008-08-19 Kenichi Handa <handa@m17n.org>
4596
4597 * font.c (Vfont_log_deferred): New variable.
4598 (font_add_log): Check Vfont_log_deferred.
4599 (font_deferred_log): New function.
4600
4601 * font.h (font_deferred_log): Extern it.
4602
4603 * fontset.c (reorder_font_vector): Use encoding charset of fonts
4604 for sorting.
4605 (face_for_char): Use deferred log.
4606
46072008-08-18 Kenichi Handa <handa@m17n.org>
4608
4609 * fontset.c (face_for_char): Add font log.
4610
4611 * font.c (font_add_log): Add the font properties :script, :lang,
4612 and :otf in the log.
4613
46142008-08-17 Chong Yidong <cyd@stupidchicken.com>
4615
4616 * xdisp.c: Remove dead code.
4617 (handle_invisible_prop, next_overlay_string): Defer call to
4618 setup_for_ellipsis.
4619 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
4620
46212008-08-15 Chong Yidong <cyd@stupidchicken.com>
4622
4623 * xfaces.c (lookup_derived_face): Properly handle possible zero
4624 return value of get_lface_attributes.
4625 (merge_faces): Don't tell lookup_derived_face to signal an error
4626 if face is not found.
4627
4628 * dired.c (Fdirectory_files): Doc fix.
4629
4630 * process.c (make_process): Initialize kill_without_query struct
4631 member.
4632
46332008-08-15 Eli Zaretskii <eliz@gnu.org>
4634
4635 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
4636 Alternative calculation of totphys for Visual Studio 6.
4637
4638 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
4639
4640 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
4641 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
4642 All users changed.
4643 (stat): Only root directory passed to GetDriveType. Allow RAM
4644 disk as well as local fixed disk when w32-get-true-file-attributes
4645 is set to `local'.
4646 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
4647 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
4648 (w32_cached_id, w32_add_to_cache): New functions.
4649 (get_name_and_id): Look account names in the cache before calling
4650 lookup_account_sid.
4651 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
4652 New initialization flags.
4653 (globals_of_w32): Initialize them to zero.
4654 (w32_system_process_attributes): Use w32_cached_id and
4655 w32_add_to_cache.
4656
46572008-08-14 Lawrence Mitchell <wence@gmx.li>
4658
4659 * lread.c (Fread_char, Fread_char_exclusive): If no character
4660 event is read before timeout is reached, return nil, rather than
4661 converting to a number.
4662
46632008-08-14 Chong Yidong <cyd@stupidchicken.com>
4664
4665 * fns.c (use_dialog_box): Doc fix.
4666
4667 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
4668 on OS X.
4669
46702008-08-13 Chong Yidong <cyd@stupidchicken.com>
4671
4672 * frame.c (Qns_parse_geometry): New var.
4673 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
4674
46752008-08-11 Chong Yidong <cyd@stupidchicken.com>
4676
4677 * xdisp.c (x_produce_glyphs): Handle the case when font has no
4678 space character in calculating tabs.
4679
46802008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
4681
4682 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
4683
46842008-08-10 Glenn Morris <rgm@gnu.org>
4685
4686 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
4687 silence gcc "limited range of data type" warnings in some
4688 make_fixnum_or_float calls.
4689
46902008-08-09 Eli Zaretskii <eliz@gnu.org>
4691
4692 * w32.c (w32_system_process_attributes): If the process does not
4693 exist, return nil.
4694
4695 * w32.c: Include thelp32.h, psapi.h and coding.h.
4696 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
4697 declarations.
4698 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
4699 (Process32Next_Proc): New typedefs.
4700 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
4701 (g_b_init_process32_next, g_b_init_open_thread_token)
4702 (g_b_init_impersonate_self, g_b_init_revert_to_self)
4703 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
4704 (g_b_init_get_process_working_set_size)
4705 (g_b_init_global_memory_status_ex): New static variables.
4706 (globals_of_w32): Initialize them.
4707 (create_toolhelp32_snapshot, process32_first, process32_next)
4708 (open_thread_token, impersonate_self, revert_to_self)
4709 (get_process_memory_info, get_process_working_set_size)
4710 (global_memory_status, global_memory_status_ex): New wrapper
4711 functions.
4712 (w32_list_system_processes, w32_system_process_attributes)
4713 (enable_privilege, restore_privilege, ltime, process_times):
4714 New functions.
4715 (convert_time_raw): New function.
4716 (convert_time): Remove conversion of FILETIME into time in 100
4717 nsec units, call convert_time_raw instead.
4718
4719 * process.h (w32_list_system_processes, w32_system_process_attributes):
4720 Add prototypes.
4721 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
4722 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
4723 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
4724 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
4725
4726 * process.c (Fsystem_process_attributes): Doc fix.
4727
47282008-08-08 Chong Yidong <cyd@stupidchicken.com>
4729
4730 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
4731 a continued multi-char glyph; if so, advance to the actual glyph.
4732
47332008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
4734
4735 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
4736
4737 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
4738 (.m.o): Use it.
4739 * config.in: Regenerate.
4740
47412008-08-07 Chong Yidong <cyd@stupidchicken.com>
4742
4743 * xdisp.c (redisplay_window): Revert last change.
4744 (try_window): Check bottom scroll margin too.
4745
47462008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
4747
4748 * config.in: Regenerate.
4749
4750 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
4751 -list-load-path-shadows'.
4752 (nsgui.h): Reduce number of things depending on it.
4753
47542008-08-06 Chong Yidong <cyd@stupidchicken.com>
4755
4756 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
4757 instead of window-end which does the wrong thing at eob.
4758 (try_cursor_movement): Minor optimization.
4759 (redisplay_window): If scroll margin is defined, don't assume
4760 window doesn't need scrolling.
4761
47622008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
4763
4764 * config.in: Regenerate.
4765
4766 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
4767 (mostlyclean): Don't delete *.d under NS.
4768
4769 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
4770
47712008-08-06 Kenichi Handa <handa@m17n.org>
4772
4773 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
4774
47752008-08-06 Andreas Schwab <schwab@suse.de>
4776
4777 * config.in: Regenerate.
4778
47792008-08-05 Chong Yidong <cyd@stupidchicken.com>
4780
4781 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
4782 forcing a window start.
4783
4784 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
4785 (auto_save_1): Update modtime when auto-save-list-file-name is on.
4786
47872008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4788
4789 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
4790 argument.
4791
47922008-08-05 Juanma Barranquero <lekktu@gmail.com>
4793
4794 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
4795 <scroll-down-aggressively, before-change-functions>:
4796 <after-change-functions>: Reflow docstrings.
4797
47982008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4799 Ken Raeburn <raeburn@gnu.org>
4800
4801 Dock menu customization, based on a patch by Ken Raeburn, plus some
4802 other fixes.
4803 * nsmenu.m (dockMenu): New variable.
4804 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
4805
4806 * nsterm.h (dockMenu): Declare.
4807
4808 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
4809 (ns_term_init): Initialize dockMenu.
4810 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
4811 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
4812 left.
4813
4814 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
4815
48162008-08-04 Chong Yidong <cyd@stupidchicken.com>
4817
4818 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
4819
4820 * config.in: Regenerate.
4821
48222008-08-04 Seiji Zenitani <zenitani@mac.com>
4823
4824 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
4825
48262008-08-04 Chong Yidong <cyd@stupidchicken.com>
4827
4828 * nsterm.h (find_and_call_menu_selection): Fix prototype.
4829
48302008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4831
4832 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
4833
4834 * keyboard.h: Comment an #endif.
4835
4836 * lisp.h (have_menus_p): Adjust comment.
4837
4838 * menu.c (find_and_return_menu_selection): Fix comparison with
4839 client_data.
4840
4841 * nsmenu.m (popup_activated_flag): New variable.
4842 (popup_activated): New function.
4843 (menu-or-popup-active-p): New exported lisp definition.
4844 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
4845 when popup done.
4846 (ns_popup_dialog): Set popup_activated_flag.
4847
4848 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
4849 version for GNUstep (handled by conditional typedef in nsterm.m).
4850 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
4851 in rgb.txt).
4852
4853 * process.c (init_process): Use DARWIN_OS, not DARWIN.
4854
4855 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
4856
4857 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
4858
4859 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
4860 shortcircuit if popup_activated like GTK and X toolkit.
4861
4862 * m/inter386.h: Change DARWIN to DARWIN_OS.
4863
4864 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
4865 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
4866 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
4867 comment on NO_SOCK_SIGIO.
4868
48692008-08-03 Chong Yidong <cyd@stupidchicken.com>
4870
4871 * nsterm.m (windowDidResize): Remove stopModal call.
4872
48732008-08-03 Andreas Schwab <schwab@suse.de>
4874
4875 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
4876 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
4877
48782008-08-02 Chong Yidong <cyd@stupidchicken.com>
4879
4880 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
4881 Don't use uninitialized pointer variable when using getrlimit.
4882
48832008-08-02 Jason Rumney <jasonr@gnu.org>
4884
4885 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
4886
48872008-08-02 Eli Zaretskii <eliz@gnu.org>
4888
4889 * alloc.c (NSTATICS): Bump to 0x640.
4890
4891 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
4892
4893 * lisp.h: Add prototype for directory_files_internal.
4894
4895 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
4896 New functions.
4897 (syms_of_process): Defsubr them. Add initializations for various
4898 Q* symbols used in procfs_system_process_attributes.
4899 (procfs_list_system_processes, procfs_system_process_attributes)
4900 [HAVE_PROCFS]: New functions.
4901 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
4902 (procfs_get_total_memory): New functions.
4903
49042008-08-01 Juanma Barranquero <lekktu@gmail.com>
4905
4906 * xfaces.c (Fx_load_color_file): Fix previous change;
4907 it is #ifdef WINDOWSNT, not WINDOWS_NT.
4908
49092008-08-01 Michael Albinus <michael.albinus@gmx.de>
4910
4911 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
4912
49132008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4914
4915 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
4916
49172008-08-01 Chong Yidong <cyd@stupidchicken.com>
4918
4919 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
4920
4921 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
4922 define NSApplicationDelegateReplySuccess.
4923 (EmacsView -converstationIdentifier): Use long instead of
4924 NSInteger for GNUstep, since it doesn't have NSInteger.
4925
4926 * xmenu.c: Revert last change.
4927
4928 * keyboard.h: Fix last change.
4929
49302008-08-01 Juanma Barranquero <lekktu@gmail.com>
4931
4932 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
4933 on Windows.
4934
49352008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4936
4937 Warning clearing and clean-up in NS port.
4938 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
4939 Add prototypes.
4940 * nsgui.h (FACE_DEFAULT): Remove, unused.
4941 (XGCValues): Change colors to unsigned long.
4942 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
4943 nsterm.m.
4944 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
4945 (ns_list_fonts): Remove, unused.
4946 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
4947 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
4948 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
4949 (nsfont_draw): Compare face colors to 0, not nil.
4950 * nsmenu.m (struct widget_value): Drop unneeded declaration.
4951 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
4952 (-addSubmenuWithTitle:): Use NSMenuItem class.
4953 (ns_popup_menu): Use NO, not NULL, for enabled setting.
4954 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
4955 (ns_clip_to_row): Make gc arg a BOOL.
4956 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
4957 ns_clip_to_row() call.
4958 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
4959 used). Cast FRAME_FONT assignments.
4960 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
4961 (ns_string_to_lispmod): Change arg to const char.
4962 (ns_term_init): Use NSMenuItem class.
4963 (EmacsApp -openFile:): Move to different section of file.
4964 (EmacsApp -application:openFiles:): Don't return a value, call
4965 -replyToOpenOrPrint:.
4966 (EmacsView -keyDown:): Fix up cast.
4967 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
4968 (EmacsView -menuDown:): Cast tag in call to
4969 find_and_call_menu_selection().
4970 (ns_list_fonts): Remove, unused.
4971 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
4972 (ns_fontname_to_xlfd): Make static.
4973 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
4974 Remove prototypes (now in keyboard.h).
4975 (next_menubar_widget_id): Remove, unused.
4976 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
4977 Remove prototypes (now in keyboard.h).
4978 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
4979
49802008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
4981
4982 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
4983 (floatfns.o): Depend on syssignal.h.
4984 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
4985
4986 * systty.h: Fix previous change that removed BSD_TERMIOS.
4987 Add comments to #ifdefs.
4988
49892008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4990
4991 * w32fns.c (w32-load-color-file): Remove.
4992 (x-open-connection): Use renamed Fx_load_color_file.
4993 * xfaces.c (x-load-color-file): Add.
4994 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
4995 Emacs.clr.
4996 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
4997
49982008-07-31 Michael Albinus <michael.albinus@gmx.de>
4999
5000 * dbusbind.c (Fdbus_call_method_asynchronously)
5001 (Fdbus_method_error_internal): New defuns.
5002 (xd_read_message): Handle also reply messages.
5003 (Vdbus_registered_functions_table): Extend docstring.
5004
50052008-07-31 Juanma Barranquero <lekktu@gmail.com>
5006
5007 * keyboard.c (gobble_input): Fix previous change.
5008
50092008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5010
5011 * bitmaps/README:
5012 * xfns.c:
5013 * termcap.c:
5014 * term.c:
5015 * syswait.h:
5016 * systty.h:
5017 * systime.h:
5018 * syssignal.h:
5019 * sysdep.c:
5020 * process.h:
5021 * process.c:
5022 * print.c:
5023 * ndir.h:
5024 * lread.c:
5025 * keyboard.c:
5026 * getpagesize.h:
5027 * floatfns.c:
5028 * fileio.c:
5029 * emacs.c:
5030 * doc.c:
5031 * dispnew.c:
5032 * dired.c:
5033 * data.c:
5034 * callproc.c:
5035 * buffer.c:
5036 * README:
5037 * Makefile.in:
5038 * s/template.h:
5039 * s/msdos.h:
5040 * m/vax.h: Remove VMS support.
5041 * s/vms.h:
5042 * vlimit.h:
5043 * uaf.h:
5044 * temacs.opt:
5045 * param.h:
5046 * ioctl.h: Remove file.
5047
50482008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5049
5050 * s/ms-w32.h (MULTI_KBOARD): Remove.
5051 * xterm.c:
5052 * xselect.c:
5053 * xfns.c:
5054 * window.c:
5055 * w32term.c:
5056 * w32fns.c:
5057 * terminal.c:
5058 * termhooks.h:
5059 * term.c:
5060 * sysdep.c:
5061 * keyboard.h:
5062 * keyboard.c:
5063 * frame.h:
5064 * frame.c:
5065 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
5066 * config.in: Regenerate.
5067
50682008-07-30 Jason Rumney <jasonr@gnu.org>
5069
5070 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
5071
5072 * w32font.c (w32font_encode_char): Leave as unicode if in range.
5073 (w32font_open_internal): Get unicode version of textmetrics.
5074 Don't enable or disable glyph indices here.
5075 (w32font_open): Disable use of glyph indices.
5076
5077 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
5078
50792008-07-30 Chong Yidong <cyd@stupidchicken.com>
5080
5081 * minibuf.c (Vread_buffer_function): Doc fix.
5082
50832008-07-30 John Paul Wallington <jpw@pobox.com>
5084
5085 * minibuf.c (read_buffer_completion_ignore_case): New var.
5086 (Fread_buffer): Use it.
5087
50882008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
5089
5090 * systty.h (sensemode): Remove empty #if. Remove reference to
5091 BSD_TERMIOS, unused.
5092
5093 * sysdep.c: Remove reference to DGUX.
5094 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
5095
5096 * config.in: Regenerate.
5097
50982008-07-30 Jason Rumney <jasonr@gnu.org>
5099
5100 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
5101
51022008-07-29 Jason Rumney <jasonr@gnu.org>
5103
5104 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
5105 is populated.
5106 (uniscribe_encode_char): Always use uniscribe.
5107 Avoid using context if cache is populated.
5108
51092008-07-29 Jan Djärv <jan.h.d@swipnet.se>
5110
5111 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
5112 open menu.
5113
5114 * gtkutil.c (menu_nav_ended): Remove.
5115 (create_menus): Remove signal connect for menu_nav_ended.
5116
51172008-07-28 Chong Yidong <cyd@stupidchicken.com>
5118
5119 * xdisp.c (redisplay_window): Check return value of
5120 compute_window_start_on_continuation_line before forcing a window
5121 start.
5122
51232008-07-28 Jason Rumney <jasonr@gnu.org>
5124
5125 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
5126
5127 * w32term.c (w32_enable_unicode_output, cleartype_active):
5128 Remove obsolete display options.
5129 (x_draw_glyph_string_background): Don't use old cleartype_active
5130 workaround.
5131 (w32_initialize): Remove cleartype_active initialization.
5132 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
5133
51342008-07-28 Andreas Schwab <schwab@suse.de>
5135
5136 * lisp.h (init_weak_hash_tables, syms_of_font)
5137 (xd_read_queued_messages, syms_of_dbusbind): Declare.
5138 (remove_hash_entry): Don't declare.
5139 * eval.c (maybe_call_debugger): Make static and move before use.
5140 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
5141 * xdisp.c: Include "gtkutil.h" if USE_GTK.
5142 * xterm.h (x_set_frame_alpha): Declare.
5143
51442008-07-28 Jan Djärv <jan.h.d@swipnet.se>
5145
5146 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
5147 (create_menus): Connect selection-done to menu_nav_ended.
5148
51492008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5150
5151 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
5152 Set Vx_resource_name to a fallback. Replace read of 'buffered'
5153 parameter with read of 'alpha' one.
5154 (Qns_frame_parameter): Remove.
5582fbc7 5155 * nsselect.m (selection-coding-system)
aac0c6e3
MR
5156 (next-selection-coding-system, Vselection_coding_system)
5157 (Vnext_selection_coding_system): Drop.
5158
51592008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5160
5161 * nsfns.m (do-applescript, do_applescript): Rename to
5162 ns-do-applescript, ns_do_applescript, and move within file.
5163
51642008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
5165
5166 Remove support for Mac Carbon.
5167 * mactoolbox.c:
5168 * macterm.h:
5169 * macterm.c:
5170 * macselect.c:
5171 * macmenu.c:
5172 * macgui.h:
5173 * macfns.c:
5174 * mac.c: Remove file.
5175 * s/darwin.h:
5176 * m/intel386.h:
5177 * xfaces.c:
5178 * xdisp.c:
5179 * window.c:
5180 * tparam.c:
5181 * termhooks.h:
5182 * termcap.c:
5183 * term.c:
5184 * syssignal.h:
5185 * sysselect.h:
5186 * sysdep.c:
5187 * process.c:
5188 * lread.c:
5189 * lisp.h:
5190 * keyboard.c:
5191 * image.c:
5192 * fringe.c:
5193 * frame.h:
5194 * frame.c:
5195 * fontset.c:
5196 * font.h:
5197 * font.c:
5198 * fns.c:
5199 * fileio.c:
5200 * emacs.c:
5201 * dispnew.c:
5202 * dispextern.h:
5203 * config.in:
5204 * atimer.c:
2ae37cf0 5205 * Makefile.in: Remove code for Carbon.
aac0c6e3 5206
f0131492 52072008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
5208
5209 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
5210
52112008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5212
5213 * macterm.h (kCGBitmapByteOrder32Host): New define for
5214 non-universal SDKs.
5215
5216 * image.c (mac_create_cg_image_from_image, image_load_image_io)
5217 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5218
5219 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
5220 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5221
52222008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
5223
5224 * w32inevt.c: Include dispextern.h.
5225
52262008-07-26 Andreas Schwab <schwab@suse.de>
5227
5228 * print.c (print_object): Fix off-by-one in last change.
5229
52302008-07-25 Juanma Barranquero <lekktu@gmail.com>
5231
5232 * term.c (syms_of_term): Don't initialize default_orig_pair,
5233 default_set_foreground and default_set_background on Windows.
5234
52352008-07-25 Jason Rumney <jasonr@gnu.org>
5236
5237 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
5238 ScriptItemize. Clean up return value checking. Remove unused
5239 variables.
5240 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
5241 shaping engine.
5242
5243 * w32font.c (w32font_has_char): Handle the case where we can't
5244 determine the script for a character.
5245
52462008-07-25 Chong Yidong <cyd@stupidchicken.com>
5247
5248 * term.c (syms_of_term): Initialize default_orig_pair,
5249 default_set_foreground, and default_set_background.
5250
5251 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
5252 clash (bug#86).
5253 (getloadavg): Callers changed.
5254
5255 * image.c (svg_load_image): Fix last change.
5256 (svg_load_image): Use rsvg_handle_get_dimensions to check that
5257 image size is valid. Use g_object_unref instead of deprecated
5258 rsvg_handle_free to free rsvg handle.
5259 (x_from_xcolors): Don't initialize pixmap (silence compiler).
5260
52612008-07-25 Jason Rumney <jasonr@gnu.org>
5262
5263 * w32font.c (w32font_encode_char): Encode characters outside BMP as
5264 surrogates before looking up glyph index.
5265 (w32font_text_extents): Encode as surrogates if falling back to
5266 functions that need UTF-16 wide chars.
5267
5268 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
5269 BMP as surrogates before looking up glyph index.
5270
52712008-07-25 Chong Yidong <cyd@stupidchicken.com>
5272
5273 * image.c (svg_load_image): Check for failure in return value of
5274 rsvg_handle_get_pixbuf. Free rsvg handle when done.
5275
52762008-07-25 Jason Rumney <jasonr@gnu.org>
5277
5278 * w32font.c (Fx_select_font): Reverse sense of second arg.
5279
52802008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
5281
5282 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
5283 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
5284
5285 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
5286 (PURESIZE): Use it.
5287
52882008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
5289
5290 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
5291 * m/alpha.h (TEXT_END):
5292 * m/ibmrs6000.h (TEXT_END):
5293 * m/macppc.h (TEXT_END):
5294 * s/darwin.h (TEXT_END):
5295 * s/msdos.h (TEXT_END): Remove, unused.
5296 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
5297 * s/cygwin.h: Remove comment.
5298
5299 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
5300 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
5301 * m/intel386.h (DOT_GLOBAL_START):
5302 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
5303 (USG): Remove, file not used on USG platforms.
5304
5305 * Makefile.in (HAVE_X11): Remove empty #else.
5306
53072008-07-24 Andreas Schwab <schwab@suse.de>
5308
5309 * fileio.c (Finsert_file_contents): Properly adjust undo list
5310 after format conversion.
5311
53122008-07-24 Jan Djärv <jan.h.d@swipnet.se>
5313
5314 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
5315 (menu_nav_ended): Remove.
5316 (create_menus): Remove signal connect for menu_nav_ended.
5317 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
5318 create_menus.
5319 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
5320
53212008-07-23 Jason Rumney <jasonr@gnu.org>
5322
5323 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
5324 with opened font.
5325 (w32font_open): Set font type to gdi.
5326
5327 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
5328
53292008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
5330
5331 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
5332 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
5333 defines it.
5334 * unexec.c (ADDR_CORRECT): Define unconditionally.
5335
5336 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
5337
5338 * unexec.c: Remove code depending on !COFF and USG, the file is
5339 not used for such systems.
5340
5341 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
5342 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
5343 (LD_SWITCH_SYSTEM_1): Remove, update users.
5344
5345 * s/darwin.h (DATA_END):
5346 * m/intel386.h (DATA_END):
5347 * m/ibmrs6000.h (DATA_END):
5348 * m/alpha.h (DATA_END): Remove, unused.
5349
5350 * config.in: Regenerate.
5351 * s/ms-w32.h (subprocesses): Define unconditionally.
5352 * s/template.h (subprocesses): Update comment.
5353 * s/vms.h (subprocesses):
5354 * s/usg5-4.h (subprocesses):
5355 * s/hpux10-20.h (subprocesses):
5356 * s/gnu-linux.h (subprocesses):
5357 * s/cygwin.h (subprocesses):
5358 * s/bsd-common.h (subprocesses):
5359 * s/aix4-2.h (subprocesses):
5360 * s/darwin.h (subprocesses): Do not define, defined by default now.
5361
5362 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
5363 Remove all references.
5364 (temacs): Add GNUstep specific ld flags.
5365
5366 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
5367 similarly to what X does.
5368
53692008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5370
5371 * nsfns.m (x-list-fonts): Remove.
5372 (syms_of_nsfns): Drop the x-list-fonts declaration.
5373 * nsterm.m: Get rid of remaining "//" comments.
5374
53752008-07-22 Chong Yidong <cyd@stupidchicken.com>
5376
5377 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
5378
5379 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
5380 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
5381 (Fns_own_selection_internal, Fx_disown_selection_internal)
5382 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
5383
5384 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
5385 ... */' style of docstrings. Doc fixes.
5386
53872008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
5388
5389 * terminfo.c (UP, BC, PC): Undo previous change.
5390
5391 * nsfns.m: Rename ns prefixed functions/variables to the
5392 corresponding x versions. Update references.
5393
53942008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
5395
5396 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
5397
53982008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
5399
5400 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
5401 Remove forwarding functions.
5402 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
5403 non-static.
5404 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
5405 non-static.
5406 (ns_frame_parm_handlers): Use the new names.
5407 (syms_of_nsfns): Move to the end of file.
5408
5409 * nsterm.m (syms_of_nsterm): Move to the end of file.
5410
5411 * dispnew.c (init_display): Remove code for X10.
5412
54132008-07-22 Jason Rumney <jasonr@gnu.org>
5414
5415 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
5416 bare drive.
5417
54182008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5419
5420 * nsterm.m (syms_of_nsterm): Remove debugging println.
5421
54222008-07-22 David Reitter <david.reitter@gmail.com>
5423
5424 * nsfns.m (do_applescript, F_do_applescript): NS version of the
5425 Carbon implementation of the same functionality: execute arbitrary
5426 AppleScript code.
5427
54282008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
5429
5430 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
5431 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
5432 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5433 (Fx_display_mm_height, Fx_display_mm_width)
5434 (Fx_display_backing_store, Fx_display_visual_class)
5435 (Fx_display_save_under, Fx_open_connection)
5436 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
5437 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
5438 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
5439 (Fx_display_pixel_width, Fx_display_pixel_height)
5440 (Fx_display_usable_bounds, Fx_display_planes)
5441 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
5442 ... */' style of docstrings.
5443
54442008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
5445
5446 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
5447 on this platform.
5448 (mips):
5449 * m/iris4d.h (mips): Do not define.
5450 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
5451
5452 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
5453
5454 * image.c:
5455 * nsfns.m:
5456 * nsselect.m:
5457 * nsterm.h:
5458 * nsterm.m: Rename ns prefixed functions/variables to the
5459 corresponding x versions. Update references.
5460
5461 * m/ibms390x.h (NO_REMAP): Do not undefine.
5462
5463 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
5464
54652008-07-21 Chong Yidong <cyd@stupidchicken.com>
5466
5467 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
5468 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
5469 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
5470 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
5471 (Fns_display_mm_height, Fns_display_mm_width)
5472 (Fns_display_backing_store, Fns_display_visual_class)
5473 (Fns_display_save_under, Fns_open_connection)
5474 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
5475 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
5476 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
5477 (Fns_display_pixel_width, Fns_display_pixel_height)
5478 (Fns_display_usable_bounds, Fx_display_planes)
5479 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
5480
54812008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
5482
5483 * print.c (print_object): Check print_depth before searching for
5484 circularities.
5485
54862008-07-21 Michael Albinus <michael.albinus@gmx.de>
5487
5488 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
5489 only sprintf.
5490
54912008-07-21 Kenichi Handa <handa@m17n.org>
5492
5493 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
5494
54952008-07-20 Andreas Schwab <schwab@suse.de>
5496
5497 * syntax.c (find_start_pos, find_start_value)
5498 (find_start_value_byte, find_start_begv, find_defun_start)
5499 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
5500
55012008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
5502
5503 * s/sol2-3.h: Insert contents of s/sol2.h.
5504 (LD_SWITCH_SYSTEM): Remove redundant definition.
5505 * s/sol2.h: Remove, unused.
5506
55072008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5508
5509 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
5510
55112008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5512
5513 * Makefile.in (ns_appdir): Fix typo in find command.
5514
55152008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
5516
5517 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
5518
5519 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
5520 added not supported anymore.
5521
5522 * s/usg5-4-2.h (LIBS_SYSTEM):
5523 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
5524
5525 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
5526 * s/lynxos.h (GETPGRP_NO_ARG):
5527 * s/hpux10-20.h (NO_SIOCTL_H):
5528 * s/gnu.h (GETPGRP_NO_ARG):
5529 * s/gnu-linux.h (NO_SIOCTL_H):
5530 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
5531 * s/cygwin.h (GETPGRP_NO_ARG):
5532 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
5533 (C_DEBUG_SWITCH): Remove duplicate definition.
5534
5535 * m/ibms390.h: Remove boilerplate comments.
5536
5537 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
5538
5539 * process.c (HAVE_SERIAL): Consolidate ifdefs.
5540 (wait_reading_process_output): Remove code for SunOS, platform not
5541 supported anymore. Use SOLARIS2 instead of sun.
5542
55432008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5544
5545 * font.c (font_open_by_name): Under NS, default lface height to zero.
5546 (font_open_for_lface): Under NS, set size based on frame fontsize.
5547 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
5548 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
5549
55502008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5551
5552 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
5553 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
5554 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
5555 YES/NO.
5556 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
5557 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
5558 * Makefile.in (clean): Clear out build destination dir.
5559
55602008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5561
5562 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
5563 xterm, xselect.
5564 * lisp.h: Remove declaration of hash_remove.
5565 * nsgui.h: Remove redefinitions of hash_remove.
5566 * fns.c (hash_remove): Rename to hash_remove_from_table.
5567
55682008-07-19 Seiji Zenitani <zenitani@mac.com>
5569
5570 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
5571 strdup() the family UTF8String before modifying it.
5572
55732008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5574
5575 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
5576 NS_FACE_BACKGROUND with 0 instead of nil.
5577 * nsfont.m (nsfont_draw): Same.
5578
55792008-07-19 Chong Yidong <cyd@stupidchicken.com>
5580
5581 * nsfns.m (ns_set_background_color): Fix crash.
5582
55832008-07-18 Chong Yidong <cyd@stupidchicken.com>
5584
5585 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
5586
55872008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
5588
5589 * puresize.h (BASE_PURESIZE): Increase to 1240000.
5590
55912008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5592
5593 * gtkutil.c: Include <config.h> instead of "config.h".
5594
5595 * lisp.h (Foverlay_buffer): Add EXFUN.
5596
5597 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
5598 child process to complete child_setup. Undo 2005-09-21 change.
5599
5600 * s/darwin.h: Mention setsid after vfork.
5601
56022008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5603
5604 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
5605 Depend on macgui.h.
5606
5607 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
5608 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
5609
5610 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
5611 and f19.
5612 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
5613
5614 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
5615 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
5616 Remove enumerators.
5617
5618 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
5619 Check if FACE_FROM_ID returns NULL.
5620
56212008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
5622
5623 * w32inevt.c (change_frame_size): Remove extern declaration.
5624 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
5625 change_frame_size.
5626
56272008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
5628
5629 * getloadavg.c: Revert last change (2008-07-15).
5630
56312008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
5632
5633 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
5634 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
5635 from configure.
5636
56372008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
5638
5639 * s/sol2.h:
5640 * s/sol2-4.h: Reorganize conditionals.
5641
5642 * ecrt0.c: Remove code depending on m68000, not used anymore.
5643
5644 * fns.c (hash_remove): Make static.
5645 * lisp.h (hash_remove): Don't prototype.
5646
5647 * m/ibmrs6000.h:
5648 * m/ibms390x.h:
5649 * m/macppc.h: Remove boilerplate comments.
5650
5651 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
5652 Solaris, which does not need them.
5653
5654 * m/vax.h: Remove comments about unsupported systems.
5655
5656 * s/darwin.h: Reorganize ifdefs.
5657
56582008-07-17 Andreas Schwab <schwab@suse.de>
5659
5660 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
5661
56622008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
5663
5664 Use SDATA. Follow coding convention of placing operators at
5665 beginning of next line rather than end of previous line, and placing
5666 spaces around infix operators.
5667
5668 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
5669 in case it was defined already.
5670 USE @GNUSTEP_MAKEFILES@ rather than envvars.
5671 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
5672 ns_default.
5673 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
5674 Lisp_Objects.
5675 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
5676 (ns_defined_color, ns_color_to_lisp): Declare.
5677 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
5678 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
5679 it's accepted even with USE_LISP_UNION_TYPE.
5680 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
5681 (update_frame_tool_bar): Remove apparently obsolete tests for
5682 non-integerness of f->tool_bar_lines.
5683 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
5684 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
5685 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
5686 (nsfont_open): Don't confuse NULL for Qnil.
5687 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
5688 * menu.h (find_and_call_menu_selection):
5689 * menu.c (find_and_call_menu_selection): Use just int for vector size.
5690 (find_and_return_menu_selection): Always return something.
5691 * frame.h: Include dispextern.h for Display_Info.
5692 (display_x_get_resource): Declare.
5693
56942008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
5695
5696 * syntax.c: Remove stdio.h include accidentally introduced in
5697 Emacs.app commit.
5698 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
5699 NS_IMPL_COCOA.
5700 * keyboard.c (handle_async_input, input_available_signal): Remove
5701 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
5702
57032008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
5704
5705 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
5706 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
5707 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
5708 Use SDATA.
5709
5710 * keymap.c: Remove all NS-specific code.
5711 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
5712 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
5713 where_is_preferred_modifier, return a different value depending on how
5714 preferred is the binding.
5715 (where_is_internal): Adjust accordingly.
5716 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
5717 Adjust to new preferred_sequence_p.
5718 (syms_of_keymap): Declare `where-is-preferred-modifier'.
5719 * keyboard.c (parse_solitary_modifier): Not static any more.
5720 * keyboard.h (parse_solitary_modifier): Declare.
5721
57222008-07-16 Andreas Schwab <schwab@suse.de>
5723
5724 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
5725 of easymenu.
5726
57272008-07-16 Chong Yidong <cyd@stupidchicken.com>
5728
5729 * xdisp.c (move_it_in_display_line): Account for word wrap, so
5730 that we don't move off the line.
5731
57322008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
5733
5734 * keyboard.c (Qsuper): Remove.
5735 (parse_menu_item): Don't call where_is_internal specially for NS.
5736
57372008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
5738
5739 * s/gnu-linux.h: Remove boilerplate comments.
5740
5741 * m/alpha.h (__ELF__): Consolidate conditions.
5742
5743 * m/m68k.h (linux): Use GNU_LINUX instead.
5744 Remove boilerplate comments.
5745
5746 * m/intel386.h: Undo refactoring from previous change.
5747 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
5748 too, remove dead code.
5749 (linux): Use GNU_LINUX instead.
5750
57512008-07-16 Jason Rumney <jasonr@gnu.org>
5752
5753 * w32gui.h: Repeat 26 June changes lost by last change.
5754
57552008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
5756
5757 * systty.h: Remove code for Aix on 386, unsupported platform.
5758
5759 * s/ms-w32.h: Remove boilerplate comments.
5760 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
5761
5762 * s/gnu-linux.h (TERM): Remove support.
5763 (HAVE_SYSVIPC): Remove, unused.
5764 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
5765 for this system.
5766
5767 * process.c: Remove support for IRIS, unused.
5768 Remove support for TERM, not relevant anymore.
5769
5770 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
5771 used with the definition.
5772
5773 * s/aix4-2.h (static): Do not undef.
5774
5775 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
5776 only used on Aix.
5777 (HAVE_SYSVIPC): Remove, unused.
5778
5779 * m/hp800.h (CANNOT_DUMP): Do not undef.
5780
5781 * m/alpha.h: Fix comment.
5782
5783 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
5784 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
5785 used by this configuration.
5786 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
5787 * unexec.c: Remove code depending on HPUX and
5788 USG_SHARED_LIBRARIES, not used with this file. Remove code
5789 depending on IRIS, unused. Remove if 0-ed code.
5790
5791 * s/template.h: Remove comments about static.
5792
5793 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
5794 Remove if 0-ed code.
5795 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
5796 were the same as the default.
5797 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
5798 Remove boilerplate comments.
5799 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
5800 (HAVE_SYSVIPC): Remove, unused.
5801 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
5802
5803 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
5804 Remove boilerplate comments.
5805 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
5806 Remove boilerplate comments.
5807 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
5808 Remove boilerplate comments.
5809 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
5810
5811 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
5812 USG systems which do not use DATA_SEG_BITS.
5813 Refactor code. Remove boilerplate comments.
5814
5815 * m/ibms390.h:
5816 * m/m68k.h:
5817 * s/bsd-common.h:
5818 * s/cygwin.h:
5819 * s/darwin.h:
5820 * s/freebsd.h:
5821 * s/gnu.h:
5822 * s/msdos.h: Remove boilerplate comments.
5823
5824 * m/iris4d.h: Remove boilerplate comments and code for systems that
5825 do not use this file.
5826 (IRIS_4D): Remove, unused.
5827
5828 * m/mips.h: Remove boilerplate comments and code for systems that
5829 do not use this file.
5830 (SIGN_EXTEND_CHAR):
5831 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
5832 * unexmips.c: Remove file, unused.
5833
5834 * editfns.c (Fuser_full_name): Replace the only use of
5835 USER_FULL_NAME with its value.
5836 * config.in: Regenerate.
5837
58382008-07-16 David Reitter <david.reitter@gmail.com>
5839
5840 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
5841 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
5842
58432008-07-16 Glenn Morris <rgm@gnu.org>
5844
5845 * emacs.c (system-type): Doc fix.
5846
58472008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
5848
5849 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
5850 If the cache doesn't work, let's fix it, rather than work around it.
5851
58522008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
5853
5854 * Makefile.in: Correct additions for nsfont.o in last commit.
5855 * nsfont.m: New file (forgot last commit).
5856
58572008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
5858
5859 * callproc.c (set_initial_environment): Initialize
5860 Vprocess_environment under CANNOT_DUMP (fixes crash when
5861 batch-compiling for bootstrap).
5862
58632008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
5864 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5865
5866 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
5867 fix crash due to different init order.
5868
58692008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
5870
5871 Changes and additions for NeXTstep windowing system (Cocoa and
5872 GNUstep) support.
5873
5874 * Makefile.in:
5875 * config.in: Support defines and build commands for NS port.
5876 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
5877 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
5878 * dispextern.h: Include nsgui.h and add needed typedefs under NS
5879 windowing.
5880 (struct face): Add synth_ital field.
5881 * dispnew.c: Include nsterm.h when compiling under NS windowing.
5882 (init_display): Initialize Vinitial_window_system to "ns" when so
5883 compiled.
5884 * emacs.c: Include GSConfig.h when compiling under GNUstep.
5885 (display_arg): Use under NS.
5886 (main): Under NS, allocate autorelease pool and handle command line
5887 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
5888 (standard_args): Add NS-specific args.
5889 (shut_down_emacs): Shut down NS terminal if compiled under NS.
5890 * font.c (DEFAULT_ENCODING): New variable.
5891 (font_find_for_lface): Use it.
5892 (syms_of_font): Load syms_of_nsfont under NS.
5893 * font.h: Declare nsfont_driver when compiled under NS.
5894 * fontset.c: When compiling under NS, include nsterm.h.
5895 (fontset_from_font): Autoconstruct fontset under NS.
5896 * frame.c (various): Under NS, include nsterm.h, add Qns window system
5897 symbol, document and use it.
5898 (do_switch_frame): When for_deletion under Cocoa, add
5899 Fraise_frame(Qnil).
5900 (x_set_frame_parameters): Ensure font attribute changes are picked up.
5901 (x_get_arg): Allow "yes" and "no" as boolean values.
5902 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
5903 Qright under Cocoa.
5904 (focus-follows-mouse): Default to 0 under NS.
5905 * frame.h (enum output_method): Add output_ns.
5906 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
5907 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
5908 (FRAME_WINDOW_P): NS-specific definition.
5909 * fringe.c (max_used_fringe_bitmap): Make public.
5910 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
5911 (getloadavg): Use NeXT code under descendant OS's.
5912 * image.c (includes and header section, x_create_bitmap_from_data)
5913 (x_create_bitmap_from_file, free_bitmap_record, image_background)
5914 (image_background_transparent, x_clear_image_1)
5915 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
5916 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
5917 (x_to_xcolors, x_from_xcolors, x_disable_image)
5918 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
5919 other GUIs, including XPM support using code originally written for
5920 Carbon GUI.
5921 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
5922 using NS API.
5923 (image_ascent): Use font metrics macros instead of direct struct field
5924 access.
5925 * keyboard.c (includes): Add nsterm.h when compiling under NS.
5926 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
5927 Also, handle NS as GTK for menu bar purposes.
5928 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
5929 toolkit where they differ.
5930 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
5931 use cachelist, still needed under NS.
5932 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
5933 (struct widget_value): Define it here for menu.c.
5934 * keymap.c (includes): Include modifier internals.
5935 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
5936 NS.
5937 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
5938 support for preferring sequences using certain modifiers, specified by
5939 the FIRSTONLY argument.
5940 * lisp.h (hash_remove): Rename to avoid name clash when compiling
5941 under NS GNUstep implementation.
5942 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
5943 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
5944 * menu.c: Include nsterm.h under NS.
5945 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
5946 (free_menubar_widget_tree_value, update_submenu_strings)
5947 (find_and_call_menu_selection): Treat NS as X and NT.
5948 (find_and_return_menu_selection): New function, used for popup menus.
5949 * nsgui.h:
5950 * nsterm.h:
5951 * nsfns.m:
5952 * nsimage.m:
5953 * nsmenu.m:
5954 * nsselect.m:
5955 * nsterm.m: New files.
5956 * process.c (wait_reading_process_output): Under NS, call ns_select()
5957 instead of plain select().
5958 * syntax.c (char_quoted): Under NS, avoid a crash when called near
5959 beginning of buffer.
5960 * sysselect.h (init_process): Rename when compiling under Cocoa to
5961 avoid name conflict.
5962 * termhooks.h (display_info): Add ns_display_info to union.
5963 * terminal.c (Fterminal_live_p): Add ns to terminal types.
5964 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
5965 COCOA environment.
5966 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
5967 unexec() signature. (Note, this will dump, but the resulting file
5968 crashes; unexosx is used instead; keeping around for reference and
5969 possible aid in getting dump working under GNUstep.)
5970 * w32gui.h (button_type, widget_value): Remove definitions (now in
5971 keyboard.h).
5972 * window.c: Include nsterm.h when compiling under NS.
5973 * xdisp.c (includes): Include nsterm.h when compiling under NS.
5974 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
5975 other GUI windowing systems.
5976 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
5977 GTK.
5978 (x_consider_frame_title): Under NS, set icon type and frame
5979 modified-state indicator; use ns_set_name_as_filename() when using
5980 formatted title.
5981 (update_window_cursor): Make public when compiling under NS.
5982 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
5983 (hourglass_atimer, Vhourglass_delay
5984 * xfaces.c (header section, init_frame_faces, clear_font_table)
5985 (defined_color, unload_color, x_face_list_fonts)
5986 (prepare_face_for_display): Add NS support parallel to other GUIs.
5987 Emulate GCs like other non-X GUIs.
5988 (split_font_name): Don't lowercase font name under NS.
5989 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
5990 under NS.
5991 * s/darwin.h: Add support for compilation under NS.
5992
59932008-07-15 Jason Rumney <jasonr@gnu.org>
5994
5995 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
5996 (w32_show_hourglass): Rename from show_hourglass.
5997 (w32_hide_hourglass): Rename from hide_hourglass.
5998 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
5999 (Vhourglass_delay): Declare extern.
6000 (hourglass_started): Remove.
6001
6002 * xdisp.c (Vhourglass_delay): Remove static.
6003 (hourglass_started, start_hourglass, cancel_hourglass):
6004 Don't include these versions on WINDOWSNT.
6005
60062008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6007
6008 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
6009 variables (formerly in xfns.c).
6010 (show_hourglass, hide_hourglass): New prototypes (same).
6011 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
6012 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
6013 in xfns.c).
6014 (syms_of_xdisp): Declare/initialize display-hourglass,
6015 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
6016 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
6017 formerly in xfns.c.
6018 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6019 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6020 (start_hourglass, cancel_hourglass): Remove.
6021 (show_hourglass, hide_hourglass): Remove prototypes and static
6022 modifiers.
6023 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
6024 hourglass_atimer, hourglass_shown_p declaration/initialization.
6025 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6026 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6027 (start_hourglass, cancel_hourglass): Remove.
6028 (show_hourglass, hide_hourglass): Remove prototypes and static
6029 modifiers.
6030 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
6031 hourglass_atimer, hourglass_shown_p declaration/initialization.
6032 * w32fns.c (display_hourglass_p, Vhourglass_delay)
6033 (DEFAULT_HOURGLASS_DELAY): Remove.
6034 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
6035 hourglass_shown_p declaration/initialization.
6036
60372008-07-14 Jason Rumney <jasonr@gnu.org>
6038
6039 * w32fns.c (w32_get_arg): Remove wrapper function.
6040 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
6041 directly.
6042 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
6043
60442008-07-14 Kenichi Handa <handa@m17n.org>
6045
6046 * xfont.c (xfont_open): Add workaround for X's bug.
6047
60482008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
6049
6050 * fontset.c: Include <stdio.h> unconditionally.
6051
60522008-07-13 Michael Albinus <michael.albinus@gmx.de>
6053
6054 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
6055 for filtering.
6056
60572008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
6058
6059 * s/vms.h: Use __GNUC__ instead of _GNUC_.
6060
6061 * m/macppc.h:
6062 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
6063
6064 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
6065 (SPECIAL_EMACS_INT):
6066 * m/ia64.h (SPECIAL_EMACS_INT):
6067 * m/amdx86-64.h (SPECIAL_EMACS_INT):
6068 * s/gnu.h (NLIST_STRUCT):
6069 * s/aix4-2.h (X11R5_INHIBIT_I18N):
6070 * s/gnu-linux.h (LINUX):
6071 * s/msdos.h (HAVE_FACES):
6072 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
6073
6074 * systty.h:
6075 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
6076 anymore.
6077
60782008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
6079
6080 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
6081 always defined as int.
6082
6083 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
6084 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
6085 * s/gnu-linux.h (HAVE_WAIT_HEADER):
6086 * s/freebsd.h (HAVE_WAIT_HEADER):
6087 * s/bsd-common.h (HAVE_UNION_WAIT):
6088 * s/aix4-2.h (HAVE_WAIT_HEADER):
6089 * m/mips.h (HAVE_UNION_WAIT):
6090 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
6091 (COFF, static): Do not define, they are undefined later in the file.
6092
6093 * process.c (update_status): Don't use a union.
6094 (status_convert):
6095 (sigchld_handler): Use int instead of WAITTYPE.
6096
60972008-07-12 Chong Yidong <cyd@stupidchicken.com>
6098
6099 * indent.c (Fvertical_motion): Restore hscroll before moving to
6100 goal column.
6101
61022008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6103
6104 * lisp.h: Remove left over code.
6105
61062008-07-11 Andreas Schwab <schwab@suse.de>
6107
6108 * lisp.h: Fix logic in last change.
6109
6110 * menu.h: New file.
6111 * menu.c: Include it.
6112 * xmenu.c: Likewise.
6113 * Makefile.in: Update dependencies.
6114
61152008-07-11 Kenichi Handa <handa@m17n.org>
6116
6117 * fontset.c (fontset_from_font): Cancel the previous change.
6118
61192008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6120
6121 * lisp.h:
6122 * w32heap.c:
6123 * emacs.c:
6124 * alloc.c: Replace all references of NO_UNION_TYPE with
6125 USE_LISP_UNION_TYPE.
6126
6127 * m/xtensa.h (NO_UNION_TYPE):
6128 * m/vax.h (NO_UNION_TYPE):
6129 * m/template.h (NO_UNION_TYPE):
6130 * m/sparc.h (NO_UNION_TYPE):
6131 * m/mips.h (NO_UNION_TYPE):
6132 * m/macppc.h (NO_UNION_TYPE):
6133 * m/m68k.h (NO_UNION_TYPE):
6134 * m/iris4d.h (NO_UNION_TYPE):
6135 * m/intel386.h (NO_UNION_TYPE):
6136 * m/ibms390x.h (NO_UNION_TYPE):
6137 * m/ibms390.h (NO_UNION_TYPE):
6138 * m/ibmrs6000.h (NO_UNION_TYPE):
6139 * m/ia64.h (NO_UNION_TYPE):
6140 * m/hp800.h (NO_UNION_TYPE):
6141 * m/arm.h (NO_UNION_TYPE):
6142 * m/amdx86-64.h (NO_UNION_TYPE):
6143 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
6144 defining it the same.
6145
61462008-07-10 Chong Yidong <cyd@stupidchicken.com>
6147
6148 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
6149
61502008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6151
6152 * fileio.c:
6153 * sysdep.c
6154 * systty.h:
6155 * m/ibmrs6000.h:
6156 * m/iris4d.h:
6157 * s/aix4-2.h:
6158 * s/freebsd.h:
6159 * s/gnu-linux.h:
6160 * s/hpux10-20.h:
6161 * s/hpux11.h:
6162 * s/netbsd.h:
6163 * s/sol2-3.h:
6164 * s/sol2-4.h:
6165 * s/sol2.h:
6166 * s/usg5-4.h:
6167 * s/vms.h: Remove references to unused variables.
6168
61692008-07-10 Andreas Schwab <schwab@suse.de>
6170
6171 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
6172 pattern before matching the generic family.
6173
61742008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6175
6176 * unexec.c:
6177 * s/vms.h:
6178 * s/usg5-4-2.h:
6179 * s/sol2-5.h:
6180 * s/freebsd.h:
6181 * s/darwin.h: Remove dead code.
6182
6183 * m/template.h:
6184 * m/sparc.h:
6185 * m/mips.h:
6186 * m/m68k.h:
6187 * m/iris4d.h:
6188 * m/intel386.h:
6189 * m/ibms390x.h:
6190 * m/ibms390.h:
6191 * m/ia64.h:
6192 * m/hp800.h:
6193 * m/arm.h:
6194 * m/amdx86-64.h: Remove dead code and references to unused
6195 and compiler defined symbols.
6196
6197 * unexmips.c:
6198 * unexelf.c: Remove references to desupported systems.
6199
6200 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
6201
6202 * m/powermac.h: Remove boilerplate comments.
6203 (NO_REMAP): Remove unused definition.
6204
6205 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
6206 define them.
6207
62082008-07-10 Kenichi Handa <handa@m17n.org>
6209
6210 * xfont.c (xfont_open): Log the reason of failure.
6211
62122008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
6213
6214 * fontset.c (fontset_get_font_group):
6215 * font.c (font_check_otf): Specify argument types.
6216
62172008-07-09 Kenichi Handa <handa@m17n.org>
6218
6219 * coding.c (detect_coding_utf_8): Set detect_info->found only when
6220 non-ASCII char is found.
6221
6222 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
6223 (reorder_font_vector): Change the arg preferred_family to font.
6224 Prefer the spec matching with font.
6225 (fontset_get_font_group): New function.
6226 (fontset_find_font): Change the format of an element of a realized
6227 fontset. Use fontset_get_font_group.
6228 (fontset_font): Try the current fontset, the default fontset, the
6229 fallbacks of the current fontset, and the fallbacks of the default
6230 fontset in this order.
6231 (face_for_char): Delete the shortcut to use the current font.
6232 (fontset_from_font): Don't set fonts for Latin in the fontset.
6233
6234 * font.h (font_make_object, font_match_p): Adjust prototypes.
6235
6236 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
6237
6238 * font.c (font_make_object): New arg entity and pixelsize.
6239 (font_check_otf_features, font_check_otf): New functions.
6240 (font_match_p): Check :lang, :script, and :otf properties.
6241
6242 * xfont.c (xfont_open): Adjust it for the change of
6243 font_make_object.
6244 (xfont_text_extents): Fix initial setting of metrics.
6245
6246 * ftfont.c (struct ftfont_info): New member index, delete member
6247 fc_charset_idx. Make the member order compatible with struct
6248 xftfont_info.
6249 (fc_charset_table): Change charset names to registry names.
6250 (ftfont_pattern_entity): Delete the args registry and
6251 fc_charset_idx. Change the value of :font-entity property
6252 to (FONTNAME . INDEX). Always set :registry property to
6253 `iso10646-1'.
6254 (struct ftfont_cache_data): New struct.
6255 (ftfont_lookup_cache): New arg for_face.
6256 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
6257 (ftfont_driver): Set the member otf_capability.
6258 (ftfont_get_charset): Adjust it for the change of
6259 fc_charset_table.
6260 (OTF_TAG_SYM): New macro.
6261 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
6262 for the change of fc_charset_table.
6263 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
6264 ftfont_pattern_entity. Add FC_INDEX to objset.
6265 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
6266 and ftfont_pattern_entity.
6267 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
6268 font_make_object, struct ftfont_info.
6269 (ftfont_has_char): Use ftfont_get_fc_charset.
6270 (ftfont_otf_features, ftfont_otf_capability): New functions.
6271 (ftfont_shape): Use ftfont_get_otf.
6272 (ftfont_text_extents): Fix initial setting of metrics.
6273
6274 * xftfont.c (struct xftfont_info): New member ft_size. Make the
6275 member order compatible with struct ftfont_info.
6276 (xftfont_open): Add FC_CHARSET to the pattern. Set
6277 xftfont_info->ft_size. Don't unlock the face. Check BDF
6278 properties if appropriate.
6279 (xftfont_close): Unlock the face.
6280 (xftfont_anchor_point, xftfont_shape): Deleted.
6281 (syms_of_xftfont): Don't set members anchor_point and shape of
6282 xftfont_driver.
6283
6284 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
6285 font_make_object.
6286
6287 * w32font.c (w32font_open): Adjust it for the change of
6288 font_make_object.
6289 (w32font_open_internal): Don't set properties of font_object here.
6290
62912008-07-08 Chong Yidong <cyd@stupidchicken.com>
6292
6293 * macfns.c (x_create_tip_frame):
6294 * w32fns.c (x_create_tip_frame):
6295 * xfns.c (x_create_tip_frame): Pass parameter argument to
6296 face-set-after-frame-default.
6297
6298 * xfaces.c (Finternal_merge_in_global_face): Save merged
6299 attributes for the default face back into the face vector.
6300
63012008-07-08 Andreas Schwab <schwab@suse.de>
6302
6303 * fontset.h: Declare fontset_from_font. Don't declare
6304 new_fontset_from_font and fontset_from_font_name.
6305 * xterm.c: Include "fontset.h".
6306 * Makefile.in (xterm.o): Update dependencies.
6307
63082008-07-08 Glenn Morris <rgm@gnu.org>
6309
6310 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
6311 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
6312
63132008-07-07 Chong Yidong <cyd@stupidchicken.com>
6314
6315 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
6316 (x_set_frame_parameters): Don't bind it.
6317
63182008-07-07 Juanma Barranquero <lekktu@gmail.com>
6319
6320 * w32fns.c (map_w32_filename): Declare extern.
6321
63222008-07-07 Jason Rumney <jasonr@gnu.org>
6323
6324 * w32term.c (WS_EX_LAYERED): Define if not already.
6325
63262008-07-06 Chong Yidong <cyd@stupidchicken.com>
6327
6328 * xfaces.c (set_font_frame_param): Don't try to set the font
6329 parameter if it is still unspecified in the lface.
6330
63312008-07-05 Chong Yidong <cyd@stupidchicken.com>
6332
6333 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
6334 face if it didn't already exist.
6335
6336 * xdisp.c (try_window_id): Give up if word-wrapping is on.
6337
63382008-07-05 Andreas Schwab <schwab@suse.de>
6339
6340 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
6341
63422008-07-05 Chong Yidong <cyd@stupidchicken.com>
6343
6344 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
6345 word-wrapping.
6346 (IT_DISPLAYING_WHITESPACE): New macro.
6347 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
6348 when word-wrapping. Simplify word-wrapping logic. Use correct
6349 pixel positions when saving copies of the iterator.
6350 (display_line): Use proper wrap point if the last character on a
6351 line was preceded by whitespace.
6352
63532008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
6354
6355 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
6356
63572008-07-04 Kenichi Handa <handa@m17n.org>
6358
6359 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
6360
6361 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
6362
63632008-07-02 Jason Rumney <jasonr@gnu.org>
6364
6365 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 6366 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
6367
6368 * xdisp.c (next_element_from_display_vector): Move assignment out
6369 of if statement.
6370
63712008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
6372
6373 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
6374
6375 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
6376 (syms_of_fileio): Initialize and export them.
6377 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
6378
6379 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
6380 (Fsystem_move_file_to_trash): New function.
6381 (syms_of_w32fns): Export it to lisp.
6382
63832008-07-01 Jason Rumney <jasonr@gnu.org>
6384
6385 * w32font.c (w32font_text_extents): Don't count overhang as part
6386 of width.
6387
63882008-06-30 Miles Bader <miles@gnu.org>
6389
6390 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
6391 Add `avoid_cursor_p' field.
6392
6393 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
6394 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
6395 (append_glyph, append_composite_glyph, produce_image_glyph)
6396 (append_stretch_glyph): Initialize avoid_cursor_p.
6397 (get_it_property): Rename from `get_line_height_property'.
6398 (x_produce_glyphs): Use get_it_property.
6399 (handle_line_prefix, push_display_prop): New functions.
6400 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
6401 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
6402 New variables.
6403 (syms_of_xdisp): Initialize them.
6404
64052008-06-30 Kenichi Handa <handa@m17n.org>
6406
6407 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
6408 XftDefaultSubstitute (they are called in XftFontMatch).
6409 (xftfont_open): Fix args to ftfont_font_format.
6410
6411 * ftfont.c (fc_charset_table): New member lang.
6412 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 6413 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
6414 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
6415 (ftfont_open): Fix args to ftfont_font_format.
6416 (ftfont_font_format): New arg filename.
6417
64182008-06-30 Chong Yidong <cyd@stupidchicken.com>
6419
6420 * xfaces.c (Finternal_merge_in_global_face): If default face was
6421 modified, realize it again. Update the font face attribute.
6422
64232008-06-29 Jason Rumney <jasonr@gnu.org>
6424
6425 * w32term.c (x_set_frame_alpha): Fix logic.
6426
64272008-06-29 Kenichi Handa <handa@m17n.org>
6428
6429 * fontset.c (Finternal_char_font): Return font-object instead of
6430 font-name.
6431
6432 * composite.c (get_composition_id): Fix the width calculation for TAB.
6433
64342008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
6435
6436 * indent.c (Fvertical_motion): Properly handle float column arg.
6437
64382008-06-28 Jason Rumney <jasonr@gnu.org>
6439
6440 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
6441 (pfnSetLayeredWindowAttributes): New function pointer.
6442 (w32_initialize): Initialize it when supported.
6443 (x_set_frame_alpha): New function.
6444
6445 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
6446 (w32_frame_parm_handlers): Set alpha handler.
6447
6448 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
6449
64502008-06-27 Jason Rumney <jasonr@gnu.org>
6451
6452 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
6453 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
6454 (w32_to_x_charset, x_to_w32_charset)
6455 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
6456 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
6457 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
6458 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
6459 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
6460 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
6461 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
6462 (Qw32_charset_unicode): Remove.
6463 (syms_of_w32fns): Update for above changes.
6464
6465 * w32font.c (w32_to_x_charset, x_to_w32_charset)
6466 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
6467 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
6468 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
6469 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
6470 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
6471 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
6472 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
6473 (syms_of_w32font): Update for above changes.
6474
64752008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
6476
6477 * s/usg5-4.h: Fix previous change: keep the correct branch of a
6478 removed #if.
6479 (USG_SHARED_LIBRARIES): Remove duplicate definition.
6480
64812008-06-26 Juanma Barranquero <lekktu@gmail.com>
6482 Eli Zaretskii <eliz@gnu.org>
6483
6484 * makefile.w32-in (LOCAL_FLAGS):
6485 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
6486
6487 * sysdep.c (_spawnlp, _getpid):
6488 Declare with explicit _cdecl instead of _CRTAPI1.
6489
6490 * editfns.c (Fget_internal_run_time):
6491 Check for WINDOWSNT with #ifdef, not #if.
6492
64932008-06-26 Jason Rumney <jasonr@gnu.org>
6494
6495 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
6496
6497 * w32term.c (x_draw_glyph_string_foreground)
6498 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
6499 Use FONT_HANDLE macro.
6500 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
6501
6502 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
6503 (uniscribe_encode_char): Use FONT_HANDLE macro.
6504
6505 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
6506 (w32font_text_extents): Use precast w32_font.
6507 (w32font_close): Free cached metrics.
6508 (w32font_open_internal): Allocate space for name on stack.
6509
65102008-06-26 Chong Yidong <cyd@stupidchicken.com>
6511
6512 * xdisp.c (extend_face_to_end_of_line): Fix last change.
6513
65142008-06-26 Jason Rumney <jasonr@gnu.org>
6515
6516 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
6517 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
6518
65192008-06-26 Juanma Barranquero <lekktu@gmail.com>
6520
6521 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
6522
65232008-06-26 Jason Rumney <jasonr@gnu.org>
6524
6525 * w32bdf.c, w32bdf.h: Remove obsolete files.
6526
6527 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
6528
6529 * w32gui.h: Don't include w32bdf.h.
6530 (XCharStruct, enum w32_char_font_type, W32FontStruct):
6531 Remove obsolete font support.
6532
6533 * w32font.h (struct w32font_info): Remove compat_w32_font.
6534 Add hfont member.
6535 (FONT_COMPAT): Remove obsolete macro.
6536
6537 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
6538 (w32font_encode_char, w32font_text_extents): Use new hfont member.
6539 (w32font_open_internal): Remove compat code. Set new hfont member.
6540 (Fx_select_font): Use new hfont member.
6541
6542 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
6543 (uniscribe_encode_char): Use new hfont member.
6544
6545 * w32term.c (x_draw_glyph_string_foreground)
6546 (x_draw_composite_glyph_string_foreground): Use new hfont member.
6547 (x_draw_glyph_string): Use metrics in w32font_info.
6548
65492008-06-26 Kenichi Handa <handa@m17n.org>
6550
6551 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
6552
65532008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
6554
6555 * unexnext.c:
6556 * m/ews4800.h:
6557 * m/hp9000s300.h:
6558 * m/ibm370aix.h:
6559 * m/mips-siemens.h:
6560 * m/ncr386.h:
6561 * m/next.h:
6562 * m/pmax.h:
6563 * m/powerpcle.h:
6564 * m/tandem-s2.h:
6565 * s/386bsd.h:
6566 * s/bsd386.h:
6567 * s/bsd4-1.h:
6568 * s/bsd4-2.h:
6569 * s/bsdos2-1.h:
6570 * s/bsdos2.h:
6571 * s/bsdos3.h:
6572 * s/bsdos4.h:
6573 * s/nextstep.h:
6574 * s/ultrix4-3.h:
6575 * s/usg5-0.h:
6576 * s/usg5-2-2.h:
6577 * s/usg5-2.h:
6578 * s/usg5-4-3.h:
6579 * s/ux4800.h:
6580 * s/uxpds.h:
6581 * s/uxpv.h: Remove support for obsolete systems.
6582 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 6583 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
6584 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
6585 Remove, insert contents in s/aix4-2.h.
6586 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
6587 * s/bsd4-3.h: Rename to ...
6588 * s/bsd-common.h: ... this.
6589 * data.c:
6590 * doc.c:
6591 * ecrt0.c:
6592 * emacs.c:
6593 * fileio.c:
6594 * floatfns.c:
6595 * keyboard.c:
6596 * mem-limits.h:
6597 * print.c:
6598 * process.c:
6599 * sysdep.c:
6600 * syssignal.h:
6601 * systty.h:
6602 * syswait.h:
6603 * term.c:
6604 * unexec.c:
6605 * unexelf.c:
6606 * unexhp9k800.c:
6607 * m/hp800.h:
6608 * m/ibmrs6000.h:
6609 * m/mips.h:
6610 * m/vax.h:
6611 * s/darwin.h:
6612 * s/freebsd.h:
6613 * s/gnu.h:
6614 * s/ms-w32.h:
6615 * s/msdos.h:
6616 * s/netbsd.h:
6617 * s/template.h: Remove references to obsolete variables.
6618
6619 * Makefile.in: Add dependencies for all unexec files.
6620 (admindir): Remove unused variable.
6621 (UNEXEC_SRC): Remove references.
6622
66232008-06-25 Chong Yidong <cyd@stupidchicken.com>
6624
6625 * xfns.c (x_default_font_parameter): If Xft is available, first
6626 try Monospace-12 for the default font.
6627
66282008-06-25 Jason Rumney <jasonr@gnu.org>
6629
6630 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
6631
66322008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
6633
6634 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
6635
6636 * buffer.c (syms_of_buffer): Remove default-word-wrap.
6637
66382008-06-25 Juanma Barranquero <lekktu@gmail.com>
6639
6640 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
6641 <scroll-conservatively>: Fix typo in docstring.
6642
6643 * xselect.c (Fx_send_client_event): Doc fix.
6644
66452008-06-25 Kenichi Handa <handa@m17n.org>
6646
6647 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
6648
6649 * font.c (font_parse_fcname): Remove unused variables.
6650 (font_sort_entites): Delete the arg SPEC. Caller changed.
6651 Fix for the case of ! best_only.
6652 (font_delete_unmatched): Check DPI and AVGWIDTH too.
6653
6654 * lisp.h (Fstring_to_unibyte): EXFUN it.
6655
6656 * character.h (str_to_unibyte): Extern it.
6657
6658 * character.c (str_to_unibyte): New function.
6659
6660 * fns.c (Fstring_to_unibyte): New function.
6661 (syms_of_fns): Defsubr it.
6662
66632008-06-24 Kenichi Handa <handa@m17n.org>
6664
6665 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
6666 DPI too.
6667 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
6668
66692008-06-24 Andreas Schwab <schwab@suse.de>
6670
6671 * Makefile.in (${lispsource}loaddefs.el): Rename from
6672 ../lisp/loaddefs.el.
6673 (bootstrap-clean): Do what distclean does but don't remove
6674 Makefile.
6675 (distclean): Depend on bootstrap-clean and remove Makefile.
6676
66772008-06-24 Chong Yidong <cyd@stupidchicken.com>
6678
6679 * buffer.h (struct buffer): New member word_wrap.
6680
6681 * buffer.c (syms_of_buffer): New variables default-word-wrap and
6682 word-wrap.
6683 (init_buffer_once): Initialize them.
6684
6685 * dispextern.h (struct it): Replace bool truncate_lines_p with a
6686 line_wrap enum possessing three possible values.
6687
6688 * termopts.h: Replace truncate_partial_width_windows with
6689 Vtruncate_partial_width_windows.
6690
6691 * dispnew.c (direct_output_for_insert): Avoid direct output when
6692 inserting a space with word wrap on.
6693
6694 * indent.c (compute_motion): Obey integer values of
6695 truncate-partial-width-windows.
6696
6697 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
6698 replacing truncate_partial_width_windows.
6699 (init_iterator): If Vtruncate_partial_width_windows is an integer,
6700 truncate only if the window width is below that integer.
6701 (start_display, resize_mini_window, produce_stretch_glyph)
6702 (display_string, move_it_in_display_line_to): Use line_wrap.
6703 (back_to_previous_visible_line_start, reseat_1): Reset
6704 string_from_display_prop_p.
6705 (display_line): Extend default face to end of line when wrapping.
6706
67072008-06-24 Kim F. Storm <storm@cua.dk>
6708
6709 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
6710 to wrap continued lines at word boundaries.
6711
67122008-06-24 Jason Rumney <jasonr@gnu.org>
6713
6714 * font.c (Ffont_face_attributes): Multiply pixel size before point
6715 conversion to avoid multiplying rounding error.
6716
67172008-06-23 Jason Rumney <jasonr@gnu.org>
6718
6719 * w32term.c (x_draw_glyph_string_background)
6720 (x_draw_glyph_string): Remove old bdf font code.
6721
6722 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
6723
67242008-06-22 Kenichi Handa <handa@m17n.org>
6725
6726 * font.c (font_find_for_lface): Try the adstyle specified in
6727 the property of LFACE_FONT of LFACE (if any).
6728
67292008-06-21 Seiji Zenitani <zenitani@mac.com>
6730 Ryo Yoshitake <ryo@shiftmode.net>
6731
6732 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
6733
67342008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
6735
6736 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
6737 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
6738 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
6739 (witness-emacs): Remove.
6740 (lisp, shortlisp): Move loaddefs.el earlier.
6741 (mostlyclean): Forget about witness-emacs.
6742
67432008-06-22 Glenn Morris <rgm@gnu.org>
6744
6745 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
6746 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
6747
67482008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
6749
6750 * Makefile.in (PRECOMP): Remove.
6751 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
6752 (witness-emacs): Run `compile-first'.
6753 (.el.elc): Use the new compile-onefile target.
6754
67552008-06-21 Kenichi Handa <handa@m17n.org>
6756
6757 * xftfont.c (xftfont_open): Handle QCembolden only when
6758 FC_EMBOLDEN is defined.
6759
67602008-06-21 Andreas Schwab <schwab@suse.de>
6761
6762 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
6763 (.el.elc): Likewise.
6764
67652008-06-21 Miles Bader <miles@gnu.org>
6766
6767 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
6768 build dir, not the lisp source dir.
6769
67702008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
6771
6772 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
6773 (bootstrapclean): Remove.
6774 (.el.elc): New rule.
6775 (PRECOMP): New var.
6776 (../lisp/subdirs.el): Remove.
6777 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
6778 (witness-emacs): New target.
6779 (mostlyclean): Remove witness-emacs as well.
6780 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
6781 Add witness-emacs dependency.
6782
67832008-06-20 Chong Yidong <cyd@stupidchicken.com>
6784
6785 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
6786 defined by the font.
6787
67882008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
6789
6790 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
6791 (bootstrap-clean): New target that keeps TAGS around.
6792 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
6793 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
6794
67952008-06-20 Jason Rumney <jasonr@gnu.org>
6796
6797 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
6798 Remove obsolete font code.
6799
6800 * w32font.c (font_matches_spec): Use csb bitfield from font signature
6801 to determine language support.
6802
68032008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
6804
6805 * sysdep.c (cfsetspeed): New fun extracted from the code.
6806 (cfmakeraw): Move before first use.
6807
68082008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
6809
6810 * sysdep.c (cfmakeraw): Provide fallback implementation.
6811 (serial_configure): Provide fallback implementation of cfsetspeed.
6812
68132008-06-20 Kenichi Handa <handa@m17n.org>
6814
6815 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
6816 the pattern.
6817
6818 * fontset.c (fontset_from_font): Copy font_spec before changing
6819 the elements.
6820
6821 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
6822
68232008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
6824
6825 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
6826 for explicit `font' parameters.
6827
6828 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
6829
68302008-06-19 Kenichi Handa <handa@m17n.org>
6831
6832 * frame.c: Include <ctype.h>.
6833 (x_set_font_backend): Allow spacing characters in the X resource
6834 for FontBackend.
6835
68362008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
6837
6838 * w32fns.c, xfns.c (Qfont_param): New var.
6839 (syms_of_w32fns): Initialize it.
6840 (x_default_font_parameter): Record explicit `font' into
6841 `font-parameter'.
6842
68432008-06-18 Kenichi Handa <handa@m17n.org>
6844
6845 * font.c (font_parse_xlfd): Fix previous change.
6846 (font_parse_fcname): Don't use :fc-unknown-spec.
6847 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
6848 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
6849 (font_add_log): Prepend the driver name to the resulting fonts.
6850
6851 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
6852 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
6853 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
6854
6855 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
6856 (QCembolden): New variables.
6857 (syms_of_xftfont): DEFSYM them.
6858 (xftfont_open): Call XftFontMatch. Don't trust the result of
6859 XftTextExtents8 if the pixel_size is less than 5.
6860
68612008-06-18 Andreas Schwab <schwab@suse.de>
6862
6863 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
6864 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
6865
68662008-06-18 Jason Rumney <jasonr@gnu.org>
6867
6868 * w32font.c (w32font_list, w32font_match): Add logging.
6869
6870 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
6871
68722008-06-17 Chong Yidong <cyd@stupidchicken.com>
6873
6874 * font.c (font_parse_fcname): Store divider characters for
6875 unknown-spec list. For known key symbols, intern using correct
6876 symbol name.
6877
68782008-06-17 Kenichi Handa <handa@m17n.org>
6879
6880 * xfaces.c (realize_default_face): If the frame is not on window
6881 system, set the fontset of face to nil.
6882
68832008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
6884
6885 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
6886
68872008-06-16 Juanma Barranquero <lekktu@gmail.com>
6888
6889 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
6890 (build_font_name_from_vector): Delete externs.
6891
6892 * xfaces.c (struct font_name): Don't declare.
6893
68942008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
6895
6896 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
6897
68982008-06-16 Chong Yidong <cyd@stupidchicken.com>
6899
6900 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
6901
69022008-06-16 Juanma Barranquero <lekktu@gmail.com>
6903
6904 * font.c (Ffont_spec): Fix usage in docstring.
6905 (Ffont_face_attributes): Doc fix.
6906
69072008-06-16 Andreas Schwab <schwab@suse.de>
6908
6909 * font.c (Ffont_face_attributes): Fix definition.
6910
69112008-06-16 Jason Rumney <jasonr@gnu.org>
6912
6913 * font.h (font_style_symbolic_from_value): Remove.
6914
6915 * font.c (font_style_symbolic_from_value): Remove.
6916 (font_style_symbolic): Revert to pre 2008-06-13 version.
6917
6918 * w32font.c (w32_to_fc_weight): New function.
6919 (w32font_full_name, logfont_to_fcname): Use it.
6920
69212008-06-16 Kenichi Handa <handa@m17n.org>
6922
6923 * font.c (font_check_object): Delete it.
6924 (font_clear_cache): Check if a font-object is alive.
6925 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
6926 font-object to nil.
6927 (font_close_object): Don't check FONT_CLOSE_OBJECT.
6928 (font_at): Don't call font_check_object.
6929 (Ffont_get): Return a symbol for :weight, :slant, and :width.
6930
69312008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
6932
6933 * puresize.h (BASE_PURESIZE): Increase to 1230000.
6934
69352008-06-16 Chong Yidong <cyd@stupidchicken.com>
6936
6937 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
6938
69392008-06-15 Chong Yidong <cyd@stupidchicken.com>
6940
6941 * font.c (font_parse_fcname): Only one decimal point.
6942 (font_unparse_fcname): Handle data in family and foundry indices
6943 as symbols, not strings.
6944 (font_unparse_gtkname, Ffont_face_attributes): New functions.
6945
6946 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
6947
6948 * font.h (font_unparse_gtkname): Add prototype.
6949
69502008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
6951
6952 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
6953
69542008-06-15 Andreas Schwab <schwab@suse.de>
6955
6956 * font.c (font_update_drivers): Fix crash when no drivers match.
6957
69582008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
6959
6960 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
6961 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
6962
69632008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
6964
6965 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
6966
69672008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
6968
6969 * process.c (Fserial_process_configure, Fprocess_send_eof):
6970 Use EQ to compare Lisp_Objects.
6971
69722008-06-13 Jason Rumney <jasonr@gnu.org>
6973
6974 * w32fns.c (Fw32_select_font): Remove old font API function.
6975
6976 * w32font.c (logfont_to_fcname): New function.
6977 (Fx_select_font): New font dialog function compatible with
6978 GTK/fontconfig version.
6979
6980 * font.c (font_style_symbolic_from_value): New function.
6981 (font_style_symbolic): Use it.
6982
6983 * font.h (font_style_symbolic_from_value): Declare new function.
6984
69852008-06-13 Juanma Barranquero <lekktu@gmail.com>
6986
6987 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
6988 <font-width-table>: Fix typos in docstrings.
6989
69902008-06-13 Daniel Engeler <engeler@gmail.com>
6991
6992 These changes add serial port access.
6993 * process.c: Add HAVE_SERIAL.
6994 (Fdelete_process, Fprocess_status, Fset_process_buffer)
6995 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
6996 (list_processes_1, select_wrapper, Fstop_process)
6997 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
6998 (status_notify): Modify to handle serial processes.
6999 [HAVE_SERIAL] (Fserial_process_configure)
7000 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
7001 New functions.
7002 * process.h (struct Lisp_Process): Add `type'.
7003 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
7004 New functions.
7005 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
7006 serial ports.
b71ac3dd 7007 (serial_open, serial_configure): New functions.
aac0c6e3
MR
7008 * w32.h: Add FILE_SERIAL.
7009 (struct _child_process): Add ovl_read, ovl_write.
7010
70112008-06-13 Kenichi Handa <handa@m17n.org>
7012
7013 * dispextern.h (enum lface_attribute_index): New member
7014 LFACE_FOUNDRY_INDEX.
7015
7016 * font.c (font_score): Delete arg alternate_families. Check only
7017 weight, slant, width, and size. Ignore the difference of alias
7018 style symbols.
7019 (font_sort_entites): Adjust for the above change. Reflect the
7020 order of font-driver to scores.
7021 (font_list_entities): Don't check alternate_familes here.
7022 (font_clear_prop): Handle foundry.
7023 (font_update_lface): Don't parse "foundry-family" form here.
7024 Handle FONT_FOUNDRY_INDEX.
7025 (font_find_for_lface): Likewise. Handle alternate families here.
7026 If registry is nil, try iso8859-1 and ascii-0.
7027 (font_open_for_lface): Pay attention to size in ENTITY.
7028 (font_open_by_name): Simplify by calling font_load_for_lface.
7029 (free_font_driver_list): Delete it.
7030 (font_update_drivers): Preserve the order of backends.
7031 (syms_of_font): Setting of sort_shift_bits adjusted for the change
7032 of font_score and font_sort_entites.
7033 (font_update_sort_order): Likewise.
7034
7035 * xfaces.c (LFACE_FOUNDRY): New macro.
7036 (check_lface_attrs): Check foundry.
7037 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
7038 (merge_face_vectors): Check foundry.
7039 (merge_face_ref): Likewise.
7040 (Finternal_set_lisp_face_attribute): Likewise.
7041 (x_update_menu_appearance): Likewise.
7042 (Finternal_get_lisp_face_attribute): Likewise.
7043 (lface_hash): Likewise.
7044 (lface_same_font_attributes_p): Likewise.
7045 (x_supports_face_attributes_p): Likewise.
7046 (tty_supports_face_attributes_p): Likewise.
7047 (Finternal_set_alternative_font_family_alist): Intern strings.
7048 (Finternal_set_alternative_font_registry_alist): Downcase strings.
7049 (realize_default_face): Set LFACE_FOUNDRY (lface).
7050
7051 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
7052 font-driver at first.
7053
7054 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
7055
70562008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7057
7058 * lread.c (Fload): Use xfree, not free on saved_doc_string.
7059
70602008-06-12 Jim Meyering <meyering@redhat.com>
7061
7062 Make unexec_free handle NULL the same way free does.
7063 * unexmacosx.c (unexec_free): Ignore a NULL argument.
7064
70652008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
7066
7067 * character.h (CHAR_TO_BYTE_SAFE): New macro.
7068 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
7069 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
7070 (WEAK_ALIAS): Simplify.
7071 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
7072 when searching a unibyte buffer.
7073
70742008-06-12 Chong Yidong <cyd@stupidchicken.com>
7075
7076 * xfns.c (Fx_select_font): Rename from x-font-dialog.
7077
70782008-06-12 Juanma Barranquero <lekktu@gmail.com>
7079
7080 * w32font.c: Include ctype.h.
7081
70822008-06-11 Jason Rumney <jasonr@gnu.org>
7083
7084 * w32font.c (w32font_encode_char): Detect missing glyphs that are
7085 misreported as space.
7086 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
7087 as aliases for registry iso10646-1.
7088
70892008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
7090
7091 * buffer.c (clone_per_buffer_values): Skip `name'.
7092
70932008-06-11 Chong Yidong <cyd@stupidchicken.com>
7094
7095 * font.c (font_parse_fcname): Fix last change; accept decimal
7096 points in font size.
7097
70982008-06-10 Jason Rumney <jasonr@gnu.org>
7099
7100 * w32uniscribe.c (add_opentype_font_name_to_list):
7101 Skip non unicode fonts.
7102
71032008-06-10 Chong Yidong <cyd@stupidchicken.com>
7104
7105 * xfns.c (Fx_font_dialog): New function.
7106
7107 * gtkutil.c (xg_dialog_response_cb): Rename from
7108 xg_file_response_callback.
7109 (pop_down_dialog): Rename from pop_down_file_dialog.
7110 (xg_get_file_name): Callers changed.
7111 (xg_get_font_name): New function.
7112
7113 * gtkutil.h (xg_get_font_name): Insert prototype.
7114
71152008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7116
7117 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
7118 x_underline_minimum_display_offset.
7119 (syms_of_xdisp): Declare it here rather than in xterm.c.
7120 * dispextern.h (underline_minimum_offset): Declare it.
7121 * w32term.c (x_draw_glyph_string): Use it.
7122 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
7123 (syms_of_xterm): Don't declare it any more.
7124 (x_draw_glyph_string): Adjust to the new name.
7125
71262008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
7127
7128 * xterm.c (x_underline_minimum_display_offset): New var.
7129 (x_draw_glyph_string): Use it.
7130 (syms_of_xterm): Declare it.
7131
71322008-06-10 Chong Yidong <cyd@stupidchicken.com>
7133
7134 * font.c (font_parse_fcname): Accept GTK-style font names too.
7135
71362008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7137
7138 * dired.c (file_name_completion): Don't return t if the match is exact
7139 but with different capitalization.
7140 * minibuf.c (Ftry_completion): Simplify.
7141
7142 * window.c (Vwindow_point_insertion_type): New var.
7143 (set_window_buffer): Use it.
7144 (syms_of_window): Init and export it to Lisp.
7145
71462008-06-10 Kenichi Handa <handa@m17n.org>
7147
7148 * font.h (font_intern_prop): Prototype adjusted.
7149
7150 * font.c (font_intern_prop): New arg force_symbol.
7151 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
7152 Adjust for the change of font_intern_prop.
7153
7154 * ftfont.c (ftfont_pattern_entity):
7155 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
7156 (w32_registry):
7157 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
7158 the change of font_intern_prop.
7159
71602008-06-09 Juanma Barranquero <lekktu@gmail.com>
7161
7162 * w32menu.c (digest_single_submenu): Declare extern.
7163
71642008-06-09 Jason Rumney <jasonr@gnu.org>
7165
7166 * w32term.c (x_make_frame_visible): Use alternate restore flags.
7167
7168 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
7169 (parse_single_submenu): Remove.
7170 (digest_single_submenu): Remove.
7171 (syms_of_w32menu): Don't initialise variables that have moved
7172 to menu.c.
7173 (set_frame_menubar): Sync with version in xmenu.c.
7174 (w32_menu_show): Sync with xmenu_show in xmenu.c.
7175
7176 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
7177 Make static again.
7178
71792008-06-09 Jason Rumney <jasonr@gnu.org>
7180
7181 Changes to w32 files related to the move of common menu code
7182 to menu.c on 2008-06-08 by Chong Yidong.
7183
7184 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
7185 defs to w32gui.h.
7186 (single_keymap_panes, push_menu_item, push_menu_pane):
7187 Make globally visible.
7188
7189 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
7190 (local_free, malloc_widget_value, free_widget_value)
7191 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
7192 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
7193 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
7194 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
7195 (menu_items, menu_items_allocated, menu_items_used)
7196 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
7197 (init_menu_items, finish_menu_items, discard_menu_items)
7198 (grow_menu_items, push_submenu_start, push_submenu_end)
7199 (push_left_right_boundary, push_menu_pane, push_menu_item)
7200 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
7201 (free_menubar_widget_tree_value, parse_single_submenu)
7202 (update_submenu_strings): Remove functions.
7203 (xmalloc_widget_value): Remove and declare extern.
7204
7205 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
7206 (OBJ1): Build it.
7207
7208 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
7209 (local_heap, local_alloc, local_free, malloc_widget_value)
7210 (free_widget_value): Define here.
7211
72122008-06-09 Kenichi Handa <handa@m17n.org>
7213
7214 * font.h (Qascii_0): Extern it.
7215
7216 * font.c (Qascii_0): New variable.
7217 (syms_of_font): DEFSYM it.
7218 (font_open_by_name): If the registry "iso8859-1" fails, try also
7219 "ascii-0".
7220
7221 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
7222
72232008-06-08 Kenichi Handa <handa@m17n.org>
7224
7225 * .gdbinit (xfont): New command.
7226
72272008-06-08 Andreas Schwab <schwab@suse.de>
7228
7229 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
7230 * Makefile.in (menu.o): Update dependencies.
7231
7232 * Makefile.in (obj): Always add menu.o.
7233 * emacs.c (main): Always call syms_of_menu.
7234 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
7235
72362008-06-08 Chong Yidong <cyd@stupidchicken.com>
7237
7238 * Makefile.in: Compile menu.c.
7239
7240 * lisp.h: Declare syms_of_menu.
7241
7242 * emacs.c (main): Call syms_of_menu.
7243
7244 * keyboard.h: Relocate platform-independent menu definitions from
7245 xmenu.c.
7246
7247 * menu.c: New file. Relocate platform-independent menu
7248 definitions from xmenu.c. Suggested by Adrian Robert.
7249
7250 * xmenu.c: Remove platform-independent menu definitions.
7251 (menu_items menu_items_inuse, menu_items_allocated)
7252 (menu_items_used, menu_items_n_panes)
7253 (menu_items_submenu_depth): Move to keyboard.h.
7254 (init_menu_items, finish_menu_items, unuse_menu_items)
7255 (discard_menu_items, restore_menu_items, save_menu_items)
7256 (grow_menu_items, push_submenu_start, push_submenu_end)
7257 (push_left_right_boundary, push_menu_pane, push_menu_item)
7258 (keymap_panes, single_keymap_panes, single_menu_item)
7259 (list_of_panes, list_of_items, find_and_call_menu_selection)
7260 (xmalloc_widget_value, free_menubar_widget_value_tree)
7261 (parse_single_submenu, digest_single_submenu)
7262 (update_submenu_strings): Move to menu.c.
7263
72642008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
7265
7266 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
7267
72682008-06-06 Miles Bader <miles@gnu.org>
7269
7270 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
7271 face, not frame default.
7272
72732008-06-05 Martin Rudalics <rudalics@gmx.at>
7274
7275 * window.c (pop_up_windows, pop_up_frames)
7276 (display_buffer_reuse_frames, Vpop_up_frame_function)
7277 (Vdisplay_buffer_function, Veven_window_heights)
7278 (Vspecial_display_buffer_names, Vspecial_display_regexps)
7279 (Vspecial_display_function, Vsame_window_buffer_names)
7280 (Vsame_window_regexps, split_height_threshold)
7281 (Vsplit_window_preferred_function): Move those vars to window.el.
7282 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
7283 (Fdisplay_buffer): Move those functions to window.el.
7284 (syms_of_window): Remove corresponding declarations.
7285 (display_buffer): New function.
7286 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
7287 * dispnew.c (Flast_nonminibuf_frame): New function.
7288 * buffer.c (Fpop_to_buffer): Move to window.el.
7289
72902008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7291
7292 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
7293
72942008-06-05 Kenichi Handa <handa@m17n.org>
7295
7296 * coding.c (detect_coding): Fix previous change.
7297 (detect_coding_system): Likewise.
7298
72992008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7300
7301 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
7302
7303 * keymap.c (Vminibuffer_local_filename_must_match_map):
7304 Rename from Vminibuffer_local_must_match_filename_map.
7305 (syms_of_keymap):
7306 * minibuf.c (Fcompleting_read): Adjust accordingly.
7307 * commands.h: Rename declaration as well.
7308
73092008-06-05 Kenichi Handa <handa@m17n.org>
7310
7311 * font.c (Ffont_spec): Don't use font_parse_family_registry for
7312 family name.
7313 (Ffont_put): Likewise.
7314
7315 * fontset.c (fontset_find_font): Call font_open_for_lface with the
7316 current font-spec.
7317
7318 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
7319 is unspecified.
7320
7321 * xfaces.c (realize_x_face): If the font-related face attributes
7322 are the same as those of default face, realize a new fontset from
7323 default->fontset.
7324 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
7325
73262008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7327
7328 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
7329 (move_it_in_display_line): New wrapper.
7330
7331 * window.c (window_scroll_pixel_based_preserve_x)
7332 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
7333 (window_scroll_pixel_based, window_scroll_line_based):
7334 Use them to preserve column positions.
7335 (syms_of_window): Initialize them.
7336
7337 * indent.c (Fvertical_motion): Extend first arg to allow passing an
7338 (HPOS . VPOS) pair.
7339
7340 * dispextern.h (move_it_in_display_line): Declare.
7341
73422008-06-05 Juanma Barranquero <lekktu@gmail.com>
7343
7344 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
7345 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
7346 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
7347
73482008-06-04 Juanma Barranquero <lekktu@gmail.com>
7349
7350 * window.c (Fset_window_parameter): Doc fix.
7351 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
7352
73532008-06-04 Joakim Verona <joakim@verona.se>
7354
7355 * window.h (struct window): Add new member window_parameters.
7356
7357 * window.c (Fwindow_parameters, Fwindow_parameter)
7358 (Fset_window_parameter): New defuns.
7359 (syms_of_window): Defsubr the new defuns.
7360 (make_window): Initialize window_parameters to nil.
7361
73622008-06-04 John Paul Wallington <jpw@pobox.com>
7363
7364 * eval.c (Fdefmacro): Doc fix.
7365
73662008-06-04 Kenichi Handa <handa@m17n.org>
7367
7368 * coding.c (detect_coding): Fix handling of coding->head_ascii.
7369 Be sure to call setup_coding_system when we find a proper coding system.
7370 (detect_coding_system): Fix handling of coding->head_ascii.
7371
73722008-06-03 Andreas Schwab <schwab@suse.de>
7373
7374 * font.c (font_prop_validate_spacing): Fix last change.
7375
73762008-06-03 Kenichi Handa <handa@m17n.org>
7377
7378 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
7379 (font_parse_fcname): Fix handling of unknown key.
7380
7381 * xfont.c (xfont_list): Try an alias.
7382
7383 * charset.c (char_charset): Return NULL if the arg charset_list is
7384 specified and C doesn't belong to any of them.
7385
73862008-06-02 Chip Coldwell <coldwell@redhat.com>
7387
7388 * font.c (font_pixel_size): Don't take cdr of an integer.
7389
73902008-06-02 Jim Meyering <meyering@redhat.com>
7391
7392 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
7393 * alloc.c (xfree): Return right away for a NULL arg.
7394 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
7395 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
7396 * mac.c (create_apple_event_from_event_ref): Likewise.
7397 (create_apple_event_from_drag_ref, cfstring_create_normalized):
7398 Likewise.
7399 * doprnt.c (doprnt1): Likewise.
7400 * frame.c (frame): Likewise.
7401 * keyboard.c (wipe_kboard): Likewise.
7402 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
7403 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
7404 * term.c (tty_default_color_capabilities, maybe_fatal)
7405 (delete_tty): Likewise.
7406 * w16select.c (string): Likewise.
7407 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
7408 * w32bdf.c (w32_free_bdf_font): Likewise.
7409 * w32fns.c (w32_unload_font): Likewise.
7410 * w32font.c (w32font_close): Likewise.
7411 * window.c (size_window): Likewise.
7412 * xselect.c (receive_incremental_selection): Likewise.
7413 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
7414 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
7415 * w32.c (stat): Likewise.
7416
7417 Remove useless if-before-free tests.
7418 * editfns.c (Fset_time_zone_rule): Likewise.
7419 * lread.c (nosuffix): Likewise.
7420 * ralloc.c (get_bloc): Likewise.
7421 * regex.c (reg_free): Likewise.
7422 * xftfont.c (xftfont_open, xftfont_close): Likewise.
7423 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
7424 * xsmfns.c (smc_save_yourself_CB): Likewise.
7425
74262008-06-02 Kenichi Handa <handa@m17n.org>
7427
7428 * font.c (font_find_for_lface): Handle float font size.
7429 (font_open_for_lface): Likewise.
7430
7431 * xfaces.c (x_supports_face_attributes_p): Check face->font before
7432 comparing the properties.
7433
74342008-06-01 Jason Rumney <jasonr@gnu.org>
7435
7436 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
7437 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
7438 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
7439 Don't add empty script list.
7440 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
7441
74422008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
7443
7444 * Makefile.in (dot, dotdot): Remove, update users.
7445 ".." has been used elsewhere in the file for a long time.
7446 (LIBXT_STATIC): Remove conditional based on unused variable.
7447
74482008-06-01 Miles Bader <miles@gnu.org>
7449
7450 * xfaces.c (Vface_remapping_alist): New variable.
7451 (syms_of_xfaces): Initialize it.
7452 (enum named_merge_point_kind): New type.
7453 (struct named_merge_point): Add `named_merge_point_kind' field.
7454 (push_named_merge_point): Make cycle detection respect different
7455 named-merge-point kinds.
7456 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
7457 Remove face-name alias resolution.
7458 (lface_from_face_name): New definition using
7459 `lface_from_face_name_no_resolve'.
7460 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
7461 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
7462 (get_lface_attributes): New definition that layers face-remapping on
7463 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
7464 (lookup_basic_face): New function.
7465 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
7466 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
7467 `get_lface_attributes'.
7468 (face_at_buffer_position): Use `lookup_basic_face' to lookup
7469 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
7470 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
7471
7472 * xdisp.c (init_iterator): Pass base_face_id through
7473 `lookup_basic_face' when we actually use it as a face-id.
7474 (handle_single_display_prop): Use `lookup_basic_face' to lookup
7475 DEFAULT_FACE_ID.
7476
7477 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
7478 lookup the initial face-id.
7479
7480 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
7481
74822008-06-01 Juanma Barranquero <lekktu@gmail.com>
7483
7484 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
7485 (Fremove_text_properties): Fix typos in docstrings.
7486
74872008-05-31 Kenichi Handa <handa@m17n.org>
7488
7489 * font.c (font_list_entities): Fix the car part of data to be
7490 stored in the cache.
7491
7492 * ftfont.c (ftfont_font_format): Don't use strcasestr.
7493
74942008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
7495
7496 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
7497 Add a `test' argument so another predicate than `equal' can be used.
7498 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
7499 (map_char_table): Remove unused vars `c' and `i'.
7500 * lisp.h (Foptimize_char_table): Adjust declaration.
7501 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
7502
75032008-05-30 Kenichi Handa <handa@m17n.org>
7504
7505 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
7506 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
7507 defined.
7508
75092008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
7510
7511 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
7512 (Fmake_variable_frame_local): Disallow mixing buffer-local and
7513 frame-local settings for the same variable.
7514
75152008-05-30 Kenichi Handa <handa@m17n.org>
7516
7517 * fontset.c (Ffont_info): Move to font.c.
7518 (syms_of_fontset): Delete defsubr of Sfont_info.
7519
7520 * font.c (font_style_to_value, font_score): Delete casting of the
7521 args to xstcasecmp.
7522 (register_font_driver): Increment num_font_drivers only when
7523 registering the driver globally.
7524 (Ffont_info): Move from fontset.c. Handle a font object too.
7525 (syms_of_font): Defsubr Sfont_info.
7526
75272008-05-29 Kenichi Handa <handa@m17n.org>
7528
7529 * coding.h (enum define_coding_utf8_arg_index): New enum.
7530 (enum coding_attr_index): Change coding_attr_utf_16_bom to
7531 coding_attr_utf_bom.
7532 (enum utf_bom_type): Rename from utf_16_bom_type.
7533 (struct utf_16_spec): Adjust for the above change.
7534 (struct coding_system): Add utf_8_bom in `spec' union.
7535
7536 * coding.c (CODING_UTF_8_BOM): New macro.
7537 (enum coding_category): Delete coding_category_utf_8, add
7538 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
7539 coding_category_utf_8_sig.
7540 (CATEGORY_MASK_UTF_8): Delete it.
7541 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
7542 (CATEGORY_MASK_UTF_8_SIG): New macros.
7543 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
7544 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
7545 CATEGORY_MASK_UTF_8_SIG.
7546 (CATEGORY_MASK_UTF_8): New macro.
7547 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
7548 (detect_coding_utf_8): Check BOM.
7549 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
7550 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
7551 (encode_coding_utf_16): Likewise.
7552 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
7553 (detect_coding, detect_coding_system): Handle utf-8-auto.
7554 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
7555 (syms_of_coding): Fix setting up of Vcoding_category_table.
7556
75572008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
7558
7559 * process.c (Faccept_process_output): If `millisec' is non-nil,
7560 `seconds' default to 0.
7561 (wait_reading_process_output): Also return non-nil if we read output
7562 from a non-running process.
7563
75642008-05-29 Jason Rumney <jasonr@gnu.org>
7565
7566 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
7567 `raster' specified.
7568 (add_font_entity_to_list): Allow non-opentype truetype fonts back
7569 in the uniscribe backend, but disallow any font that has no
7570 unicode subrange support.
7571
75722008-05-29 Juanma Barranquero <lekktu@gmail.com>
7573
7574 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
7575 Fix typos in docstrings.
7576
75772008-05-29 Kenichi Handa <handa@m17n.org>
7578
7579 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
7580 (Fx_family_fonts): Set frame correctly.
7581
75822008-05-28 Jason Rumney <jasonr@gnu.org>
7583
7584 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
7585
75862008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7587
7588 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
7589 calling build_annotations.
7590
75912008-05-28 Juanma Barranquero <lekktu@gmail.com>
7592
7593 * coding.c (Fdecode_coding_region, Fencode_coding_region)
7594 (Fencode_coding_string):
7595 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
7596 <latin-extra-code-table>: Fix typos in docstrings.
7597 (syms_of_coding) <coding-system-alist>: Doc fix.
7598 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
7599
76002008-05-28 Kenichi Handa <handa@m17n.org>
7601
7602 * fontset.c (Ffont_info): Don't call font_close_object.
7603
7604 * font.c (font_parse_family_registry): Use Ffont_put to validate
7605 foundry and family.
7606 (font_delete_unmatched): Don't check spacing.
7607 (font_list_entities): Add spacing to the spec to list fonts.
7608
7609 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
7610 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
7611
7612 * coding.c (encode_coding_raw_text): Fix previous change.
7613 (encode_coding_object): When the dst_object is a buffer and is
7614 different from src_object, move gap to PT.
7615
76162008-05-27 Chong Yidong <cyd@stupidchicken.com>
7617
7618 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
7619
76202008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
7621
7622 * coding.c (encode_coding_raw_text): Set coding->produced_char for
7623 all branches. Compute it differently.
7624
7625 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
7626
76272008-05-27 Juanma Barranquero <lekktu@gmail.com>
7628
7629 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
7630 into "else if () ... else ...".
7631
76322008-05-27 Jason Rumney <jasonr@gnu.org>
7633
7634 * w32font.c (w32font_open_internal): Determine if glyph indices
7635 are likely to work here.
7636
76372008-05-27 Chong Yidong <cyd@stupidchicken.com>
7638
7639 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
7640 draw overlap glyphs with appropriate highlighting.
7641
76422008-05-27 Kenichi Handa <handa@m17n.org>
7643
7644 * xfont.c (xfont_open): Fix calculation of font->average_width.
7645
76462008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
7647
7648 * casefiddle.c (casify_object): Try to guess better whether the
7649 argument is a byte or a char.
7650
76512008-05-26 Andreas Schwab <schwab@suse.de>
7652
7653 * xselect.c (x_reply_selection_request): Properly handle format == 32.
7654 Always send multiples of format size.
7655
7656 * xterm.c (x_set_frame_alpha): Fix type mismatch.
7657
76582008-05-26 Jason Rumney <jasonr@gnu.org>
7659
7660 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
7661 (compute_metrics): Don't set failure if we just cleared the cache.
7662 (w32_weight_table): Remove unused variable.
7663 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
7664 backwards compatibility.
7665
76662008-05-25 Kenichi Handa <handa@m17n.org>
7667
7668 * w32term.c (x_draw_glyph_string):
7669 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
7670
7671 * xfaces.c: Delete unused function prototypes.
7672 (xstrlwr, font_frame): Delete them.
7673 (clear_face_cache): Delete unused variable.
7674
7675 * xftfont.c (xftfont_open): Delete unused variable.
7676 If underline_thickness is not 1, adjust underline_position.
7677
7678 * ftxfont.c (ftxfont_open): Delete unused variable.
7679
7680 * fontset.c (face_for_char): Optimize for the case of no charset
7681 property.
7682
7683 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
7684 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
7685 (otf_open, font_otf_capability, generate_otf_features)
7686 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
7687 Comment out by surrounding "#if 0" and "#endif" for the moment.
7688 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
7689 (syms_of_font): Codes for accessing above commented out.
7690
76912008-05-24 Eli Zaretskii <eliz@gnu.org>
7692
7693 * w32proc.c: Include dispextern.h.
7694
7695 * w32.c: Include dispextern.h.
7696
76972008-05-23 Juanma Barranquero <lekktu@gmail.com>
7698
7699 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
7700 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
7701 Fix typos in docstrings.
7702
77032008-05-23 Jason Rumney <jasonr@gnu.org>
7704
7705 * xsmfns.c: Remove includes that are already included by config.h.
7706
77072008-05-23 Kenichi Handa <handa@m17n.org>
7708
7709 * charset.c (Qemacs, charset_emacs): New variables.
7710 (char_charset): Fix for non-Unicode characters.
7711 (syms_of_charset): Define charset_emacs.
7712
7713 * w32term.c (x_draw_glyph_string): Be sure to update
7714 s->underline_thickness and s->underline_position. Be sure to draw
7715 underline within the current line area.
7716
7717 * xterm.c (x_draw_glyph_string): Be sure to update
7718 s->underline_thickness and s->underline_position. Be sure to draw
7719 underline within the current line area.
7720
7721 * fontset.c: Delete unused variables and add casting for char *
7722 throughout the file.
7723 (fontset_font): Try the fallback fonts of the current fontset
7724 before consulting the default fontset.
7725
7726 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
7727
7728 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
7729
77302008-05-22 Jason Rumney <jasonr@gnu.org>
7731
7732 * font.c: Don't include strings.h.
7733
7734 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
7735
7736 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
7737 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
7738 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
7739 to call xstrcasecmp.
7740
7741 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
7742
7743 * fontset.c (fs_query_fontset): Use xstrcasecmp.
7744
7745 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
7746
7747 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
7748
77492008-05-22 Kenichi Handa <handa@m17n.org>
7750
7751 * puresize.h (BASE_PURESIZE): Increase to 1220000.
7752
7753 * font.c (font_prop_validate_style): Adjust for the format
7754 change of font_style_table.
7755
7756 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
7757 two args.
7758
7759 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
7760 two args.
7761
77622008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
7763
7764 * minibuf.c (keys_of_minibuf): Delete.
7765 * lisp.h (keys_of_minibuf): Delete.
7766 * emacs.c (main): Don't call keys_of_minibuf.
7767
77682008-05-22 Kenichi Handa <handa@m17n.org>
7769
7770 * ftfont.c (ftfont_resolve_generic_family): Rename from
7771 ftfont_list_generic_family. Return a single family for each
7772 generic family.
7773 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
7774 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
7775 Call font_add_log.
7776 (ftfont_match): Call font_add_log.
7777
7778 * font.h (Ffont_xlfd_name): EXFUN adjusted.
7779 (FONT_DEBUG): Define it.
7780 (font_add_log): Extern it.
7781 (font_assert): Rename from xassert.
7782
7783 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
7784 (xfont_list_family): Call font_add_log.
7785 (xfont_match): Likewise.
7786 (memq_no_quit): Delete.
7787
7788 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
7789 call of Ffont_xlfd_name.
7790
7791 * xfaces.c (struct table_entry, slant_table, weight_table)
7792 (swidth_table): Move to font.c.
7793
7794 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
7795 xassert are changed to font_assert. Delete many unused variables.
7796 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
7797 New variables.
7798 (struct table_entry): Move from xfaces.c and modified.
7799 (weight_table, slant_table, width_table): Move from xfaces.c and
7800 contents adjusted for the change of struct table_entry.
7801 (font_style_to_value, font_style_symbolic): Adjust for the
7802 format change of font_style_table.
7803 (font_parse_family_registry): Don't overwrite existing foundry and
7804 family of font_spec.
7805 (font_score): Fix calculation of diff for sizes.
7806 (font_sort_entites): Call font_add_log.
7807 (font_delete_unmatched): Return a newly created list.
7808 (font_list_entities): Fix previous change. Call font_add_log.
7809 (font_matching_entity, font_open_entity, font_close_entity):
7810 Call font_add_log.
7811 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
7812 (Finternal_set_font_style_table): Delete.
7813 (BUILD_STYLE_TABLE): New macro.
7814 (build_style_table): New function.
7815 (Vfont_log, font_log_env_checked): New variables.
7816 (font_add_log): New function.
7817 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
7818 Declare Lisp variables "font-weight-table", "font-slant-table",
7819 "font-width-table", and "font-log". Initialize font_style_table.
7820
78212008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
7822
7823 * xterm.c (x_set_frame_alpha): Move declarations before statements.
7824
78252008-05-21 Seiji Zenitani <zenitani@mac.com>
7826 Ryo Yoshitake <ryo@shiftmode.net>
7827
7828 * frame.c (Qalpha): Add a new frame parameter `alpha'.
7829 (Vframe_alpha_lower_limit): New variable.
7830 (x_set_alpha): New function.
7831
7832 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
7833
7834 * xfns.c (x-create-frame, Qalpha):
7835 Initialize the frame parameter `alpha'.
7836 * xterm.c (OPAQUE, OPACITY): New.
7837 (x_set_frame_alpha): New function.
7838 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
7839
7840 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
7841 * w32fns.c (w32_frame_parm_handlers): Likewise.
7842
78432008-05-20 Jason Rumney <jasonr@gnu.org>
7844
7845 * w32font.c (add_font_entity_to_list): Don't add non-opentype
7846 truetype fonts to opentype list.
7847
78482008-05-20 Juanma Barranquero <lekktu@gmail.com>
7849
7850 * fontset.c (Ffontset_info): Doc fix.
7851 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
7852 <ignore-relative-composition>: Fix typos in docstrings.
7853
7854 * font.c (syms-of-font) <font-encoding-alist>:
7855 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
7856 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
7857 (Ffont_otf_alternates): Doc fixes.
7858
78592008-05-20 Kenichi Handa <handa@m17n.org>
7860
7861 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
7862 font.h through out the file.
7863 (FONT_DRIVERS): Rename from FONTOBJ.
7864 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
7865 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
7866
7867 * emacs.c (main): Call syms_of_font unconditionally.
7868
7869 * font.h (find_font_encoding): Extern it.
7870
7871 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
7872 fontset.c.
7873 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
7874 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
7875 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
7876 only when HAVE_WINDOW_SYSTEM is defined.
7877 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
7878 when HAVE_WINDOW_SYSTEM is defined.
7879
7880 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
7881 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
7882
7883 * xfaces.c: Include font.h unconditionally.
7884 (merge_face_ref, merge_face_vectors)
7885 (Finternal_set_lisp_face_attribute): Cancel the previous change.
7886
78872008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
7888
7889 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
7890 indirect_variable.
7891 * eval.c (lisp_indirect_variable): New fun.
7892 (Fuser_variable_p): Use it.
7893
78942008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
7895
7896 * lisp.h (indirect_variable):
7897 * data.c (indirect_variable, let_shadows_buffer_binding_p):
7898 Use Lisp_Symbol pointers rather than Lisp_Object.
7899 Adjust callers.
7900 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
7901 To this end, change calling-convention.
7902
7903 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
7904 if some non-hidden buffers are selected by string&pred.
7905
79062008-05-19 Chong Yidong <cyd@stupidchicken.com>
7907
7908 * process.c (wait_reading_process_output): Always check status
7909 when in batch mode.
7910
79112008-05-19 Kenichi Handa <handa@m17n.org>
7912
7913 * font.c (font_list_entities): Fix handling of cache.
7914 (font_matching_entity): Likewise.
7915
7916 * ftfont.c (cs_iso8859_1): Delete.
7917 (ft_face_cache): New variable.
7918 (struct ftfont_info): New member fc_charset_idx.
7919 (ftfont_build_basic_charsets): Delete.
7920 (fc_charset_table): New variable.
7921 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
7922 . FC_CHARSET_IDX) as :font-entity property in the font entity.
7923 Callers changed.
7924 (ftfont_lookup_cache, ftfont_get_charset): New functions.
7925 (ftfont_spec_pattern): New argument fc_charset_idx.
7926 Check registry more rigidly. Change callers.
7927 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
7928 change of :font-entity property of the font.
7929
7930 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
7931 property of the font.
7932
79332008-05-18 Juanma Barranquero <lekktu@gmail.com>
7934
7935 * coding.c (Fcoding_system_p): Rename argument to match docstring.
7936 (Funencodable_char_position, Fcheck_coding_systems_region)
7937 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
7938 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
7939 (Ffind_operation_coding_system, Fset_coding_system_priority)
7940 (Fcoding_system_eol_type): Doc fixes.
7941
79422008-05-17 Glenn Morris <rgm@gnu.org>
7943
7944 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
7945
79462008-05-16 Eli Zaretskii <eliz@gnu.org>
7947
7948 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
7949 and st_gid.
7950
7951 * frame.c (Fdelete_frame): Don't call font_update_drivers if
7952 HAVE_WINDOW_SYSTEM is not defined.
7953
7954 * xfaces.c (merge_face_ref, merge_face_vectors)
7955 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
7956 HAVE_WINDOW_SYSTEM is defined.
7957 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
7958
79592008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
7960
7961 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
7962
79632008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7964
7965 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
7966
79672008-05-15 Kenichi Handa <handa@m17n.org>
7968
7969 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
7970 preference.
7971
79722008-05-15 Glenn Morris <rgm@gnu.org>
7973
7974 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
7975
79762008-05-15 Chong Yidong <cyd@stupidchicken.com>
7977
7978 * fns.c (init_fns): Don't initialize weak_hash_tables here.
7979 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
7980
7981 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
7982
79832008-05-15 Kenichi Handa <handa@m17n.org>
7984
7985 * ftfont.c (ftfont_list): Downcase family name to check generic
7986 families.
7987
7988 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
7989 font-spec for QCfont value.
7990
7991 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
7992 buffer. Check the return value of it.
7993
79942008-05-14 Jason Rumney <jasonr@gnu.org>
7995
7996 * w32term.c (w32_get_glyph_overhangs): Remove.
7997 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
7998
79992008-05-14 Kenichi Handa <handa@m17n.org>
8000
8001 * font.c (font_prop_validate): Make nil a valid value.
8002 (font_clear_cache): Check if the cached vector of entities is nil
8003 or not.
8004
80052008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8006
8007 * emacs.c (main_thread): Conditionalize on
8008 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8009 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
8010
8011 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
8012 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
8013 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8014
80152008-05-14 Kenichi Handa <handa@m17n.org>
8016
8017 * coding.c (detect_coding_iso_2022): Ignore a coding category that
8018 has no corresponding coding system.
8019
80202008-05-14 Jason Rumney <jasonr@gnu.org>
8021
8022 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
8023
8024 * w32font.h (w32font_open_internal): Update declaration.
8025
8026 * w32font.c (w32font_open_internal): Change last argument from
8027 w32font_info struct to font object. Fill in font object from
8028 font_entity. Get Outline metrics if possible. Use them to
8029 calculate underline position and thickness. Use xlfd name as name
8030 property. Don't set codepage.
8031 (w32font_open): Pass font_object to w32font_open_internal. Don't
8032 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
8033 (w32font_draw): Use s->font.
8034 (clear_cached_metrics): Don't clear non-existent blocks.
8035
8036 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
8037 font was not found.
8038 (x_draw_glyph_string): Use underline position and thickness from font.
8039
8040 * w32uniscribe.c (uniscribe_open): Pass font_object to
8041 w32font_open_internal.
8042
80432008-05-14 Kenichi Handa <handa@m17n.org>
8044
8045 These changes are to delete all legacy font-handling codes, and
8046 make Emacs use only font-backends.
8047
8048 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
8049 (frame.o, image.o, print.o): Depend on $(FONTSRC).
8050
8051 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
8052
8053 * charset.h (Vcharset_non_preferred_head)
8054 (Vcurrent_iso639_language): Extern them.
8055
8056 * charset.c (Vcharset_non_preferred_head): New variable.
8057 (Vcurrent_iso639_language): New variable.
8058 (syms_of_charset): Declare it as a Lisp variable.
8059 (char_charset): Don't check non preferred charsets. As a last
8060 resort, return charset_unicode.
8061 (Fset_charset_priority): Update Vcharset_non_preferred_head.
8062
8063 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
8064 conditionals. Don't check enable_font_backend. Delete all codes
8065 used only when USE_FONT_BACKEND is not defined.
8066
8067 * dispextern.h (struct glyph_string): Change type of `font' to
8068 `struct font *'.
8069 (struct glyph_string): New member underline_position and
8070 underline_thickness.
8071 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
8072 (struct face): Change type of `font' to `struct font *'. Remove
8073 members `font_name', `font_info_id'.
8074 (per_char_metric, encode_char): Delete externs.
8075 (calc_pixel_width_or_height): Adjust the prototype.
8076
8077 * emacs.c (enable_font_backend): Delete extern.
8078 (main): Don't set enable_font_backend. Don't check the command
8079 line argument "-disable-font-backend".
8080
8081 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
8082 (enum font_property_index): New members FONT_DPI_INDEX,
8083 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
8084 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
8085 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
8086 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
8087 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
8088 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
8089 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
8090 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
8091 (struct font_spec, struct font_entity): New structs.
8092 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
8093 (struct font): Many members from old "struct font_info" moved to
8094 here. Members font and entity deleted.
8095 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
8096 the new font-related objects.
8097 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
8098 (CHECK_FONT_GET_OBJECT): Likewise.
8099 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
8100 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
8101 (struct font_driver): New members case_sensitive anc check. Type
8102 of the member list and open changed.
8103 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
8104 (font_symbolic_width, font_find_object, font_get_spec)
8105 (font_set_lface_from_name): Delete extern.
8106 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
8107
8108 * font.c: Include <strings.h>.
8109 (enable_font_backend): Delete it.
8110 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
8111 (CHECK_VALIDATE_FONT_SPEC): Delete it.
8112 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
8113 (null_string): Delete it.
8114 (null_vector): Make it static.
8115 (font_family_alist): Delete it.
8116 (Qnormal): Extern it.
8117 (QCextra, QClanguage): Delete it.
8118 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
8119 (font_make_spec, font_make_entity, font_make_object)
8120 (font_intern_prop): Renamed from intern_downcase. Don't downcase
8121 the string. Callers changed.
8122 (font_pixel_size): Adjusted for the format change of font-related
8123 objects.
8124 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
8125 (font_style_to_value, font_style_symbolic): New function.
8126 (build_font_family_alist): Delete it.
8127 (font_registry_charsets): Use Fassoc_string instead of
8128 assq_no_quit.
8129 (font_prop_validate_symbol): Don't return null_string.
8130 (font_prop_validate_style): Adjusted for the change of
8131 style-related values in a font vector.
8132 (font_property_table): Delete entries for QClanguage and
8133 QCantialias, add entries for QCavgwidth.
8134 (get_font_prop_index): Delete the 2nd argument FROM.
8135 (font_prop_validate): Arguments changed.
8136 (font_put_extra): Adjusted for the change of font-related objects.
8137 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
8138 (font_parse_fcname, font_unparse_fcname)
8139 (font_prepare_composition): Likewise.
8140 (font_parse_family_registry): Renamed from font_merge_old_spec.
8141 (otf_open): Delete the 1st arg entity.
8142 (font_otf_capability): Adjusted for the above change.
8143 (font_score): New arg alternate_families. Adjusted for the change
8144 of font-related objects.
8145 (font_sort_entites): New arg best_only.
8146 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
8147 Delete them.
8148 (font_match_p): Check alternate families.
8149 (font_find_object): Delete it.
8150 (font_check_object): New function.
8151 (font_clear_cache): Adjusted for the change of font-related objects.
8152 (font_delete_unmatched): New arg.
8153 (font_list_entities): Call font_driver->list with a spec that
8154 doesn't specify style-related properties.
8155 (font_matching_entity): Arguments changed. Caller changed.
8156 (font_open_entity): Adjusted for the change of font-related objects.
8157 (font_close_object, font_has_char, font_encode_char)
8158 (font_get_name, font_get_spec): Likewise.
8159 (font_spec_from_name, font_clear_prop, font_update_lface):
8160 New functions.
8161 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
8162 (font_prepare_for_face, font_done_for_face, font_open_by_name)
8163 (font_at): Adjusted for the change of font-related objects.
8164 (font_range): New function.
8165 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
8166 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
8167 (Fcopy_font_spec, Fmerge_font_spec): New function.
8168 (Ffont_family_list): Renamed from list-families.
8169 (Finternal_set_font_style_table): Arguments changed.
8170 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
8171 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
8172 change of font-related objects.
8173 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
8174
8175 * fontset.h (struct font_info): Delete it. Most members go to
8176 struct font.
8177 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
8178 (enum FONT_SPEC_INDEX): Delete it.
8179 (font_info, list_fonts_func, load_font_func, query_font_func)
8180 (set_frame_fontset_func, find_ccl_program_func)
8181 (get_font_repertory_func, new_fontset_from_font_name): Delete
8182 externs.
8183 (fontset_from_font_name): Extern it.
8184 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
8185 (FONT_INFO_FROM_FACE): Deleted.
8186 (face_for_font): Adjust prototype.
8187
8188 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
8189 conditionals. Don't check enable_font_backend. Delete all codes
8190 used only when USE_FONT_BACKEND is not defined.
8191 (get_font_info_func, list_font_func, load_font_func)
8192 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
8193 (get_font_repertory_func): Delete them.
8194 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
8195 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
8196 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
8197 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
8198 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
8199 (fontset_compare_rfontdef): New function.
8200 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
8201 rfont-defs by qsort. Adjusted for the change of font-group vector.
8202 (load_font_get_repertory): Deleted.
8203 (fontset_find_font): Use new macros to ref/set elements of
8204 font-def and rfont-def.
8205 (fontset_font): Fix the timing of remembering that no font for C.
8206 (free_face_fontset): Do nothing if the face has no fontset.
8207 (face_suitable_for_char_p): Use new macros to ref/set elements of
8208 rfont-def.
8209 (face_for_char): Likewise. Call face_for_char with font_object.
8210 (fs_load_font): Delete. Delete #pragma surrounding it.
8211 (fs_query_fontset): Use strcasecmp instead of strcmp.
8212 (generate_ascii_font_name): Adjusted for the format change of
8213 font-spec.
8214 (Fset_fontset_font): Likewise. Use new macros to set elements of
8215 font-def.
8216 (Fnew_fontset): Use font_unparse_xlfd to generate
8217 FONTSET_ASCII (fontset).
8218 (new_fontset_from_font_name): Deleted.
8219 (fontset_from_font): Renamed from new_fontset_from_font. Check if
8220 a fontset is already created for the font. FIx updating of
8221 Vfontset_alias_alist.
8222 (fontset_ascii_font): Deleted.
8223 (Ffont_info): Adjusted for the format change of font-spec.
8224 (Finternal_char_font): Likewise.
8225 (Ffontset_info): Likewise.
8226 (syms_of_fontset): Don't check load_font_func.
8227
8228 * fns.c (internal_equal): Handle PREV_FONT.
8229
8230 * frame.h: Delete USE_FONT_BACKEND conditional.
8231
8232 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
8233 conditionals. Don't check enable_font_backend. Delete all codes
8234 used only when USE_FONT_BACKEND is not defined.
8235 (x_set_font): Call x_new_font, not x_new_fontset2.
8236 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
8237 already set for the frame.
8238
8239 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
8240 a font-entity by font_make_entity. Use font_intern_prop instead
8241 of intern_downcase. Use FONT_SET_STYLE to set a style-related
8242 font property. If a font is scalable, set avgwidth property to 0.
8243 Set font-entity property by font_put_extra.
8244 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
8245 (ffont_driver): Adjusted for the change of struct font_driver.
8246 (ftfont_spec_pattern): New function.
8247 (ftfont_list): Return a list, not vector.
8248 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
8249 (ftfont_list_family): Don't downcase names.
8250 (ftfont_free_entity): Deleted.
8251 (ftfont_open): Return a font-object. Adjusted for the change of
8252 struct font. Get underline_thickness and underline_position from
8253 font property. Don't update dpyinfo->smallest_font_height and
8254 dpyinfo->smallest_char_width.
8255 (ftfont_close): Don't free `struct font'.
8256 (ftfont_has_char): Adjusted for the format change of font-entity.
8257 (ftfont_encode_char, ftfont_text_extents): Likewise.
8258
8259 * ftxfont.c (ftxfont_list): Return a list, not vector.
8260 (ftxfont_open): Return a font-object. Adjusted for the change of
8261 struct font. Get underline_thickness and underline_position from
8262 font property. Don't update dpyinfo->smallest_font_height and
8263 dpyinfo->smallest_char_width.
8264 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
8265 (ftxfont_draw): Adjusted for the change of struct font.
8266
8267 * image.c (image_ascent): Don't include "charset.h". Include
8268 "character.h" and "font.h".
8269
8270 * lisp.h (enum pvec_type): New member PREV_FONT.
8271 (Fassoc_string): EXFUN it.
8272
8273 * print.c: Include font.h.
8274 (print_object): Handle font-related objects.
8275
8276 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
8277 conditionals. Don't check enable_font_backend. Delete all codes
8278 used only when USE_FONT_BACKEND is not defined.
8279 (handle_auto_composed_prop): Do nothing if it->f is not on a
8280 window system. Check how many following characters can be
8281 displayed by the same font.
8282 (calc_pixel_width_or_height): Type of the 4th arg is changed to
8283 'struct font *'.
8284 (get_char_face_and_encoding): Assign the whole encoding task to
8285 the `encode-char' method of a font driver.
8286 (fill_composite_glyph_string): Adjusted for the change of `struct
8287 face' and `struct glyph_string'.
8288 (fill_glyph_string): Likewise.
8289 (get_per_char_metric): Arguments changed.
8290 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
8291 and `struct glyph_string'.
8292 (produce_stretch_glyph, calc_line_height_property)
8293 (x_produce_glyphs): Likewise.
8294
8295 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
8296 conditionals. Don't check enable_font_backend. Delete all codes
8297 used only when USE_FONT_BACKEND is not defined. Use
8298 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
8299 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
8300 (Qp): Extern them.
8301 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
8302 Deleted.
8303 (struct font_name): Deleted.
8304 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
8305 (compare_fonts_by_sort_order): New function.
8306 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
8307 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
8308 Deleted.
8309 (Fx_family_fonts): Use font_list_entities, and sort fonts by
8310 compare_fonts_by_sort_order.
8311 (Fx_font_family_list): Call Ffont_family_list.
8312 (face_numeric_value, face_numeric_weight, face_numeric_slant)
8313 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
8314 (face_symbolic_slant, face_symbolic_swidth)
8315 (split_font_name_into_vector, build_font_name_from_vector)
8316 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
8317 (font_rescale_ratio, split_font_name, build_font_name)
8318 (free_font_names, sort_fonts, x_face_list_fonts)
8319 (face_font_available_p, sorted_font_list, cmp_font_names)
8320 (font_list_1, concat_font_list, font_list, remove_duplicates):
8321 Deleted.
8322 (Fx_list_fonts): Use Ffont_list.
8323 (LFACE_AVGWIDTH): Deleted.
8324 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
8325 by FONTP.
8326 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
8327 (set_lface_from_font_name): Delete it.
8328 (set_lface_from_font): Renamed from
8329 set_lface_from_font_and_fontset. Caller changed. Don't set
8330 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
8331 for face.
8332 (merge_face_vectors): Copy font-spec if necessary.
8333 Clear properties of the font-spec if necessary.
8334 (merge_face_ref): Clear properties of the font-spec if necessary.
8335 (Finternal_set_lisp_face_attribute): Likewise.
8336 (set_font_frame_param): Use font_load_for_lface to load a
8337 font-object, and call Fmodify_frame_parameters with it.
8338 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
8339 font name by Ffont_xlfd_name.
8340 (Finternal_lisp_face_attribute_values): Don't check QCweight,
8341 QCslant, and QCwidth.
8342 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
8343 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
8344 Compare fonts by EQ.
8345 (lookup_non_ascii_face): Deleted.
8346 (face_for_font): The 2nd argument changed.
8347 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
8348 Check atomic font properties by case insensitive.
8349 (realize_non_ascii_face): Set face->overstrike correctly.
8350 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
8351 (dump_realized_face): Get font name from
8352 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
8353
8354 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
8355 conditionals. Don't check enable_font_backend. Delete all codes
8356 used only when USE_FONT_BACKEND is not defined.
8357 (xic_create_xfontset): Original code deleted and renamed from
8358 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
8359 (x_make_gc): Don't set GCFont in GCs.
8360 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
8361 opened by "fixed".
8362 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
8363 find_ccl_program_func, query_font_func, set_frame_fontset_func,
8364 get_font_repertory_func.
8365
8366 * xfont.c: Include <stdlib.h> and "ccl.h".
8367 (struct xfont_info): New structure.
8368 (xfont_query_font): Deleted.
8369 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
8370 moved from xterm.c.
8371 (xfont_driver): Adjusted for the change of struct font_driver.
8372 (compare_font_names): New function.
8373 (xfont_list_pattern): Sort font names case insensitively. Make
8374 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
8375 (xfont_list): Return a list, not vector.
8376 (xfont_match): If the font doesn't have QCname property, generate
8377 a name from the other font properties.
8378 (xfont_open): Return a font-object. Adjusted for the change of
8379 struct font. Get underline_thickness and underline_position from
8380 font property. Don't update dpyinfo->smallest_font_height and
8381 dpyinfo->smallest_char_width.
8382 (xfont_close): Don't free struct font.
8383 (xfont_prepare_face): Adjusted for the change of struct font.
8384 (xfont_done_face): Deleted.
8385 (xfont_has_char): Adjusted for the change of struct font.
8386 (xfont_encode_char, xfont_draw): Likewise.
8387 (xfont_check): New function.
8388
8389 * xftfont.c (xftfont_list): Adjusted for the change of `list'
8390 callback function.
8391 (xftfont_match): Adjusted for the format change of font-entity.
8392 (xftfont_open): Adjusted for the format change of font-entity and
8393 font-object. Adjusted for the change of struct font. Return a
8394 font-object. Don't update dpyinfo->smallest_font_height and
8395 dpyinfo->smallest_char_width.
8396 (xftfont_close): Block input while calling XftFontClose.
8397 (xftfont_prepare_face): Don't block input while calling
8398 xftfont_get_colors. Adjusted for the change of struct font.
8399 (xftfont_shape): Return value of error case fixed.
8400
8401 * xrdb.c (x_load_resources): Don't setup a fontset resource.
8402
8403 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
8404 conditionals.
8405 (FONT_WIDTH): Return (f)->max_width.
8406 (struct x_display_info): Delete member `font'.
8407 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
8408 (x_find_ccl_program, x_get_font_repertory): Delete externs.
8409 (struct x_output): Change type of `font' to `struct font *'.
8410
8411 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
8412 conditionals. Don't check enable_font_backend. Delete all codes
8413 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
8414 (x_per_char_metric, x_encode_char): Deleted.
8415 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
8416 (x_compute_glyph_string_overhangs): Adjusted for the change of
8417 `struct face'.
8418 (x_draw_glyph_string_foreground)
8419 (x_draw_composite_glyph_string_foreground): Likewise.
8420 (x_draw_glyph_string): Likewise. Use font->underline_position and
8421 font->underline_thickness.
8422 (x_new_font): Renamed from x_new_fontset2.
8423 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
8424 (x_check_font): Call `check' method of a font driver.
8425 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
8426 (x_query_font, x_get_font_repertory): Deleted.
8427 (x_find_ccl_program): Renamed and moved to xfont.c.
8428 (x_redisplay_interface): Adjusted for the change of `struct
8429 redisplay_interface'.
8430
8431 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
8432 conditionals. Don't check enable_font_backend. Delete all codes
8433 used only when USE_FONT_BACKEND is not defined. Surround non-used
8434 code by "#ifdef OLD_FONT" and "endif".
8435 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
8436
8437 * w32font.h (struct w32font_info): New member.
8438 (FONT_COMPAT): New macro.
8439 (w32font_open_internal): Prototype adjusted.
8440
8441 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
8442 OLD_FONT" and "endif".
8443
8444 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
8445 conditionals. Don't check enable_font_backend. Delete all codes
8446 used only when USE_FONT_BACKEND is not defined.
8447 (w32font_open): Return a font-object. Make a font-object by
8448 font_make_object. Adjusted for the change of struct w32font_info.
8449 (w32font_close): Don't free struct font. Adjusted for the change
8450 of struct w32font_info.
8451 (w32font_encode_char, w32font_text_extents, w32font_draw):
8452 Adjusted for the change of struct w32font_info.
8453 (w32font_draw): Likewise.
8454 (w32font_list_internal): Return a list, not vector.
8455 (w32font_open_internal): Change the 4th arg to font-object.
8456 Adjusted for the change of struct w32font_info and font-object format.
8457 (add_font_name_to_list): Don't downcase names.
8458 (w32_enumfont_pattern_entity): Make a font-entity by
8459 font_make_entity. Adjusted for the format change of font-entity.
8460 Use FONT_SET_STYLE to set a style-related font property. If a
8461 font is scalable, set avgwidth property to 0. Set font-entity
8462 property by font_put_extra.
8463 (font_matches_spec): Adjusted for the format change of font-entity.
8464 (w32_weight_table, w32_decode_weight): New variables.
8465 (w32_encode_weight): New function.
8466 (fill_in_logfont): Adjusted for the format change of font-spec.
8467 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
8468 weight value.
8469 (w32font_driver): Adjusted for the change of struct font_driver.
8470
8471 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
8472 conditionals. Don't check enable_font_backend. Surround non-used
8473 code by "#ifdef OLD_FONT" and "endif".
8474 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
8475 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
8476
8477 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
8478 conditionals. Don't check enable_font_backend. Delete all codes
8479 used only when USE_FONT_BACKEND is not defined. Surround non-used
8480 code by "#ifdef OLD_FONT" and "endif".
8481
8482 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
8483 (uniscribe_open): Return value changed to font-object.
8484 Adjusted for the format change of font-object.
8485 (uniscribe_otf_capability): Adjusted for the change of struct font.
8486 (add_opentype_font_name_to_list): Don't downcase names.
8487 (uniscribe_font_driver): Adjusted for the change of struct
8488 font_driver.
8489
84902008-05-13 Chong Yidong <cyd@stupidchicken.com>
8491
8492 * dispnew.c (update_frame_1): Check if tty output is still valid
8493 before flushing it.
8494
84952008-05-13 Jan Djärv <jan.h.d@swipnet.se>
8496
8497 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
8498 to Gtk+ menus.
8499
85002008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
8501
8502 * dired.c (file_name_completion): Tweak the code so as to always do it
8503 in a single pass. Tighten the scope of some variables.
8504
8505 * dired.c (Qdefault_directory): New var.
8506 (file_name_completion): Use it instead of Fexpand_file_name.
8507 (syms_of_dired): Initialize it.
8508
85092008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
8510
8511 * fileio.c (double_dollars): Remove dead code.
8512
85132008-05-10 Eli Zaretskii <eliz@gnu.org>
8514
8515 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
8516 Mention w32-get-true-file-attributes in doc string.
8517
8518 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
8519
85202008-05-09 Glenn Morris <rgm@gnu.org>
8521
8522 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
8523 2008-04-23.
8524
85252008-05-09 Eli Zaretskii <eliz@gnu.org>
8526
8527 Support for reporting owner and group of each file on MS-Windows:
8528 * dired.c (stat_uname, stat_gname): New functions, with special
8529 implementation for w32.
8530 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
8531
8532 * w32.c: Rename the_passwd_* to dflt_passwd_*.
8533 (dflt_group_name): New static variable.
8534 (dflt_group): Rename from the_group.
8535 (init_user_info): Init dflt_group fields. Get user's group name
8536 from LookupAccountSid.
8537 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
8538 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
8539 New initialization states.
8540 (globals_of_w32): Initialize them to zero. Initialize the default
8541 group name to "None".
8542 (GetFileSecurity_Name): New global var, the name of the function
8543 to call for GetFileSecurity.
8544 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
8545 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
8546 (get_file_security, get_security_descriptor_owner)
8547 (get_security_descriptor_group, is_valid_sid)
8548 (get_file_security_desc, get_rid, get_name_and_id)
8549 (get_file_owner_and_group): New functions.
8550 (stat): Use get_file_security_desc and get_file_owner_and_group to
8551 report the owner and primary group of each file. Don't ignore the
8552 high 32 bits of file's size, now that st_size is 64-bit wide.
8553 Fix test when to get true file attributes.
8554 (init_user_info): Use get_rid instead of equivalent inline code.
8555 (fstat): Don't ignore the high 32 bits of file's size.
8556
85572008-05-09 Chong Yidong <cyd@stupidchicken.com>
8558
8559 * image.c (png_load): Use correct bit-depth for setting background
8560 color.
8561
85622008-05-08 Eli Zaretskii <eliz@gnu.org>
8563
8564 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
8565 epa-hook.elc.
8566
85672008-05-08 Juanma Barranquero <lekktu@gmail.com>
8568
8569 * font.c (Ffont_match_p): Don't use `iff' in docstring.
8570
85712008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
8572
8573 * macfns.c (Fx_create_frame): Make a copy of frame parameters
8574 because the original parameters are in pure storage now.
8575 (mac_window): Remove unused params. Update callers.
8576
85772008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
8578
8579 * lread.c (substitute_object_recurse): Use lower-level primitives.
8580 Don't signal errors when traversing sub-char-tables.
8581 Don't loop over all the possible characters when traversing char-tables.
8582
8583 * print.c (print_preprocess): Add sub-char-tables to the print-table,
8584 just like we do in print.c.
8585
85862008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
8587
8588 * minibuf.c (Ftry_completion): Remove code left over from when we used
8589 scmp instead of Fcompare_strings.
8590
85912008-05-04 Juanma Barranquero <lekktu@gmail.com>
8592
8593 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
8594
85952008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8596
8597 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
8598 Create bitmap context in native byte order.
8599
8600 * macterm.c (XDrawLine)
8601 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
8602 context in native byte order.
8603
86042008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8605
8606 * config.in: Regenerate.
8607
8608 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
8609 New definitions for Image I/O support.
8610 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8611 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
8612 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
8613 (mac_data_provider_release_data, image_load_image_io)
8614 [USE_MAC_IMAGE_IO]: New functions.
8615 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
8616 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
8617 (init_image_func_pointer) [MAC_OSX]: Remove function.
8618 (image_load_quartz2d) [MAC_OSX]: Check availability of
8619 CGImageCreateWithPNGDataProvider at compile time.
8620 Use lowercase `false' for boolean constant.
8621 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
8622 Use image_load_image_io.
8623 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
8624 Don't check MyCGImageCreateWithPNGDataProvider.
8625 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
8626 Don't call init_image_func_pointer.
8627
8628 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
8629
8630 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
8631 Make variable non-static.
8632 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
8633 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
8634
8635 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
8636 (RED_FROM_ULONG): Mask off higher bits.
8637 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
8638
8639 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
8640 Include AvailabilityMacros.h.
8641 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
8642 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
8643
86442008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
8645
8646 * chartab.c (Fset_char_table_range): If range is t, really set all
8647 chars to that value.
8648
86492008-05-03 Eli Zaretskii <eliz@gnu.org>
8650
8651 * dired.c (Ffile_attributes): Don't allow the device number become
8652 negative.
8653
86542008-05-02 Daiki Ueno <ueno@unixuser.org>
8655
8656 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
8657
86582008-05-02 Juri Linkov <juri@jurta.org>
8659
8660 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
8661 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
8662 DEFAULT argument as a list of default values in docstrings.
8663
86642008-05-01 Chong Yidong <cyd@stupidchicken.com>
8665
8666 * puresize.h (BASE_PURESIZE): Increase to 1210000.
8667
86682008-05-01 Martin Rudalics <rudalics@gmx.at>
8669
8670 * dispnew.c (change_frame_size_1): Preserve small windows when
8671 shrinking frames by calling set_window_height|width with third
8672 arg 2.
8673
8674 * window.h (struct window): Replace field too_small_ok by field
8675 resize_proportionally.
8676
8677 * window.c (make_window): Initialize resize_proportionally.
8678 (enlarge_window): Temporarily set resize_proportionally to make
8679 sure that shrink_windows does scale the window proportionally.
8680 (shrink_windows): When window has resize_proportionally set try
8681 to shrink it proportionally by stealing from other windows.
8682 (struct saved_window, Fset_window_configuration)
8683 (compare_window_configurations): Handle resize_proportionally.
8684 (WINDOW_TOTAL_SIZE): New macro.
8685 (window_min_size, shrink_windows, size_window): Use it.
8686 (check_min_window_sizes): Remove. Invalid values of
8687 window-min-height|width are handled by window_min_size_2 now.
8688 (size_window, Fsplit_window, enlarge_window)
8689 (adjust_window_trailing_edge, grow_mini_window): Don't call
8690 check_min_window_sizes.
8691 (window_min_size_2, window_min_size_1, window_min_size):
8692 New argument safe_p for retrieving "safe" minimum sizes.
8693 (Fdisplay_buffer, Fsplit_window, enlarge_window)
8694 (adjust_window_trailing_edge, grow_mini_window):
8695 Adjust arguments of window_min_size... functions.
8696 (shrink_windows): Argument min_size removed. New argument
8697 safe_p allows shrinking windows to their safe minimum sizes.
8698 Calculate minimum size and decide whether a window shall be
8699 deleted for each window individually.
8700 (size_window): When nodelete_p equals 2, tell shrink_windows to
8701 delete windows only if their new minimum size is no more safe.
8702 (shrink_window_lowest_first): Call window_min_size_1 to make
8703 sure to preserve modeline of bottom-most window when resizing
8704 the minibuffer.
8705 (Fset_window_configuration, Fcurrent_window_configuration)
8706 (compare_window_configurations): Do not handle
8707 window-min-height|width any more.
8708 (syms_of_window): Clarify window-min-height|width doc-strings.
8709
87102008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
8711
8712 * dired.c (file_name_completion): Fix up the encoding/decoding issue
8713 some more. Copy some of the code from Ftry_completions.
8714 Remove special case code that dates back to initial revision when the
8715 slash was only added when necessary and that can't trigger nowadays.
8716
87172008-04-27 Kenichi Handa <handa@m17n.org>
8718
8719 * font.c (font_prop_validate): Signal `error' instead of `font'.
8720
87212008-04-29 Jason Rumney <jasonr@gnu.org>
8722
8723 * w32fns.c (Fw32_battery_status): New defun.
8724 (syms_of_w32fns): Defsubr it.
8725
87262008-04-28 Andreas Schwab <schwab@suse.de>
8727
8728 * dired.c (file_name_completion): Fix another mixing of encoded
8729 and decoded names.
8730
87312008-04-28 Juanma Barranquero <lekktu@gmail.com>
8732
8733 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
8734
87352008-04-27 Juanma Barranquero <lekktu@gmail.com>
8736
8737 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
8738
87392008-04-27 Andreas Schwab <schwab@suse.de>
8740
8741 * dired.c (file_name_completion): Fix inappropriate mixing of
8742 encoded and decoded names.
8743
8744 * xterm.c (XTread_socket): Fix use of uninitialized variable.
8745
8746 * puresize.h (BASE_PURESIZE): Increase to 1200000.
8747
87482008-04-26 Eli Zaretskii <eliz@gnu.org>
8749
8750 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
8751 2008-03-31, it's not needed anymore with `struct stat' definition
8752 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
8753 for the same reasons.
8754
87552008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
8756
8757 * m/sparc.h: Additional redefinitions for GNU/Linux.
8758
87592008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8760
8761 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
8762 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
8763 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
8764 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
8765 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
8766 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
8767 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
8768 Likewise.
8769
8770 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
8771 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
8772 (mac_ax_number_of_characters): Add externs.
8773 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
8774 [USE_MAC_TSM]: Likewise.
8775 (mac_handle_text_input_event) [MAC_OSX]:
8776 Handle kEventTextInputOffsetToPos for no active input area case.
8777 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
8778 (mac_handle_document_access_event)
8779 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
8780 (install_application_handler) [MAC_OSX]: Register handlers for
8781 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
8782 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
8783 Register mac_handle_document_access_event.
8784
8785 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
8786 Make functions non-static.
8787
87882008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
8789
8790 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
8791 (read_file_name_completion_ignore_case, insert_default_directory)
8792 (Qdefault_directory): Move to minibuffer.el.
8793 (Fread_file_name): Call the new `read-file-name' instead.
8794
87952008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8796
8797 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
8798 Make function non-static.
8799 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
8800 Remove function.
8801 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
8802 Move to mactoolbox.c.
8803 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
8804
8805 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
8806 (mac_rect_make): New macro.
8807
8808 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
8809 instead of float.
8810 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
8811 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
8812 (XSetBackground) [USE_CG_DRAWING]: Likewise.
8813 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
8814 CGRectMake.
8815 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
8816 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
8817 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
8818 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
8819 instead of WindowRef in argument type.
8820 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
8821 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
8822 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
8823 instead of DISPLAY. All uses changed.
8824 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
8825 (x_calc_absolute_position): Simplify so as not to use
8826 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
8827
8828 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
8829 instead of WindowRef in argument type.
8830 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
8831 [TARGET_API_MAC_CARBON]: Remove externs.
8832 (create_apple_event, mac_event_parameters_to_lisp)
8833 [TARGET_API_MAC_CARBON]: Add externs.
8834
8835 * mactoolbox.c (Vmac_ts_script_language_on_focus)
8836 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
8837 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
8838 is clicked.
8839 (x_activate_menubar): Remove extern for saved_menu_event_location.
8840 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
8841 Move from mac.c.
8842
88432008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8844
8845 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
8846 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
8847
88482008-04-23 Jason Rumney <jasonr@gnu.org>
8849
8850 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
8851 attributes only for local files.
8852
8853 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
8854 default to Qlocal.
8855
88562008-04-22 Juri Linkov <juri@jurta.org>
8857
8858 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
8859 read-buffer-to-switch instead of using the letter "B".
8860
88612008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
8862
8863 * fileio.c (Qdefault_directory): New variable.
8864 (Fread_file_name): Use it to pass `dir' to the completion functions.
8865
88662008-04-20 Chong Yidong <cyd@stupidchicken.com>
8867
8868 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
8869
88702008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
8871
8872 * keyboard.c (Vpre_help_message): Remove.
8873 (show_help_echo): Remove default C code.
8874
8875 * dired.c (directory_files_internal, file_name_completion):
8876 Only call ENCODE_FILE if the string is indeed decoded.
8877
88782008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
8879
8880 * Makefile.in (TOOLKIT_DEFINES): Remove.
8881 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
8882
88832008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8884
8885 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
8886 (mactoolbox.o): New target.
8887
8888 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
8889 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
8890
8891 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
8892 Use mac_set_frame_window_background instead of XSetWindowBackground.
8893 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
8894 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
8895 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
8896 instead of SetWindowTitleWithCFString.
8897 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
8898 Move function to mactoolbox.c.
8899 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
8900 Use mac_set_window_modified instead of SetWindowModified.
8901 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
8902 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
8903 (Fx_focus_frame): Use mac_front_non_floating_window instead of
8904 FrontNonFloatingWindow. Use mac_activate_window instead of
8905 ActivateWindow. Use mac_active_non_floating_window instead of
8906 ActiveNonFloatingWindow.
8907 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
8908 Use mac_show_hourglass and mac_hide_hourglass.
8909 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
8910 instead of GetGlobalMouse.
8911 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
8912 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
8913 Use mac_bring_window_to_front instead of BringToFront.
8914 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
8915 mactoolbox.c.
8916 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
8917 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
8918 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
8919 mactoolbox.c.
8920
8921 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
8922 (XtPointer): Move typedef from macmenu.c.
8923 (enum button_type): Move enum from macmenu.c.
8924 (widget_value): Move typedef from macmenu.c.
8925 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
8926 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
8927 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
8928 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
8929 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
8930 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
8931 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
8932 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
8933 (Selection): Move typedef from macselect.c.
8934 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
8935 macterm.c.
8936 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
8937 (mac_is_window_collapsed, mac_bring_window_to_front)
8938 (mac_send_window_behind, mac_hide_window, mac_show_window)
8939 (mac_collapse_window, mac_front_non_floating_window)
8940 (mac_active_non_floating_window, mac_activate_window)
8941 (mac_move_window_structure, mac_move_window, mac_size_window)
8942 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
8943
8944 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
8945 (enum mac_menu_kind): Move enum to mactoolbox.c.
8946 (min_menu_id): Move variable to mactoolbox.c.
8947 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
8948 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
8949 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
8950 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
8951 [TARGET_API_MAC_CARBON]: Likewise.
8952 (XtPointer): Move typedef to macgui.h.
8953 (enum button_type): Move enum to macgui.h.
8954 (widget_value): Move typedef to macgui.h.
8955 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
8956 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
8957 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
8958 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
8959 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
8960 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
8961 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
8962 (popup_activated_flag): Make variable non-static.
8963 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
8964 (add_menu_item, fill_menu, dispose_menus):
8965 Move functions to mactoolbox.c.
8966 (restore_show_help_function, menu_target_item_handler)
8967 (install_menu_target_item_handler, mac_handle_dialog_event)
8968 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
8969 [TARGET_API_MAC_CARBON]: Likewise.
8970 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
8971 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
8972 (find_and_call_menu_selection, name_is_separator): Make function
8973 non-static.
8974 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
8975 to mactoolbox.c.
8976 (set_frame_menubar): Don't call install_menu_quit_handler.
8977 (menu_item_selection): New variable.
8978 (mac_menu_show): Use create_and_show_popup_menu.
8979 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
8980 selection but set variable menu_item_selection. All uses changed.
8981 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
8982 Call install_menu_quit_handler. Move to mactoolbox.c.
8983
8984 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
8985 (Selection): Move typedef to macgui.h.
8986 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
8987 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
8988 Make variables non-static.
8989 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
8990 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
8991 Make functions non-static.
8992 (Vmac_service_selection) [MAC_OSX]: Likewise.
8993 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
8994 (mac_valid_selection_target_p, mac_clear_selection)
8995 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
8996 (mac_put_selection_value, mac_selection_has_target_p)
8997 (mac_get_selection_value, mac_get_selection_target_list)
8998 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
8999 Move functions to mactoolbox.c.
9000 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
9001 Likewise.
9002 (copy_scrap_flavor_data, mac_handle_service_event)
9003 (install_service_handler) [MAC_OSX]: Likewise.
9004 (syms_of_macselect) <Vmac_dnd_known_types>:
9005 Use mac_dnd_default_known_types.
9006
9007 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
9008 Move to mactoolbox.c.
9009 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
9010 (Fx_selection_owner_p): Add EXFUN.
9011 (install_window_handler, remove_window_handler, XSetWindowBackground):
9012 Remove externs.
9013 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
9014 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
9015 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
9016 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
9017 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
9018 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
9019 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
9020 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
9021 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
9022 (create_and_show_popup_menu, mac_get_selection_from_symbol)
9023 (mac_valid_selection_target_p, mac_clear_selection)
9024 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9025 (mac_put_selection_value, mac_selection_has_target_p)
9026 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
9027 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
9028 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
9029 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9030 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
9031 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9032 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
9033 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9034 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9035
9036 * mactoolbox.c: New file.
9037
90382008-04-18 Jason Rumney <jasonr@gnu.org>
9039
9040 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
9041
90422008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9043
9044 * character.c (Fmultibyte_char_to_unibyte):
9045 Return latin1 chars unchanged.
9046
9047 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
9048 relocated if it points to `name'.
9049
90502008-04-17 Kenichi Handa <handa@m17n.org>
9051
9052 * data.c (Faset): Allow setting a multibyte character in an
9053 ASCII-only unibyte string.
9054
9055 * lisp.h (STRING_SET_MULTIBYTE): New macro.
9056
90572008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
9058
9059 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
9060 done in config.h.
9061
90622008-04-16 Juanma Barranquero <lekktu@gmail.com>
9063
9064 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
9065 (Fchar_direction): Add usage in the docstring.
9066
90672008-04-15 Chong Yidong <cyd@stupidchicken.com>
9068
9069 * keyboard.c (read_key_sequence): Remove always-true checks.
9070
90712008-04-14 Jason Rumney <jasonr@gnu.org>
9072
9073 * w32font.c (w32font_open_internal): Set max_bounds.descent in
9074 compatibility struct, for better underline positioning.
9075
90762008-04-13 David Hansen <david.hansen@gmx.net>
9077
9078 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
9079 string.
9080
90812008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
9082
9083 * m/hp800.h (XUINT, XSET): Remove.
9084
90852008-04-12 Juanma Barranquero <lekktu@gmail.com>
9086
9087 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
9088 previous change.
9089
90902008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
9091
9092 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
9093 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
9094
90952008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9096
9097 * keymap.h (map_keymap_canonical): Declare.
9098 * xmenu.c (single_keymap_panes): Use it.
9099
91002008-04-11 Glenn Morris <rgm@gnu.org>
9101
9102 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
9103 set the target's value to that of the alias.
9104
91052008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9106
9107 * term.c (set_tty_color_mode): Left over typo.
9108
91092008-04-10 Michael Albinus <michael.albinus@gmx.de>
9110
9111 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
9112 only after check for file name handler functions. Signal, when
9113 native functionality is not supported.
9114 (syms_of_fileio): Declare it unconditionally.
9115
91162008-04-10 Jason Rumney <jasonr@gnu.org>
9117
9118 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
9119 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
9120
9121 * w32.c (logon_network_drive): Also logon to remote drives that
9122 are mapped to drive letters.
9123
91242008-04-10 Glenn Morris <rgm@gnu.org>
9125
9126 * xdisp.c (truncate-partial-width-windows): Doc fix.
9127
91282008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
9129
9130 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
9131 Move functions to minibuffer.el.
9132 (syms_of_fileio): Don't declare them.
9133
91342008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9135
9136 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
9137 (syms_of_minibuf): Remove its initialization.
9138
9139 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
9140
91412008-04-09 Juanma Barranquero <lekktu@gmail.com>
9142
9143 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
9144
91452008-04-09 Jason Rumney <jasonr@gnu.org>
9146
9147 * makefile.w32-in (distclean): Delete makefile too.
9148 (maintainer-clean): New target.
9149
9150 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
9151
9152 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
9153 for new font backend and composite cases.
9154
91552008-04-09 Jan Djärv <jan.h.d@swipnet.se>
9156
9157 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
9158 Most of the code moved to run_timers.
9159 (do_pending_atimers): Call run_timers.
9160 (run_timers): New function.
9161
9162 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
9163 run atimers.
9164
9165 * process.c (wait_reading_process_output): The same as above.
9166
91672008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9168
9169 * minibuf.c (last_exact_completion): Remove variable.
9170 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
9171 (complete_and_exit_1, complete_and_exit_2)
9172 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
9173 (Fdisplay_completion_list, display_completion_list_1)
9174 (Fminibuffer_completion_help, Fself_insert_and_exit)
9175 (Fexit_minibuffer, Fminibuffer_message): Move functions to
9176 minibuffer.el.
9177 (syms_of_minibuf): Remove corresponding initializations.
9178
9179 * keyboard.c (Qdeactivate_mark): New var.
9180 (command_loop_1): Use it to call `deactivate-mark'.
9181 (syms_of_keyboard): Initialize it.
9182
9183 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
9184 to another frame.
9185 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
9186 Don't call set_tty_color_mode.
9187 (store_frame_param): Reset previous_frame rather than call
9188 set_tty_color_mode.
9189 * term.c (set_tty_color_mode): Rewrite.
9190 * dispextern.h (set_tty_color_mode): New type.
9191 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
9192
91932008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
9194
9195 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
9196 for generic chars, which do not exist any more in emacs-unicode.
9197
91982008-04-08 Michael Albinus <michael.albinus@gmx.de>
9199
9200 * coding.c (detect_coding_emacs_mule)
9201 (Ffind_operation_coding_system): Fix typo.
9202
92032008-04-08 Jason Rumney <jasonr@gnu.org>
9204
9205 * w32uniscribe.c (SNAME): Extract only symbol name.
9206
9207 * w32font.h (struct w32_metric_cache): New struct.
9208 (w32font_info): Use it.
9209 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
9210 (CACHE_BLOCKSIZE): New constants.
9211
9212 * w32font.c (Qja, Qko, Qzh): New symbols.
9213 (syms_of_w32font): Initialise them.
9214 (font_matches_spec): Use them to filter by language.
9215 (recompute_cached_metrics): Remove function.
9216 (compute_metrics, clear_cached_metrics): New functions.
9217 (w32font_encode_char): Use them to manage metric cache.
9218 (w32font_text_extents): Cache metrics for all glyphs on demand.
9219 Delay converting glyph indices to WORD until needed.
9220 (w32font_open_internal): Initialize metric cache to empty.
9221 (registry_to_w32_charset): Charset should always be a symbol.
9222 (fill_in_logfont, list_all_matching_fonts): Family should
9223 always be a symbol.
9224
92252008-04-06 Jason Rumney <jasonr@gnu.org>
9226
9227 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
9228 Give up if glyph indices not supported. Use uniscribe obtained
9229 ABC widths for individual metrics. Map glyph clusters back to
9230 characters using fClusterStart flag. Return number of glyphs
9231 produced, not chars processed.
9232 (uniscribe_shape): Map char at FROM to current glyph.
9233
92342008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9235
9236 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
9237 Use SetMenuItemHierarchicalMenu.
9238
92392008-04-05 Jason Rumney <jasonr@gnu.org>
9240
9241 * image.c (pbm_load): Allow color values up to 65535.
9242 Throw an error if max_color_idx is outside the supported range.
9243 Report an error when image size is invalid.
9244 Read two bytes at a time when raw images have max_color_idx above 255.
9245
92462008-04-05 Eli Zaretskii <eliz@gnu.org>
9247
9248 * w32.c (readdir): If FindFirstFile/FindNextFile return in
9249 cFileName a file name that includes `?' characters, use the 8+3
9250 alias in cAlternateFileName instead.
9251
92522008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
9253
9254 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
9255 append "CCL: Quitted" when the CCL program is quitted.
9256 (setup_ccl_program): Initialize ccl->quit_silently to zero.
9257
9258 * ccl.h (struct ccl_program): New member quit_silently.
9259
92602008-04-05 Chong Yidong <cyd@stupidchicken.com>
9261
9262 * search.c (compile_pattern_1): Treat non-nil and non-string of
9263 search-spaces-regexp as nil.
9264
9265 * minibuf.c (Fassoc_string): Tweak docstring.
9266
92672008-04-05 Eli Zaretskii <eliz@gnu.org>
9268
9269 * dired.c (Ffile_attributes): Support inode numbers wider than 32
9270 bits. Remove ugly WINDOWSNT-specific kludge introduced on
9271 2008-03-14 to force inode be positive.
9272
9273 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
9274 _S_* ones, since we now use our own sys/stat.h.
9275 (stat, fstat): Don't mangle the inode number.
9276 (init_user_info): Don't restrict UID and GID to 0-60000 range.
9277
92782008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
9279
9280 * frame.h (struct frame): Give one more bit to `visible' since we use
9281 values larger than 1 to indicate obscured frames on ttys.
9282
9283 * keymap.c (Qkeymap_canonicalize): New var.
9284 (Fmap_keymap_internal): New fun.
9285 (describe_map): Use keymap-canonicalize.
9286
9287 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
9288 (Fundo_boundary): Set them.
9289 (syms_of_undo): Initialize them.
9290 (record_point): Use them instead of last_point_position*.
9291 (last_undo_buffer): Change type.
9292
92932008-04-04 Jason Rumney <jasonr@gnu.org>
9294
9295 * w32font.c (w32font_text_extents): Use font's ascent and descent.
9296 (recompute_cached_metrics): Don't set ascent and descent per char.
9297
9298 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
9299 (uniscribe_check_otf): Add GC protection before consing.
9300 Rearrange loop for counting features.
9301
93022008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
9303
9304 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
9305 buffer with byte-size of source buffer.
9306
93072008-04-03 Chong Yidong <cyd@stupidchicken.com>
9308
9309 * callint.c (Fcall_interactively): Handle temporary region even
9310 when shift-select-mode is off.
9311
93122008-04-03 Jason Rumney <jasonr@gnu.org>
9313
9314 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
9315
93162008-04-03 Kenichi Handa <handa@m17n.org>
9317
9318 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
9319 (CATEGORY_MASK_UTF_16): Likewise.
9320 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
9321 binary file.
9322 (detect_coding): Add null-byte detection for a binary file.
9323 (detect_coding_system): Likewise.
9324
93252008-04-03 Jason Rumney <jasonr@gnu.org>
9326
9327 * w32uniscribe.c: New file.
9328
9329 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
9330
9331 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
9332
9333 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
9334 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
9335 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
9336 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
9337 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
9338 (Qphonetic): New symbols.
9339 (syms_of_w32font): Initialize them.
9340 (font_supported_scripts): Use them.
9341 (w32font_list_family): List all charsets.
9342 (w32font_text_extents, recompute_cached_metrics): Fix metric
9343 calculations.
9344 (w32_enumfont_pattern_entity): Make full_type a DWORD.
9345 Give opentype fonts their own format.
9346 (font_matches_spec): New arguments backend and logfont.
9347 Handle :otf spec for uniscribe backend.
9348 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
9349 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
9350
9351 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
9352 font backend.
9353 (globals_of_w32fns): Initialize uniscribe font backend.
9354
9355 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
9356 dependencies.
9357 (w32uniscribe.$(O)): New file to build.
9358 (FONT_OBJ): Include w32uniscribe.$(O).
9359 (LIBS): Add uniscribe libraries.
9360
9361 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
9362
93632008-04-02 Chong Yidong <cyd@stupidchicken.com>
9364
9365 * callint.c (Vshift_select_mode): New var.
9366 (Finteractive): Document new ^ spec.
9367 (Fcall_interactively): Call handle-shift-selection if the ^ spec
9368 is present.
9369
9370 * keyboard.c (Vthis_command_keys_shift_translated): New var.
9371 (command_loop_1): Avoid running the direct display versions of
9372 forward-char and backward-char if shift-selection may occur.
9373 (read_key_sequence): Set Vthis_command_keys_shift_translated if
9374 shift-translation takes place.
9375
9376 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
9377 avoid clobbering by define-minor-mode.
9378
9379 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
9380 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
9381
9382 * syntax.c (Fforward_word): Add ^ interactive spec.
9383
9384 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
9385 (Fscroll_right): Add ^ interactive spec.
9386
93872008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
9388
9389 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
9390
9391 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
9392
9393 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
9394
93952008-03-31 Juri Linkov <juri@jurta.org>
9396
9397 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
9398
93992008-03-30 Jan Djärv <jan.h.d@swipnet.se>
9400
9401 * gtkutil.c (xg_set_geometry): Fix indentation.
9402 (xg_resize_outer_widget): Remove.
9403 (x_wm_size_hint_off): Fix indentation.
9404 (xg_frame_set_char_size): Call flush_and_sync after
9405 gtk_window_resize.
9406 (x_wm_set_size_hint): Pass NULL as geometry window to
9407 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
9408 Add menu bar and tool bar height to base height.
9409 (xg_update_frame_menubar, free_frame_menubar)
9410 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
9411 (update_frame_tool_bar, free_frame_tool_bar):
9412 Change xg_resize_outer_widget to xg_frame_set_char_size.
9413
94142008-03-30 Michael Albinus <michael.albinus@gmx.de>
9415
9416 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
9417 (Fdbus_call_method): New parameter TIMEOUT.
9418 (dbus-send-signal): Optimize UNGCPRO call.
9419
94202008-03-29 Juri Linkov <juri@jurta.org>
9421
9422 * window.c (Fdisplay_buffer): Move call to
9423 Vsplit_window_preferred_function out of conditions that check
9424 if window is eligible for vertical splitting.
9425 When Vsplit_window_preferred_function is non-nil, call it and use
9426 its non-nil return value as window. Otherwise, continue doing
9427 vertical splitting using Fsplit_window with arg horflag=nil.
9428 (syms_of_window) <Vsplit_window_preferred_function>: Change the
9429 default value from `split-window' to nil.
9430
94312008-03-29 Juri Linkov <juri@jurta.org>
9432
9433 * callint.c (Fcall_interactively): Revert 2008-03-16 change
9434 for interactive code letters 'b' and 'B'.
9435
94362008-03-29 Eli Zaretskii <eliz@gnu.org>
9437
9438 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
9439 multibyte string.
9440
94412008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
9442
9443 * keyboard.c (pending_funcalls): New var.
9444 (timer_check): Run it.
9445 (syms_of_keyboard): Initialize it.
9446 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
9447 (Vdelete_terminal_functions): New vars.
9448 (syms_of_terminal): Initialize them.
9449 (Fdelete_terminal): Run delete-terminal-functions.
9450 * xdisp.c (safe_eval): Rewrite.
9451 (safe_call2): New fun.
9452 * frame.c (Qdelete_frame_functions): New var.
9453 (syms_of_frame): Initialize it.
9454 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
9455 * lisp.h (safe_call2, pending_funcalls): Declare.
9456
94572008-03-28 Andreas Schwab <schwab@suse.de>
9458
9459 * indent.c (Fmove_to_column): Move declaration before statements.
9460
94612008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
9462
9463 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
9464 (struct frame): Use bit fields for boolean vars.
9465
9466 * process.c (server_accept_connection): Simplify naming.
9467 (emacs_get_tty_pgrp): Use SDATA.
9468
9469 * coding.c (decode_coding_object): Fix last change.
9470
94712008-03-27 Jason Rumney <jasonr@gnu.org>
9472
9473 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
9474
94752008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
9476
9477 * charset.c (Fdefine_charset_internal): Change the way of
9478 registering charsets in Vcharset_order_list.
9479 (syms_of_charset): Make the charset `eight-bit' supplementary.
9480
94812008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
9482
9483 * regex.c (EXTEND_BUFFER): Change order of pointer addition
9484 operations, to avoid having the difference between pointers
9485 overflow.
9486
94872008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
9488
9489 * indent.c (check_display_width): New fun.
9490 (scan_for_column): Use it.
9491
9492 * data.c (syms_of_data): Mark most-positive-fixnum and
9493 most-negative-fixnum as constants.
9494
9495 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
9496
9497 * indent.c (scan_for_column): Extract from current_column_1.
9498 Merge with the same code from Fmove_to_column.
9499 (current_column_1, Fmove_to_column): Use it.
9500
95012008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
9502
9503 * keymap.c (map_keymap_internal): New fun.
9504 (map_keymap): Use it.
9505 (Fmap_keymap_internal): New fun.
9506 (Fmap_keymap): Remove left-out test from before make_save_value.
9507
9508 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
9509
9510 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
9511 Use XCAR/XCDR.
9512
9513 * process.h (struct Lisp_Process): Remove filter_multibyte.
9514 * process.c (QCfilter_multibyte): Remove.
9515 (setup_process_coding_systems): Don't use filter_multibyte.
9516 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
9517 (read_process_output): Don't adjust multibyteness to filter_multibyte.
9518 (Fset_process_filter_multibyte): Change the coding-system to
9519 approximate the previous behavior.
9520 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
9521 coding-system.
9522
9523 * coding.c (decode_coding_object): When not decoding into a buffer,
9524 obey the coding system's preference of (uni|multi)byte.
9525
95262008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
9527
9528 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
9529 every char is changed and has a different byte-length.
9530 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
9531 Fix int -> EMACS_INT.
9532
95332008-03-23 David Hansen <david.hansen@gmx.net>
9534
9535 * dbusbind.c (xd_read_message): Remove extra copying of message
9536 strings. Check for NULL `interface' or `member'.
9537
95382008-03-22 Eli Zaretskii <eliz@gnu.org>
9539
9540 * w32.c (readdir): If FindFirstFile/FindNextFile return in
9541 cFileName a file name that includes `?' characters, use the 8+3
9542 alias in cAlternateFileName instead.
9543
95442008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
9545
9546 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
9547
95482008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
9549
9550 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
9551 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
9552 work on current_buffer only instead (that was already the case
9553 for some of the code anyway).
9554 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
9555 (temp_set_point, temp_set_point_both): Use EMACS_INT.
9556 (SET_PT, SET_PT_BOTH): Adjust.
9557 * intervals.h (set_point, temp_set_point, set_point_both)
9558 (temp_set_point_both): Remove redundant declarations.
9559
95602008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
9561
9562 * fileio.c (Finsert_file_contents):
9563 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
9564 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
9565 when buffer != current_buffer anyway.
9566
95672008-03-20 Andreas Schwab <schwab@suse.de>
9568
9569 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
9570 as default.
9571
95722008-03-19 Jason Rumney <jasonr@gnu.org>
9573
9574 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
9575 (syms_of_w32fns): Initialize them.
9576 (HOURGLASS_ID): New constant.
9577 (x_window_to_frame): Don't check hourglass_window.
9578 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
9579 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
9580 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
9581 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
9582 Only change the cursor if hourglass is not active.
9583 (Fx_create_frame): Initialize frame's current_cursor.
9584 (hourglass_atimer): Remove.
9585 (hourglass_started): New function.
9586 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
9587 (show_hourglass): Adapt to w32, changing argument to frame.
9588
9589 * w32term.h (struct w32_output): Remove hourglass_window.
9590 Add current_cursor.
9591
9592 * eval.c (call_debugger, Fsignal):
9593 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
9594 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
9595 (Fexecute_extended_command, cancel_hourglass_unwind):
9596 * minibuf.c (read_minibuf):
9597 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
9598
95992008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
9600
9601 * window.c (run_funs): New fun.
9602 (run_window_configuration_change_hook): Use it to run the buffer-local
9603 and the global part of the hook.
9604
9605 * xdisp.c (format_mode_line_unwind_data): Add window argument.
9606 (unwind_format_mode_line): Restore selected window.
9607 (x_consider_frame_title, Fformat_mode_line): Set selected window.
9608
96092008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
9610
9611 * editfns.c (Fchar_equal): Check they are valid characters.
9612
9613 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
9614
96152008-03-17 Andreas Schwab <schwab@suse.de>
9616
9617 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
9618 against a charset.
9619
9620 * lisp.h (Fbuffer_list): Declare.
9621
96222008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 9623
aac0c6e3
MR
9624 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
9625 handlebox_widget is != 0.
9626
96272008-03-16 Juri Linkov <juri@jurta.org>
9628
9629 * callint.c (Fcall_interactively): For interactive code letters
9630 'b' and 'B' put the buffer list into the list of default "future"
9631 values of the minibuffer.
9632
96332008-03-16 Andreas Schwab <schwab@suse.de>
9634
9635 * keyboard.c (read_key_sequence): Fix downcasing of letters with
9636 modifiers.
9637
9638 * regex.c (re_match_2_internal): Correct matching of a charset
9639 against latin-1 characters.
9640
96412008-03-16 Kenichi Handa <handa@m17n.org>
9642
9643 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
9644 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
9645 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
9646 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
9647 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
9648 CHAR_STRING_ADVANCE.
9649 (produce_chars): Fix for the case that the source and the
9650 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
9651 instead of CHAR_STRING_ADVANCE.
9652 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
9653 STRING_CHAR_ADVANCE.
9654
96552008-03-15 Andreas Schwab <schwab@suse.de>
9656
9657 * regex.c (re_match_2_internal): Correct matching of eight bit
9658 characters in unibyte strings.
9659
96602008-03-15 Martin Rudalics <rudalics@gmx.at>
9661
9662 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
9663 at end of range when it coincides with the end of the buffer.
9664
96652008-03-14 Eli Zaretskii <eliz@gnu.org>
9666
9667 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
9668
9669 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
9670
96712008-03-14 Jason Rumney <jasonr@gnu.org>
9672
9673 * editfns.c (initial_tz): New variable.
9674 (syms_of_editfns): Initialize it.
9675 (Fset_time_zone_rule): Set it when first called.
9676 Use it when TZSTRING is nil.
9677
9678 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
9679 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
9680 (monitor_from_point_fn, get_monitor_info_fn): New globals.
9681 (globals_of_w32fns): Initialize them.
9682 (compute_tip_xy): Use them to position tooltips.
9683
96842008-03-14 Glenn Morris <rgm@gnu.org>
9685
9686 * emacs.c (main): Revert previous change.
9687 (standard_args): Revert -internal-script back to -scriptload,
9688 and remove the long-option form.
9689
96902008-03-13 Glenn Morris <rgm@gnu.org>
9691
9692 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
9693 Remove option -enable-font-backend.
9694
96952008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
9696
9697 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
9698
96992008-03-11 Jan Djärv <jan.h.d@swipnet.se>
9700
9701 * xterm.c (x_connection_closed): For GTK: If this is the last
9702 terminal just exit without closing the display.
9703
97042008-03-11 Jason Rumney <jasonr@gnu.org>
9705
9706 * w32font.c (w32font_full_name): Use floor to round.
9707
f0131492 97082008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
9709
9710 * sound.c (alsa_configure): Declare vol at beginning of block.
9711
9712 * fontset.c (Ffontset_info): Remove extra semicolon.
9713
97142008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
9715
9716 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
9717 size of resulting string.
9718
97192008-03-10 Jason Rumney <jasonr@gnu.org>
9720
9721 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
9722
97232008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9724
9725 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
9726 Don't pretend as if characters with display property haven't been
9727 consumed for string-replacing-string case.
9728
97292008-03-08 Kim F. Storm <storm@cua.dk>
9730
9731 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
9732 (get_next_display_element, next_element_from_string)
9733 (next_element_from_ellipsis, next_element_from_buffer): Use it.
9734
97352008-03-08 Andreas Schwab <schwab@suse.de>
9736
9737 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
9738
97392008-03-06 Jason Rumney <jasonr@gnu.org>
9740
9741 * w32font.c (w32_registry): Take font_type argument. Use ANSI
9742 when charset not specified. Only translate ANSI to unicode when
9743 font_type is truetype.
9744 (w32font_coverage_ok): New function.
9745 (add_font_entity_to_list): Use it to filter unsuitable fonts.
9746
97472008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
9748
9749 * lread.c (Fread_char): Resolve modifiers.
9750 (Fread_char_exclusive): Likewise.
9751
9752 * character.c (char_resolve_modifier_mask): New function.
9753 (char_string): Use char_resolve_modifier_mask.
9754 (Fchar_resolve_modifiers): New function.
9755 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
9756 function.
9757
97582008-03-04 Jason Rumney <jasonr@gnu.org>
9759
9760 * makefile.w32-in: Always include w32font.c in the build.
9761 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
9762
97632008-03-04 Andreas Schwab <schwab@suse.de>
9764
9765 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
9766 (versionclean): Likewise.
9767
97682008-03-04 Juanma Barranquero <lekktu@gmail.com>
9769
9770 * .cvsignore: Add oo.
9771
97722008-03-03 Andreas Schwab <schwab@suse.de>
9773
9774 * coding.c (decode_coding_object): Inhibit gap shrinking while
9775 decoding in place.
9776
97772008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
9778
9779 * w32term.c: Remove unused include "gnu.h".
9780 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
9781
9782 * gnu.h: Rename to ...
9783 * emacs-icon.h: ... this.
9784 * xterm.c: Use emacs-icon.h instead of gnu.h.
9785 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
9786
97872008-03-03 Juanma Barranquero <lekktu@gmail.com>
9788
9789 * w32font.c: Include math.h.
9790
97912008-03-03 Jason Rumney <jasonr@gnu.org>
9792
9793 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
9794 Compute options separately.
9795 (w32font_open_internal): Set glyph_idx before caching metrics.
9796
9797 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
9798 Define if system headers don't.
9799 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
9800 (w32font_encode_char): Don't declare here.
9801
9802 * w32font.c (Quniscribe, QCformat): New symbols.
9803 (syms_of_w32font): Define them.
9804 (w32font_has_char): Indicate uncertainty.
9805 (w32font_encode_char): Encode as glyph point. Make static.
9806 (recompute_cached_metrics): New function.
9807 (w32font_open_internal): Use it. Set font to use glyph points
9808 initially. Set format based on type of font.
9809 (w32font_text_extents, w32font_draw): Optionally use glyph points.
9810 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
9811 on it. Set format based on information available here.
9812 (add_font_entity_to_list): Identify backend based on opentype_only.
9813
98142008-03-02 Andreas Schwab <schwab@suse.de>
9815
9816 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
9817
9818 * coding.c (decode_coding_big5, produce_chars):
9819 Fix typos in last change.
9820
98212008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
9822
9823 * gnu.h: New icon.
9824
98252008-03-02 Kenichi Handa <handa@m17n.org>
9826
9827 * coding.c (decode_coding_utf_8): When eol-type of CODING is
9828 `dos', don't decode '\r' if that is the last in the source.
9829 (decode_coding_utf_16, decode_coding_emacs_mule)
9830 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
9831 (decode_coding_raw_text, decode_coding_charset): Likewise.
9832 (produce_chars): Don't decode EOL here. Use EMACS_INT.
9833
98342008-03-01 Jason Rumney <jasonr@gnu.org>
9835
9836 * w32font.c (w32font_full_name): Report point size for scalable fonts.
9837
98382008-03-01 Kim F. Storm <storm@cua.dk>
9839
9840 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
9841
98422008-03-01 Jason Rumney <jasonr@gnu.org>
9843
9844 * w32font.c (w32font_full_name): New function.
9845 (w32font_open_internal): Use it.
9846
98472008-03-01 Kim F. Storm <storm@cua.dk>
9848
9849 * dispnew.c (line_draw_cost): Fix invalid glyph check.
9850
98512008-03-01 Jason Rumney <jasonr@gnu.org>
9852
9853 * font.c (font_unparse_fcname): Increase len when style is a symbol.
9854
98552008-03-01 Jan Djärv <jan.h.d@swipnet.se>
9856
9857 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
9858 xg_frame_resized when the event is for the edit widget.
9859
9860 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
9861
9862 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
9863 set_char_size.
9864 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
9865 operations on widgets here. Just set frame size if needed.
9866 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
9867 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
9868 (x_wm_set_size_hint): Set size hints on the edit widget only, not
9869 the whole frame.
9870 (xg_create_tool_bar): Move attachment of the tool bar to
9871 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
9872 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
9873
98742008-03-01 Jason Rumney <jasonr@gnu.org>
9875
9876 * w32fns.c (w32_msg_pump): Disable debug code.
9877
98782008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9879
9880 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
9881
98822008-02-29 Chong Yidong <cyd@stupidchicken.com>
9883
9884 * xdisp.c (next_overlay_string): Don't set
9885 overlay_strings_at_end_processed_p if we're currently reading from
9886 a display string.
9887
98882008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
9889
9890 * xdisp.c (get_overlay_strings_1): Fix typo.
9891
98922008-02-29 Chong Yidong <cyd@stupidchicken.com>
9893
9894 * xdisp.c (get_overlay_strings_1): Add missing argument type.
9895
98962008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
9897
9898 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
9899
9900 * xdisp.c (display_mode_element): Cancel the previous change.
9901 (decode_mode_spec): Likewise.
9902 (handle_auto_composed_prop): Don't make composition if it->string
9903 is a string.
9904
99052008-02-27 Kim F. Storm <storm@cua.dk>
9906
9907 * lisp.h (GLYPH): Change type from int to struct with separate char
9908 and face_id members.
9909 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
9910 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
9911 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
9912 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
9913 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
9914 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
9915 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
9916 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
9917 handle new Lisp glyph code encoding, either an integer or a cons.
9918
9919 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
9920 (GLYPH_ALIAS): Delete.
9921 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
9922 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
9923 (GLYPH_FROM_CHAR): Replace macro by ...
9924 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
9925
9926 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
9927 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
9928 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
9929 (GLYPH_INVALID_P): New macro.
9930 (spec_glyph_lookup_face): Update prototype.
9931
9932 * dispnew.c (line_draw_cost): Adapt to new glyph type.
9933 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
9934 new glyph code encoding.
9935 (spec_glyph_lookup_face): No return value; update passed glyph instead.
9936 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
9937
9938 * xdisp.c (get_next_display_element, next_element_from_display_vector):
9939 Adapt to new glyph type and new glyph code encoding.
9940
9941 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
9942
9943 * indent.c (current_column, current_column_1, Fmove_to_column)
9944 (compute_motion): Adapt to new glyph code encoding.
9945
9946 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
9947
99482008-02-27 Chong Yidong <cyd@stupidchicken.com>
9949
9950 * process.c (wait_reading_process_output): Check for window
9951 changes caused by timers.
9952 Suggested by Johan Bockgård.
9953
99542008-02-27 Glenn Morris <rgm@gnu.org>
9955
9956 * emacs.c (USAGE1): Add `--disable-font-backend'.
9957
99582008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
9959
9960 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
9961 is made to the buffer.
9962
99632008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
9964
9965 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
9966 (face_at_string_position):
9967 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
9968 (face_at_string_position):
9969 * xdisp.c (display_string, next_overlay_change):
9970 * buffer.h (overlays_at):
9971 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
9972 Update callers.
9973
99742008-02-26 Chong Yidong <cyd@stupidchicken.com>
9975
9976 * editfns.c (Fformat): Doc fix.
9977
99782008-02-26 Juanma Barranquero <lekktu@gmail.com>
9979
9980 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
9981 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
9982 (Ffont_otf_alternates, Fquery_font): Doc fixes.
9983
99842008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
9985
9986 * buffer.c (Fbuffer_swap_text): New function.
9987 (syms_of_buffer): Defsubr it.
9988
99892008-02-25 Chong Yidong <cyd@stupidchicken.com>
9990
9991 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
9992
99932008-02-25 Jason Rumney <jasonr@gnu.org>
9994
9995 * w32font.c (w32font_draw): Draw one character at a time when padding.
9996
99972008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
9998
9999 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
10000 Handle a nil arg. Use run_window_configuration_change_hook.
10001 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
10002 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
10003 Use run_window_configuration_change_hook.
10004
100052008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10006
10007 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
10008 1-pixel width.
10009
100102008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10011
10012 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
10013 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
10014 if the glyph in the font is zero pixel with.
10015
10016 * dispextern.h (struct glyph_string): New member padding_p.
10017
10018 * w32font.c (w32font_draw): Pay attention to s->padding_p.
10019
10020 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
10021
10022 * xfont.c (xfont_draw): Pay attention to s->padding_p.
10023
10024 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
10025
10026 * font.c: If the font driver doesn't have `shape' function, return Qnil.
10027
100282008-02-25 Jason Rumney <jasonr@gnu.org>
10029
10030 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
10031
100322008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
10033
10034 Allow fine-grained image-cache flushing.
10035 * dispextern.h (struct image): Add `dependencies' field.
10036 (clear_image_caches): Change arg to Lisp_Object.
10037 * image.c (make_image): Initialize `dependencies' field.
10038 (clear_image_cache): Change arg to allow fine-grained flushing.
10039 Perform the flush even if image-cache-eviction-delay is nil.
10040 (clear_image_caches): Change arg to Lisp_Object.
10041 (Fclear_image_cache): Expand meaning of the argument.
10042 (mark_image): Mark `dependencies' field.
10043 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
10044 (lface_hash): Use XHASH rather than XFASTINT.
10045 (face_at_buffer_position): Fix int -> EMACS_INT position.
10046 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
10047 (select_frame_for_redisplay): Remove code duplication.
10048 (redisplay_internal): Adapt arg to call to clear_image_caches.
10049
100502008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
10051
10052 * s/vms4-0.h:
10053 * s/vms4-2.h:
10054 * s/vms4-4.h:
10055 * s/vms5-5.h: Remove, unused.
10056
10057 * s/irix5-2.h:
10058 * s/irix6-0.h:
10059 * s/riscos5.h:
10060 * s/mach-bsd4-3.h:
10061 * m/mips4.h: Remove files for obsolete systems.
10062
10063 * Makefile.in:
10064 * filelock.c:
10065 * unexmips.c:
10066 * m/hp9000s300.h:
10067 * m/iris4d.h:
10068 * s/aix3-1.h:
10069 * s/hpux.h:
10070 * s/msdos.h:
10071 * s/usg5-0.h:
10072 * s/usg5-2-2.h:
10073 * s/usg5-2.h:
10074 * s/usg5-3.h: Remove references to obsolete variables.
10075
10076 * s/irix5-0.h: Remove, move all the contents ...
10077 * s/irix6-5.h: ... here. Simplify.
10078 * config.in: Regenerate.
10079
100802008-02-24 Jason Rumney <jasonr@gnu.org>
10081
10082 * w32term.c (x_draw_glyph_string_background): Clear the background
10083 manually when cleartype is in use.
10084 (x_draw_glyph_string_foreground): Draw text transparently when
10085 cleartype is in use.
10086
10087 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
10088 a font into it unless we have to.
10089
100902008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10091
10092 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
10093 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 10094
aac0c6e3
MR
100952008-02-18 Jason Rumney <jasonr@gnu.org>
10096
10097 * w32fns.c (Fw32_shell_execute): Encode parameters.
10098
100992008-02-09 Eli Zaretskii <eliz@gnu.org>
10100
10101 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
10102
101032008-02-05 Juanma Barranquero <lekktu@gmail.com>
10104
10105 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
10106
101072008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
10108
10109 * xterm.c (x_set_offset): Don't change the gravity if
10110 CHANGE_GRAVITY is -1.
10111
101122008-02-23 Chong Yidong <cyd@stupidchicken.com>
10113
10114 * fileio.c (auto_save_error_occurred): New var.
10115 (auto_save_error): Set it.
10116 (Fdo_auto_save): Don't overwrite the error message if an auto-save
10117 error occurred.
10118
101192008-02-23 Eli Zaretskii <eliz@gnu.org>
10120
10121 * w32.c (globals_of_w32): Add initializations for
10122 g_b_init_get_sid_sub_authority and
10123 g_b_init_get_sid_sub_authority_count.
10124
101252008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
10126
10127 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
10128 (font_parse_xlfd): Use them for sanity check.
10129 (Finternal_set_font_style_table): Make sure the table is bijective.
10130
10131 Consolidate the image_cache to the terminal struct.
10132 * termhooks.h (P_): Remove redundant def.
10133 (struct terminal): New field `image_cache'.
10134 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
10135 of FRAME_X_IMAGE_CACHE.
10136 * xterm.h (struct x_display_info): Remove image_cache field.
10137 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10138 * w32term.h (struct w32_display_info): Remove image_cache field.
10139 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10140 * macterm.h (struct mac_display_info): Remove image_cache field.
10141 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10142 * xterm.c (x_term_init):
10143 * w32term.c (w32_term_init):
10144 * macterm.c (mac_term_init): Set the image_cache in the terminal.
10145 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
10146 Remove declarations.
10147 (clear_image_caches, mark_image_cache): New declarations.
10148 * xfaces.c (clear_face_cache):
10149 * xdisp.c (redisplay_internal): Use clear_image_caches.
10150 * image.c (clear_image_cache): Don't check that a frame is on
10151 a window-system before checking if it shares the same cache.
10152 (clear_image_caches): New function.
10153 (Fclear_image_cache): Use it.
10154 (mark_image): Move from allo.c.
10155 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
10156 * alloc.c (mark_image, mark_image_cache): Move to image.c.
10157 (mark_object): Don't call mark_image_cache for frames.
10158 (mark_terminals): Call mark_image_cache.
10159
10160 * lisp.h (Fdelete_terminal): Declare.
10161
10162 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
10163 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
10164 wrong_type_argument.
10165
101662008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
10167
10168 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
10169 malayalam.el, and tamil.el. Add sinhala.el.
10170
101712008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
10172
10173 * xterm.c (x_connection_closed): Consolidate identical tests.
10174 (x_delete_terminal): Don't crash if called via x_connection_closed.
10175
101762008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
10177
10178 * xdisp.c (decode_mode_spec): New arg string.
10179 (display_mode_element): Adjust for the above change.
10180
101812008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10182
10183 * callint.c (Fcall_interactively): Use AREF.
10184
101852008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
10186
10187 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
10188
101892008-02-18 Jan Djärv <jan.h.d@swipnet.se>
10190
10191 * xfns.c (Fx_show_tip): Set string to " " if empty.
10192
101932008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
10194
10195 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
10196 with Qt.
10197
101982008-02-17 Kenichi Handa <handa@m17n.org>
10199
10200 * ftfont.c (ftfont_shape): Return Lispy number.
10201
10202 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
10203 for GCs.
10204 (Finternal_set_font_selection_order): Call font_update_sort_order
10205 only when enable_font_backend is set.
10206 (realize_x_face): Set face->font_info to that of default face only
10207 when enable_font_backend is set.
10208
10209 * xdisp.c (handle_composition_prop): Set it->c to the fist
10210 character of the composed region.
10211 (fill_composite_glyph_string): Set base_face->font_info to
10212 s->font_info. Get a face for ascii from base_face->ascii_face.
10213 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
10214 with a face already decided.
10215 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
10216 non-negative.
10217 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
10218 call font_prepare_composition unconditionally.
10219
10220 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
10221
10222 * xterm.h (struct x_display_info): New member font.
10223
10224 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
10225 (x_set_mouse_face_gc, x_new_font): Likewise.
10226 (x_term_init): Setup display_info->font.
10227 (x_delete_terminal): Free display_info->font.
10228
10229 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
10230
10231 * ftxfont.c (ftxfont_default_fid): Delete it.
10232 (ftxfont_open): Set xfont->fid to 0.
10233 (ftxfont_end_for_frame): Clear data specific to the frame and the
10234 font-driver.
10235
10236 * xftfont.c (xftfont_default_fid): Delete it.
10237 (xftfont_open): Set xfont->fid to 0.
10238
10239 * fontset.c (FONTSET_OBJLIST): New macro.
10240 (fontset_find_font): Update font-object list of the fontset.
10241 (free_realized_fontset): New function.
10242 (free_face_fontset): Call free_realized_fontset.
10243 (Ffont_info): Call font_close_object only when enable_font_backend
10244 is set.
10245
10246 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
10247 [HAVE_NTGUI]: Include w32term.h.
10248 [MAC_OS]: Include macterm.ch.
10249 (font_otf_ValueRecord): Use make_number.
10250 (font_finish_cache): Fix handling of reference count.
10251 (font_clear_cache): Update num_fonts.
10252 (font_open_entity): Update smallest_char_width and
10253 smallest_font_height of the frame.
10254 (font_close_object): Update num_fonts.
10255 (Fclear_font_cache): Fix finding the target cache data.
10256
102572008-02-16 Glenn Morris <rgm@gnu.org>
10258
10259 * fontset.c (Finternal_char_font): Fix compilation warning.
10260
102612008-02-16 Eli Zaretskii <eliz@gnu.org>
10262
10263 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
10264 instead of char arrays. Enlarge the size of array passed to
10265 get_token_information.
10266
10267 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
10268 warnings.
10269
102702008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
10271
10272 * .gdbinit: Don't set `args', it breaks gdb --args.
10273
102742008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
10275
10276 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
10277 within a narrowed buffer.
10278
102792008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
10280
10281 * coding.c (decode_coding_object, encode_coding_object):
10282 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
10283
102842008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
10285
10286 * coding.c (coding_set_destination): Use BEG_BYTE rather than
10287 hardcoding 1.
10288 (detect_coding_system):
10289 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
10290 (string_char_to_byte, string_byte_to_char, insert_from_gap):
10291 * insdel.c (insert_from_gap):
10292 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
10293 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
10294 (string_to_multibyte):
10295 * character.c (chars_in_text, multibyte_chars_in_text):
10296 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
10297
10298 * character.h (FETCH_STRING_CHAR_ADVANCE)
10299 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
10300 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
10301 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
10302
10303 * casefiddle.c (casify_region): Only call after-change and composition
10304 functions on the part of the region that was changed.
10305
10306 * keyboard.c (read_avail_input):
10307 * frame.c (Fdelete_frame): Call Fdelete_terminal.
10308
103092008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
10310
10311 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
10312 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
10313
103142008-02-11 Juanma Barranquero <lekktu@gmail.com>
10315
10316 * w32menu.c (push_submenu_start, push_submenu_end)
10317 (push_left_right_boundary, push_menu_pane, push_menu_item):
10318 * keyboard.c (read_key_sequence): Don't pass args with side effects
10319 to AREF, it fails when compiling with -DENABLE_CHECKING.
10320
103212008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
10322
10323 * Makefile.in (${lispsource}international/charprop.el):
10324 Delete this target.
10325
10326 * search.c (boyer_moore): Fix incorrect synching of the trunk and
10327 emacs-unicode-2.
10328
103292008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
10330
10331 * terminal.c (Fdelete_terminal): Clean up the `force' path.
10332
103332008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
10334
10335 * frame.c (Qnoelisp): New symbol.
10336 (syms_of_frame): Initialize it.
10337 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
10338 harmless Elisp code, from a strong `force' from x_connection_closed.
10339 * frame.h (Qnoelisp): Declare.
10340 * xterm.c (x_connection_closed): Pass `noelisp'.
10341
10342 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
10343 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
10344 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
10345 rather than `int' for the type of `type'.
10346
103472008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
10348
10349 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
10350
10351 * Makefile.in (GNUC): Remove support for gcc-1.x.
10352
103532008-02-10 Richard Stallman <rms@gnu.org>
10354
10355 * lisp.h (ASET): Use AREF, not ASLOT.
10356
103572008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
10358
10359 * lisp.h (ASET): Check bounds.
10360
103612008-02-10 Glenn Morris <rgm@gnu.org>
10362
10363 * buffer.c (mode-name): Doc fix.
10364
103652008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
10366
10367 * Makefile.in:
10368 * emacs.c:
10369 * gmalloc.c:
10370 * keyboard.c:
10371 * lisp.h:
10372 * m/ibm370aix.h:
10373 * process.c:
10374 * regex.c:
10375 * s/hpux.h:
10376 * sysdep.c:
10377 * sysselect.h:
10378 * systty.h:
10379 * unexec.c:
10380 * w32term.c:
10381 * xsmfns.c:
10382 * xterm.c: Remove code that deals with obsolete variables.
10383
10384 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
10385
10386 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
10387 nothing else needs it anymore.
10388
103892008-02-09 Eli Zaretskii <eliz@gnu.org>
10390
10391 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
10392 instead of unibyte_char_to_multibyte.
10393
103942008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
10395
10396 * s/gnu-linux.h: Remove commented out code.
10397
10398 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
10399
10400 * Makefile.in: Update what RMS says about using autoconf.
10401 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
10402 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
10403 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
10404 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
10405
104062008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
10407
10408 * keymap.c (Fkey_description): Move side effect outside of macro call.
10409
10410 * xfaces.c (Finternal_make_lisp_face):
10411 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
10412
10413 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
10414 (syms_of_fontset): Use ASET.
10415
10416 * fns.c (concat): Move side effect outside of macro call.
10417 (hash_clear): Use ASET.
10418
104192008-02-08 Richard Stallman <rms@gnu.org>
10420
10421 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
10422 If FORCE, and frame has a surrogate minibuffer for another frame,
10423 delete the other frame first.
10424
104252008-02-07 Timo Savola <timo.savola@iki.fi>
10426
10427 * xterm.c (x_detect_focus_change): Handle embed client message.
10428 (handle_one_xevent): Ditto.
10429 (handle_one_xevent): If embedded and we get a button press/release,
10430 request focus.
10431 (xembed_set_info, xembed_send_message): New functions.
10432 (x_make_frame_visible): Call xembed_set_info if embedded.
10433 (x_make_frame_invisible): Call xembed_set_info if embedded.
10434 (x_term_init): Initialize Xatom_XEMBED.
10435 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
10436 (x_iconify_frame): Ditto.
10437
10438 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
10439 (enum xembed_info, enum xembed_message, enum xembed_focus)
10440 (enum xembed_modifier, enum xembed_accelerator): New.
10441 (xembed_set_info, xembed_send_message): Declare.
10442 (FRAME_X_EMBEDDED_P): New.
10443
10444 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
10445 gtk_plug_new.
10446
10447 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
10448 window ID of a frame.
10449 (x_window): Reparent frame if embedded.
10450 (Fx_create_frame): Don't set border width if embedded.
10451
10452 * emacs.c (USAGE3): Add --parent-id.
10453 (standard_args): Ditto.
10454
104552008-02-07 Jan Djärv <jan.h.d@swipnet.se>
10456
10457 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
10458
104592008-02-07 Jim Meyering <meyering@redhat.com>
10460
10461 Use "do...while (0)", not "if (1)...else" in macro definitions.
10462 The latter provokes a warning from gcc about the empty else, when
10463 followed by ";". Also, without that trailing semicolon, it would
10464 silently swallow up any following statement.
10465 * syntax.h (SETUP_SYNTAX_TABLE)
10466 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
10467 * buffer.h (DECODE_POSITION): Likewise.
10468 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
10469 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
10470 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
10471 (FETCH_CHAR_ADVANCE): Likewise.
10472 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
10473
104742008-02-07 Jim Meyering <meyering@redhat.com>
10475
10476 * lread.c [lint]: Don't include <sys/inode.h>.
10477
104782008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
10479
10480 * xselect.c (x_handle_dnd_message):
10481 * xmenu.c (digest_single_submenu, xmenu_show):
10482 * xdisp.c (with_echo_area_buffer_unwind_data)
10483 (format_mode_line_unwind_data, unwind_format_mode_line)
10484 (display_menu_bar):
10485 * eval.c (Ffetch_bytecode):
10486 * doc.c (store_function_docstring):
10487 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
10488 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
10489 * buffer.c (add_overlay_mod_hooklist): Use ASET.
10490
104912008-02-07 Kenichi Handa <handa@m17n.org>
10492
10493 * ftxfont.c (ftxfont_open): Don't set
10494 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
10495
10496 * ftfont.c (ftfont_open): Fix previous change.
10497
104982008-02-06 Jason Rumney <jasonr@gnu.org>
10499
10500 * w32font.c (w32font_text_extents): Fill in lbearing metric.
10501 Use cached metrics for ASCII characters.
10502 (w32font_open_internal): Don't set font's owning_frame.
10503 Cache metrics for ASCII characters.
10504
10505 * w32font.h (struct w32font_info): Add ascii_metrics.
10506 Remove owning_frame.
10507
105082008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
10509
10510 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
10511 to negative value.
10512
10513 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
10514
10515 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
10516
10517 * charset.c (syms_of_charset): Set QCtest and Qeq.
10518
105192008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
10520
10521 * process.c (Fstart_process):
10522 * callproc.c (Fcall_process): Handle the case where
10523 Funhandled_file_name_directory returns nil.
10524
10525 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
10526 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
10527 * font.c (check_gstring): Use them and AREF to access the vector before
10528 we know it's really a gstring.
10529 (Ffont_shape_text): Fix typo.
46e722a9 10530 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
10531
10532 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
10533 Declare.
10534
10535 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
10536
105372008-02-05 Jason Rumney <jasonr@gnu.org>
10538
10539 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
10540 Set smallest_font_height and smallest_char_width in display info.
10541
105422008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
10543
10544 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
10545
105462008-02-05 Miles Bader <miles@gnu.org>
10547
10548 * xfaces.c (get_lface_attributes, merge_named_face)
10549 (lookup_named_face, lookup_derived_face, realize_named_face):
10550 Revert 2008-02-01 change by cyd@stupidchicken.com.
10551
105522008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
10553
10554 * fontset.c (Ffontset_info): Handle the case of inhibitting the
10555 fallback fonts.
10556 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
10557
105582008-02-04 Jason Rumney <jasonr@gnu.org>
10559
10560 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
10561 set full_name.
10562 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
10563
105642008-02-03 Jason Rumney <jasonr@gnu.org>
10565
10566 * makefile.w32-in (OBJ1): Include font.o here.
10567 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
10568
105692008-02-02 Jason Rumney <jasonr@gnu.org>
10570
10571 * makefile.w32-in (temacs): Bump EMHEAP to 21.
10572
105732008-02-01 Jason Rumney <jasonr@gnu.org>
10574
10575 * s/cygwin.h: Define VIRT_ADDR_VARIES.
10576
10577 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
10578
105792008-02-01 Andreas Schwab <schwab@suse.de>
10580
10581 * Makefile.in (shortlisp, lisp): Update for rename of
10582 ../lisp/language/myanmar.el.
10583
105842008-02-01 Chong Yidong <cyd@stupidchicken.com>
10585
10586 * xfaces.c (get_lface_attributes): Delete function.
10587 (merge_named_face, lookup_named_face, lookup_derived_face)
10588 (realize_named_face): Call lface_from_face_name directly, and use
10589 the fact that merge_face_vectors does not alter its FROM argument.
10590
105912008-02-01 Jason Rumney <jasonr@gnu.org>
10592
10593 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
10594 input in the default locale. Handle non-Unicode multibyte input.
10595
105962008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10597
10598 * fontset.c (reorder_font_vector): Exclude nil elements from the
10599 font group. Don't try multiple fonts.
10600 (fontset_font): Adjust for the above change.
10601 (Finternal_char_font): Return nil if the found font doesn't
10602 contain the character ch.
10603
10604 * Makefile.in (lisp, shortlisp): Add cham.el.
10605
106062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10607
10608 * font.h (FONTP): Make it return 1 also for a font-object.
10609
10610 * .gdbinit (xfontset): New function.
10611
10612 * font.c (font_find_for_lface): Check if the character C is
10613 supported or not only for the first font.
10614
10615 * fontset.c (reorder_font_vector): Fix typo.
10616 (fontset_find_font): Don't add a font-spec specifying a script.
10617 Use 0 (not Qt) for the indication of empty font-group. Change the
10618 format of RFONT-DEF. Return Qt if no font in the font-group
10619 support the character.
10620 (fontset_font): Adjust for the above change. If no font was
10621 found the character, remember that.
10622 (face_for_char): Adjust for the change of RFONT-DEF.
10623 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
10624 no font for the target.
10625 (Finternal_char_font): Adjust for the change of RFONT-DEF.
10626
106272008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10628
10629 * font.c (font_load_for_face): Handle the case that the font in
10630 face->lface is a string.
10631
106322008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10633
10634 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
10635
106362008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10637
10638 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
10639 Fix previous change. If the frame is not on a window system,
10640 signal an error.
10641
106422008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10643
10644 * coding.c (decode_coding_object, encode_coding_object): Adjust
10645 marker positions after conversion.
10646
10647 * lisp.h (struct Lisp_Marker): New member need_adjustment.
10648
106492008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10650
10651 * font.c (font_find_for_lface): Fix the handling of the return
10652 value of font_has_char.
10653 (Ffont_shape_text): Fix previous change.
10654
10655 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
10656 (fontset_ref_and_range): Delete it.
10657 (fontset_find_font): Call char_table_ref_and_range instead of
10658 FONTSET_REF_AND_RANGE.
10659 (make_fontset): Don't setup font groups of Latin here.
10660 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
10661 (new_fontset_from_font): Make the specified font the default for
10662 all Latin characters.
10663
106642008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10665
10666 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
10667 is on a window system before accessing the fontset of the frame.
10668
106692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10670
10671 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
10672
10673 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
10674 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
10675
10676 * font.c (Ffont_shape_text): If the font driver doesn't have a
10677 shaper function, make zero-width glyphs to have at least one-pixel
10678 width. Fix setting of `to' field of glyphs.
10679
106802008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10681
10682 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
10683 glyphs.
10684
10685 * font.h (struct font_driver): Improve docstring of member `shape'.
10686
106872008-02-01 Kenichi Handa <handa@m17n.org>
10688
10689 * composite.c (syms_of_composite): Fix docstring of
10690 auto-composition-function.
10691
10692 * font.h (LGLYPH_SIZE): New macro.
10693
10694 * font.c (Ffont_fill_gstring): Stop filling when a character not
10695 supported by the font is found.
10696 (Ffont_shape_text): When a shape callback function returns nil,
10697 try at most two more times with larger gstring.
10698 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
10699
10700 * xdisp.c (handle_auto_composed_prop): Change the argument to
10701 auto-composition-function.
10702
10703 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
10704 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
10705 Lispy glyph and store it in the lgstring.
10706
10707 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
10708
10709 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
10710
107112008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10712
10713 * font.c (Ffont_shape_text): Avoid unnecessary composition.
10714
10715 * fontset.c (Vfont_encoding_charset_alist): New variable.
10716 (syms_of_fontset): DEFVAR it.
10717 (reorder_font_vector, fontset_find_font): Optimize for the case of
10718 no need of reordering.
10719 (face_for_char): Map the charset property by
10720 Vfont_encoding_charset_alist.
10721
107222008-02-01 Jason Rumney <jasonr@gnu.org>
10723
10724 * w32font.c (logfonts_match): Don't check adstyle here.
10725 (font_matches_spec): Check here against physical font instead.
10726 (add_font_entity_to_list): Avoid some substitutions.
10727
10728 * font.c (font_parse_fcname): Default weight and slant to normal.
10729 (font_score): Prefer normal fonts if weight or slant unspecified.
10730 (font_score) [WINDOWSNT]: Scale weight difference down to closer
10731 match freetype scores.
10732
107332008-02-01 Jason Rumney <jasonr@gnu.org>
10734
10735 * w32font.c (w32font_text_extents): Don't use the frame stored in the
10736 font, as it may have been deleted.
10737 (w32_enumfont_pattern_entity): Map generic family to adstyle using
10738 most common hyphenless variation.
10739 (logfonts_match): Check generic family.
10740 (font_matches_spec): Don't check generic family here.
10741 (fill_in_logfont): Set generic family based on adstyle.
10742
10743 * w32font.h (w32font_get_cache): Update declaration.
10744
107452008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10746
10747 * ftfont.c (ftfont_get_cache): Adjust the argument type.
10748
10749 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
10750 If none of the new drivers are available, call font_update_drivers
10751 with the old drivers.
10752
10753 * w32font.c (w32font_get_cache): Adjust the argument type.
10754
10755 * xfont.c (xfont_get_cache): Adjust the argument type.
10756
10757 * font.h (struct font_driver): Change argument type of get_cache.
10758
10759 * xftfont.c (xftfont_start_for_frame): Delete prototype.
10760
10761 * font.c (Ffont_get): Fix arguments to Fassoc.
10762 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
10763 (font_clear_cache): New function.
10764 (font_list_entities, font_matching_entity): Use font_get_cache.
10765 (font_update_drivers): Call font_clear_cache when finishing a driver.
10766
10767 * fontset.c (fontset_find_font): Fix previous change.
10768
107692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10770
10771 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
10772 dpyinfo->font_table.
10773 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
10774 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
10775
10776 * font.c (font_at): Handle the case that the arg C is negative.
10777 Handle the unibyte case.
10778 (Ffont_at): Call font_at with the arg C -1.
10779
10780 * xdisp.c (handle_auto_composed_prop): Don't get a character at
10781 the position here, and call font_at with the arg C -1.
10782 Don't check the range of the existing composition at the point.
10783
107842008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10785
10786 * fontset.c (fontset_add): New args charset_id and family.
10787 Change caller.
10788 (load_font_get_repertory, fontset_find_font): Assume that
10789 font_spec is always a font-spec object.
10790 (Fset_fontset_font): Always store a font-spec object in a fontset.
10791
10792 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
10793 instead of get_property_and_range.
10794
107952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10796
10797 * xftfont.c (struct xftfont_info): Delete the member ft_face.
10798 (xftfont_open): Don't keep locking face.
10799 (xftfont_close): Don't unlock face.
10800 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
10801
10802 * fontset.c (fontset_find_font): Don't prefer a font of
10803 supplementary charset.
10804
108052008-02-01 Kenichi Handa <handa@m17n.org>
10806
10807 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
10808 script, langsys_tag to langsys, new member script.
10809 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 10810 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
10811 listing to the script specified in that property. Fix arg to
10812 OTF_check_features.
10813
108142008-02-01 Jason Rumney <jasonr@gnu.org>
10815
10816 * w32font.h: New file.
10817
10818 * w32font.c: Include it.
10819 (struct w32font_info): Add owning_frame field. Move to w32font.h.
10820 (w32font_open): Set owning_frame.
10821 (w32font_text_extents): Use owning_frame.
10822 (struct font_callback_data): Add opentype_only field.
10823 (add_font_entity_to_list): Use it to filter fonts.
10824 Don't check against full name.
10825 (w32font_list_internal): New function.
10826 (w32font_list): Use it.
10827 (w32font_match_internal): New function.
10828 (w32font_match): Use it.
10829 (w32font_open_internal): New function.
10830 (w32font_open): Use it.
10831 (w32font_get_cache, w32font_close, w32font_has_char)
10832 (w32font_encode_char, w32font_text_extents, w32font_draw):
10833 Make non-static.
10834
10835 * makefile.w32-in (w32font.o): Depend on w32font.h.
10836
108372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10838
10839 * charset.c (Fdefine_charset_internal): Record a supplementary
10840 charset at the tail of Vcharset_order_list.
10841
10842 * font.c (Ffont_shape_text): Fix the return value.
10843
10844 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
10845
10846 * xdisp.c (handle_auto_composed_prop): Fix previous change.
10847
108482008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10849
10850 * ftfont.c (struct OpenTypeSpec): New struct.
10851 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
10852 (ftfont_get_open_type_spec): New function.
10853 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
10854
10855 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
10856
108572008-02-01 Jason Rumney <jasonr@gnu.org>
10858
10859 * w32font.c (add_font_entity_to_list): Compare only the beginning
10860 of full name.
10861
108622008-02-01 Kenichi Handa <handa@m17n.org>
10863
10864 * xdisp.c (handle_auto_composed_prop): Simplify the code.
10865 Never return HANDLED_RECOMPUTE_PROPS.
10866
108672008-02-01 Kenichi Handa <handa@m17n.org>
10868
10869 * font.c (font_gstring_produce): Delete it.
10870
10871 * composite.h (COMPOSITION_METHOD):
10872 Handle COMPOSITION_WITH_GLYPH_STRING.
10873
108742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10875
10876 * xfont.c (Qx): Delete.
10877 (syms_of_xfont): Don't initialize Qx.
10878
10879 * composite.h (enum composition_method):
10880 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
10881
108822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10883
10884 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
10885 (choose_face_font): Accept new form of font-spec.
10886
10887 * frame.h (font_driver_list): Declare it unconditionally.
10888 (struct frame): Define members font_driver_list and font_data_list
10889 unconditionally.
10890
10891 * fontset.c: Include "font.h" unconditionally.
10892 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
10893 (Fset_fontset_font): Accept a font-spec object.
10894
10895 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
10896 PIXEL_SIZE part a wild card.
10897
10898 * dispextern.h (struct glyph_string): Define members clip and
10899 num_clips unconditionally.
10900 (struct face): Define members font_info and extra unconditionally.
10901
10902 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
10903 ftfont_info only when HAVE_LIBOTF is defined.
10904
109052008-02-01 Andreas Schwab <schwab@suse.de>
10906
10907 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
10908 and end.
10909
109102008-02-01 Jason Rumney <jasonr@gnu.org>
10911
10912 * w32font.c (w32font_driver): Add new fields.
10913
109142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10915
10916 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
10917 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
10918 (LIBES): Add @M17N_FLT_CFLAGS@.
10919
10920 * composite.c (compose_text): Don't treat the new style
10921 composition specially.
10922
10923 * emacs.c (main): Call syms_of_font unconditionally.
10924
10925 * font.h (FONT_ENTITY_NOT_LOADABLE)
10926 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
10927 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
10928 (struct font_driver): New member shape.
10929 (font_registry_charsets): Extern it.
10930 (font_find_for_lface, font_prepare_composition): Adjust prototype.
10931 (font_otf_capability, font_drive_otf): Delete their externs.
10932
10933 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
10934 (font_charset_alist, font_registry_charsets): Move from xfont.c
10935 and rename.
10936 (font_prop_validate_otf): New function.
10937 (font_property_table): Register it for QCotf.
10938 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
10939 (font_drive_otf): Delete.
10940 (font_prepare_composition): New arg F. Adjust for the change of
10941 lispy gstring.
10942 (font_find_for_lface): New arg C.
10943 (font_load_for_face): Adjust for the change of font_find_for_lface.
10944 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
10945 lispy gstring.
10946 (Ffont_shape_text): New function.
10947 (Fopen_font): If the font size is not given, use 12-pixel.
10948 (Ffont_at): New arg STRING.
10949 (syms_of_font): Initalize font_charset_alist.
10950 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
10951 conditionally.
10952
10953 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
10954 fonts of the same font-spec. Change the format of RFONT-DEF.
10955 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
10956 Adjust for the change of RFONT-DEF.
10957 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
10958
10959 * ftfont.h: New file.
10960
10961 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
10962 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
10963 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
10964 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
10965 font_otf_capability and font_drive_otf, set ftfont_shape.
10966 (ftfont_list): Adjust for the change of :otf property value.
10967 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
10968 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
10969 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
10970 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
10971 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
10972 (otf_gstring, gstring, m17n_flt_initialized): New variables.
10973
10974 * w32term.c (x_draw_composite_glyph_string_foreground):
10975 Adjust for the change of lispy gstring.
10976
10977 * xdisp.c (handle_composition_prop): Adjust for the change of
10978 lispy gstring. Call a function for auto-composition with the
10979 third arg it->window.
10980 (fill_composite_glyph_string): Adjust for the change of lispy string.
10981 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
10982
10983 * xfaces.c (set_font_frame_param): Adjust for the change of
10984 font_find_for_lface.
10985
10986 * xfont.c (x_font_charset_alist): Move to font.c and rename.
10987 (xfont_registry_charsets): Likewise. Change caller.
10988 (syms_of_xfont): Don't handle x_font_charset_alist.
10989
10990 * xftfont.c: Include "ftfont.h".
10991 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
10992 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
10993 (xftfont_close) [HAVE_LIBOTF]: Close otf.
10994 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
10995 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
10996 Set xftfont_driver.shape to xftfont_shape.
10997
10998 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
10999 the change of lispy gstring.
11000
110012008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11002
11003 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
11004
110052008-02-01 Jason Rumney <jasonr@gnu.org>
11006
11007 * w32font.c (w32font_draw): Fill background manually.
11008
110092008-02-01 Jason Rumney <jasonr@gnu.org>
11010
11011 * font.c (Qfontp): Remove unused symbol.
11012 (QCantialias): New symbol.
11013 (syms_of_font): Define it.
11014 (font_property_table): Set a validator for QCantialias.
11015
11016 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
11017 Define if not already.
11018 (QCfamily): Share with xfaces.c.
11019 (Qstandard, Qsubpixel, Qnatural): New symbols.
11020 (syms_of_w32font): Define them. Don't define QCfamily here.
11021 (w32_antialias_type, lispy_antialias_type): New functions.
11022 (w32_enumfont_pattern_entity): New arg requested_font.
11023 Set antialias parameter if non-default was requested.
11024 (fill_in_logfont): Fill in lfQuality if :antialias specified.
11025
110262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11027
11028 * lread.c (read1): Undo the previous change.
11029
110302008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
11031
11032 * frame.c (Fdelete_frame): Call font_update_drivers only when
11033 USE_FONT_BACKEND is defined.
11034
110352008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11036
11037 * font.h (struct font_bitmap): New member bits_per_pixel.
11038 (struct font_driver): New members start_for_frame and end_for_frame.
11039 (struct font_data_list): New struct.
11040 (font_put_frame_data, font_get_frame_data): Extern them.
11041
11042 * frame.h (struct frame): New member font_data_list.
11043
11044 * font.c (font_update_drivers): Call driver->start_for_frame and
11045 driver->end_for_frame at proper timings.
11046 (font_put_frame_data, font_get_frame_data): New functions.
11047 (Ffont_spec): Add usage in the docstring.
11048
11049 * frame.c (make_frame): Initialize f->font_data_list to NULL.
11050 (Fdelete_frame): Call font_update_drivers.
11051
11052 * xftfont.c (struct xftface_info): Delete the member xft_draw.
11053 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
11054 (xftfont_get_xft_draw): New function.
11055 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
11056 (xftfont_end_for_frame): New function.
11057 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
11058
11059 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
11060 Change argument. Cache GCs in the per-frame data.
11061 (struct ftxfont_frame_data): New struct.
11062 (ftxfont_draw_bitmap): New arg gc_fore and flush.
11063 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
11064 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
11065 (ftxfont_end_for_frame): New function.
11066 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
11067
11068 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
11069
110702008-02-01 Kenichi Handa <handa@m17n.org>
11071
11072 * xselect.c (Vselection_coding_system)
11073 (Vnext_selection_coding_system): Delete them.
11074 (syms_of_xselect): Don't declare selection-coding-system and
11075 next-selection-coding-system. They are declared in select.el.
11076
110772008-02-01 Jason Rumney <jasonr@gnu.org>
11078
11079 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
11080
11081 * w32fns.c: Include imm.h.
11082 (get_composition_string_fn, get_ime_context_fn): New optional
11083 system functions.
11084 (globals_of_w32fns): Load them from imm32.dll.
11085 (ignore_ime_char): New flag.
11086 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
11087 WM_IME_ENDCOMPOSITION messages.
11088
11089 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
11090 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
11091
110922008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11093
11094 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
11095 (READCHAR_REPORT_MULTIBYTE): New macro.
11096 (readchar): New 2nd arg MULTIBYTE.
11097 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
11098 Make symbol's name multibyte according to the multibyteness of the
11099 source.
11100
111012008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11102
11103 * xfaces.c (face_for_overlay_string): Call lookup_face with
11104 correct arguments (fix of synching with the trunk).
11105
111062008-02-01 Kenichi Handa <handa@m17n.org>
11107
11108 * font.c (font_prop_validate_symbol, font_prop_validate_style)
11109 (font_prop_validate_non_neg, font_prop_validate_spacing):
11110 Delete argument prop_index.
11111 (font_property_table): Change arguments to validater. Change Callers.
11112 (font_lispy_object): Delete.
11113 (font_at): Use font_find_object instead fo font_lispy_object.
11114
111152008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11116
11117 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
11118 and file names.
11119
111202008-02-01 Jason Rumney <jasonr@gnu.org>
11121
11122 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
11123 (font_matches_spec): Remove debug output.
11124 (add_font_entity_to_list): Avoid using substituted fonts.
11125
111262008-02-01 Jason Rumney <jasonr@gnu.org>
11127
11128 * doc.c (Fsnarf_documentation):
11129 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
11130
111312008-02-01 Miles Bader <miles@gnu.org>
11132
11133 * dispextern.h (struct glyph_row): Only define "clip" field if
11134 HAVE_WINDOW_SYSTEM is defined.
11135
111362008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11137
11138 Fix up multi-tty merge.
11139
11140 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
11141 and indentation.
11142
11143 * xfaces.c (free_realized_face, clear_face_gcs):
11144 Include font_done_for_face in the input_blocked section, just in case.
11145
11146 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
11147 (get_char_face_and_encoding): Undo last change and remove the *other*
11148 duplicate definition (i.e. keep the one that's better scoped and that
11149 includes code for the font-backend).
11150
11151 * terminal.c (create_terminal): Default keyboard_coding to
11152 `no-conversion' and terminal_coding to `undecided'.
11153
11154 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
11155
11156 * fontset.c (free_realized_fontsets): Check that the table entry does
11157 contain a fontset before trying to compare it to `base'.
11158
11159 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
11160 syms_of_charset, and syms_of_coding earlier because init_window_once
11161 now needs Vcoding_system_hash_table to be setup.
11162
11163 * coding.h (default_buffer_file_coding): Remove.
11164
11165 * coding.c (default_buffer_file_coding): Remove.
11166 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
11167 than ->symbol, and use the terminal-local coding system.
11168 (syms_of_coding): Don't setup the coding-systems that are not
11169 terminal-local.
11170 (Fdefine_coding_system_internal): Use XCAR/XCDR.
11171
11172 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
11173 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
11174
11175 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
11176 in chartab.c and were re-added here by mistake.
11177 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
11178
11179 * doc.c (Fsnarf_documentation):
11180 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
11181 src to etc.
11182
11183 * ChangeLog.10: Add mistakenly removed entry.
11184
111852008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
11186
11187 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
11188
111892008-02-01 Miles Bader <miles@gnu.org>
11190
11191 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
11192 Add extra args to FACE_FOR_CHAR.
11193
111942008-02-01 Kenichi Handa <handa@m17n.org>
11195
11196 * keymap.c (where_is_internal_1): If key is a cons, store the copy
11197 in sequence.
11198
11199 * chartab.c (map_sub_char_table, map_char_table): If the range
11200 contains just one character, call the function with that character
11201 even if the depth is not 3.
11202
112032008-02-01 Jason Rumney <jasonr@gnu.org>
11204
11205 * w32font.c (w32font_text_extents): Calculate metrics for the
11206 whole string.
11207
112082008-02-01 Jason Rumney <jasonr@gnu.org>
11209
11210 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
11211
112122008-02-01 Jason Rumney <jasonr@gnu.org>
11213
11214 * w32term.c (x_set_glyph_string_clipping): Use
11215 get_glyph_string_clip_rects.
11216 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11217 Adjust for the change of struct glyph_string.
11218
11219 * w32font.c (w32font_draw): Do clipping here.
11220
112212008-02-01 Kenichi Handa <handa@m17n.org>
11222
11223 * xftfont.c (xftfont_draw): Adjust for the change of struct
11224 glyph_string.
11225
11226 * xterm.c (x_set_glyph_string_clipping): Use
11227 get_glyph_string_clip_rects.
11228 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11229 Adjust for the change of struct glyph_string.
11230
11231 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
11232 the resulting clip(s}.
11233 (expose_overlaps): Add arg r. Change callers. Set it to
11234 row->clip temporarily.
11235 (expose_window): Redraw rows overlapping the exposed area.
11236
11237 * dispextern.h (struct glyph_row): New member clip.
11238 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
11239 clip_height, new member clip, and num_clips.
11240
112412008-02-01 Kenichi Handa <handa@m17n.org>
11242
11243 * data.c (Fchar_or_string_p): Fix docstring.
11244
112452008-02-01 Kenichi Handa <handa@m17n.org>
11246
11247 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
11248 create a temporary XftDraw object.
11249
112502008-02-01 Kenichi Handa <handa@m17n.org>
11251
11252 * font.c (Ffontp): Fix docstring.
11253
11254 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
11255 strong evidence of ISO-2022.
11256
112572008-02-01 Kenichi Handa <handa@m17n.org>
11258
11259 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
11260 SYNTAX_ENTRY_FOLLOW_PARENT.
11261
112622008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11263
11264 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
11265 its type.
11266 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
11267 Update to the new type of weak_hash_tables and next_weak.
11268
11269 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
11270 a plain C pointer to Lisp_Hash_Table.
11271
11272 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
11273 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
11274 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
11275 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
11276 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
11277 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
11278 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
11279 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
11280 (GC_EQ): Remove since they've been identical to their non-GC_
11281 alter-egos ever since the markbit was eradicated.
11282
11283 * alloc.c:
11284 * buffer.c:
11285 * buffer.h:
11286 * data.c:
11287 * fileio.c:
11288 * filelock.c:
11289 * fns.c:
11290 * frame.h:
11291 * lisp.h:
11292 * macterm.c:
11293 * print.c:
11294 * process.c:
11295 * w32fns.c:
11296 * w32menu.c:
11297 * w32term.c:
11298 * xfns.c:
11299 * xmenu.c:
11300 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
11301
113022008-02-01 Kenichi Handa <handa@m17n.org>
11303
11304 * chartab.c (map_sub_char_table): Make it work for the top-level
11305 char-table. Fix handling of parent char-table.
11306 (map_char_table): Adjust for the above change.
11307
113082008-02-01 Jason Rumney <jasonr@gnu.org>
11309
11310 * w32font.c (Qgdi): Rename from Qw32.
11311
113122008-02-01 Jason Rumney <jasonr@gnu.org>
11313
11314 * w32bdf.c (get_quoted_string): Make function static.
11315
113162008-02-01 Kenichi Handa <handa@m17n.org>
11317
11318 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
11319 bigger ascent and descent than those of the font, use them as
11320 font's ascent and descent.
11321
113222008-02-01 Kenichi Handa <handa@m17n.org>
11323
11324 * Makefile.in (${lispsource}international/charprop.el): Move this
11325 target within "#ifdef HAVE_UNIDATA" and "#endif".
11326
113272008-02-01 Kenichi Handa <handa@m17n.org>
11328
11329 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
11330 (shortlisp): Add ../lisp/language/tai-viet.el.
11331
113322008-02-01 Ulrich Mueller <ulm@gentoo.org>
11333
11334 * Makefile.in (${lispsource}international/charprop.el): Depend on
11335 temacs${EXEEXT}.
11336
113372008-02-01 Jason Rumney <jasonr@gnu.org>
11338
11339 * w32font.c (w32font_close): Delete the GDI font object.
11340
11341 * w32menu.c: Include character.h.
11342
11343 * w32proc.c: Likewise.
11344
11345 * w32select.c: Likewise.
11346
11347 * makefile.w32-in (w32proc.o): Depend on character.h.
11348
113492008-02-01 Jason Rumney <jasonr@gnu.org>
11350
11351 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
11352
11353 * w32menu.c (syms_of_w32menu): Likewise.
11354
11355 * w32proc.c (syms_of_ntproc): Likewise.
11356
11357 * w32select.c (syms_of_w32select): Likewise.
11358
11359 * w32term.c (syms_of_w32term): Likewise.
11360
113612008-02-01 Jason Rumney <jasonr@gnu.org>
11362
11363 * w32font.c (w32font_draw): Delete brush after using it.
11364
113652008-02-01 Jason Rumney <jasonr@gnu.org>
11366
11367 * w32font.c (w32font_open): Don't set font_idx.
11368 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
11369 to font settings.
11370 (w32font_draw): Fill background explicitly.
11371
113722008-02-01 Jason Rumney <jasonr@gnu.org>
11373
11374 * w32term.c (w32_initialize): Don't call w32font_initialize.
11375
11376 * w32font.c (w32font_info): Remove subranges.
11377 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
11378 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
11379 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
11380 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
11381 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
11382 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
11383 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
11384 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
11385 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
11386 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
11387 New symbols.
11388 (font_callback_data): New struct.
11389 (w32font_list, w32font_match): Use it.
11390 (w32font_open): Don't populate subranges.
11391 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
11392 (w32font_encode_char): Always return unicode code-point as-is.
11393 (w32font_text_extents): Supply a transformation matrix to
11394 GetGlyphOutline. Never look up by glyph index. Avoid looping
11395 twice. Use unicode version of GetTexExtentPoint32 instead of
11396 glyph index version.
11397 (set_fonts_frame): Remove.
11398 (w32_enumfont_pattern_entity): Add frame parameter, use it to
11399 set frame parameter. Use backward compatible fake foundries.
11400 Save generic family in extra slot under QCfamily. Make width slot
11401 constant. Save QCspacing value. Save list of scripts instead of
11402 binary subranges.
11403 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
11404 (add_font_entity_to_list): Use font_callback_data struct. Filter
11405 unwanted fonts.
11406 (add_one_font_entity_to_list): Use font_callback_data struct.
11407 (w32_registry): Default to iso10646_1.
11408 (fill_in_logfont): Use dpi from extra slot. Don't bother with
11409 string font registries. Don't fill in font name if it is a generic
11410 family name, fill family instead. Use spacing, family and script
11411 extra info to fill pitch, family and charset fields.
11412 (list_all_matching_fonts): Use font_callback_data struct.
11413 (unicode_range_for_char): Remove.
11414 (font_supported_scripts): New function.
11415 (w32font_initialize): Remove.
11416 (syms_of_w32font): Update which symbols are defined.
11417
114182008-02-01 Jason Rumney <jasonr@gnu.org>
11419
11420 * font.c (font_pixel_size): Reverse assq_no_quit args.
11421
11422 * w32term.h (FONT_WIDTH): Report max width, not average.
11423 (FONT_MAX_WIDTH): Remove.
11424 (FONT_AVG_WIDTH): New macro.
11425
11426 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
11427 redefinition of FONT_WIDTH.
11428
11429 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
11430 (w32_cache_char_metrics): Use FONT_WIDTH.
11431
11432 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
11433
114342008-02-01 Jason Rumney <jasonr@gnu.org>
11435
11436 * w32font.c (w32font_open): Make lfHeight negative.
11437
11438 * w32fns.c (x_default_font_parameter): Use new style font name.
11439 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
11440
114412008-02-01 Jason Rumney <jasonr@gnu.org>
11442
11443 * w32font.c (QCsubranges): New symbol.
11444 (w32font_open, w32font_has_char): Get subranges from subproperty
11445 of extra.
11446 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
11447 (syms_of_w32font): Define :subranges symbol.
11448
11449 * font.c (font_put_extra): Expose externally.
11450
11451 * font.h (font_put_extra): Move declaration from font.c.
11452
11453 * font.c (Ffont_get): Use font driver to determine otf capability.
11454 (adjust_anchor): Check if driver defines anchor_point before using.
11455
11456 * w32font.c (w32font_open): Handle size, height and pixel_size better.
11457 (w32font_draw): Use options.
11458 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
11459 Fix detection of truetype fonts.
11460 (registry_to_w32_charset): Handle charsets other than iso8859-1
11461 expressed as lisp symbols.
11462 (w32_registry): Express charset as lisp symbol.
11463 (fill_in_logfont): Reverse pixel and point height logic.
11464 Don't set width here. Set quality to default.
11465
11466 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
11467 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
11468
11469 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
11470 Remove redundant loop and allocation.
11471
11472 * makefile.w32-in (font.o, w32font.o): New objects.
11473 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
11474 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
11475
11476 * xdisp.c (fill_composite_glyph_string): Make the first arg to
11477 STORE_XCHARB a valid l-value.
11478
11479 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
11480 calculations for non-Truetype fonts.
11481 (x_draw_glyph_string): Sync with xterm.c.
11482 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
11483 Remove redundant code.
11484 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
11485
11486 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
11487 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
11488
11489 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
11490 (x_to_w32_charset, w32_to_x_charset): Expose externally.
11491
11492 * w32font.c: New file for w32 font backend.
11493
114942008-02-01 Kenichi Handa <handa@m17n.org>
11495
11496 * term.c: Don't include "buffer.h" twice.
11497
114982008-02-01 Kenichi Handa <handa@m17n.org>
11499
11500 * character.c (Funibyte_string): New function.
11501 (syms_of_character): Defsubr it.
11502
115032008-02-01 Jason Rumney <jasonr@gnu.org>
11504
11505 * w32term.c [USE_FONT_BACKEND]:
11506 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
11507 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
11508 (x_draw_glyph_string, x_draw_glyph_string_foreground)
11509 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
11510 (x_free_frame_resources): Sync with xterm.c.
11511
115122008-02-01 Andreas Schwab <schwab@suse.de>
11513
11514 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
11515 char-table size.
11516
115172008-02-01 Kenichi Handa <handa@m17n.org>
11518
11519 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
11520
115212008-02-01 Kenichi Handa <handa@m17n.org>
11522
11523 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
11524 font_otf_gpos, add font_drive_otf.
11525
11526 * fontset.c (fontset_find_font): Pay attention to font size
11527 specified for a font.
11528 (reorder_font_vector): Check contents of font_def.
11529
11530 * font.c (struct otf_list): Delete it.
11531 (otf_list): Make it a lisp variable.
11532 (otf_open): Use lispy otf_list.
11533 (generate_otf_features): Rename from parse_gsub_gpos_spec.
11534 (check_otf_features): New function.
11535 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
11536 New functions.
11537 (font_drive_otf): New function merging font_otf_gsub and
11538 font_otf_gpos.
11539 (font_open_for_lface): New arg spec. Change argument order.
11540 (font_load_for_face): Adjust for the change of font_open_for_lface.
11541 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
11542 Ffont_otf_gpos.
11543 (syms_of_font): Staticpro otf_list. Delete defsubr of
11544 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
11545
11546 * xfaces.c (set_font_frame_param): Adjust for the change of
11547 font_open_for_lface.
11548
11549 * font.h (font_open_for_lface): Adjust prototype.
11550 (struct font_driver): Delete members otf_gsub and otf_gpos, add
11551 member otf_drive.
11552 (font_otf_gsub, font_otf_gpos): Delete externs.
11553 (font_drive_otf): Extern it.
11554
115552008-02-01 Kenichi Handa <handa@m17n.org>
11556
11557 * font.c (font_at): If the window W is not on a window system,
11558 return Qnil.
11559
11560 * coding.c (produce_chars, encode_coding): Don't call
11561 insert_from_gap if no characters to produce.
11562
115632008-02-01 Kenichi Handa <handa@m17n.org>
11564
11565 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
11566 Fclear_face_cache.
11567
11568 * xfaces.c (face_for_font): Check also face->font==font->font.font.
11569
115702008-02-01 Miles Bader <miles@gnu.org>
11571
11572 * emacs.c (main): Change default value of `enable_font_backend' to 1.
11573 Parse "--disable-font-backend" option.
11574 (standard_args): Add "--disable-font-backend" option.
11575
115762008-02-01 Kenichi Handa <handa@m17n.org>
11577
11578 * fontset.c (fontset_find_font): New function.
11579 (fontset_font): Use fontset_find_font.
11580 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
11581 Register the specified font for all Latin characters.
11582 (new_fontset_from_font): Register the specified font for all Latin
11583 characters.
11584 (dump_fontset): For a realized fontset, include the base fontset
11585 name in the returned vector.
11586
115872008-02-01 Kenichi Handa <handa@m17n.org>
11588
11589 * character.h (CHAR_STRING): Cast C to unsigned on calling
11590 char_string.
11591
11592 * character.c (char_string): Type of arg C changed to unsigned.
11593 Signal an error if C is an invalid character code.
11594
11595 * editfns.c (general_insert_function, Fchar_to_string):
11596 Use CHARACTERP, not INTEGERP.
11597
115982008-02-01 Kenichi Handa <handa@m17n.org>
11599
11600 * character.h (MIN_MULTIBYTE_LEADING_CODE)
11601 (MAX_MULTIBYTE_LEADING_CODE): New macros.
11602
11603 * regex.c (analyse_first): Fix for multibyte characters in "case
11604 charset:" and "case categoryspec:".
11605
116062008-02-01 Andreas Schwab <schwab@suse.de>
11607
11608 * Makefile.in (LIBES): Move standard libraries to the end.
11609
116102008-02-01 Kenichi Handa <handa@m17n.org>
11611
11612 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
11613 nonzero, don't shrink the buffer nextb.
11614
11615 * buffer.h (struct buffer_text): New member inhibit_shrinking.
11616
11617 * coding.c (coding_alloc_by_making_gap): New arg offset.
11618 (alloc_destination): Call coding_alloc_by_making_gap with the arg
11619 offset.
11620 (decode_coding_iso_2022): Update coding->safe_charsets.
11621 (decode_coding_gap): Temporarily set
11622 current_buffer->text->inhibit_shrinking to 1.
11623
116242008-02-01 Kenichi Handa <handa@m17n.org>
11625
11626 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
11627 indexing into elements of s->cmp and s->char2b.
11628
116292008-02-01 Juanma Barranquero <lekktu@gmail.com>
11630
11631 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
11632
116332008-02-01 Kenichi Handa <handa@m17n.org>
11634
11635 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
11636 target_multibyte instead of multibyte.
11637 (re_match_2_internal): Call bcmp_translate with target_multibyte.
11638 (bcmp_translate): Change the argument name from multibyte to
11639 target_multibyte.
11640
116412008-02-01 Kenichi Handa <handa@m17n.org>
11642
11643 These changes are to compile a regexp into a pattern that can be
11644 used both for multibyte and unibyte targets.
11645
11646 * Makefile.in (search.o): Depend on charset.h.
11647
11648 * character.c (multibyte_char_to_unibyte_safe): New function.
11649
11650 * search.c: Include "charset.h".
11651 (compile_pattern_1): Delete argument multibyte. Don't set
11652 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
11653 (compile_pattern): Don't compare cp->buf.target_multibyte.
11654 Compare cp->buf.charset_unibyte.
11655 (compile_pattern): Set cp->buf.target_multibyte.
11656
11657 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
11658
11659 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
11660
11661 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
11662 multibyte. Change callers.
11663 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
11664 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
11665 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
11666 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
11667 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
11668 (regex_compile): Make the compiled pattern usable both for
11669 multibyte and unibyte targets.
11670 (analyse_first): Make the fastmap usable both for multibyte and
11671 unibyte targets.
11672 (TRANSLATE_VIA_MULTIBYTE): Delete.
11673 (re_match_2_internal): Pay attention to the case that the
11674 multibyteness of bufp and target may be different.
11675
116762008-02-01 Kenichi Handa <handa@m17n.org>
11677
11678 * xdisp.c (x_produce_glyphs): When a font is not found, make the
11679 empty box occupy at least one column width.
11680
116812008-02-01 Miles Bader <miles@gnu.org>
11682
11683 * Makefile.in: Remove redundant HAVE_XFT clause.
11684
116852008-02-01 Kenichi Handa <handa@m17n.org>
11686
11687 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
11688
116892008-02-01 Kenichi Handa <handa@m17n.org>
11690
11691 * fontset.c (Finternal_char_font): Fix for the case of POSITION
11692 being nil.
11693
116942008-02-01 Kenichi Handa <handa@m17n.org>
11695
11696 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
11697
116982008-02-01 Kenichi Handa <handa@m17n.org>
11699
11700 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
11701
117022008-02-01 Kenichi Handa <handa@m17n.org>
11703
11704 * search.c (simple_search): Fix previous change.
11705
117062008-02-01 Kenichi Handa <handa@m17n.org>
11707
11708 * xftfont.c (ftfont_font_format): Extern declaration.
11709
11710 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
11711
11712 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
11713 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
11714
11715 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
11716 (ftfont_font_format): Fix previous change.
11717
11718 * font.h (Ffont_xlfd_name): EXFUN it.
11719
11720 * font.c (font_parse_xlfd): Fix the array size of `f'.
11721 (register_font_driver): Use EQ to compare driver->type.
11722
11723 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
11724 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
11725 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
11726
117272008-02-01 Kenichi Handa <handa@m17n.org>
11728
11729 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
11730 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
11731
117322008-02-01 Kenichi Handa <handa@m17n.org>
11733
11734 * xfont.c (xfont_open): Set font->format.
11735
11736 * xftfont.c (xftfont_open): Set font->format.
11737
11738 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
11739 (ftfont_list): Include FC_FONTFORMAT in FcObject.
11740 (ftfont_open): Set font->format.
11741 (ftfont_font_format): New function.
11742
11743 * font.h (struct font): New member format.
11744
11745 * font.c (Qopentype): New variable.
11746 (syms_of_font): Defsym it.
11747 (Fquery_font): Change the format of the last element of the return
11748 value.
11749
117502008-02-01 Kenichi Handa <handa@m17n.org>
11751
11752 * xfns.c (xic_create_xfontset): Try the default fontset name as a
11753 last resort.
11754
117552008-02-01 Kenichi Handa <handa@m17n.org>
11756
11757 * coding.c (detect_coding_charset): Fix detection of multi-byte
11758 charset.
11759
117602008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
11761
11762 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
11763
117642008-02-01 Kenichi Handa <handa@m17n.org>
11765
11766 * xdisp.c (get_next_display_element): Set it->face_id for the
11767 first component of a composition.
11768 (x_produce_glyphs): Check if the font is changed or not for composition.
11769
117702008-02-01 Kenichi Handa <handa@m17n.org>
11771
11772 * fontset.c (Qlatin): New variable.
11773 (syms_of_fontset): Define it as a lisp symbol.
11774 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
11775
117762008-02-01 Kenichi Handa <handa@m17n.org>
11777
11778 * font.c (font_unparse_fcname): Pay attention to the case that
11779 some of font property is a null string.
11780
117812008-02-01 Kenichi Handa <handa@m17n.org>
11782
11783 * term.c: Include "composite.h".
11784 (encode_terminal_code): Output all components of composition.
11785 Check the size of encode_terminal_src.
11786 (produce_glyphs): For composition, call produce_composite_glyph.
11787 (append_composite_glyph, produce_composite_glyph): New functions.
11788
11789 * xdisp.c (x_produce_glyphs): In handling composition, if a font
11790 is not found, get font_info from the current ascii face.
11791
117922008-02-01 Kenichi Handa <handa@m17n.org>
11793
11794 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
11795 buffer-file-name to Qnil before calling insert_from_buffer.
11796
11797 * font.c (font_unparse_fcname): Pay attention to the case that
11798 foundry is a null string.
11799
118002008-02-01 Kenichi Handa <handa@m17n.org>
11801
11802 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
11803
11804 * font.c (Qunicode_sip): New variable.
11805 (syms_of_font): Declare it as a Lisp symbol.
11806
11807 * font.h (Qunicode_sip): Extern it.
11808
118092008-02-01 Kenichi Handa <handa@m17n.org>
11810
11811 * composite.c (get_composition_id): Pay attention to TAB component.
11812
11813 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
11814 TAB. Adjust for the change of s->char2b which always points to
11815 the first element of allocated memory.
11816
11817 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
11818
11819 * xdisp.c (handle_composition_prop): Set it->c to the first
11820 non-TAB component.
11821 (fill_composite_glyph_string): Change argument.
11822 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
11823 (x_produce_glyphs): Fix handling of left/right padding.
11824
118252008-02-01 Kenichi Handa <handa@m17n.org>
11826
11827 * coding.c (detect_coding_system): Fix for handling off
11828 inhibit_iso_escape_detection. Fix for the case that no coding
11829 system is defined for a specific coding category.
11830
118312008-02-01 Kenichi Handa <handa@m17n.org>
11832
11833 * font.c (font_matching_entity): Delete unused local var.
11834
11835 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
11836 opening a font.
11837
11838 * fileio.c (Finsert_file_contents): On recovering a file, assume
11839 Unix-like eol.
11840 (choose_write_coding_system): On auto-saving a file, force
11841 Unix-like eol.
11842
11843 * coding.c (setup_coding_system): Fix setting of
11844 coding->common_flags based on eol_type.
11845 (coding_inherit_eol_type): If PARENT is not nil, be sure to
11846 inherit from it.
11847
118482008-02-01 Kenichi Handa <handa@m17n.org>
11849
11850 * alloc.c (NSTATICS): Increas to 0x600.
11851
118522008-02-01 Kenichi Handa <handa@m17n.org>
11853
11854 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
11855 (ftfont_list): Don't check :name property.
11856 (ftfont_match): New function.
11857 (ftfont_pattern_entity): If the pattern doesn't contain
11858 FC_SPACING, don't assume FC_MONO.
11859
11860 * font.h (struct font_driver): New member `match'.
11861 (font_update_drivers): Adjust prototype.
11862
11863 * font.c (font_parse_fcname, font_parse_name): Don't change :name
11864 property of FONT.
11865 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
11866 them unconditionally.
11867 (font_matching_entity): New function.
11868 (font_open_by_name): Try font_matching_entity if exact match is
11869 not found.
11870 (font_update_drivers): Delete the arg FONT. Return a list of
11871 actually used backends. Don't free faces, font caches here.
11872 Don't store data in frame parameters. Don't call x_set_font.
11873 (Ffont_spec): Store :name property as is.
11874 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
11875 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
11876 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
11877 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
11878 Call font->driver->otf_gsub instead of font_otf_gsub.
11879
11880 * frame.c (x_set_font_backend): Do more works that were done in
11881 font_update_drivers before.
11882
11883 * xfont.c (xfont_match): New function.
11884 (xfont_driver): Set xfont_driver.match to xfont_match.
11885 (xfont_draw): Set font in GC if necessary.
11886
11887 * ftxfont.c (ftxfont_match): New function.
11888 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
11889
11890 * xftfont.c (xftfont_match): New function.
11891 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
11892
118932008-02-01 Kenichi Handa <handa@m17n.org>
11894
11895 * font.h (struct font): New member scalable.
11896 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
11897 (font_otf_gsub): Adjust prototype.
11898
11899 * font.c (font_otf_capability): Fix handling of the default langsys.
11900 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
11901 Check the contents of SPEC.
11902 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
11903 (check_gstring): New function.
11904 (REPLACEMENT_CHARACTER): New macro.
11905 (font_otf_gsub): New arg alternate_subst. Be sure to set all
11906 glyph codes of GSTRING.
11907 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
11908 (font_prepare_composition): Set cmp->glyph_len.
11909 (font_open_entity): Set font->scalable.
11910 (Ffont_get): Handle :otf property.
11911 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
11912 functions.
11913 (Fquery_font): Use font->font.full_name.
11914 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
11915 Sfont_otf_alternates.
11916
11917 * ftfont.c (ftfont_open): Set font->font.full_name and
11918 font->font.name properly. Fix calculation of font->font.height
11919 and font->min_width.
11920
11921 * ftxfont.c (ftxfont_create_gcs): New function.
11922 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
11923 (ftxfont_draw_backgrond): Fix filling region.
11924 (ftxfont_default_fid): New function.
11925 (ftxfont_open): Set xfont->fid to the return value of
11926 ftxfont_default_fid.
11927 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
11928 (ftxfont_done_face): Free only GCs that are created by
11929 ftxfont_create_gcs.
11930 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
11931
11932 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
11933 Clip to src->width, etc (not src->clip_XXX).
11934
11935 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
11936 FontBackend frame parameter.
11937
119382008-02-01 Kenichi Handa <handa@m17n.org>
11939
11940 * font.h (struct font_driver_list): New member `on'.
11941 (Fclear_font_cache): EXFUN it.
11942 (font_update_drivers): Extern it.
11943
11944 * font.c (font_unparse_fcname): Fix typo (swidth->width).
11945 (font_list_entities): Check driver_list->on.
11946 (register_font_driver): Initalize `on' member to 0.
11947 (font_update_drivers): New function.
11948 (Fclear_font_cache): Check driver_list->on.
11949
11950 * frame.h (Qfont_backend): Extern it.
11951 (x_set_font_backend): Extern it.
11952
11953 * frame.c (Qfont_backend): New variable.
11954 (frame_parms): New element for font-backend.
11955 (x_set_font_backend): New function.
11956
11957 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
11958 FontBackend frame parameter.
11959 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
11960 x_set_font_backend.
11961
11962 * xfont.c (xfont_list): Don't try listing by :name property if the
11963 name is not for XLFD.
11964
119652008-02-01 Kenichi Handa <handa@m17n.org>
11966
11967 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
11968 (LGLYPH_SET_TO): New macros.
11969 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
11970 element of G is vector or not.
11971 (font_at): Extern it.
11972
11973 * font.c: Include window.h.
11974 (font_lispy_object): New function.
11975 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
11976 end of valid glyph.
11977 (font_close_object): Fix getting (struct font *).
11978 (font_at): New function.
11979 (Ffont_get): If FONT is a font-object, get entity from it.
11980 (Ffont_make_gstring): Initialize elements of glyphs with nil.
11981 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
11982 range check.
11983 (Ffont_at): New function.
11984 (syms_of_font): Defsubr Sfont_at.
11985
11986 * xdisp.c (it_props): Move the entry for Qauto_composed to just
11987 before the entry for Qcomposition.
11988 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
11989 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
11990 the font in gstring.
11991 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
11992 LGLYPH_FORM (g) to detect the end of valid glyph.
11993 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
11994 we are composing with gstring.
11995
11996 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
11997 Check if adjustment is vector or not.
11998
11999 * Makefile.in (font.o): Make it depends on window.h.
12000
120012008-02-01 Kenichi Handa <handa@m17n.org>
12002
12003 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
12004 adjustment is vector or not.
12005
120062008-02-01 Miles Bader <miles@gnu.org>
12007
12008 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
12009
120102008-02-01 Kenichi Handa <handa@m17n.org>
12011
12012 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
12013 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
12014 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
12015
12016 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
12017 (DEVICE_DELTA): Fix typo.
12018 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
12019 LGLYPH format.
12020
12021 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12022 the change of LGLYPH format.
12023
120242008-02-01 Kenichi Handa <handa@m17n.org>
12025
12026 * ftfont.c (ftfont_list): Fix typo.
12027 (ftfont_build_basic_charsets): Don't include letters with diacritics.
12028
120292008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12030
12031 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
12032
12033 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
12034 xftface_info is non-NULL.
12035
120362008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12037
12038 * ftfont.c (ftfont_list): Move misplaced #endif.
12039
120402008-02-01 Kenichi Handa <handa@m17n.org>
12041
12042 * ftfont.c (ftfont_list): Pay attention to the case that
12043 FC_CAPABILITY is not defined.
12044
120452008-02-01 Kenichi Handa <handa@m17n.org>
12046
12047 * xftfont.c (xftfont_open): Set charset related members to -1.
12048
12049 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
12050 QCname.
12051 (ftfont_open): Set charset related members to -1.
12052
12053 * fontset.c (Votf_script_alist): New variable.
12054 (syms_of_fontset): Initialize it.
12055 (fontset_font): Delete unused variable.
12056
12057 * fontset.h (Votf_script_alist): Extern it.
12058
12059 * font.c (font_find_for_lface): Optimize code.
12060
12061 * font.h (font_close_object, font_merge_old_spec): Extern them.
12062
120632008-02-01 Kenichi Handa <handa@m17n.org>
12064
12065 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
12066 (syms_of_font): Initialize them.
12067 (font_pixel_size): Allow float value in dpi.
12068 (font_prop_validate_type): Delete.
12069 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
12070 Change caller.
12071 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
12072 (font_prop_validate_extra): Delete.
12073 (font_prop_validate_spacing): New function.
12074 (font_property_table): Add elements for all known properties.
12075 (get_font_prop_index): Rename from check_font_prop_name. New
12076 argument FROM. Change caller.
12077 (font_prop_validate): Validate all known properties.
12078 (font_put_extra): Delete argument force. Change caller.
12079 (font_expand_wildcards): Make it static. Fix the way of shrinking
12080 the possible range.
12081 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
12082 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
12083 Change caller.
12084 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
12085 (font_parse_fcname): Delete argument merge. Fix parsing of point
12086 size. Don't validate properties values here. Change caller.
12087 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
12088 (font_open_by_name): Delete unused variable.
12089 (Ffont_spec): Likewise. Validate property values.
12090 (Ffont_match_p): New function.
12091
12092 * font.h (QCscalable): Extern it.
12093 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
12094
12095 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
12096
12097 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
12098 (xfont_list_pattern): New function.
12099 (xfont_list): Use xfont_list_pattern.
12100
121012008-02-01 Kenichi Handa <handa@m17n.org>
12102
12103 * font.h (Flist_fonts): EXFUN it.
12104
121052008-02-01 Jason Rumney <jasonr@gnu.org>
12106
12107 * w32term.c (w32_initialize): Add back smoothing_type and
12108 smoothing_enabled definitions.
12109
121102008-02-01 Kenichi Handa <handa@m17n.org>
12111
12112 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
12113 s->face->font on determining underline position.
12114
121152008-02-01 Kenichi Handa <handa@m17n.org>
12116
12117 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
12118 (font_has_char): Accept font-object too.
12119 (font_find_for_lface): Try at first with a size specified in face.
12120
121212008-02-01 Kenichi Handa <handa@m17n.org>
12122
12123 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
12124 font_open_by_name.
12125
121262008-02-01 Kenichi Handa <handa@m17n.org>
12127
12128 * font.h (QCspacing, QCdpi): Extern them.
12129 (enum font_spacing): New enum.
12130 (FONT_PIXEL_SIZE_QUANTUM): New macro.
12131
12132 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
12133 (QCspacing, QCdpi): New variables.
12134 (syms_of_font): Initialize them.
12135 (font_pixel_size): New function.
12136 (font_put_extra): New function.
12137 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
12138 in FONT_EXTRA.
12139 (font_parse_fcname): Handle enumerated values (e.g. bold).
12140 Fix handling font size. Add QCname property that contains only
12141 unknown properties.
12142 (font_score): Change argument. Change caller. Pay attention to
12143 FONT_PIXEL_SIZE_QUANTUM.
12144 (font_sort_entites, font_list_entities, font_find_for_lface)
12145 (font_open_for_lface, font_open_by_name): Fix handling of font size.
12146 (Ffont_spec): Add QCname property that contains only unknown properties.
12147
12148 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
12149 include weight in listing pattern, instead check weight of each
12150 listed font. Don't include scalable in pattern. Pay attention to
12151 FONT_PIXEL_SIZE_QUANTUM.
12152
121532008-02-01 Kenichi Handa <handa@m17n.org>
12154
12155 * font.c (font_parse_fcname): Fix parsing of point-size.
12156 (font_unparse_fcname): Produce symbolic names for style properties.
12157 (font_list_entities): Handle float size correctly.
12158 (font_open_by_name): Prefer `normal' property values if the name
12159 doesn't specify them.
12160
12161 * fontset.c (Finternal_char_font): Use font_get_name, not
12162 Ffont_xlfd_name.
12163
12164 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
12165 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
12166 pattern. Don't force scalable.
12167
12168 * xftfont.c (xftfont_open): For generating a name, start from
12169 96-byte buffer.
12170
121712008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12172
12173 * frame.h (x_new_fontset2): Fix prototype.
12174
121752008-02-01 Kenichi Handa <handa@m17n.org>
12176
12177 * font.h (struct font_driver): Delete member parse_name.
12178 (font_match_p, font_get_spec, font_parse_fcname)
12179 (font_unparse_fcname): Extern them.
12180 (font_get_name): Adjust prototype.
12181
12182 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
12183 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
12184 (font_expand_wildcards): Fix handling ENCODING field. Avoid
12185 unnecessary checks for weight, slant, and swidth.
12186 (font_parse_fcname): New function.
12187 (font_unparse_fcname): New function.
12188 (font_parse_name): New function.
12189 (font_match_p): New function.
12190 (font_get_name): Change return value to Lisp string.
12191 (font_get_spec): New function.
12192 (Qunspecified, Qignore_defface): Don't extern them.
12193 (font_find_for_lface): Assume that LFACE is fully specified.
12194 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
12195 object, use it for FACE.
12196 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
12197 driver->parse_name.
12198 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
12199
12200 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
12201 prototype.
12202
12203 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
12204 argument F. Don't call Fnew_fontset. Instead, directly call
12205 make_fontset.
12206
12207 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
12208
12209 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
12210 of x_new_fontset2.
12211
12212 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
12213 (Qsans__serif): New variables.
12214 (ftfont_generic_family_list): New variable.
12215 (syms_of_ftfont): Initialize the above variables.
12216 (ftfont_pattern_entity): Delete argument NAME.
12217 (ftfont_list_generic_family): New function.
12218 (ftfont_parse_name): Delete this function.
12219 (ftfont_list): Try generic family only when FcFontList found no font.
12220 (ftfont_list_family): Fix args to FcObjectSetBuild.
12221
12222 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
12223 object in attrs[LFACE_FONT_INDEX].
12224 (set_lface_from_font_name): Cancel all changes for font-backend.
12225 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
12226 function.
12227 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
12228 font object in QCfont attribute.
12229 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
12230 (realize_default_face) [USE_FONT_BACKEND]: Call
12231 set_lface_from_font_and_fontset.
12232
12233 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
12234 "fixed", and signal error here if no suitable font was found.
12235
12236 * xfont.c (xfont_parse_name): Delete this function.
12237
12238 * xftfont.c (xftfont_open): Change coding style of error
12239 handling. Generate fontconfig's fontname pattern.
12240
12241 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
12242 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
12243
12244 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
12245 Both args FONTSET and FONT_OBJECT must be existing ones.
12246
122472008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12248
12249 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
12250
122512008-02-01 Kenichi Handa <handa@m17n.org>
12252
12253 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
12254
12255 * font.h (struct font): Fix typo.
12256
12257 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
12258 XLFD_XXX_INDEX.
12259 (enum xlfd_field_mask): New enum.
12260 (intern_font_field): Changed argument. Change caller. If digits
12261 are followed by non-digits, return a symbol.
12262 (font_expand_wildcards): New function.
12263 (font_parse_xlfd): Fix wildcard handling.
12264 (Ffont_spec): If :name is specified, reflect the info in the other
12265 properties.
12266
12267 * ftfont.c (ftfont_pattern_entity): Fix typo.
12268 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
12269 locale.
12270
122712008-02-01 Kenichi Handa <handa@m17n.org>
12272
12273 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
12274
12275 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
12276 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
12277 registry doesn't specify encoding part.
12278 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
12279 (font_open_by_name): At first try parsing the name.
12280 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
12281 as Lisp symbols.
12282
12283 * fontset.c (reorder_font_vector): Pay attention to the case that
12284 the 3rd element of font_def is nil.
12285 (fontset_font): For the default fontset, append one more fontset
12286 elements for a script-based font specification. Don't add script
12287 attribute on finding a font.
12288 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
12289 font name.
12290 (fontset_ascii_font): If a font can't be opened, return nil.
12291
12292 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
12293 (ftfont_pattern_entity): New function.
12294 (ftfont_get_cache): Assume that freetype_font_cache is already
12295 initialized.
12296 (ftfont_list): Handle the case that a file is specified in font
12297 name. Use ftfont_pattern_entity to generate entities.
12298 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
12299 (syms_of_ftfont): Initialize freetype_font_cache.
12300
12301 * xftfont.c (xftfont_open): Make the font name fontconfig's
12302 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
12303 (xftfont_close): Free font->font.name if not NULL.
12304
12305 * xfont.c (xfont_list): If script is specified for a font, return
12306 null_vector.
12307 (xfont_list_family): Declare argument type.
12308
12309 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
12310 name, set LFACE_FONT (lface) to nil.
12311
12312 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
12313 return Qnil.
12314
123152008-02-01 Kenichi Handa <handa@m17n.org>
12316
12317 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
12318 (standard_args): Add "-enable-font-backend".
12319
123202008-02-01 Kenichi Handa <handa@m17n.org>
12321
12322 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
12323 (struct xftdraw_list, xftdraw_list): Delete them.
12324 (register_xftdraw, check_xftdraw): Delete them.
12325 (xftfont_prepare_face): Don't call register_xftdraw.
12326 (xftfont_done_face): Don't call check_xftdraw.
12327 (xftfont_draw): Get background color only when with_background is
12328 nonzero.
12329
12330 * xfont.c (xfont_encode_char): Fix calculation of char2b.
12331
123322008-02-01 Kenichi Handa <handa@m17n.org>
12333
12334 These changes are for the new font handling codes.
12335
12336 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
12337 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
12338 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
12339 (FONTSRC, FONTOBJ): New variables.
12340 (obj): Add $(FONTOBJ).
12341 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
12342 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
12343 @LIBOTF_LIBS@.
12344 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
12345 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
12346
12347 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
12348
12349 * character.h (Vscript_representative_chars): Extern it.
12350
12351 * character.c (Vscript_representative_chars): New variable.
12352 (syms_of_character): Declare it as a Lisp variable.
12353
12354 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
12355 enable_font_backend is nonzero, accept the composition method
12356 COMPOSITION_WITH_GLYPH_STRING.
12357
12358 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
12359 enumeration COMPOSITION_WITH_GLYPH_STRING.
12360
12361 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
12362 members clip_x, clip_y, clip_width, and clip_height.
12363 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
12364
12365 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
12366 --enable-font-backend. Call syms_of_font.
12367
12368 * fns.c (assoc_no_quit): New function.
12369
12370 * fontset.h (FONT_INFO_FROM_FACE): New macro.
12371 (face_for_font, new_fontset_from_font)
12372 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
12373
12374 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
12375 (fontset_font, fontset_ascii, face_for_char)
12376 (make_fontset_for_ascii_face, Ffont_info)
12377 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
12378 is nonzero, use font-backend mechanism.
12379 (find_font_encoding): Make it non-static.
12380 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
12381 New functions.
12382
12383 * frame.h (struct frame): New members resx and resy.
12384 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
12385 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
12386
12387 * frame.c [USE_FONT_BACKEND]: Include "font.h".
12388 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
12389
12390 * lisp.h (assoc_no_quit): Extern it.
12391
12392 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
12393 Through out the file, use FONT_INFO_FROM_FACE instead of
12394 FONT_INFO_FROM_ID, use get_per_char_metric instead of
12395 rif->per_char_metric.
12396 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
12397 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
12398 (get_glyph_face_and_encoding, fill_composite_glyph_string)
12399 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
12400 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
12401 nonzero, use font-backend mechanism.
12402 (get_per_char_metric): New function.
12403
12404 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
12405 (set_lface_from_font_name)
12406 (set_font_frame_param, free_realized_face)
12407 (prepare_face_for_display, clear_face_gcs)
12408 (Finternal_set_font_selection_order, realize_x_face)
12409 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
12410 font-backend mechanism.
12411 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
12412 (load_face_font) [USE_FONT_BACKEND]: Abort.
12413 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
12414 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
12415
12416 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
12417 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
12418 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
12419 nonzero, register all available font drivers. Call
12420 x_default_font_parameter for deciding a font.
12421 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
12422
12423 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
12424 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
12425 (x_set_glyph_string_clipping_exactly)
12426 (x_compute_glyph_string_overhangs)
12427 (x_draw_glyph_string_foreground)
12428 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
12429 (x_free_frame_resources) [USE_FONT_BACKEND]: If
12430 enable_font_backend is nonzero, use font-backend mechanism.
12431 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
12432
124332008-02-01 Kenichi Handa <handa@m17n.org>
12434
12435 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
12436 system_eol_type.
12437 (syms_of_coding): Initialize system_eol_type.
12438
12439 * process.c (Fset_process_coding_system): Inherit system's eol
12440 format if necessary.
12441
124422008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12443
12444 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
12445
124462008-02-01 Kenichi Handa <handa@m17n.org>
12447
12448 * coding.c (decode_eol): Pay attention to buffer relocation in
12449 del_range_2.
12450 (decode_coding): Call decode_eol before restoring undo_list.
12451
124522008-02-01 Kenichi Handa <handa@m17n.org>
12453
12454 * charset.c (Fdefine_charset_internal): Fix setting of
12455 emacs_mule_bytes.
12456
124572008-02-01 Kenichi Handa <handa@m17n.org>
12458
12459 * keyboard.c (read_char): Check if C is a character or not before
12460 looking up Vkeyboard_translate_table.
12461
124622008-02-01 Kenichi Handa <handa@m17n.org>
12463
12464 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
12465 condition to terminate the loop.
12466
124672008-02-01 Kenichi Handa <handa@m17n.org>
12468
12469 * coding.c (produce_composition): Compare charbuf[i] instead of
12470 args[i] against 0.
12471 (Fterminal_coding_system): Use EQ to compare Lisp objects.
12472
124732008-02-01 Kenichi Handa <handa@m17n.org>
12474
12475 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
12476 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
12477 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
12478 detect_coding.
12479 (emacs_mule_char): Handle old style (Emacs 20) component character
12480 of a composition.
12481 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
12482 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
12483 composition rule.
12484 (decode_coding_emacs_mule): Handle invalid bytes correctly.
12485
124862008-02-01 Kenichi Handa <handa@m17n.org>
12487
12488 * coding.c (encode_coding_ccl): Allocate destination dynamically
12489 when necessary.
12490
124912008-02-01 Kenichi Handa <handa@m17n.org>
12492
12493 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
12494 the loop. When quitted, show a proper error message.
12495
124962008-02-01 Kenichi Handa <handa@m17n.org>
12497
12498 * xterm.c (x_set_glyph_string_clipping_exactly): Set
12499 src->clip_head and src->clip_tail temporarily instead of src->hl.
12500
12501 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
12502 character sequence.
12503 (Fccl_execute_on_string): Use ASET, not XSET.
12504
125052008-02-01 Kenichi Handa <handa@m17n.org>
12506
12507 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
12508
125092008-02-01 Kenichi Handa <handa@m17n.org>
12510
12511 * coding.c (decode_coding): Fix the condition of terminating the
12512 decoding loop.
12513
125142008-02-01 Kenichi Handa <handa@m17n.org>
12515
12516 * data.c (Faset): On setting a character bigger than 255 in a
12517 unibyte string, signal an error instead of make the string multibyte.
12518
125192008-02-01 Kenichi Handa <handa@m17n.org>
12520
12521 * charset.c (map_charset_chars): Fix for ascii-compatible charset
12522 made by a mapping table.
12523
125242008-02-01 Kenichi Handa <handa@m17n.org>
12525
12526 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
12527 not.
12528 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
12529 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
12530
12531 * xterm.c (x_draw_composite_glyph_string_foreground): Check
12532 s->face is NULL or not.
12533
125342008-02-01 Kenichi Handa <handa@m17n.org>
12535
12536 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
12537 (x_draw_glyph_string): Fix drawing of right_overhang and
12538 left_overhang around/on cursor.
12539
12540 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
12541
125422008-02-01 Kenichi Handa <handa@m17n.org>
12543
12544 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
12545
125462008-02-01 Kenichi Handa <handa@m17n.org>
12547
12548 * coding.c (Fdefine_coding_system_internal)
12549 (Fdefine_coding_system_alias): Avoid a duplicated element in
12550 Vcoding_system_alist.
12551
125522008-02-01 Kenichi Handa <handa@m17n.org>
12553
12554 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
12555
12556 * coding.c (Qcoding_system_define_form): New variable.
12557 (syms_of_coding): Intern and staticpro it.
12558 (Fcoding_system_p): Check Qcoding_system_define_form.
12559 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
12560
12561 * coding.h (CODING_SYSTEM_P): If ID is not available, call
12562 Fcoding_system_p.
12563 (CHECK_CODING_SYSTEM): If ID is not available, call
12564 Fcheck_coding_system.
12565 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
12566 Try also Fcheck_coding_system.
12567
125682008-02-01 Kenichi Handa <handa@m17n.org>
12569
12570 * coding.c (code_conversion_restore): GCPRO arg.
12571
125722008-02-01 Kenichi Handa <handa@m17n.org>
12573
12574 * character.c (lisp_string_width): Check multibyteness of STRING.
12575
125762008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12577
12578 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
12579 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
12580 (decode_mac_font_name): Use decode_coding_c_string instead of
12581 decode_coding.
12582 (x_load_font): Initialize fontp->fontset to -1. Set
12583 fontp->encoding_type.
12584
125852008-02-01 Kenichi Handa <handa@m17n.org>
12586
12587 * search.c (search_buffer): Give up BM search on case-fold-search
12588 if one of a target character has a case-equivalence of different
12589 byte length even if that target charcter is an ASCII.
12590 (simple_search): Fix calculation of byte length of matched text.
12591 (boyer_moore): Fix handling of case-equivalent multibyte characters.
12592
125932008-02-01 Kenichi Handa <handa@m17n.org>
12594
12595 * coding.c (decode_coding): Fix handling of invalid bytes.
12596
125972008-02-01 Kenichi Handa <handa@m17n.org>
12598
12599 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
12600 Unicode characters.
12601
126022008-02-01 Kenichi Handa <handa@m17n.org>
12603
12604 * coding.c (encode_coding_object): If a pre-write-conversion
12605 function makes a new buffer, kill it.
12606
126072008-02-01 Kenichi Handa <handa@m17n.org>
12608
12609 * coding.c (QCascii_compatible_p): New variable.
12610 (syms_of_coding): Initialize it.
12611 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
12612 calling string_char.
12613 (record_conversion_result): Add `default:' case.
12614 (coding_charset_list): Delete unused variable `coding_type'.
12615 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
12616 property in the plist of the coding system.
12617 (Fcoding_system_put): Check QCascii_compatible_p.
12618
126192008-02-01 Miles Bader <miles@gnu.org>
12620
12621 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
12622 removed calculation of frame `f', as it's now used.
12623
126242008-02-01 Kenichi Handa <handa@m17n.org>
12625
12626 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
12627 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
12628 (UNIDATA): New variable.
12629 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
12630 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
12631 $(RUN_TEMACS) unconditionally.
12632
126332008-02-01 Kenichi Handa <handa@m17n.org>
12634
12635 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
12636 (admindir): New variable.
12637 ($(lispsource)international/charprop.el): New target.
12638
126392008-02-01 Miles Bader <miles@gnu.org>
12640
12641 * character.c (chars-in-region): Remove obsolete function.
12642 (syms_of_character): Remove its initialization.
12643
126442008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
12645
12646 * w32select.c (validate_coding_system)
12647 (setup_windows_coding_system): New functions.
12648 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
12649 setup_windows_coding_system.
12650 (setup_config, Fw32_get_clipboard_data): Use
12651 validate_coding_system.
12652 (Fx_selection_exists): Move call to setup_config to a place
12653 where signals are allowed.
12654
12655 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
12656 (Fcheck_coding_system): Add declarations.
12657
126582008-02-01 Kenichi Handa <handa@m17n.org>
12659
12660 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
12661
126622008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12663
12664 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
12665 string as the second argument for x_new_fontset.
12666
126672008-02-01 Kenichi Handa <handa@m17n.org>
12668
12669 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
12670 (encode_coding_object): Use safe_call instead of call2.
12671
126722008-02-01 Kenichi Handa <handa@m17n.org>
12673
12674 * fontset.c (Fset_fontset_font): Check family element of a given vector.
12675
12676 * Makefile.in (lisp): Include charprop.el.
12677
126782008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12679
12680 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
12681 Not sure if it's unnecessary.
12682
126832008-02-01 Steven Tamm <steventamm@mac.com>
12684
12685 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
12686 some possibly unnecessary fontset checking code that crashed
12687 when creating a new frame.
12688
126892008-02-01 Kenichi Handa <handa@m17n.org>
12690
12691 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
12692 lookup_face.
12693
12694 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
12695
12696 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
12697
126982008-02-01 Kenichi Handa <handa@m17n.org>
12699
12700 * coding.c: Cancel the change done in HEAD on 2008-02-01.
12701 (coding_charset_list): New function.
12702
12703 * coding.h (coding_charset_list): Extern it.
12704
127052008-02-01 Kenichi Handa <handa@m17n.org>
12706
12707 * fontset.c (Fset_fontset_font): Call find_font_encoding with
12708 concatenation of family and registry.
12709
127102008-02-01 Kenichi Handa <handa@m17n.org>
12711
12712 * character.h (BYTE8_STRING): Fix typo.
12713
12714 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
12715 string to multibyte (sync to HEAD).
12716
12717 * casefiddle.c (casify_region): Handle changes in byte-length
12718 using replace_range_2 (sync to HEAD).
12719
127202008-02-01 Andreas Schwab <schwab@suse.de>
12721
12722 * chartab.c (map_char_table): GCPRO table and arg.
12723
127242008-02-01 Kenichi Handa <handa@m17n.org>
12725
12726 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
12727 already at limit.
12728
127292008-02-01 Kenichi Handa <handa@m17n.org>
12730
12731 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
12732 instead of fast_c_string_match_ignore_case.
12733 (find_font_encoding): Change argument to Lisp_Object. Use
12734 fast_string_match_ignore_case instead of
12735 fast_c_string_match_ignore_case. Change caller.
12736
127372008-02-01 Kenichi Handa <handa@m17n.org>
12738
12739 * xdisp.c (get_next_display_element): In unibyte case, decide to
12740 display in octal form by checking a character by
12741 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
12742
12743 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
12744
12745 * character.c (unibyte_has_multibyte_table): New variable.
12746
12747 * character.h (unibyte_has_multibyte_table): Extern it.
12748 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
12749
127502008-02-01 Kenichi Handa <handa@m17n.org>
12751
12752 * coding.c (encode_coding_iso_2022): Fix handling of charset
12753 annotation.
12754
127552008-02-01 Kenichi Handa <handa@m17n.org>
12756
12757 * coding.c (setup_coding_system): If coding_system is nil, use
12758 Qundecided.
12759 (Fterminal_coding_system): Return nil if terminal coding system is
12760 `undecided'.
12761 (syms_of_coding): Define coding-system `undecided' here. Setup
12762 terminal_coding as `undecided'.
12763
127642008-02-01 Kenichi Handa <handa@m17n.org>
12765
12766 * xdisp.c (message_dolog, set_message_1): Call
12767 unibyte_char_to_multibyte with arg type int.
12768
12769 * lread.c (read1): Fix reading of a char-table.
12770
12771 * print.c (print_object): Include sub char-table in circularities
12772 detection.
12773
127742008-02-01 Kenichi Handa <handa@m17n.org>
12775
12776 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
12777 Append the found sequences in car of ARGS instead of prepending.
12778
127792008-02-01 Kenichi Handa <handa@m17n.org>
12780
12781 * fileio.c (report_file_error): Make a unibyte string from
12782 strerror (errorno).
12783 (Fsubstitute_in_file_name): Fix the arg to
12784 unibyte_char_to_multibyte. It is evaluated twice.
12785
127862008-02-01 Kenichi Handa <handa@m17n.org>
12787
12788 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
12789
127902008-02-01 Kenichi Handa <handa@m17n.org>
12791
12792 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
12793 BOM is not found.
12794 (detect_coding, detect_coding_system): Optimization for ISO-2022
12795 when no 8-bit data is found.
12796
127972008-02-01 Jason Rumney <jasonr@gnu.org>
12798
12799 * w32fns.c (x_to_w32_font): Update to use new coding struct.
12800
128012008-02-01 Kenichi Handa <handa@m17n.org>
12802
12803 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
12804 CHARS.
12805
128062008-02-01 Steven Tamm <steventamm@mac.com>
12807
12808 * macterm.c (mac_encode_char): Add charset argument and update
12809 to use encoding_type.
12810 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
12811 switch to pure fontset.
12812 (decode_mac_font_name): Temporarily remove decoding.
12813 (x_font_name_to_mac_font_name): Temporarily remove encoding.
12814 (x_load_font): Temporarily remove encoding.
12815
128162008-02-01 Kenichi Handa <handa@m17n.org>
12817
12818 * xfaces.c (Fface_font): If frame is not on a window system,
12819 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
12820 refer to face->font.
12821 (split_font_name_into_vector, build_font_name_from_vector)
12822 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
12823 when HAVE_WINDOW_SYSTEM is defined.
12824
128252008-02-01 Kenichi Handa <handa@m17n.org>
12826
12827 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
12828 (x_produce_glyphs): Fix setting of members of cmp in case
12829 cmp->glyph_len is zero.
12830
12831 * fontset.c (Fset_fontset_font): Fix docstring.
12832 (Ffontset_info): Make it backward compatible. New arg ALL.
12833
128342008-02-01 Kim F. Storm <storm@cua.dk>
12835
12836 * process.c (read_process_output): Grow decoding_buf when needed;
12837 this could cause a crash in allocate_string and compact_small_strings.
12838
128392008-02-01 Kenichi Handa <handa@m17n.org>
12840
12841 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
12842
128432008-02-01 Kenichi Handa <handa@m17n.org>
12844
12845 * coding.c (setup_coding_system): Set coding->common_flags
12846 correctly for raw-text.
12847 (consume_chars): On encoding unibyte text by raw-text, don't check
12848 multibyte form.
12849 (encode_coding): On encoding by raw-text, never use translation tables.
12850
12851 * fileio.c (e_write): Short cut for the case of no encoding.
12852
128532008-02-01 Kenichi Handa <handa@m17n.org>
12854
12855 * coding.c (detect_coding, detect_coding_system): Delete unused
12856 variables.
12857
128582008-02-01 Kenichi Handa <handa@m17n.org>
12859
12860 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
12861 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
12862
128632008-02-01 Kenichi Handa <handa@m17n.org>
12864
12865 * coding.c (Ffind_coding_systems_region_internal): Include
12866 raw-text and no-conversion in the result.
12867
128682008-02-01 Kenichi Handa <handa@m17n.org>
12869
12870 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
12871 (load_font_get_repertory): Delete unnecessary check of ENCODING of
12872 FONT_DEF.
12873 (font_def_arg, add_arg, from_arg, to_arg): New args.
12874 (set_fontset_font): Change argument.
12875 (Fset_fontset_font): Fix for the case that TARGET is a script
12876 name and charset name.
12877 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
12878
128792008-02-01 Kenichi Handa <handa@m17n.org>
12880
12881 * fontset.c (fontset_font): Rename from fontset_face. Change return
12882 value.
12883 (face_suitable_for_char_p, face_for_char): Adjust for the change
12884 of fontset_font.
12885 (make_fontset_for_ascii_face): Fix setting of the fontset element
12886 for ASCII.
12887 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
12888 to get a font name.
12889 (Ffontset_info): Adjust for the change of fontset_font.
12890
12891 * coding.c (emacs_mule_char): Check invalid code more rigidly.
12892
12893 * character.h (LEADING_CODE_LATIN_1_MIN)
12894 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
12895
128962008-02-01 Kenichi Handa <handa@m17n.org>
12897
12898 * editfns.c (check_translation): New function.
12899 (Ftranslate_region_internal): Handle M:N mapping.
12900
129012008-02-01 Kenichi Handa <handa@m17n.org>
12902
12903 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
12904
129052008-02-01 Kenichi Handa <handa@m17n.org>
12906
12907 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
12908 goto invalid_code.
12909 (decode_coding_iso_2022): Fix handling of invalid designation.
12910
12911 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
12912 after calling code_conversion_save.
12913
129142008-02-01 Kenichi Handa <handa@m17n.org>
12915
12916 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
12917
12918 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
12919
12920 * fontset.c: Include "intervals.h".
12921 (fontset_face): Fix comparing of Lisp_Objects.
12922 (free_face_fontset, new_fontset_from_font_name): Fix
12923 Lisp_Object/int mixup.
12924
12925 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
12926
12927 * coding.c: Add many prototypes for static functions.
12928 (get_translation_table): Allow max_lookup to be NULL.
12929 (decode_coding, Ffind_coding_systems_region_internal)
12930 (Funencodable_char_position, Fcheck_coding_systems_region): Call
12931 get_translation_table with max_lookup NULL.
12932
129332008-02-01 Kenichi Handa <handa@m17n.org>
12934
12935 * coding.c (get_translation_table): Declare it as Lisp_Object.
12936 (LOOKUP_TRANSLATION_TABLE): New macro.
12937 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
12938 instead of CHAR_TABLE_REF.
12939
129402008-02-01 Kenichi Handa <handa@m17n.org>
12941
12942 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
12943 annotation data format.
12944 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
12945 Change arguments FROM and TO to single argument NCHARS. Change caller.
12946 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
12947 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
12948 (decode_coding_ccl, decode_coding_charset): Pay attention to
12949 coding->charbuf_used.
12950 (get_translation): New function.
12951 (produce_chars): New arguments translation_table and last_block.
12952 Translate characters here. Return number of carryover chars.
12953 Change caller.
12954 (produce_composition): New argument pos. Change caller.
12955 Adjust for the change of annotation data format.
12956 (produce_charset, produce_annotation): Likewise.
12957 (decode_coding, encode_coding): Don't call translate_chars.
12958 (consume_chars): New arg translation_table. Change caller.
12959 (translate_chars): Delete.
12960 (syms_of_coding): Make translation-table's number of extra slots 2.
12961
129622008-02-01 Kenichi Handa <handa@m17n.org>
12963
12964 * search.c (simple_search): Fix setting this_pos_byte in backward
12965 search.
12966
12967 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
12968 byte sequence.
12969 (detect_coding_ccl): Fix setting of the variable valids.
12970
129712008-02-01 Kenichi Handa <handa@m17n.org>
12972
12973 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
12974
12975 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
12976
12977 * editfns.c (Ftranslate_region_internal): Rename from
12978 Ftranslate_region. Accept a char-table in TABLE.
12979 (syms_of_editfns): Defsubr Stranslate_region_internal.
12980
12981 * xfaces.c (set_lface_from_font_name): If a font is specified for
12982 a frame, generate a fontset from the font.
12983 (build_scalable_font_name): If the scalable font is requested for
12984 a specific size, don't change that size.
12985 (try_font_list): Try a scalable font also in the case that a
12986 pattern string is specified.
12987
129882008-02-01 Kenichi Handa <handa@m17n.org>
12989
12990 * xfaces.c (Fface_font): New optional arg CHARACTER.
12991
129922008-02-01 Kenichi Handa <handa@m17n.org>
12993
12994 * charset.h (CHARSET_OFFSET): New macro.
12995
129962008-02-01 Kenichi Handa <handa@m17n.org>
12997
12998 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
12999
13000 * fontset.c (fontset_face): Handle the case that repertory is a
13001 char-table.
13002 (find_font_encoding): Return nil for unknown encoding.
13003 (Fset_fontset_font): Ignore a font of unknown encoding.
13004
130052008-02-01 Kenichi Handa <handa@m17n.org>
13006
13007 * keymap.c (describe_vector): Handle default value of a char table.
13008
13009 * fontset.c (fontset_face): Handle fallback fonts correctly.
13010 (Ffontset_info): Return infomation about fallback fonts.
13011
130122008-02-01 Kenichi Handa <handa@m17n.org>
13013
13014 * fontset.c (FONTSET_DEFAULT): New macro.
13015 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
13016 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
13017 the case that it is nil.
13018 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
13019 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
13020
13021 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
13022 subset or superset.
13023
130242008-02-01 Kenichi Handa <handa@m17n.org>
13025
13026 * emacs.c (main): Call init_charset after syms_of_XXX.
13027
13028 * charset.c (Vcharset_map_directory): Delete.
13029 (Vcharset_map_path): New variable.
13030 (load_charset_map_from_file): Use Vcharset_map_path instead.
13031 (init_charset): Initialize Vcharset_map_path.
13032 (syms_of_charset): Delete declaration of "charset-map-directory",
13033 add declaration of "charset-map-path".
13034
130352008-02-01 Kenichi Handa <handa@m17n.org>
13036
13037 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
13038 ASCII only string.
13039
13040 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
13041
13042 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
13043 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
13044
130452008-02-01 Kenichi Handa <handa@m17n.org>
13046
13047 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
13048
13049 * coding.c (QCmnemonic, QCdefalut_char)
13050 (QCdecode_translation_table, QCencode_translation_table)
13051 (QCpost_read_conversion, QCpre_write_conversion): New variables.
13052 (get_translation_table): Return a list of translation tables if
13053 necessary.
13054 (decode_coding): Call get_translation_table with ENCODEP 0.
13055 (char_encodable_p): If translation_table is non-nil, always call
13056 translate_char.
13057 (Fdefine_coding_system_internal): Accept list of translation
13058 tables as :encode-translation-table and :decode-translation-table.
13059 (Fcoding_system_put): New function.
13060 (syms_of_coding): Declare new symbols. Defsubr
13061 Scoding_system_put.
13062 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
13063 typically JISX0212.
13064
13065 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
13066 when the charset is superset type.
13067
13068 * character.c (translate_char): Accept list of translation tables.
13069
130702008-02-01 Kenichi Handa <handa@m17n.org>
13071
13072 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
13073 (CODING_ATTR_TRANS_TBL): New macro.
13074
13075 * coding.c (get_translation_table): New function.
13076 (translate_chars): Fix the bug of skipping annotation data.
13077 (decode_coding, encode_coding): Utilize get_translation_table.
13078 (char_encodable_p, Funencodable_char_position): Translate char if
13079 necessary.
13080 (Ffind_coding_systems_region_internal)
13081 (Fcheck_coding_systems_region): Setup translation table for encode
13082 in a coding system attribute vector in advance.
13083 (Fdefine_coding_system_internal): Allow a symbol as translation
13084 table. For shift-jis type coding system, allow 4th charset.
13085
130862008-02-01 Kenichi Handa <handa@m17n.org>
13087
13088 * coding.c (decode_coding_sjis): Check the first byte rigidly.
13089
13090 * xdisp.c (get_next_display_element): Pass -1 as POS to
13091 FACE_FOR_CHAR if displaying a C-string.
13092
130932008-02-01 Kenichi Handa <handa@m17n.org>
13094
13095 * composite.c (get_composition_id): Handle xoff and yoff in a
13096 composition rule.
13097
13098 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
13099 (struct composition): New member lbearing and rbearing.
13100
13101 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
13102 (x_get_glyph_overhangs): Handle a composition glyph.
13103 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
13104
13105 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
13106 composition glyph.
13107
131082008-02-01 Kenichi Handa <handa@m17n.org>
13109
13110 * print.c: Include charset.h.
13111 (Vprint_charset_text_property): New variable.
13112 (Qdefault): Extern it.
13113 (PRINT_STRING_NON_CHARSET_FOUND)
13114 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
13115 (print_check_string_result): New variable.
13116 (print_check_string_charset_prop): New function.
13117 (print_prune_charset_plist): New variable.
13118 (print_prune_string_charset): New function.
13119 (print_object): Call print_prune_string_charset if
13120 Vprint_charset_text_property is not t.
13121 (print_interval): Print nothing if interval->plist is nil.
13122 (syms_of_print): Declare Vprint_charset_text_property as a lisp
13123 variable. Init and staticpro print_prune_charset_plist.
13124
131252008-02-01 Kenichi Handa <handa@m17n.org>
13126
13127 * fontset.c (new_fontset_from_font_name): Use the specified font
13128 for all characters in the new fontset.
13129
13130 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13131 OBJECT args.
13132
13133 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
13134 OBJECT args for composition too.
13135
13136 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13137 OBJECT args.
13138
131392008-02-01 Kenichi Handa <handa@m17n.org>
13140
13141 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
13142
13143 * fontset.c (reorder_font_vector): Adjust for the change of
13144 FONT_DEF format.
13145 (fontset_face): New arg id. Change caller.
13146 (face_for_char): New args pos and object.
13147 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
13148 (fs_query_fontset): Check NAME by Fassoc too.
13149 (Fset_fontset_font): Allow non-XLFD font name.
13150 (Ffontset_info): Adjust for the change of FONT_DEF format.
13151
13152 * fontset.h (face_for_char): Adjust prototype.
13153
13154 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
13155 (append_space, extend_face_to_end_of_line)
13156 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13157 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
13158
13159 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
13160 POS and OBJECT args.
13161
13162 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
13163 POS and OBJECT args.
13164
131652008-02-01 Jason Rumney <jasonr@gnu.org>
13166
13167 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
13168 of GlobalAlloc'ed memory.
13169
131702008-02-01 Kenichi Handa <handa@m17n.org>
13171
13172 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
13173
13174 * charset.h (charset_table_used): Delete extern.
13175
13176 * charset.c (charset_table_used): Make it static.
13177 (map_charset_chars): Fix args to c_function with.
13178
13179 * chartab.c (map_sub_char_table_for_charset): Fix args to
13180 c_function with.
13181
13182 * coding.h (enum coding_result_code): Delete
13183 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
13184
13185 * coding.c (Qinsufficient_source, Qinconsistent_eol)
13186 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
13187 (Vlast_code_conversion_error): New variables.
13188 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
13189 (ONE_MORE_BYTE): Record error if any instead of signaling an
13190 error. If non-ASCII multibyte char is found, return the negative
13191 value of the code. All callers changed to check it.
13192 (ONE_MORE_BYTE_NO_CHECK): Likewise.
13193 (record_conversion_result): New function. Change all codes setting
13194 coding->result to call this function.
13195 (detect_coding_utf_8, decode_coding_utf_8)
13196 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
13197 Don't use the local variable incomplete.
13198 (emacs_mule_char): Change the second arg to `const'.
13199 (decode_coding): Fix of flushing out unprocessed data.
13200 (make_conversion_work_buffer): Fix making of a work buffer.
13201 (decode_coding_object): Return coding->dst_object.
13202
13203 * fontset.c (set_fontset_font): Fix args.
13204
13205 * lisp.h (CHARACTERBITS): Define as 22.
13206
13207 * process.c (send_process): Be sure to set coding->src_multibyte.
13208
13209 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
13210
132112008-02-01 Kenichi Handa <handa@m17n.org>
13212
13213 * xdisp.c (handle_auto_composed_prop): Give limit to
13214 Fnext_single_char_property_change.
13215
132162008-02-01 Kenichi Handa <handa@m17n.org>
13217
13218 * composite.c (syms_of_composite): Don't make the composition hash
13219 table weak.
13220
13221 * fontset.c (Fset_fontset_font): Fix docstring.
13222
13223 * lisp.h (detect_coding_system): Adjust prototype.
13224
13225 * fileio.c (kill_workbuf_unwind): Delete this function.
13226 (Finsert_file_contents): Adjust the call of detect_coding_system.
13227 Get conversion_buffer by code_conversion_save. Use the macro
13228 CODING_MAY_REQUIRE_DECODING. After decoding, update
13229 coding_system.
13230
13231 * coding.h (make_conversion_work_buffer): Delete extern.
13232 (code_conversion_save): Extern it.
13233
13234 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
13235 (CODING_GET_INFO): Delete argument eol_type. Change callers.
13236 (decode_coding_utf_8): Don't do eol converion.
13237 (detect_coding_utf_16): Check coding->src_chars, not
13238 coding->src_bytes. Add heuristics for those that have no signature.
13239 (decode_coding_emacs_mule, decode_coding_iso_2022)
13240 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
13241 Don't do eol converion.
13242 (adjust_coding_eol_type): Return a new coding system.
13243 (detect_coding): Don't detect eol. Fix for utf-16 detection.
13244 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
13245 each change.
13246 (decode_coding): Pay attention to undo_list. Do eol conversion for
13247 all types of coding-systems (if necessary).
13248 (Vcode_conversion_work_buf_list): Delete it.
13249 (Vcode_conversion_reused_workbuf): Rename from
13250 Vcode_conversion_reused_work_buf.
13251 (Vcode_conversion_workbuf_name): New variable.
13252 (reused_workbuf_in_use): New variable.
13253 (make_conversion_work_buffer): Delete the arg DEPTH.
13254 (code_conversion_restore): Change argument to cons.
13255 (code_conversion_save): Delete the argument BUFFER. Change callers.
13256 (detect_coding_system): New argument src_chars. Change callers.
13257 Fix for utf-16 detection.
13258 (init_coding_once): Don't use ISO_carriage_return.
13259 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
13260 reused_workbuf_in_use.
13261
132622008-02-01 Kenichi Handa <handa@m17n.org>
13263
13264 * keymap.c (store_in_keymap): Pay attention to the case that idx
13265 is a cons specifying a character range.
13266
132672008-02-01 Kenichi Handa <handa@m17n.org>
13268
13269 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
13270 HANDLED_RECOMPUTE_PROPS.
13271
13272 * coding.c (Fdefine_coding_system_internal): Fix checking of
13273 ascii compatibility.
13274
132752008-02-01 Kenichi Handa <handa@m17n.org>
13276
13277 * charset.c (find_charsets_in_text): Delete unused locale variable.
13278 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
13279
13280 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
13281 Resync charset_list to Vemacs_mule_charset_list.
13282
13283 * keymap.c (store_in_keymap): Pay attention to the case that idx
13284 is a cons specifying a character range.
13285
132862008-02-01 Kenichi Handa <handa@m17n.org>
13287
13288 * composite.c (update_compositions): Bind inhibit-read-only, etc
13289 to t before calling remove-list-of-text-properties.
13290
13291 * print.c (print_object): Always print ASCII chars as is.
13292
132932008-02-01 Kenichi Handa <handa@m17n.org>
13294
13295 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
13296
13297 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
13298 is a char table.
13299
133002008-02-01 Kenichi Handa <handa@m17n.org>
13301
13302 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
13303
133042008-02-01 Kenichi Handa <handa@m17n.org>
13305
13306 * xfaces.c (set_lface_from_font_name): Fix for the case that
13307 FONTNAME is not fontset name.
13308
133092008-02-01 Kenichi Handa <handa@m17n.org>
13310
13311 * fns.c (base64_encode_1): Fix previous change.
13312
133132008-02-01 Kenichi Handa <handa@m17n.org>
13314
13315 * fontset.c (set_fontset_font): New function.
13316 (Fset_fontset_font): If a font is specified for a charset, use
13317 map_charset_chars to store the font spec in a fontset.
13318
133192008-02-01 Kenichi Handa <handa@m17n.org>
13320
13321 * fontset.c (fontset_face): Create a fallback fontset on demand.
13322 (make_fontset): Don't create a fallback fontset here.
13323 (free_face_fontset): Free a fallback fontset (if any) too.
13324 (n_auto_fontsets): Delete this variable.
13325 (auto_fontset_alist): New variable.
13326 (new_fontset_from_font_name): Check auto_fontset_alist.
13327 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
13328 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
13329 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
13330 Defsubr Sfontset_list_all.
13331
133322008-02-01 Kenichi Handa <handa@m17n.org>
13333
13334 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
13335
133362008-02-01 Kenichi Handa <handa@m17n.org>
13337
13338 * fontset.c (Fnew_fontset): Check NAME more rigidly.
13339
133402008-02-01 Kenichi Handa <handa@m17n.org>
13341
13342 * editfns.c (Fgoto_char): Fix docstring.
13343
133442008-02-01 Kenichi Handa <handa@m17n.org>
13345
13346 * insdel.c (insert_from_gap): Adjust intervals correctly.
13347
133482008-02-01 Jason Rumney <jasonr@gnu.org>
13349
13350 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
13351 (pfnGetFontUnicodeRanges): New dynamically loaded function.
13352 (w32_initialize): Try to load it.
13353 (x_get_font_repertory): Use it if available.
13354 (w32_encode_char): Add shortcut for unicode output.
13355
13356 * w32fns.c (w32_load_system_font): Default charset to -1.
13357 (x_to_w32_charset): Match all fonts for unicode.
13358 (w32_to_x_charset): New parameter matching. Don't return partial
13359 or wildcard charsets.
13360 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
13361 (w32_codepage_for_font): Return CP_UNICODE for unicode.
13362 (w32_to_x_font): Match charset to real charset.
13363 (enum_font_cb2): Always list unicode versions.
13364
13365 * makefile.w32-in (temacs): Increase EMHEAP.
13366
133672008-02-01 Jason Rumney <jasonr@gnu.org>
13368
13369 * w32term.c (w32_encode_char): New charset parameter.
13370 font_info.encoding becomes encoding_type.
13371 (x_get_font_repertory): New function. Warning: stub only!
13372 (x_new_font): Return quickly if font already set.
13373 (x_new_fontset): fontsetname parameter is Lisp_Object.
13374 Use new fs_query_fontset. Try new_fontset_from_font_name.
13375 Use fontset_name for return value.
13376
13377 * w32term.h: Declare x_get_font_repertory.
13378
13379 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
13380 place of find_charset_in_text. Use encode_coding_object in place
13381 of encode_coding.
13382 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
13383 decode_coding.
13384
13385 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
13386 of x_new_fontset.
13387 (w32_load_system_font): Initialize charset as unicode.
13388 font_info.encoding becomes encoding_type.
13389 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
13390 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
13391 (syms_of_w32fns): Set get_font_repertory_func.
13392
13393 * w32console.c: Include character.h. Use terminal_encode_buffer
13394 from term.c.
13395 (write_glyphs): Use new version of encode_terminal_code. Use
13396 encode_coding_object in place of encode_coding.
13397
13398 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
13399 encoding becomes encoding_type.
13400
13401 * term.c (terminal_encode_buffer): Make externally visible.
13402
13403 * makefile.w32-in: Add character.h dependancies.
13404 (character.o, chartab.o): New targets.
13405
134062008-02-01 Kenichi Handa <handa@m17n.org>
13407
13408 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
13409 CODING_ID_EOL_TYPE.
13410
134112008-02-01 Andreas Schwab <schwab@suse.de>
13412
13413 * coding.c (produce_chars): Revert last change.
13414
134152008-02-01 Kenichi Handa <handa@m17n.org>
13416
13417 * charset.h (charset_unicode): Extern it.
13418
13419 * charset.c (string_xstring_p): Check by (C >= 0x100).
13420 (find_charsets_in_text): Change format of the arc CHARSETS. New
13421 arg MULTIBYTE.
13422 (Ffind_charset_region, Ffind_charset_string): Adjust for the
13423 change of find_charsets_in_text.
13424 (Fsplit_char): Fix doc. Never return unknown.
13425
13426 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
13427
13428 * coding.c (Fdefine_coding_system_alias): Update
13429 Vcoding_system_list.
13430
13431 * fontset.c (load_font_get_repertory): Pay attention to the case
13432 that ENCODING of a font is specified by a char-table.
13433
13434 * xterm.c (x_get_font_repertory): Handle the case that the
13435 encoding of font is other than Unicode.
13436
134372008-02-01 Kenichi Handa <handa@m17n.org>
13438
13439 * term.c (encode_terminal_code): Don't handle glyph-table. Check
13440 if a character is encodable by the terminal coding system. If
13441 not, produces proper number of `?'s. Update
13442 terminal_encode_buffer and terminal_encode_buf_size if necessary.
13443 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
13444
134452008-02-01 Kenichi Handa <handa@m17n.org>
13446
13447 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
13448 variables.
13449 (encode_terminal_code): Change argument. Encode multiple
13450 characters at once. Store the result of encoding in
13451 terminal_encode_buffer.
13452 (write_glyphs, insert_glyphs): Adjust for the change of
13453 encode_terminal_code.
13454 (term_init): Initialize terminal_encode_buffer and
13455 terminal_encode_buf_size.
13456
13457 * coding.c (consume_chars): If coding->src_object is nil, don't
13458 check annotation.
13459
134602008-02-01 Kenichi Handa <handa@m17n.org>
13461
13462 * character.c (char_string): Use ASCII_CHAR_P instead of
13463 SINGLE_BYTE_CHAR_P.
13464
134652008-02-01 Kenichi Handa <handa@m17n.org>
13466
13467 * xdisp.c (handle_auto_composed_prop): Check if the last
13468 characters of auto-composed region is newly composed with the
13469 following characters.
13470 (handle_composition_prop): Fix checking of point being inside
13471 composition.
13472
134732008-02-01 Kenichi Handa <handa@m17n.org>
13474
13475 * fns.c (concat): Don't change multibyteness of the result by
13476 concatenating an 8-bit character.
13477
13478 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
13479 multibyteness of the result when newelt is an 8-bit character.
13480
134812008-02-01 Dave Love <fx@gnu.org>
13482
13483 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
13484 EMACS_INT.
13485
13486 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
13487
13488 * xfaces.c (face_numeric_value): Declare dim size_t.
13489 (Finternal_lisp_face_equal_p): Remove unused f.
13490
13491 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
13492 (MATRIX_ROW): Remove unused vars.
13493 (draw_glyphs, x_insert_glyphs, fast_find_position)
13494 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
13495 byte/char counts.
13496
13497 * regex.c (regex_compile): Remove unused var.
13498
13499 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
13500
13501 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
13502 (Faccessible_keymaps, where_is_internal): Remove unused vars.
13503
13504 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
13505
13506 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
13507
13508 * fileio.c (Fwrite_region): Remove unused var.
13509
13510 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
13511 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
13512
13513 * composite.c (Fremove_list_of_text_properties): Declare.
13514
13515 * coding.c (inhibit_pre_post_conversion): Remove (unused).
13516 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
13517 (coding_inherit_eol_type): Remove unused attrs.
13518 (detect_coding): Cast arg of detect_eol.
13519
13520 * charset.c (syms_of_charset): Remove unused var p.
13521 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
13522 byte/char counts.
13523
13524 * casetab.c (set_case_table): Remove unused var.
13525
13526 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
13527 unused vars.
13528
135292008-02-01 Dave Love <fx@gnu.org>
13530
13531 * xterm.c (x_bitmap_mask): Declare.
13532
135332008-02-01 Dave Love <fx@gnu.org>
13534
13535 * xterm.c (x_term_init): Fix type error.
13536
13537 * lisp.h: Add Funibyte_char_to_multibyte.
13538
13539 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
13540 (Fset_coding_system_priority): Doc fix.
13541
13542 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
13543
13544 * indent.c (check_composition): Make start and end EMACS_INT.
13545
13546 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
13547
13548 * xdisp.c (handle_composition_prop, check_point_in_composition):
13549 Make buffer positions EMACS_INT.
13550
13551 * composite.c (find_composition, run_composition_function)
13552 (update_compositions, Ffind_composition_internal): Make buffer
13553 positions EMACS_INT.
13554
13555 * composite.h (find_composition, update_compositions): Make
13556 position args EMACS_INT.
13557
13558 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
13559
13560 * intervals.c (get_property_and_range):
13561 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
13562
13563 * unexalpha.c: Don't include varargs.h.
13564
135652008-02-01 Dave Love <fx@gnu.org>
13566
13567 * coding.h (ENCODE_UTF_8): New.
13568
13569 * Makefile.in (gtkutil.o): Depend on coding.h.
13570
13571 * coding.c (Fset_coding_system_priority): Doc fix.
13572
135732008-02-01 Kenichi Handa <handa@m17n.org>
13574
13575 * fileio.c (Finsert_file_contents): Call setup_coding_system in
13576 the case of auto saving.
13577
135782008-02-01 Andreas Schwab <schwab@suse.de>
13579
13580 * chartab.c (map_char_table, map_char_table_for_charset): Protect
13581 `range' from GC.
13582
135832008-02-01 Kenichi Handa <handa@m17n.org>
13584
13585 * coding.c (decode_coding_sjis): Check bytes more rigidly.
13586
135872008-02-01 Kenichi Handa <handa@m17n.org>
13588
13589 * fileio.c (choose_write_coding_system): Return a decided coding system.
13590 (Fwrite_region): Set Vlast_coding_system_used to the return value
13591 of choose_write_coding_system.
13592
135932008-02-01 Kenichi Handa <handa@m17n.org>
13594
13595 * charset.c (Fset_charset_priority): Pay attention to duplicated
13596 arguments.
13597
13598 * coding.c (QCcategory): New variable.
13599 (syms_of_coding): Defsym it. Set all elements of
13600 Vcoding_category_table and their symbol values.
13601 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
13602 coding-category-XXX, and coding-category-list.
13603 (Fdefine_coding_system_internal): Add category in the plist.
13604
136052008-02-01 Kenichi Handa <handa@m17n.org>
13606
13607 * callproc.c (Fcall_process): Handle carryover correctly.
13608
13609 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
13610 (raw_text_coding_system): Check NILP (coding_system).
13611 (coding_inherit_eol_type): Check NILP (coding_system) and
13612 NILP (parent).
13613 (consume_chars): Fix for the case of raw-text.
13614
13615 * process.c (read_process_output): Handle carryover correctly.
13616
136172008-02-01 Dave Love <fx@gnu.org>
13618
13619 * regex.c (re_search_2): Fix last change.
13620
136212008-02-01 Kenichi Handa <handa@m17n.org>
13622
13623 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
13624 target_multibyte. Even in a unibyte case, return a converted
13625 multibyte char.
13626 (GET_CHAR_AFTER): New macro.
13627 (PATFETCH): Translate via multibyte char.
13628 (HANDLE_UNIBYTE_RANGE): Delete this macro.
13629 (SETUP_MULTIBYTE_RANGE): New macro.
13630 (regex_compile): Setup compiled code so that its multibyteness
13631 matches that of a target. Fix the handling of "[X-YZ]" using
13632 SETUP_MULTIBYTE_RANGE.
13633 (analyse_first) <charset>: For filling fastmap for all multibyte
13634 characters, don't check by BASE_LEADING_CODE_P.
13635 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
13636 the same as RE_MULTIBYTE_P (bufp) now.
13637 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
13638 (TARGET_CHAR_AND_LENGTH): Delete this macro.
13639 (TRANSLATE_VIA_MULTIBYTE): New macro.
13640 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
13641 It is the same as RE_MULTIBYTE_P (bufp) now.
13642 <exactn>: Translate via multibyte.
13643 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
13644 translate it.
13645 <charset, charset_not>: Fetch a character by
13646 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
13647 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
13648 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
13649 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
13650 by GET_CHAR_AFTER.
13651 (bcmp_translate): Likewise.
13652
13653 * search.c (compile_pattern): Check the member target_multibyte,
13654 not the member multibyte of buf.
13655
13656 * lread.c (read1): While reading a string, set force_singlebyte
13657 and force_multibyte correctly.
13658
13659 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
13660 up of unibyte_to_multibyte_table.
13661
136622008-02-01 Kenichi Handa <handa@m17n.org>
13663
13664 * coding.c (setup_coding_system): If coding has
13665 post-read-conversion or pre-write-conversion, set
13666 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
13667 respectively.
13668 (decode_coding_gap): Run post-read-conversion if any.
13669
13670 * fileio.c (Finsert_file_contents): Even if we read into a
13671 unibyte buffer, check if we must decode the result or not.
13672
136732008-02-01 Kenichi Handa <handa@m17n.org>
13674
13675 * coding.c (make_conversion_work_buffer): Change the work buffer
13676 name to the same one as that of Emacs 21.
13677
136782008-02-01 Kenichi Handa <handa@m17n.org>
13679
13680 * coding.h (make_conversion_work_buffer): Adjust prototype.
13681 (code_conversion_restore): Don't extern it.
13682
13683 * coding.c (detected_mask): Delete unused variable.
13684 (decode_coding_iso_2022): Pay attention to the byte sequence of
13685 CTEXT extended segment, and retain those bytes as is.
13686 (decode_coding_ccl): Delete unused variable `valids'.
13687 (setup_coding_system): Delete unused variable `category'.
13688 (consume_chars): Delete unused variable `category'. Make it work
13689 for non-multibyte case.
13690 (make_conversion_work_buffer): Change argument.
13691 (saved_coding): Delete unused variable.
13692 (code_conversion_restore): Don't check saved_coding->destination.
13693 (code_conversion_save): New function.
13694 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
13695 instead of record_unwind_protect.
13696 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
13697 (detect_coding_system): Delete unused variable `mask'.
13698 (Fdefine_coding_system_internal): Delete unused variable id.
13699
13700 * fileio.c (kill_workbuf_unwind): New function.
13701 (Finsert_file_contents): On replacing, call
13702 make_conversion_work_buffer with correct args, and call
13703 record_unwind_protect with the first arg kill_workbuf_unwind.
13704
13705 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
13706
137072008-02-01 Kenichi Handa <handa@m17n.org>
13708
13709 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
13710 (fontset_add): Fix for the case that TO is less than TO1.
13711 (Ffontset_info): Don't use fallback fontset on checking the
13712 default fontset.
13713 (dump_fontset): New function for debugging.
13714
13715 * coding.c (Fdefine_coding_system_internal): Fix for the case that
13716 coding_type is Qcharset.
13717
137182008-02-01 Kenichi Handa <handa@m17n.org>
13719
13720 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
13721 (map_char_table): Don't inherit the value from the parent on
13722 initializing VAL. Adjust for the above change.
13723
137242008-02-01 Kenichi Handa <handa@m17n.org>
13725
13726 * coding.c (Qsignature, Qendian): Delete these variables.
13727 (syms_of_coding): Don't initialize them.
13728 (CATEGORY_MASK_UTF_16_AUTO): New macro.
13729 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
13730 detect_info->found.
13731 (decode_coding_utf_16): Don't detect BOM here.
13732 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
13733 is NOT utf_16_without_bom.
13734 (setup_coding_system): For a coding system of type utf-16, check
13735 if the attribute :endian is Qbig or not (not nil or not), and set
13736 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
13737 (detect_coding): If coding type is utf-16 and BOM detection is
13738 required, detect it.
13739 (Fdefine_coding_system_internal): For a coding system of type
13740 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
13741
137422008-02-01 Kenichi Handa <handa@m17n.org>
13743
13744 * coding.c (coding_set_source): Fix for the case that the current
13745 buffer is different from coding->src_object.
13746 (decode_coding_object): Don't use the conversion work buffer if
13747 DST_OBJECT is a buffer.
13748
137492008-02-01 Dave Love <fx@gnu.org>
13750
13751 * lread.c (read_emacs_mule_char) [len==2]: Index
13752 emacs_mule_charset correctly.
13753
137542008-02-01 Dave Love <fx@gnu.org>
13755
13756 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
13757 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
13758 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
13759 treated specially.)
13760 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
13761 (detected_mask): Remove Big5 bits.
13762
137632008-02-01 Kenichi Handa <handa@m17n.org>
13764
13765 The following changes are to make the font rescaling facility
13766 compatible with Emacs 21.
13767
13768 * xfaces.c (Vface_font_rescale_alist): Rename from
13769 Vface_resizing_fonts.
13770 (struct font_name): Rename member resizing_ratio to rescale_ratio.
13771 (font_rescale_ratio): Rename from font_resizing_ratio.
13772 (split_font_name): Set font->rescale_ratio.
13773 (better_font_p): Pay attention to font->rescale_ratio.
13774 (build_scalable_font_name): Likewise. Change RESX, and RESY
13775 fields.
13776 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
13777
137782008-02-01 Kenichi Handa <handa@m17n.org>
13779
13780 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
13781 (Qutf_16_le): Remove these variables.
13782 (syms_of_coding): Don't DEFSYM them.
13783 (decode_coding_utf_16): Fix handling of BOM.
13784 (encode_coding_utf_16): Fix handling of BOM.
13785
137862008-02-01 Kenichi Handa <handa@m17n.org>
13787
13788 * fileio.c (Finsert_file_contents): On replacing, before decoding
13789 the file into the work buffer, set point of the work buffer to the end.
13790
137912008-02-01 Dave Love <fx@gnu.org>
13792
13793 * coding.c (Fcheck_coding_systems_region): Fix type errors.
13794
137952008-02-01 Dave Love <fx@gnu.org>
13796
13797 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
13798 and fix C types.
13799
138002008-02-01 Kenichi Handa <handa@m17n.org>
13801
13802 * xdisp.c (SKIP_GLYPHS): New macro.
13803 (set_cursor_from_row): Pay attention to string display properties.
13804
13805 * category.c (copy_category_entry): Fix for the case that RANGE
13806 is an integer.
13807
13808 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
13809
13810 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
13811
138122008-02-01 Kenichi Handa <handa@m17n.org>
13813
13814 * charset.c (Fcharset_id_internal): New function.
13815 (syms_of_charset): Defsubr it.
13816
13817 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
13818 with the last arg charset_list acquired from coding.
13819 (Fdefine_coding_system_internal): For ccl-based coding system, fix
13820 the attribute coding_attr_ccl_valids.
13821
13822 * coding.h (enum define_coding_ccl_arg_index): Set the first
13823 member coding_arg_ccl_decoder to coding_arg_max.
13824
13825 * ccl.h (ccl_driver): Adjust prototype.
13826
13827 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
13828 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 13829 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
13830 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
13831 last arg Qnil.
13832
138332008-02-01 Kenichi Handa <handa@m17n.org>
13834
13835 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
13836 call encode_char.
13837
13838 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
13839
138402008-02-01 Dave Love <fx@gnu.org>
13841
13842 * composite.c (syms_of_composite): Make composition_hash_table weak.
13843
138442008-02-01 Kenichi Handa <handa@m17n.org>
13845
13846 * dispextern.h (check_face_attributes, generate_ascii_font_name)
13847 (font_name_registry): Don't extern them.
13848 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
13849
13850 * fontset.h (Qfontset): Don't extern it.
13851 (new_fontset_from_font_name): Extern it.
13852
13853 * fontset.c: Give 8 extra slots to fontset objects.
13854 (Qfontset_info): New variable.
13855 (syms_of_fontset): Defsym it.
13856 (FONTSET_FALLBACK): New macro.
13857 (fontset_face): Try also the default fontset.
13858 (make_fontset): Realize a fallback fontset from the default fontset.
13859 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
13860 using split_font_name_into_vector and build_font_name_from_vector.
13861 (Fset_fontset_font): Access the elements of font_spec by enum
13862 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
13863 name by using split_font_name_into_vector.
13864 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
13865 generate a proper font name from the fontset name. Update
13866 Vfontset_alias_alist.
13867 (n_auto_fontsets): New variable.
13868 (new_fontset_from_font_name): New function.
13869 (Ffont_info): Store the information about fonts generated from the
13870 default fontset in the first extra slot of the returned char-table.
13871
13872 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
13873 (font_name_registry): Delete function.
13874 (split_font_name_into_vector): New function.
13875 (build_font_name_from_vector): New function.
13876 (font_list): The argument REGISTRY is now a list of registry names.
13877 (choose_face_font): If we are choosing an ASCII font, and ATTRS
13878 specifies an explicit font name, return the name as is. Make a
13879 list of registy names.
13880
13881 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
13882 of x_new_fontset.
13883 (Fx_create_frame): Don't call x_new_fontset here. Just use
13884 x_list_fonts to check the existence of fonts.
13885
13886 * xterm.h (x_new_fontset): Adjust prototype.
13887
13888 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
13889 string. Use new_fontset_from_font_name to create a fontset from a
13890 font name.
13891
138922008-02-01 Kenichi Handa <handa@m17n.org>
13893
13894 * syntax.c (Vfind_word_boundary_function_table): New name for
13895 Vnext_word_boundary_function_table.
13896 (find-word-boundary-function-table): New name for
13897 next-word-boundary-function-table.
13898
138992008-02-01 Dave Love <fx@gnu.org>
13900
13901 * Makefile.in: Fix some dependencies.
13902
13903 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
13904 set it to nil before returning.
13905
13906 * composite.c (update_compositions): Fix type error.
13907
13908 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
13909
139102008-02-01 Kenichi Handa <handa@m17n.org>
13911
13912 * xterm.c (x_new_font): Optimize for the case that the font is
13913 already set for the frame.
13914
139152008-02-01 Kenichi Handa <handa@m17n.org>
13916
13917 * chartab.c (char_table_ascii): Check if the char table contents
13918 is sub-char-table or not.
13919 (char_table_set, char_table_set_range): Fix argument to
13920 char_table_ascii.
13921
13922 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
13923 (detect_coding_utf_8, detect_coding_utf_16)
13924 (detect_coding_emacs_mule, detect_coding_iso_2022)
13925 (detect_coding_sjis, detect_coding_big5)
13926 (detect_coding_ccl, detect_coding_charset): Change argument MASK
13927 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
13928 sequence is valid in this coding system. Change callers.
13929 (MAX_ANNOTATION_LENGTH): New macro.
13930 (ADD_ANNOTATION_DATA): New macro.
13931 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
13932 ADD_ANNOTATION_DATA. Change the format of annotation data.
13933 (ADD_CHARSET_DATA): New macro.
13934 (emacs_mule_char): New argument ID. Change callers.
13935 (decode_coding_emacs_mule, decode_coding_iso_2022)
13936 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
13937 Produce charset annotation data in coding->charbuf.
13938 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
13939 to charset annotation data in coding->charbuf.
13940 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
13941 coding->common_flags if the coding system is iso-2022 based and
13942 uses designation.
13943 (produce_composition): Adjust for the new annotation data format.
13944 (produce_charset): New function.
13945 (produce_annotation): Handle charset annotation.
13946 (handle_composition_annotation, handle_charset_annotation): New
13947 functions.
13948 (consume_chars): Handle charset annotation. Utilize the above two
13949 functions.
13950 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
13951 buffer, get the deleted text as a string and set
13952 coding->src_object to that string.
13953 (detect_coding, detect_coding_system): Use the new struct
13954 coding_detection_info.
13955
13956 * coding.h (struct coding_detection_info): New structure.
13957 (struct coding_system): Adjust prototype of the member `detector'.
13958 (CODING_ANNOTATE_CHARSET_MASK): New macro.
13959
139602008-02-01 Kenichi Handa <handa@m17n.org>
13961
13962 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
13963
139642008-02-01 Dave Love <fx@gnu.org>
13965
13966 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
13967 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
13968 to new local and nullify apropos_accumulate before returning.
13969 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
13970
139712008-02-01 Kenichi Handa <handa@m17n.org>
13972
13973 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
13974 correctly.
e3eea1fc 13975
aac0c6e3
MR
139762008-02-01 Dave Love <fx@gnu.org>
13977
13978 * fns.c (Flanginfo): Call synchronize_system_time_locale.
13979
139802008-02-01 Kenichi Handa <handa@m17n.org>
13981
13982 The following changes are to make character composition happen
13983 automatically on displaying.
13984
13985 * Makefile.in (lisp, shortlisp): Add composite.elc.
13986
13987 * composite.h (Qauto_composed, Vauto_composition_function)
13988 (Qauto_composition_function): Extern them.
13989
13990 * composite.c (Vcomposition_function_table)
13991 (Qcomposition_function_table): Delete variables.
13992 (Qauto_composed, Vauto_composition_function)
13993 (Qauto_composition_function): New variables.
13994 (run_composition_function): Don't call
13995 compose-chars-after-function.
13996 (update_compositions): Clear `auto-composed' text property.
13997 (compose_chars_in_text): Delete this function.
13998 (syms_of_composite): Staticpro Qauto_composed and
13999 Qauto_composition_function. Declare Vauto_composition_function as
14000 a Lisp variable.
14001
14002 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
14003
14004 * xdisp.c (it_props): Add an entry for Qauto_composed.
14005 (handle_auto_composed_prop): New function.
14006
14007 * xselect.c (selection_data_to_lisp_data): Don't call
14008 compose_chars_in_text.
14009
140102008-02-01 Dave Love <fx@gnu.org>
14011
14012 * keyboard.c (read_char): Modify checking around use of
14013 Vkeyboard_translate_table.
14014
14015 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14016 and fix C types.
14017
140182008-02-01 Kenichi Handa <handa@m17n.org>
14019
14020 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
14021 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14022 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
14023 the case that the last byte is '\r' correctly.
14024 (decode_coding): Flush out the unprocessed data correctly.
14025 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
14026
140272008-02-01 Dave Love <fx@gnu.org>
14028
14029 * xterm.c (XTread_socket): Fix changes for defined keysyms.
14030 Add XK_ISO... case.
14031 (xaw_scroll_callback): Revert last change.
14032
140332008-02-01 Kenichi Handa <handa@m17n.org>
14034
14035 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
14036
140372008-02-01 Kenichi Handa <handa@m17n.org>
14038
14039 * xfaces.c (Vface_resizing_fonts): New variable.
14040 (struct font_name): New member `resizing_ratio'.
14041 (font_resizing_ratio): New function.
14042 (split_font_name): Set font->resizing_ratio.
14043 (better_font_p): Pay attention to font->resizing_ratio.
14044 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
14045 RESX, and RESY fields.
14046 (try_alternative_families): Try scalable fonts if
14047 Vscalable_fonts_allowed is not Qt.
14048 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
14049
140502008-02-01 Dave Love <fx@gnu.org>
14051
14052 * xterm.c (xaw_scroll_callback): Cast correctly.
14053
140542008-02-01 Dave Love <fx@gnu.org>
14055
14056 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
14057 (lispy_kana_keys): Comment out.
14058 (make_lispy_event) [XK_kana_A]: Comment out.
14059
14060 * xterm.c (xaw_scroll_callback): Cast call_data.
14061 (XTread_socket): Deal with ASCII keysyms.
14062 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
14063
140642008-02-01 Dave Love <fx@gnu.org>
14065
14066 * xterm.c (Vx_keysym_table): New.
14067 (syms_of_xterm): Initialize it.
14068 (XTread_socket): Use it.
14069 From head: Eliminate incorrect optimization that tried to avoid
14070 decoding the output of X*LookupString.
14071 (x_get_font_repertory): Delete charset declaration.
14072
140732008-02-01 Kenichi Handa <handa@m17n.org>
14074
14075 * coding.c (detect_coding_charset): If only ASCII bytes are found,
14076 return 0.
14077 (Fdefine_coding_system_internal): Setup
14078 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
14079
140802008-02-01 Dave Love <fx@gnu.org>
14081
14082 * coding.c (Fcheck_coding_system): Doc fix.
14083
14084 * editfns.c (Finsert_byte): Return a proper value.
14085
140862008-02-01 Kenichi Handa <handa@m17n.org>
14087
14088 * coding.c (decode_coding): Fix args to translate_chars. Pay
14089 attention to Vstandard_translation_table_for_decode.
14090 (encode_coding): Fix args to translate_chars. Pay attention to
14091 Vstandard_translation_table_for_encode.
14092
14093 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
14094 SINGLE_BYTE_CHAR_P.
14095
14096 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
14097 not by SINGLE_BYTE_CHAR_P.
14098
14099 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
14100 SINGLE_BYTE_CHAR_P.
14101
14102 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
14103 SINGLE_BYTE_CHAR_P.
14104
14105 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
14106 by SINGLE_BYTE_CHAR_P.
14107
14108 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
14109 SINGLE_BYTE_CHAR_P.
14110
141112008-02-01 Dave Love <fx@gnu.org>
14112
14113 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
14114
141152008-02-01 Dave Love <fx@gnu.org>
14116
14117 * fns.c (Flanginfo): Fix typo.
14118
14119 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
14120
141212008-02-01 Kenichi Handa <handa@m17n.org>
14122
14123 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
14124 (detect_coding_emacs_mule, detect_coding_iso_2022)
14125 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
14126 incomplete byte sequence. Don't update *mask when correctly detected.
14127 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
14128 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
14129 (detect_coding, detect_coding_system): Adjust for the changes above.
14130
141312008-02-01 Kenichi Handa <handa@m17n.org>
14132
14133 * character.c (char_string): Rename from
14134 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
14135 (string_char): Rename from string_char.
14136
14137 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
14138 if C is greater than MAX_3_BYTE_CHAR.
14139 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
14140 string_char instead of string_char_with_unification.
14141
141422008-02-01 Dave Love <fx@gnu.org>
14143
14144 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
14145
141462008-02-01 Kenichi Handa <handa@m17n.org>
14147
14148 * keymap.c (push_key_description): Pay attention to force_multibyte.
14149
14150 * regex.c (re_search_2): Fix for the case of unibyte buffer.
14151
141522008-02-01 Dave Love <fx@gnu.org>
14153
14154 * charset.c (define_charset_internal): Rename `supprementary'.
14155
14156 * Makefile.in (lisp, shortlisp): Remove latin-N.
14157
141582008-02-01 Dave Love <fx@gnu.org>
14159
14160 * xfns.c (x_window, x_window): Use use_xim.
14161
14162 * xterm.c (use_xim): Initialize.
14163 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
14164 (x_term_init): Maybe set use_xim.
14165
14166 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
14167
141682008-02-01 Kenichi Handa <handa@m17n.org>
14169
14170 * search.c (search_buffer): Fix case-fold-search of multibyte
14171 characters.
14172 (boyer_moore): Rename the last argument to char_high_bits.
14173
141742008-02-01 Kenichi Handa <handa@m17n.org>
14175
14176 * xdisp.c (display_string): Fix for the case of zero width glyph.
14177
14178 * xfns.c (x_set_font): Change the error message of the case that
14179 x_new_fontset returns Qt.
14180
14181 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
14182 (Finternal_set_lisp_face_attribute): Use signal_error for the
14183 error of invalid fontset.
14184
14185 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
14186 fontset, return Qt.
14187
141882008-02-01 Dave Love <fx@gnu.org>
14189
14190 * unexelf.c (unexec): Make .got handling not SGI-specific.
14191
14192 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
14193
14194 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
14195
14196 * keyboard.c (read_key_sequence): Fix type error.
14197
14198 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
14199 type error.
14200
14201 * fontset.c (fontset_add): Return Lisp_Object.
14202
142032008-02-01 Dave Love <fx@gnu.org>
14204
14205 * charset.h (charset_ordered_list_tick): Declare extern.
14206
142072008-02-01 Kenichi Handa <handa@m17n.org>
14208
14209 The following changes (and some of 2008-02-01 changes of mine) are
14210 for handling syntax, category, and case conversion for unibyte
14211 characters by converting them to multibyte on the fly. With these
14212 changes, we don't have to setup syntax and case tables for unibyte
14213 characters in each language environment.
14214
14215 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
14216 multibyte if necessary.
14217
14218 * bytecode.c (Fbyte_code): Likewise.
14219
14220 * character.h (LEADING_CODE_LATIN_1_MIN)
14221 (LEADING_CODE_LATIN_1_MAX): New macros.
14222 (unibyte_to_multibyte_table): Extern it.
14223 (unibyte_char_to_multibyte): New macro.
14224 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
14225 (CHAR_LEADING_CODE): New macro.
14226 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
14227
14228 * character.c (unibyte_to_multibyte_table): New variable.
14229 (unibyte_char_to_multibyte): Move to character.h and define as macro.
14230 (multibyte_char_to_unibyte): If C is an eight-bit character,
14231 convert it to the corresponding byte value.
14232
14233 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
14234 not 1, signals an error. Update the elements of
14235 unibyte_to_multibyte_table.
14236 (init_charset_once): Initialize unibyte_to_multibyte_table.
14237 (syms_of_charset): Define the charset `iso-8859-1'.
14238
14239 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
14240 as is without converting it to unibyte. In a unibyte buffer,
14241 convert C to multibyte before checking the syntax.
14242
14243 * lisp.h (unibyte_char_to_multibyte): Delete extern.
14244
14245 * minibuf.c (Fminibuffer_complete_word): Use the macro
14246 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
14247
14248 * regex.h (struct re_pattern_buffer): New member target_multibyte.
14249
14250 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
14251 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
14252 that is zero, convert an eight-bit char to multibyte.
14253 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
14254 non-emacs case.
14255 (PATFETCH): Convert an eight-bit char to multibyte.
14256 (HANDLE_UNIBYTE_RANGE): New macro.
14257 (regex_compile): Setup the compiled pattern for multibyte chars
14258 even if the given regex string is unibyte. Use PATFETCH_RAW
14259 instead of PATFETCH in many places. To handle `charset'
14260 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
14261 only for ASCII chars.
14262 (analyse_first) <exactn>: Simplify because the compiled pattern
14263 is multibyte.
14264 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
14265 <charset>: Use CHAR_LEADING_CODE to get leading codes.
14266 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
14267 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
14268 multibyte always 1.
14269 (re_search_2): In emacs, set the locale variable multibyte to 1,
14270 otherwise to 0. New local variable target_multibyte. Check it
14271 to decide the multibyteness of STR1 and STR2. If
14272 target_multibyte is zero, convert unibyte chars to multibyte
14273 before translating and checking fastmap.
14274 (TARGET_CHAR_AND_LENGTH): New macro.
14275 (re_match_2_internal): In emacs, set the locale variable multibyte
14276 to 1, otherwise to 0. New local variable target_multibyte. Check
14277 it to decide the multibyteness of STR1 and STR2. Use
14278 TARGET_CHAR_AND_LENGTH to fetch a character from D.
14279 <charset, charset_not>: If multibyte is nonzero, check fastmap
14280 only for ASCII chars. Call bcmp_translate with
14281 target_multibyte, not with multibyte.
14282 <begline>: Declare the local variable C as `unsigned'.
14283 (bcmp_translate): Change the last arg name to target_multibyte.
14284
14285 * search.c (compile_pattern_1): Don't adjust the multibyteness of
14286 the regexp pattern and the matching target. Set cp->buf.multibyte
14287 to the multibyteness of the regexp pattern. Set
14288 cp->but.target_multibyte to the multibyteness of the matching target.
14289 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
14290 FETCH_STRING_CHAR_ADVANCE.
14291 (Freplace_match): Convert unibyte chars to multibyte.
14292
14293 * syntax.c (char_quoted, back_comment, scan_words)
14294 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
14295 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
14296 unibyte chars to multibyte.
14297 (skip_chars): Delete the arg syntaxp, and move the code for
14298 handling syntaxes to skip_syntaxes. Change callers.
14299 Fix the case that the multibyteness of STRING and the current
14300 buffer doesn't match.
14301 (skip_syntaxes): New function.
14302 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
14303 SINGLE_BYTE_CHAR_P.
14304
143052008-02-01 Kenichi Handa <handa@m17n.org>
14306
14307 * xfaces.c (QCfontset): New variable.
14308 (LFACE_FONTSET): New macro.
14309 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
14310 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
14311 (Finternal_set_lisp_face_attribute)
14312 (Finternal_get_lisp_face_attribute): Handle QCfontset.
14313 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
14314 check also LFACE_FONTSET_INDEX.
14315 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
14316 attrs[LFACE_FONT_INDEX].
14317 (syms_of_xfaces): Intern and staticpro QCfontset.
14318
14319 * dispextern.h (enum lface_attribute_index): New member
14320 LFACE_FONTSET_INDEX.
14321
14322 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
14323
143242008-02-01 Kenichi Handa <handa@m17n.org>
14325
14326 * coding.c (coding_set_destination): Fix coding->destination for
14327 the case converting a region.
14328 (encode_coding_utf_8): Encode eight-bit chars as single byte.
14329 (encode_coding_object): Fix coding->dst_pos and
14330 coding->dst_pos_byte for the case converting a region.
14331
14332 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
14333
14334 * character.h (BYTE8_STRING): New macro.
14335
14336 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
14337
143382008-02-01 Kenichi Handa <handa@m17n.org>
14339
14340 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
14341 characters by octal form.
14342
14343 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
14344
14345 * buffer.h (_fetch_multibyte_char_len): Delete extern.
14346 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
14347 _fetch_multibyte_char_len.
14348 (FETCH_CHAR_AS_MULTIBYTE): New macro.
14349
14350 * casetab.c (set_canon, set_identity, shuffle): Simplify.
14351
14352 * casefiddle.c (casify_object): Simplify. Handle the case that
14353 the case conversion change the byte length.
14354 (casify_region): Likewise.
14355
14356 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
14357
14358 * character.c (_fetch_multibyte_char_len): Delete this variable.
14359 (syms_of_character): Setup Vprintable_chars.
14360
14361 * editfns.c (Fchar_equal): Fix for the unibyte case.
14362 (Finsert_byte): New function.
14363 (syms_of_editfns): Defsubr it.
14364
14365 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
14366 of direct code 0x3ffff.
14367
14368 * search.c (Freplace_match): Fix for the unibyte case.
14369
143702008-02-01 Kenichi Handa <handa@m17n.org>
14371
14372 * lread.c (safe_to_load_p): Fix the logic.
14373
14374 * syntax.c (scan_words): Don't treat characters belonging to
14375 different scripts as constituting a word.
14376
14377 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14378
14379 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
14380
14381 * emacs.c (main): In the case of --unibyte, instead of aborting on
14382 finding non-empty buffer, make it unibyte.
14383
143842008-02-01 Kenichi Handa <handa@m17n.org>
14385
14386 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
14387 to create a fontset.
14388
143892008-02-01 Dave Love <fx@gnu.org>
14390
14391 * character.c (Funibyte_char_to_multibyte): Doc fix.
14392
14393 * xfns.c [HAVE_STDLIB_H]: Fix last change.
14394
143952008-02-01 Kenichi Handa <handa@m17n.org>
14396
14397 * fontset.c (fontset_add): Make the type `int'.
14398 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
14399
14400 * character.c (unibyte_char_to_multibyte)
14401 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
14402 charset_unibyte, not charset_primary.
14403
14404 * charset.h (charset_unibyte): Extern it instead of charset_primary.
14405
14406 * charset.c (charset_unibyte): Rename from charset_primary.
14407 (Funibyte_charset): Rename from Fprimary_charset.
14408 (Fset_unibyte_charset): Rename from Fset_primary_charset.
14409 (syms_of_charset): Adjust for the above changes.
14410
14411 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
14412 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
14413 it->multibyte_p is zero.
14414
14415 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
14416 Delete extern.
14417
144182008-02-01 Kenichi Handa <handa@m17n.org>
14419
14420 * coding.c (Fdefine_coding_system_internal): Fix category setting
14421 for a coding system of type iso-2022.
14422
144232008-02-01 Kenichi Handa <handa@m17n.org>
14424
14425 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
14426
144272008-02-01 Kenichi Handa <handa@m17n.org>
14428
14429 * syntax.c (Vnext_word_boundary_function_table): New variable.
14430 (next-word-boundary-function-table): Declare it as a Lisp variable
14431 in syms_of_syntax.
14432 (scan_words): Call functions in Vnext_word_boundary_function_table
14433 if any.
14434
14435 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
14436
14437 * fontset.c (fs_load_font): If fontp->charset is not negative,
14438 return fontp without setting its members.
14439
144402008-02-01 Dave Love <fx@gnu.org>
14441
14442 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
14443
14444 * m/sparc.h (HAVE_ALLOCA): Delete.
14445
14446 * s/irix6-5.h: Don't include strings.h.
14447 (bcopy, bzero, bcmp): Don't undef.
14448
14449 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
14450
14451 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
14452 (TIOCSIGSEND): Don't test IRIX6.
14453 (bcopy, bzero, bcmp): Define conditionally.
14454
144552008-02-01 Kenichi Handa <handa@m17n.org>
14456
14457 * buffer.c (Qas, Qmake, Qto): New variables.
14458 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
14459 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
14460
14461 * callproc.c (Fcall_process): Don't call insert_1_both directly if
14462 we are inserting a process output into a multibyte buffer.
14463
14464 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
14465 multibyte_char_to_unibyte.
14466
14467 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
14468 by the primary charset, make it eight-bit char.
14469 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
14470
14471 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
14472 (charset_8_bit__control, charset_8_bit_graphic)
14473 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
14474 (define_charset_internal): New function.
14475 (syms_of_charset): Call define_charset_internal for pre-defined
14476 charsets.
14477
14478 * charset.h (charset_8_bit): Extern it.
14479
14480 * coding.c (make_conversion_work_buffer): Adjust for the change
14481 of Fset_buffer_multibyte.
14482 (encode_coding_raw_text): Increment p0 in the loop.
14483
14484 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
14485
14486 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
14487 for the change of Fset_buffer_multibyte.
14488
14489 * fns.c (Fstring_to_multibyte): New function.
14490 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
14491
144922008-02-01 Dave Love <fx@gnu.org>
14493
14494 * xfns.c (x_put_x_image): Declare args.
14495
14496 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
14497 (try_font_list): Declare an arg.
14498
14499 * xdisp.c (message2_nolog, set_message): Declare an arg.
14500
14501 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
14502
14503 * syntax.c (scan_sexps_forward): Declare an arg.
14504
14505 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
14506 Declare an arg.
14507
14508 * lisp.h (Fnew_fontset): Declare.
14509
14510 * keymap.c (push_key_description): Call CHARACTERP correctly.
14511
14512 * fontset.c (fontset_add): Declare args. Call make_number correctly.
14513 (face_for_char): Delete unused vars.
14514 (Fset_fontset_font): Doc fix. Delete unused vars.
14515
14516 * doc.c (Fsubstitute_command_keys): Delete unused vars.
14517
14518 * composite.c (update_compositions): Declare arg.
14519
14520 * cm.c (calccost, cmgoto): Declare args.
14521
14522 * charset.c: Remove `emacs' conditional. Doc fixes.
14523 (map_char_table_for_charset): Declare.
14524
14525 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
14526
14527 * ccl.c: Remove `emacs' conditional.
14528
145292008-02-01 Kenichi Handa <handa@m17n.org>
14530
14531 The following changes are to allow specifying multiple font
14532 patterns for a character range (specified by script or charset).
14533
14534 * Makefile.in (abbrev.o): Depend on syntax.h.
14535 (xfaces.o): Depend on charset.h.
14536
14537 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
14538 SINGLE_BYTE_CHAR_P.
14539
14540 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
14541
14542 * character.h (Vchar_script_table): Extern it.
14543
14544 * character.c (Vscript_alist): Delete.
14545 (Vchar_script_table, Qchar_script_table): New variable.
14546 (syms_of_character): Declare Vchar_script_table as a lisp variable
14547 and initialize it.
14548
14549 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
14550 have property char-table-extra-slots, make no extra slot.
14551
14552 * dispextern.h (struct face): Delete member `charset'.
14553 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
14554 SINGLE_BYTE_CHAR_P.
14555 (choose_face_font, lookup_non_ascii_face, font_name_registry):
14556 Add prototypes.
14557 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
14558 (generate_ascii_font_name): Rename from generate_ascii_font.
14559
14560 * fontset.h (get_font_repertory_func): New prototype.
14561 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
14562 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
14563
14564 * fontset.c (Qprepend, Qappend): New variables.
14565 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
14566 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
14567 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
14568 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
14569 (fontset_ref_and_range, fontset_add, reorder_font_vector)
14570 (load_font_get_repertory): New functions.
14571 (fontset_set): Delete.
14572 (fontset_face): New arg FACE. Return face ID, not face.
14573 Complete re-write to handle new fontset structure. Change caller.
14574 (free_face_fontset): Use ASET istead of AREF (X) = Y.
14575 (face_for_char): Don't call lookup_face.
14576 (make_fontset_for_ascii_face): New arg FACE.
14577 (fs_load_font): New arg CHARSET_ID. Don't check
14578 Vfont_encoding_alist here.
14579 (find_font_encoding): New function.
14580 (list_fontsets): Use STRINGP, not ! NILP.
14581 (accumulate_script_ranges): New function.
14582 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
14583 re-written to handle new fontset structure.
14584 (Ffontset_font): Return a copy of element.
14585 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
14586 docstring of font-encoding-alist.
14587
14588 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
14589 (Fset_fotset_font): Fix arguments to 5.
14590
14591 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
14592
14593 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
14594 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14595 (highlight_trailing_whitespace): Adjust for the change of
14596 lookup_named_face.
14597
14598 * xfaces.c: Include charset.h.
14599 (load_face_font): Delete argument C. Change caller.
14600 (generate_ascii_font_name): Rename from generate_ascii_font.
14601 (font_name_registry): New function.
14602 (cache_face): Store ascii faces before non-ascii faces in buckets.
14603 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
14604 Lookup only ascii faces.
14605 (lookup_non_ascii_face): New function.
14606 (lookup_named_face): Delete argument C. Change caller.
14607 (lookup_derived_face): Delete argument C. Change caller.
14608 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
14609 a string, just call font_list with it.
14610 (choose_face_font): Delete arguments FACE and C. New arg
14611 FONT_SPEC. Change caller.
14612 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
14613 Change caller.
14614 (realize_non_ascii_face): New function.
14615 (realize_x_face): Call load_face_font here.
14616 (realize_tty_face): Delete argument C. Change caller.
14617 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
14618 get a face ID.
14619 (dump_realized_face): Don't print charset of FACE.
14620
14621 * xfns.c (x_set_font): Always call x_new_fontset and
14622 store_frame_parameter.
14623 (Fx_create_frame): Call x_new_fontset, not x_new_font.
14624 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
14625
14626 * xterm.h (x_get_font_repertory): Extern it.
14627
14628 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
14629 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
14630 it->multibyte_p is zero.
14631 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14632 (x_new_fontset): If FONTSETNAME doesn't match any existing
14633 fontsets, create a new one.
14634 (x_get_font_repertory): New function.
14635
146362008-02-01 Kenichi Handa <handa@m17n.org>
14637
14638 * coding.c (Ffind_coding_systems_region_internal): Detect an
14639 ASCII only string correctly.
14640
14641 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
14642 version is 0.
14643
146442008-02-01 Kenichi Handa <handa@m17n.org>
14645
14646 * lread.c: Include "coding.h".
14647 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
14648 (load_each_byte, unread_char): New variables.
14649 (readchar_backlog): Delete.
14650 (readchar): Return a character unless load_each_byte is nonzero.
14651 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
14652 cons. If unread_char is not -1, simply return it.
14653 (unreadchar): Handle the case that readcharfun is
14654 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
14655 (read_multibyte): Delete.
14656 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
14657 (read_emacs_mule_char): New functions.
14658 (Fload): Even if the file doesn't have the extension ".elc", if
14659 safe_to_load_p returns a positive version number, assume that the
14660 file contains bytecompiled code. If the version is less than 22,
14661 load the file while decoding multibyte sequences by emacs-mule.
14662 (readevalloop): Don't use readchar_backlog.
14663 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
14664 (Fread_from_string): Pay attention to the case that STREAM is a cons.
14665 (read_escape): Delete the arg BYTEREP.
14666 (read1): Set load_each_byte to 1 temporarily while handling
14667 #@NUMBER. Don't call read_multibyte.
14668 (read_vector): Call Fread with a cons. If readcharfun is
14669 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
14670 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
14671 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
14672 and Qload_force_doc_strings.
14673
146742008-02-01 Kenichi Handa <handa@m17n.org>
14675
14676 * xdisp.c (face_before_or_after_it_pos): Call
14677 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
14678
146792008-02-01 Kenichi Handa <handa@m17n.org>
14680
14681 * character.h (TRAILING_CODE_P): New macro.
14682 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
14683 (string_char_with_unification): Fix prototype.
14684 (Vscript_alist): Extern it.
14685
14686 * character.c (Vscript_alist): New variable.
14687 (string_char_with_unification, str_as_unibyte)
14688 (string_escape_byte8): Add `const' to local variables.
14689 (syms_of_character): Declare script-alist as a Lisp variable.
14690
14691 * charset.h (Vcharset_ordered_list): Extern it.
14692 (charset_ordered_list_tick): Extern it.
14693 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
14694 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
14695 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
14696 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
14697 (Funify_charset): Adjust for the change of Funify_charset.
14698
14699 * charset.c (charset_ordered_list_tick): New variable.
14700 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
14701 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
14702 deunify intead of unify a charset.
14703 (string_xstring_p): Add `const' to local variables.
14704 (find_charsets_in_text): Add `const' to arguments and local variables.
14705 (encode_char): Adjust for the change of Funify_charset. Fix
14706 detecting of invalid code.
14707 (Fset_charset_priority): Increment charset_ordered_list_tick.
14708 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
14709 and TO_CODE.
14710
14711 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
14712 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
14713 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
14714 (decode_coding_ccl, consume_chars)
14715 (Ffind_coding_systems_region_internal)
14716 (Fcheck_coding_systems_region): Add `const' to local variables.
14717
14718 * print.c (print_object): Use octal form for printing the
14719 contents of a bool vector.
14720
147212008-02-01 Dave Love <fx@gnu.org>
14722
14723 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
14724 <version == 20>: Refuse to load.
14725
147262008-02-01 Dave Love <fx@gnu.org>
14727
14728 * fns.c: Move coding.h.
14729 (Qcodeset, Qdays, Qmonths): New.
14730 (concat): Use CHARACTERP instead of INTEGERP.
14731 (Flocale_codeset): Delete.
14732 (Flanginfo): New function.
14733 (syms_of_fns): Change accordingly.
14734
14735 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
14736
147372008-02-01 Dave Love <fx@gnu.org>
14738
14739 * casetab.c (init_casetab_once, init_casetab_once): Fix
14740 CHAR_TABLE_SET call.
14741
14742 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
14743
14744 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
14745
14746 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
14747 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
14748 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
14749
14750 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
14751
14752 * coding.c (ENCODE_DESIGNATION, decode_eol)
14753 (make_conversion_work_buffer, code_conversion_restore)
14754 (Fdefine_coding_system_internal): Convert Lisp types.
14755 (code_conversion_restore): Use EQ, not ==.
14756 (Fencode_coding_string): Fix code_convert_string call.
14757
14758 * coding.h (code_convert_region): Fix prototype.
14759
14760 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
14761
14762 * fontset.c (fontset_ref, fontset_set, fs_load_font)
14763 (Ffontset_info): Convert Lisp types.
14764
14765 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
14766
14767 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
14768
14769 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
14770
14771 * chartab.c: Include "...h", not <...h> in some cases.
14772
14773 * callproc.c (Fcall_process): Remove unused variables.
14774
147752008-02-01 Dave Love <fx@gnu.org>
14776
14777 * coding.c (Fset_coding_system_priority): Allow null arg list.
14778
147792008-02-01 Dave Love <fx@gnu.org>
14780
14781 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
14782 (Fself_insert_and_exit): Use CHARACTERP.
14783
14784 * callproc.c (Fcall_process): Remove unused vars.
14785
14786 * xterm.c (XTread_socket): Add extra dead keysyms.
14787
14788 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
14789
14790 * dispextern.h: Remove prototypes for redraw_frame,
14791 redraw_garbaged_frames.
14792
14793 * cmds.c (Fself_insert_command): Use CHARACTERP.
14794
14795 * chartab.c (make_sub_char_table): Remove unused var.
14796 (Fset_char_table_default, Fmap_char_table): Doc fix.
14797
14798 * keymap.c (access_keymap): Remove generic char code.
14799 (push_key_description): Use CHARACTERP.
14800
148012008-02-01 Dave Love <fx@gnu.org>
14802
14803 * charset.c: Doc fixes.
14804 (Funify_charset): Extra checking.
14805
148062008-02-01 Dave Love <fx@gnu.org>
14807
14808 * lread.c: Remove some unused variables.
14809 (safe_to_load_p): If safe, return the magic number version byte.
14810 (Fload): Maybe use load-with-code-conversion.
14811
148122008-02-01 Kenichi Handa <handa@m17n.org>
14813
14814 * category.c (Fmodify_category_entry): Don't modify the contents
14815 of category_set for characters out of the range. Avoid
14816 unnecessary modification.
14817
14818 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
14819 Vchar_unify_table. The default value of the table is now nil.
14820
14821 * character.c (syms_of_character): Setup Vchar_width_table for
14822 eight-bit-control and raw-byte chars.
14823
14824 * charset.h (enum define_charset_arg_index): Delete
14825 charset_arg_parents and add charset_arg_subset and
14826 charset_arg_superset.
14827 (enum charset_attr_index): Delete charset_parents and add
14828 charset_subset and charset_superset.
14829 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
14830 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
14831 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
14832 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
14833 (CHARSET_SUPERSET): New macros.
14834 (charset_work): Extern it.
14835 (ENCODE_CHAR): Use charset_work.
14836 (CHAR_CHARSET_P): Adjust for the change of encoder format.
14837 (map_charset_chars): Extern it.
14838
14839 * charset.c (load_charset_map): Set the default value of encoder
14840 and deunifier char-tables to nil.
14841 (map_charset_chars): Change argument. Change callers. Use
14842 map_char_table_for_charset instead of map_char_table.
14843 (Fmap_charset_chars): New optional args from_code and to_code.
14844 (Fdefine_charset_internal): Adjust for the change of
14845 `define-charset' (:parents -> :subset or :superset).
14846 (charset_work): New variable.
14847 (encode_char, syms_of_charset): Adjust for the change of
14848 Fdefine_charset_internal.
14849 (Ffind_charset_string): Setup the vector `charsets' correctly.
14850
14851 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
14852 the previous change.
14853 (char_table_ref_and_range): Adjust for the above change.
14854 (map_sub_char_table_for_charset): New function.
14855 (map_char_table_for_charset): New function.
14856
14857 * keymap.c (describe_vector): Handle a char-table directly here.
14858 (describe_char_table): Delete.
14859
14860 * lisp.h (map_charset_chars): Delete.
14861
148622008-02-01 Dave Love <fx@gnu.org>
14863
14864 * fns.c (count_combining): Comment out (unused).
14865 (Flocale_codeset): New.
14866 (syms_of_fns): Defsubr it.
14867
14868 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
14869 (size_t): Remove.
14870
148712008-02-01 Dave Love <fx@gnu.org>
14872
14873 * Makefile.in (chartab.o): Depend on charset.h.
14874
148752008-02-01 Kenichi Handa <handa@m17n.org>
14876
14877 * character.c (syms_of_character): Set the default value of
14878 Vprintable_chars to Qnil.
14879
148802008-02-01 Dave Love <fx@gnu.org>
14881
14882 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
14883
148842008-02-01 Kenichi Handa <handa@m17n.org>
14885
14886 * charset.c (load_charset_map): Handle the case that from < to
14887 correctly.
14888
14889 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
14890 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
14891 Pay attention to raw-8-bit chars.
14892
148932008-02-01 Kenichi Handa <handa@m17n.org>
14894
14895 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
14896 It is not bytecompiled now.
14897
14898 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
14899 (charset_jisx0208): New variables.
14900 (Fdefine_charset_internal): Setup them if appropriate.
14901 (init_charset_once): Initialize them to -1.
14902
14903 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
14904 (charset_jisx0208): Extern them.
14905
14906 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
14907 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
14908 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
14909 (setup_iso_safe_charsets): Fix arguments to Fassq.
14910 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
14911 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
14912 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
14913 (encode_coding_iso_2022): Change the 1st arg to
14914 ENCODE_ISO_CHARACTER to a variable.
14915
149162008-02-01 Kenichi Handa <handa@m17n.org>
14917
14918 * charset.h (enum define_charset_arg_index): New enums
14919 charset_arg_min_code and charset_arg_max_code.
14920 (struct charset): New member char_index_offset.
14921
14922 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
14923 Take charset->char_index_offset into account.
14924 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
14925 args[charset_arg_max_code]. Setup charset.char_index_offset.
14926 (syms_of_charset): Fix args to Fdefine_charset_internal.
14927
149282008-02-01 Dave Love <fx@gnu.org>
14929
14930 * coding.c (decode_coding_utf_8): Reject overlong sequences.
14931
149322008-02-01 Dave Love <fx@gnu.org>
14933
14934 * coding.c: Doc fixes.
14935 (Fcoding_system_aliases): Fix return value.
14936 (Qmac): Remove (duplicated) definition.
14937
149382008-02-01 Dave Love <fx@gnu.org>
14939
14940 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
14941 functions.
14942
14943 * character.c (Fstring): Doc fix.
14944
14945 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
14946
14947 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
14948 ids.
14949 (font-encoding-alist): Doc fix.
14950
149512008-02-01 Dave Love <fx@gnu.org>
14952
14953 * term.c (costs_set): Declare static, non-initialized for pcc.
14954 (encode_terminal_code): Remove unused var.
14955
14956 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
14957 for K&R.
14958
14959 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
14960
14961 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
14962 (suffixes): Move out of make_subsidiaries for K&R.
14963
14964 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
14965
14966 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
14967
149682008-02-01 Dave Love <fx@gnu.org>
14969
14970 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
14971
14972 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
14973
149742008-02-01 Yong Lu <lyongu@asia-infonet.com>
14975
14976 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
14977
14978 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
14979
149802008-02-01 Kenichi Handa <handa@m17n.org>
14981
14982 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
14983 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
14984
149852008-02-01 Kenichi Handa <handa@m17n.org>
14986
14987 * coding.c (decode_coding_charset): Adjust for the change of
14988 Fdefine_coding_system_internal.
14989 (Fdefine_coding_system_internal): For a coding system of
14990 `charset' type, store a list of charset IDs in
14991 `charset_attr_charset_valids' element of coding attributes.
14992
149932008-02-01 Kenichi Handa <handa@m17n.org>
14994
14995 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
14996 (emacs_mule_char): New arg src. Delete arg `composition'. Change
14997 caller. Handle 2-byte and 3-byte charsets correctly.
14998 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
14999 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
15000 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
15001 (DECODE_EMACS_MULE_21_COMPOSITION): Call
15002 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
15003 sequence.
15004 (decode_coding_emacs_mule): Handle composition correctly. Rewind
15005 `src' and `consumed_chars' correctly before calling emacs_mule_char.
15006 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
15007 and alt&rule composition.
15008 (decode_coding_iso_2022): Handle composition correctly.
15009 (init_coding_once): Setup emacs_mule_bytes for private charsets.
15010
15011 * charset.c (Fdefine_charset_internal): Fix bug for the case of
15012 re-defining a charset. If the charset has :emacs-mule-id, setup
15013 emacs_mule_bytes.
15014 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
15015
150162008-02-01 Kenichi Handa <handa@m17n.org>
15017
15018 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
15019 (encode_coding_big5, encode_coding_charset): If coding requires safe
15020 encoding, produce a character specified by
15021 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
15022
150232008-02-01 Dave Love <fx@gnu.org>
15024
15025 * xterm.c (XSetIMValues): Declare.
15026
15027 * process.c: Conditionally include sys/wait.h, pty.h.
15028
15029 * print.c (print_object): Fix print format for 64-bit systems.
15030
15031 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
15032
15033 * buffer.c (emacs_strerror): Declare.
15034
15035 * fontset.c (Fclear_face_cache): Declare.
15036 (accumulate_font_info): Comment-out (unused).
15037 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
15038 variables.
15039
15040 * character.h (string_escape_byte8): Declare.
15041
15042 * charset.c (load_charset_map, load_charset_map_from_file): Remove
15043 unused vars.
15044 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
15045 (Fmap_charset_chars): Doc fix.
15046
15047 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
15048 (Fset_coding_system_priority, Fset_coding_system_priority)
15049 (Fdefine_coding_system_internal): Doc fix.
15050
150512008-02-01 Dave Love <fx@gnu.org>
15052
15053 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
15054
150552008-02-01 Kenichi Handa <handa@m17n.org>
15056
15057 * character.c (string_escape_byte8): Make multibyte string with
15058 correct size.
15059
15060 * charset.c (Fmake_char): Delete unnecessary code.
15061
150622008-02-01 Kenichi Handa <handa@m17n.org>
15063
15064 * xfns.c (x_encode_text): Allocate coding.destination here, and
15065 call encode_coding_object with dst_object Qnil.
15066
15067 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
15068 multibyte form correctly.
15069
15070 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
15071 against Vfont_encoding_alist.
15072
15073 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
15074 handling of charset list.
15075 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
15076 (decode_coding_object): Move point to coding->dst_pos before
15077 calling post-read-conversion function.
15078 (encode_coding_object): Give correct arguments to
15079 pre-write-conversion. Ignore the return value of
15080 pre-write-conversion function. Pay attention to the case that
15081 pre-write-conversion changes the current buffer. If dst_object is
15082 Qt, even if coding->src_bytes is zero, allocate at least one byte
15083 to coding->destination.
15084
15085 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
15086
15087 * charset.c (Fmake_char): Make it more backward compatible.
15088 (Fmap_charset_chars): Fix docstring.
15089
150902008-02-01 Dave Love <fx@gnu.org>
15091
15092 * coding.c: Doc fixes.
15093 (Fdefine_coding_system_alias): Use names, not symbols, in
15094 coding-system-alist.
15095
150962008-02-01 Kenichi Handa <handa@m17n.org>
15097
15098 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
15099 of calling free_realized_face.
15100
151012008-02-01 Yong Lu <lyongu@asia-infonet.com>
15102
15103 * charset.c (read_hex): Don't treat SPC as a comment starter.
15104 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
15105 (Fdecode_char): Fix typo.
15106
151072008-02-01 Kenichi Handa <handa@m17n.org>
15108
15109 * charset.h (struct charset): New member `code_space_mask'.
15110
15111 * coding.c (coding_set_source): Delete the local variable beg_byte.
15112 (encode_coding_charset, Fdefine_coding_system_internal):
15113 Delete the local variable charset.
15114 (Fdefine_coding_system_internal): Setup
15115 attrs[coding_attr_charset_valids] correctly.
15116
15117 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
15118 member to check if CODE is valid or not.
15119 (Fdefine_charset_internal): Initialize `code_space_mask' member.
15120 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
15121 is within the range of charset->min_code and carset->max_code.
15122
151232008-02-01 Dave Love <fx@gnu.org>
15124
15125 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
15126
15127 * dispextern.h (generate_ascii_font): Fix return type.
15128
15129 * xfaces.c (generate_ascii_font): Fix arg declaration.
15130
15131 * coding.c (coding_inherit_eol_type)
15132 (Fset_terminal_coding_system_internal)
15133 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
15134
151352008-02-01 Kenichi Handa <handa@m17n.org>
15136
15137 * coding.c (decode_coding_charset, encode_coding_charset): Handle
15138 multiple charsets correctly.
15139
151402008-02-01 Kenichi Handa <handa@m17n.org>
15141
15142 * search.c (boyer_moore): Fix handling of multibyte character
15143 translation.
15144
15145 * xdisp.c (display_mode_element): When the variable `elt' is
15146 changed, update `this' and `lisp_string'.
15147
151482008-02-01 Kenichi Handa <handa@m17n.org>
15149
15150 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
15151
15152 * callproc.c (Fcall_process): Be sure to give the current buffer
15153 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
15154
15155 * charset.c (struct charset_map_entries): New struct.
15156 (load_charset_map): Rename from parse_charset_map. New args
15157 entries and n_entries. Change caller.
15158 (load_charset_map_from_file): Rename from load_charset_map.
15159 Change caller. New arg control_flag. Call load_charset_map at
15160 the tail.
15161 (load_charset_map_from_vector): New function.
15162 (Fdefine_charset_internal): Setup charset.compact_codes_p.
15163 (encode_char): If the charset is compact, change a character index
15164 to a code point.
15165
15166 * coding.c (coding_alloc_by_making_gap): Check the case that the
15167 source and destination are the same correctly.
15168 (decode_coding_raw_text): Set coding->consumed_char and
15169 coding->consumed to 0.
15170 (produce_chars): If coding->chars_at_source is nonzero, update
15171 coding->consumed_char and coding->consumed before calling
15172 alloc_destination.
15173 (Fdefine_coding_system_alias): Register ALIAS in
15174 Vcoding_system_alist.
15175 (syms_of_coding): Define `no-conversion' coding system at the tail.
15176
15177 * fileio.c (Finsert_file_contents): Set coding_system instead of
15178 val. If the current buffer is multibyte, always call
15179 decode_coding_gap.
15180
15181 * xfaces.c (try_font_list): Give higher priority to fontset's
15182 family than face's family.
15183
151842008-02-01 Kenichi Handa <handa@m17n.org>
15185
15186 * callproc.c (Fcall_process): Be sure to give the current buffer
15187 to decode_coding_c_string.
15188
15189 * xfaces.c (try_font_list): Give a family specified in a fontset
15190 higher priority than a family specified in a face.
15191
151922008-02-01 Kenichi Handa <handa@m17n.org>
15193
15194 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
15195 Fix arguments to insert_from_buffer.
15196
15197 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
15198
151992008-02-01 Kenichi Handa <handa@m17n.org>
15200
15201 * coding.c (produce_chars): Set the variable `multibytep' correctly.
15202 (decode_coding_gap): Set coding->dst_multibyte correctly.
15203
152042008-02-01 Kenichi Handa <handa@m17n.org>
15205
15206 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
15207 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
15208 (encode_coding_utf_16): Substitute coding->default_char for
15209 non-Unicode characters.
15210 (decode_coding): Don't call record_insert here.
15211 (setup_coding_system): Initialize `surrogate' of
15212 coding->spec.utf_16 to 0.
15213 (EMIT_ONE_BYTE): Fix for multibyte case.
15214
15215 * insdel.c (insert_from_gap): Call record_insert.
15216
152172008-02-01 Kenichi Handa <handa@m17n.org>
15218
15219 * casefiddle.c (casify_region): Fix multibyte case.
15220
15221 * character.c (c_string_width): Add return type `int'.
15222 (char_string_with_unification): Delete arg ADVANCED.
15223
15224 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
15225 (CHAR_STRING): Adjust for the change of char_string_with_unification.
15226 (CHAR_STRING_ADVANCE): Make it do-while statement.
15227
15228 * chartab.c (sub_char_table_set_range): Optimize for the case
15229 DEPTH == 3. Add workaround code for a GCC optimization bug.
15230
15231 * charset.c (parse_charset_map): Remove an unused variable.
15232
15233 * coding.c: Delete unused variables.
15234
15235 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
15236 earlier. If inserted is zero and the coding system doesn't
15237 require flushing, don't call decode_coding_gap.
15238
15239 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
15240
152412008-02-01 Kenichi Handa <handa@m17n.org>
15242
15243 The following changes are for using Unicode as an internal
15244 character model, and use UTF-8 format for buffer/string
15245 representation.
15246
15247 * .gdbinit (xchartable): Adjust for the change of char table structure.
15248 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
15249
15250 * Makefile.in (obj): Add character.o and chartab.o.
15251 (lisp, shortlisp): Remove utf-8.elc.
15252 (*.o): For many files, change dependency on charset.h to
15253 character.h, and add dependency on character.h.
15254 (character.o, chartab.o): New targets.
15255
15256 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
15257 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
15258 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
15259 of "charset.h".
15260
15261 * dired.c, filelock.c: Include "character.h".
15262
15263 * alloc.c: Include "character.h" instead of "charset.h".
15264 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
15265 (syms_of_alloc): Remove defsubr for Smake_char_table.
15266
15267 * buffer.c: Include "character.h" instead of "charset.h", don't
15268 include "coding.h".
15269 (Fset_buffer_multibyte): Adjust for UTF-8.
15270
15271 * buffer.h: EXFUN Fbuffer_live_p.
15272
15273 * callproc.c: Include "character.h" instead of "charset.h".
15274 (Fcall_process): Big change for the new code-conversion APIs.
15275
15276 * casetab.c: Include "character.h" instead of "charset.h".
15277 (set_canon, set_identity, shuffle): Adjust for the new
15278 map_char_table spec.
15279 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
15280 accessing the char table structure.
15281
15282 * chartab.c: New file that implements char table.
15283
15284 * category.c: Include "character.h".
15285 (copy_category_entry): New function.
15286 (copy_category_table): Call map_char_table and copy_category_entry.
15287 (Fmake_category_table): Initialize all top-level slots.
15288 (char_category_set): New function.
15289 (modify_lower_category_set): Delete.
15290 (Fmodify_category_entry): Call char_table_ref_and_range.
15291
15292 * category.h (CATEGORY_SET): Just call char_category_set.
15293
15294 * ccl.c: Include "character.h".
15295 (Qccl, Qcclp): New variables.
15296 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
15297 it's less than 256.
15298 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
15299 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
15300 and DST type.
15301 (ccl_driver): Change types of argument, adjust code accordingly.
15302 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
15303 ccl_driver.
15304 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
15305
15306 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
15307 New members src_multibyte, dst_multibyte, consumed, and produced.
15308 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
15309 (CODING_SPEC_CCL_PROGRAM): New macro.
15310 (ccl_driver): Update prototype.
15311 (Qccl, Qcclp, Fccl_program_p): Extern them.
15312 (CHECK_CCL_PROGRAM): New macro.
15313
15314 * character.c, character.h, chartab.c: New files.
15315
15316 * charset.c: Mostly re-written. Move character and multibyte sequence
15317 handling codes to character.c.
15318
15319 * charset.h: Mostly re-written. Move character and multibyte sequence
15320 handling codes to character.h.
15321
15322 * coding.c, coding.h: Mostly re-written.
15323
15324 * composite.c: Include "character.h" instead of "charset.h".
15325 (CHAR_WIDTH): Move to character.h.
15326 (HASH_KEY, HASH_VALUE): Delete.
15327
15328 * composite.h (enum composition_method): Change order of enumeration
15329 symbols.
15330
15331 * data.c: Include "character.h" instead of "charset.h".
15332 (Faref): Call CHAR_TABLE_REF for a char table.
15333 (Faset): Call CHAR_TABLE_SET for a char table.
15334
15335 * dispextern.h (free_realized_face, check_face_attribytes)
15336 (generate_ascii_font): Extern them.
15337 (free_realized_multibyte_face): Delete extern.
15338
15339 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
15340 table structure.
15341
15342 * editfns.c: Include "character.h" instead of "charset.h".
15343 (Fchar_to_string): Always call CHAR_STRING.
15344
15345 * emacs.c (main): Call init_charset_once, init_charset,
15346 syms_of_chartab, and syms_of_character.
15347
15348 * fileio.c: Include "character.h" instead of "charset.h".
15349 (Finsert_file_contents): Big change for the new code-conversion API.
15350 (choose_write_coding_system, Fwrite_region): Likewise.
15351 (build_annotations_2): Delete.
15352 (e_write): Big change for the new code-conversion API.
15353
15354 * fns.c: Include "character.h" instead of "charset.h".
15355 (copy_sub_char_table): Move to chartab.c.
15356 (Fcopy_sequence): Call copy_char_table for a char table.
15357 (concat): Delete codes calling count_multibyte.
15358 (string_char_to_byte, string_byte_to_char): Adjust for the new
15359 multibyte form.
15360 (internal_equal): Adjust for the change of char table structure.
15361 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
15362 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
15363 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
15364 (char_table_translate, optimize_sub_char_table)
15365 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
15366 chartab.c.
15367 (char_table_ref_and_index): Delete.
15368 (HASH_KEY, HASH_VALUE): Move to lisp.h.
15369 (Fmd5): Call preferred_coding_system instead of accessing
15370 Vcoding_category_list. Adjust for the new code-conversion API.
15371 (syms_of_fns): Move defsubr for char table related functions to
15372 chartab.c.
15373
15374 * fontset.c: Mostly re-written.
15375
15376 * fontset.h (struct font_info): Change type of the member encoding_type.
15377 (enum FONT_SPEC_INDEX): New enum.
15378 (fontset_font_pattern, fs_load_font): Update prototype.
15379 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
15380
15381 * indent.c: Include "character.h" instead of "charset.h".
15382 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
15383
15384 * insdel.c: Include "character.h" instead of "charset.h".
15385 (copy_text): Don't refer to Vnonascii_translation_table.
15386 (insert_from_gap): New function.
15387
15388 * keyboard.c: Include "character.h" instead of "charset.h".
15389 (command_loop_1): Never call direct_output_forward_char before
15390 a non-ASCII character.
15391 (read_char): If Vkeyboard_translate_table is a char table, always
15392 translate a character.
15393
15394 * keymap.c: Include "character.h".
15395 (store_in_keymap): Handle the case that IDX is a cons.
15396 (Fdefine_key): Handle the case that KEY is a cons and the car part
15397 is also a cons (range).
15398 (push_key_description): Adjust for the new character code.
15399 (describe_vector): Call describe_char_table for a char table.
15400 (describe_char_table): New function.
15401
15402 * keymap.h (describe_char_table): Extern it.
15403
15404 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
15405 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
15406 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
15407 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
15408 Delete.
15409 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
15410 structure.
15411 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
15412 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
15413 (CHARTAB_SIZE_BITS_3): New macros.
15414 (chartab_size): Extern it.
15415 (struct Lisp_Char_Table): Re-design.
15416 (struct Lisp_Sub_Char_Table): New structure.
15417 (HASH_KEY, HASH_VALUE): Move from fns.c.
15418 (CHARACTERBITS): Define as 22.
15419 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
15420 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
15421 (GC_SUB_CHAR_TABLE_P): New macro.
15422 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
15423 (code_convert_string_norecord): Deleted extern.
15424 (init_character_once, syms_of_character, init_charset)
15425 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
15426
15427 * lread.c: Include "character.h".
15428 (read_multibyte): New arg NBYTES.
15429 (read_escape): Change the meaning of returned *BYTEREP.
15430 (to_multibyte): Delete.
15431 (read1): Adjust the handling of char table and string.
15432
15433 * print.c: Include "character.h" instead of "charset.h".
15434 (print_string): Convert 8-bit raw bytes to octal form by
15435 string_escape_byte8.
15436 (print_object): Adjust for the new multibyte form. Print 8-bit
15437 raw bytes always in octal form. Handle sub char table correctly.
15438
15439 * process.c: Include "character.h" instead of "charset.h".
15440 (read_process_output, send_process): Adjust for the new
15441 code-conversion API.
15442
15443 * puresize.h (BASE_PURESIZE): Increase.
15444
15445 * regex.c: Include "character.h" instead of "charset.h".
15446 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
15447 (regex_compile): Accept a range whose starting and ending
15448 character have different leading bytes.
15449 (analyse_first): Adjust for the above change.
15450
15451 * search.c: Include "character.h" instead of "charset.h".
15452 (search_buffer, boyer_moore): Adjust for the new multibyte form.
15453 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
15454
15455 * syntax.c: Include "character.h" instead of "charset.h".
15456 (syntax_parent_lookup): Delete.
15457 (Fmodify_syntax_entry): Accept a cons as CHAR.
15458 (skip_chars): Adjust for the new multibyte form.
15459 (init_syntax_once): Call char_table_set_range instead of directly
15460 accessing the structure of a char table.
15461
15462 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
15463 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
15464 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
15465 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
15466
15467 * term.c: Include "buffer.h" and "character.h".
15468 (encode_terminal_code, write_glyphs): Adjust for the new
15469 code-conversion API.
15470 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
15471
15472 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
15473
15474 * xdisp.c: Include "character.h".
15475 (get_next_display_element): Adjust for the new multibyte form.
15476 (disp_char_vector): Adjust for the new char table structure.
15477 (decode_mode_spec_coding): Adjust for the new structure of
15478 coding system.
15479 (decode_mode_spec): Adjust for the new code-conversion API.
15480
15481 * xfaces.c: Include "character.h" instead of "charset.h".
15482 (load_face_font): Adjust for the change of choose_face_font and
15483 FS_LOAD_FONT.
15484 (generate_ascii_font): New function.
15485 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
15486 (set_font_frame_param): Adjust for the change of choose_face_font.
15487 (free_realized_face): Make it public.
15488 (free_realized_faces_for_fontset): Rename from
15489 free_realized_multibyte_face. Free also faces realized for ASCII.
15490 (choose_face_font): Change arguments. Adjust for the change of
15491 fontset_font_pattern and FS_LOAD_FONT.
15492
15493 * xfns.c: Include "character.h".
15494 (x_encode_text): Adjust for the new code-conversion API.
15495
15496 * xselect.c: Don't include "charset.h".
15497 (selection_data_to_lisp_data): Adjust for the new code conversion API.
15498
15499 * xterm.c: Include "character.h".
15500 (x_encode_char): New argument CHARSET. Change caller.
15501 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
15502 Call ENCODE_CHAR instead of SPLIT_CHAR.
15503 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
15504 CHAR_WIDTH instead of CHARSET_WIDTH.
15505 (XTread_socket): Adjust for the new code-conversion API.
15506 (x_new_font): Adjust for the change of FS_LOAD_FONT.
15507 (x_load_font): Adjust for the change of struct font.
15508
155092008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15510
15511 * xfaces.c (face_at_buffer_position): Remove unused vars.
15512
155132008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15514
15515 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
15516 Fix overflow checking.
15517
155182008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15519
15520 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
15521 Cancel previous change.
15522
155232008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
15524
15525 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
15526 ccl->eight_bit_control. Fix check for buffer overflow.
15527 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
15528 (ccl_driver): Initialize extra_bytes to 0.
15529
155302008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
15531
15532 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
15533 return it ORed with ctrl_modifier.
15534
155352008-01-29 Miles Bader <miles@gnu.org>
15536
15537 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
15538
155392008-01-28 Jason Rumney <jasonr@gnu.org>
15540
15541 * w32.c (stat): Don't double check for networked drive.
15542
155432008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
15544
15545 * window.c (run_window_configuration_change_hook): New function.
15546 Code extracted from set_window_buffer. Set the selected frame.
15547 (set_window_buffer): Use it.
15548 * window.h (run_window_configuration_change_hook): Declare.
15549 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
15550
15551 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
15552
155532008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
15554
15555 * Makefile.in: Remove references to unused macros.
15556
155572008-01-26 Eli Zaretskii <eliz@gnu.org>
15558
15559 * w32.c (g_b_init_get_sid_sub_authority)
15560 (g_b_init_get_sid_sub_authority_count): New static variables.
15561 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
15562 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
15563 (init_user_info): Use them to retrieve uid and gid.
15564 Use 500/513, the Windows defaults, as Administrator's uid/gid.
15565 (fstat): Use pw_uid and pw_gid from the_passwd structure for
15566 st_uid and st_gid of the file.
15567
155682008-01-26 Jason Rumney <jasonr@gnu.org>
15569
15570 * w32.c (logon_network_drive): New function.
15571 (stat): Use it.
15572
155732008-01-26 Chong Yidong <cyd@stupidchicken.com>
15574
15575 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
15576 invisible text covered with an ellipsis.
15577
155782008-01-25 Richard Stallman <rms@gnu.org>
15579
15580 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
15581 jump back to beginning. Move some other initializations after that.
15582 (Qwindow_text_change_functions, Vwindow_text_change_functions):
15583 New variables.
15584 (syms_of_xdisp): Init them.
15585
15586 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
15587
15588 * buffer.c (reset_buffer_local_variables):
15589 Implement `permanent-local-hook'.
15590 (Qpermanent_local_hook): New variable.
15591 (syms_of_buffer): Init and staticpro it.
15592
155932008-01-25 Michael Albinus <michael.albinus@gmx.de>
15594
15595 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
15596
155972008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
15598
15599 * fns.c (Fclrhash): Return TABLE.
15600
156012008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15602
15603 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
15604 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
15605 is set even without positional changes.
15606 (x_scroll_bar_clear): Set bar->redraw_needed_p.
15607
15608 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
15609
156102008-01-23 Jason Rumney <jasonr@gnu.org>
15611
15612 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
15613
15614 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
15615 the unicode range available in MULE by locale-coding-system.
15616 Improve dbcs lead byte detection. Set event timestamp and modifiers
15617 earlier.
15618
156192008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15620
15621 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
15622 [MAC_OSX] (init_mac_osx_environment): Initialize it.
15623 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
15624 when used on child processes.
15625
156262008-01-21 Michael Albinus <michael.albinus@gmx.de>
15627
15628 * dbusbind.c (Fdbus_method_return_internal): Rename from
15629 Fdbus_method_return.
15630 (Fdbus_unregister_object): Move to dbus.el.
15631 (Fdbus_call_method, Fdbus_method_return_internal)
15632 (Fdbus_send_signal): Improve debug messages.
15633
156342008-01-20 Martin Rudalics <rudalics@gmx.at>
15635
15636 * undo.c (undo_inhibit_record_point): New variable.
15637 (syms_of_undo): Initialize it.
15638 (record_point): Don't record point when undo_inhibit_record_point
15639 is set.
15640
156412008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
15642
15643 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
15644
15645 * xdisp.c (Qauto_hscroll_mode): New var.
15646 (syms_of_xdisp): Initialize it.
15647 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
15648 window's buffer.
15649 (hscroll_windows): Don't check automatic_hscrolling_p here.
15650
15651 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
15652 vscroll if we're setting window-buffer to the value it already has.
15653
156542008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
15655
15656 * m/intel386.h: Remove references to XENIX.
15657
156582008-01-17 Andreas Schwab <schwab@suse.de>
15659
15660 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
15661 instead of HAVE_X86_64_LIB64_DIR.
15662 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
15663
156642008-01-17 Glenn Morris <rgm@gnu.org>
15665
15666 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
15667 to HAVE_X86_64_LIB64_DIR.
15668
156692008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
15670
15671 * s/irix3-3.h:
15672 * s/irix4-0.h:
15673 * s/386-ix.h:
15674 * s/domain.h:
15675 * s/hpux9-x11r4.h:
15676 * s/hpux9shxr4.h: Remove files for systems no longer supported.
15677
15678 * sysdep.c: Remove code containing references to symbols defined
15679 by unsupported systems.
15680
156812008-01-16 Glenn Morris <rgm@gnu.org>
15682
15683 * coding.c (select-safe-coding-system-function): Doc fix.
15684
156852008-01-15 Glenn Morris <rgm@gnu.org>
15686
15687 * config.in: Revert 2008-01-13 change: this is a generated file.
15688
156892008-01-13 Tom Tromey <tromey@redhat.com>
15690
15691 * lisp.h: Fix typo.
15692
156932008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
15694
15695 * m/sequent-ptx.h:
15696 * m/sequent.h:
15697 * s/ptx.h:
15698 * s/ptx4-2.h:
15699 * s/ptx4.h: Remove files for systems no longer supported.
15700
15701 * callproc.c (Fcall_process): Fix previous change.
15702
157032008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
15704
15705 * unexsunos4.c: Remove file, system not supported anymore.
15706
15707 * m/mips.h:
15708 * m/intel386.h:
15709 * callproc.c:
15710 * config.in:
15711 * ecrt0.c:
15712 * emacs.c:
15713 * fileio.c:
15714 * frame.c:
15715 * getpagesize.h:
15716 * keyboard.c:
15717 * lread.c:
15718 * process.c:
15719 * puresize.h:
15720 * sysdep.c:
15721 * systty.h:
15722 * syswait.h:
15723 * unexec.c:
15724 * xdisp.c:
15725 * alloc.c: Remove code containing references to symbols defined by
15726 unsupported systems.
15727
157282008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
15729
15730 * coding.c (detect_coding_mask): Fix previous change.
15731
157322008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
15733
15734 * coding.c (detect_coding_iso2022): New arg
15735 latin_extra_code_state. Allow Latin extra codes only
15736 when *latin_extra_code_state is nonzero.
15737 (detect_coding_mask): If there is a NULL byte, detect the encoding
15738 as UTF-16 or binary. If Latin extra codes exist, detect the
15739 encoding as ISO-2022 only when there's no other proper encoding is
15740 found.
15741
157422008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15743
15744 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
15745 #ifdef MAC_OS.
15746
157472008-01-08 Richard Stallman <rms@gnu.org>
15748
15749 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
15750
157512008-01-06 Nick Roberts <nickrob@snap.net.nz>
15752
15753 * keyboard.c (parse_menu_item): Don't enclose key bindings on
15754 menu bar in parentheses.
15755
157562008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
15757
15758 * m/7300.h:
15759 * m/acorn.h:
15760 * m/alliant-2800.h:
15761 * m/alliant.h:
15762 * m/alliant1.h:
15763 * m/alliant4.h:
15764 * m/altos.h:
15765 * m/amdahl.h:
15766 * m/apollo.h:
15767 * m/att3b.h:
15768 * m/aviion-intel.h:
15769 * m/aviion.h:
15770 * m/celerity.h:
15771 * m/clipper.h:
15772 * m/cnvrgnt.h:
15773 * m/convex.h:
15774 * m/cydra5.h:
15775 * m/delta88k.h:
15776 * m/dpx2.h:
15777 * m/dual.h:
15778 * m/elxsi.h:
15779 * m/f301.h:
15780 * m/gould-np1.h:
15781 * m/gould.h:
15782 * m/i860.h:
15783 * m/ibmps2-aix.h:
15784 * m/ibmrt-aix.h:
15785 * m/ibmrt.h:
15786 * m/irist.h:
15787 * m/is386.h:
15788 * m/isi-ov.h:
15789 * m/mega68.h:
15790 * m/mg1.h:
15791 * m/news-r6.h:
15792 * m/news-risc.h:
15793 * m/news.h:
15794 * m/nh3000.h:
15795 * m/nh4000.h:
15796 * m/ns16000.h:
15797 * m/ns32000.h:
15798 * m/nu.h:
15799 * m/orion.h:
15800 * m/orion105.h:
15801 * m/paragon.h:
15802 * m/pfa50.h:
15803 * m/plexus.h:
15804 * m/pyramid.h:
15805 * m/pyrmips.h:
15806 * m/sh3el.h:
15807 * m/sps7.h:
15808 * m/sr2k.h:
15809 * m/stride.h:
15810 * m/sun1.h:
15811 * m/sun2.h:
15812 * m/sun3-68881.h:
15813 * m/sun3-fpa.h:
15814 * m/sun3-soft.h:
15815 * m/sun3.h:
15816 * m/sun386.h:
15817 * m/symmetry.h:
15818 * m/tad68k.h:
15819 * m/tahoe.h:
15820 * m/targon31.h:
15821 * m/tek4300.h:
15822 * m/tekxd88.h:
15823 * m/tower32.h:
15824 * m/tower32v3.h:
15825 * m/ustation.h:
15826 * m/wicat.h:
15827 * m/xps100.h:
15828 * s/cxux.h:
15829 * s/cxux7.h:
15830 * s/dgux.h:
15831 * s/dgux4.h:
15832 * s/dgux5-4-3.h:
15833 * s/dgux5-4r2.h:
15834 * s/esix.h:
15835 * s/esix5r4.h:
15836 * s/hiuxmpp.h:
15837 * s/hiuxwe2.h:
15838 * s/iris3-5.h:
15839 * s/iris3-6.h:
15840 * s/isc2-2.h:
15841 * s/isc3-0.h:
15842 * s/isc4-0.h:
15843 * s/isc4-1.h:
15844 * s/newsos5.h:
15845 * s/newsos6.h:
15846 * s/osf1.h:
15847 * s/osf5-0.h:
15848 * s/riscix1-1.h:
15849 * s/riscix12.h:
15850 * s/sco4.h:
15851 * s/sco5.h:
15852 * s/sunos4-0.h:
15853 * s/sunos4-1.h:
15854 * s/sunos413.h:
15855 * s/sunos4shr.h:
15856 * s/umax.h:
15857 * s/unipl5-2.h:
15858 * s/xenix.h:
15859 * cxux-crt0.s:
15860 * unexapollo.c:
15861 * unexconvex.c:
15862 * unexenix.c:
15863 * unexsni.c: Remove files for systems no longer supported.
15864
15865 * m/intel386.h: Remove references to unsupported systems.
15866
15867 * w32.c (get_emacs_configuration): Remove reference to i860.
15868
15869 * sysdep.c: Remove dead code.
15870
158712008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
15872
15873 * s/rtu.h:
15874 * m/masscomp.h: Remove files. Platform is obsolete.
15875
158762008-01-04 Michael Albinus <michael.albinus@gmx.de>
15877
15878 * dbusbind.c (Fdbus_method_return): New function.
15879 (xd_read_message): Add the serial number to the event.
15880 (Fdbus_register_method): Activate the function.
15881
158822008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
15883
15884 * keyboard.c (read_key_sequence): Fix typo.
15885
158862008-01-03 Michael Albinus <michael.albinus@gmx.de>
15887
15888 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
15889 (xd_signature, xd_append_arg): Handle element type detection for
15890 empty arrays.
15891 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
15892 SDATA () calls; this must be solved more general.
15893 (Fdbus_register_signal): Use SBYTES instead of strlen.
15894
158952008-01-03 Magnus Henoch <magnus@zemdatav>
15896
15897 * dbusbind.c (xd_append_arg): Use unsigned char instead of
15898 unsigned int for byte values (necessary for big-endian platform).
15899 (Fdbus_call_method): Handle the case of no returned arguments.
15900
159012007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
15902
15903 * dbusbind.c (xd_read_message): Use non-static input_event struct.
15904
159052007-12-31 Magnus Henoch <mange@freemail.hu>
15906
15907 * dbusbind.c (xd_signature): Signature of variant is just "v".
15908
159092007-12-30 Michael Albinus <michael.albinus@gmx.de>
15910
15911 * dbusbind.c: Fix several errors and compiler warnings.
15912 Reported by Tom Tromey <tromey@redhat.com>.
15913 (XD_ERROR, XD_DEBUG_MESSAGE)
15914 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
15915 (xd_append_arg): Part for basic D-Bus types rewritten.
15916 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
15917 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
15918 appropriate.
15919 (xd_read_message): Return Qnil. Don't signal an error; it is not
15920 useful during event reading.
15921 (Fdbus_register_signal): Signal an error if the check for
15922 FUNCTIONP fails.
15923 (Fdbus_register_method): New function. The implementation is not
15924 complete, the call of the function signals an error therefore.
15925 (Fdbus_unregister_object): New function, renamed from
15926 Fdbus_unregister_signal. The initial check signals an error, if
15927 the object is not well formed.
15928
159292007-12-30 Richard Stallman <rms@gnu.org>
15930
15931 * textprop.c (get_char_property_and_overlay):
15932 Signal error if POSITION is out of range in a buffer.
15933
159342007-12-29 Martin Rudalics <rudalics@gmx.at>
15935
15936 * w32fns.c (Fx_create_frame): Make copy of frame parameters
15937 because the original parameters are in pure storage now.
15938
159392007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15940
15941 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
15942
159432007-12-22 Eli Zaretskii <eliz@gnu.org>
15944
15945 * callint.c (syms_of_callint) <command-history>: Add reference to
15946 history-length in the doc string.
15947
159482007-12-17 Jason Rumney <jasonr@gnu.org>
15949
15950 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
15951 before passing as wParam.
15952
159532007-12-22 Michael Albinus <michael.albinus@gmx.de>
15954
15955 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
15956 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
15957 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
15958 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
15959 as number.
15960 (Fdbus_call_method): Fix docstring.
15961
159622007-12-21 Michael Albinus <michael.albinus@gmx.de>
15963
15964 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
15965 New macros.
15966 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
15967 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
15968 Simplify.
15969 (xd_signature): New function.
15970 (xd_append_arg): Compute also signatures. Major rewrite.
15971 (xd_retrieve_arg): Make debug messages friendly.
15972 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
15973 Check for signatures of arguments.
15974
159752007-12-19 Michael Albinus <michael.albinus@gmx.de>
15976
15977 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
15978 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
15979 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
15980 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
15981 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
15982 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
15983 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
15984 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
15985 (xd_retrieve_value): Remove. Functionality included in ...
15986 (xd_append_arg): New function.
15987 (Fdbus_call_method, Fdbus_send_signal): Apply it.
15988
159892007-12-16 Michael Albinus <michael.albinus@gmx.de>
15990
15991 * dbusbind.c (top): Include <stdio.h>.
15992 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
15993 dbus_message_new_method_call and dbus_message_new_signal.
15994 (Fdbus_register_signal): Rename unique_name to uname.
15995 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
15996 non-existing unique name. Fix typos in matching rule. Return an
15997 object which is useful in Fdbus_unregister_signal.
15998 (Fdbus_unregister_signal): Reimplementation, in order to remove
15999 only the corresponding entry.
16000 (Vdbus_registered_functions_table): Change the order of entries.
16001 Apply these changes in xd_read_message and Fdbus_register_signal.
16002
160032007-12-16 Andreas Schwab <schwab@suse.de>
16004
16005 * fileio.c (Finsert_file_contents): Fix overflow check to not
16006 depend on undefined integer overflow.
16007
160082007-12-14 Jason Rumney <jasonr@gnu.org>
16009
16010 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
16011 for characters above 127.
16012
160132007-12-13 Jason Rumney <jasonr@gnu.org>
16014
16015 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
16016 before dereferencing array.
16017 (lookup_vk_code): Remove zero comparison.
16018
160192007-12-14 Michael Albinus <michael.albinus@gmx.de>
16020
16021 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
16022 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
16023 Use `unsigned int' instead of `uint'.
16024 (xd_read_message, Fdbus_register_signal): Split expressions into
16025 multiple lines before operators "&&" and "||", according to the
16026 GNU Coding Standards.
16027
160282007-12-14 Eli Zaretskii <eliz@gnu.org>
16029
16030 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
16031
160322007-12-12 Juri Linkov <juri@jurta.org>
16033
16034 * buffer.c (Frename_buffer): In interactive spec replace
16035 `read-buffer' with `read-string' that uses `buffer-name-history'
16036 as history, and the current buffer's name as default.
16037
160382007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
16039
16040 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
16041 manipulating the backtrace manually.
16042 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
16043 (struct backtrace, backtrace_list): Remove.
16044 (command_loop_1): Remove dead var `no_direct'.
16045
16046 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
16047 preserve non-built-in buffer-local variables.
16048 (Fkill_all_local_variables): Don't re-create&re-set permanent
16049 buffer-local variables.
16050
160512007-12-09 Juri Linkov <juri@jurta.org>
16052
16053 * buffer.c (Frename_buffer): Change interactive spec from "s" to
16054 Lisp code that uses `read-buffer' with current buffer as default.
16055
160562007-12-08 Michael Albinus <michael.albinus@gmx.de>
16057
16058 * dbusbind.c (xd_read_message): Generate an event for every
16059 registered handler. There might be several handlers registered
16060 for the same signal.
16061 (Fdbus_register_signal): Don't overwrite a registration for the
16062 same signal. Add a new registration if handlers are different.
16063 (Vdbus_registered_functions_table): Rework doc string.
16064
160652007-12-07 Michael Albinus <michael.albinus@gmx.de>
16066
16067 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
16068 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
16069 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
16070 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
16071 Unify argument lists.
16072 (xd_read_message, Fdbus_register_signal): Reorder and extend event
16073 arguments and hash table keys. Use unique name for service.
16074 (Fdbus_unregister_signal): Remove checks.
16075 (Vdbus_registered_functions_table): Fix doc string.
16076
160772007-12-05 Magnus Henoch <mange@freemail.hu>
16078
16079 * process.c (make_process): Initialize pty_flag to 0.
16080
160812007-12-05 Jason Rumney <jasonr@gnu.org>
16082
16083 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
16084 specified XBMs.
16085
160862007-12-05 Richard Stallman <rms@gnu.org>
16087
16088 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
16089
160902007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16091
16092 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
16093 New variable.
16094 (mac_try_close_socket) [MAC_OSX]: New function.
16095 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
16096 Update cfsockets_for_select. Replace invalid CFRunLoop source.
16097
16098 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
16099 Use mac_try_close_socket.
16100
161012007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16102
16103 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
16104 reloc_base.
16105 (copy_dysymtab): Compute relocation base here.
16106 (rebase_reloc_address) [__ppc64__]: New function.
16107 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
16108 changed.
16109
161102007-12-05 Jason Rumney <jasonr@gnu.org>
16111
16112 * w32proc.c (sys_spawnve): Quote args with wildcards.
16113
161142007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16115
16116 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
16117 __objc_* sections.
16118 (unrelocate) [_LP64]: Set relocation base to address of data segment.
16119
161202007-12-05 Michael Albinus <michael.albinus@gmx.de>
16121
16122 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
16123 Move check for Vdbus_registered_functions_table to
16124 xd_read_queued_messages.
16125 (xd_read_queued_messages): Protect xd_read_message calls by
16126 internal_condition_case_1.
16127
161282007-12-04 Michael Albinus <michael.albinus@gmx.de>
16129
16130 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
16131 Qdbus_system_bus and Qdbus_session_bus, respectively.
16132 (Vdbus_intern_symbols): Remove.
16133 (Vdbus_registered_functions_table): New hash table.
16134 (XD_SYMBOL_INTERN_SYMBOL): Remove.
16135 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
16136 Rewrite in order to manage registered functions by hash table
16137 Vdbus_registered_functions_table.
16138
161392007-12-03 Jan Djärv <jan.h.d@swipnet.se>
16140
16141 * xterm.c: Update URL to Window Manager Specification in comment.
16142
161432007-12-02 Michael Albinus <michael.albinus@gmx.de>
16144
16145 * config.in (HAVE_DBUS): Add.
16146
16147 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
16148 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
16149 (obj): Add $(DBUS_OBJ).
16150 (LIBES): Add $(DBUS_LIBS).
16151 (dbusbind.o): New target.
16152
16153 * dbusbind.c: New file.
16154
16155 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
16156
16157 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
16158 (Qdbus_event): New Lisp symbol.
16159 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
16160 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 16161 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
16162
16163 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
16164
161652007-12-01 Richard Stallman <rms@gnu.org>
16166
16167 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
16168
161692007-11-30 Jason Rumney <jasonr@gnu.org>
16170
16171 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
16172 (w32con_reset_terminal_modes): Clear screen buffer.
16173 (w32_face_attributes): Don't use color indexes that are out of range.
16174 Only reverse the default colors.
16175
16176 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
16177 WINDOWSNT.
16178
16179 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
16180
161812007-11-29 Jason Rumney <jasonr@gnu.org>
16182
16183 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
16184 (w32_face_attributes): Use Vtty_defined_color_alist to determine
16185 if the terminal colors are initialized.
16186 (unspecified_fg, unspecified_bg): Remove unused declarations.
16187
161882007-11-29 Andreas Schwab <schwab@suse.de>
16189
16190 * keyboard.c (apply_modifiers): Fix typo.
16191
161922007-11-29 Richard Stallman <rms@gnu.org>
16193
16194 * keymap.c (Fcurrent_local_map): Doc fix.
16195
161962007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
16197
16198 * s/gnu-kfreebsd.h: New file.
16199
162002007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
16201
16202 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
16203 Don't cast redundantly.
16204
16205 * keyboard.c (KEY_TO_CHAR): New macro.
16206 (parse_modifiers, apply_modifiers): Accept integer arguments.
16207 (read_key_sequence): Use them to unify the "shift->unshift" mapping
16208 for chars and symbol keys.
16209 After doing such remapping, apply function-key-map again.
16210
162112007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
16212
16213 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
16214 compiled anymore.
16215
162162007-11-26 Andreas Schwab <schwab@suse.de>
16217
16218 * process.c (list_processes_1): Fix indentation level of the
16219 command column.
16220
162212007-11-23 Andreas Schwab <schwab@suse.de>
16222
16223 * editfns.c (Fformat): Handle %c specially since it requires the
16224 argument to be of type int.
16225
162262007-11-23 Markus Triska <markus.triska@gmx.at>
16227
16228 * emacs.c (main): Call init_editfns before init_process, since
16229 init_process sets Vprocess_connection_type depending on OS release.
16230
162312007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
16232
16233 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
16234 (find_symbol_value): Use do_symval_forwarding.
16235
16236 * data.c (set_internal): Set the value in the `cons-cell' (for
16237 Buffer_Local_values) not only for frame-local variables.
16238
162392007-11-22 Andreas Schwab <schwab@suse.de>
16240
16241 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
16242 values to sprintf.
16243 * keymap.c (Fsingle_key_description): Likewise.
16244 * print.c (print_object): Likewise.
16245
162462007-11-22 Jan Djärv <jan.h.d@swipnet.se>
16247
16248 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
16249 file for image is nil.
16250
162512007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
16252
16253 * term.c: Include stdarg.h.
16254 (fatal): Implement using varargs.
16255 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
16256
162572007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16258
16259 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
16260 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
16261 Update call to buffer_slot_type_mismatch.
16262 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
16263 (buffer_slot_type_mismatch): Update.
16264 * buffer.c (buffer_local_types): Remove.
16265 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
16266 (defvar_per_buffer): Set the type in the buffer_objfwd.
16267
162682007-11-21 Jason Rumney <jasonr@gnu.org>
16269
16270 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
16271 CreateFileMapping returns NULL on failure.
16272
162732007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16274
16275 * search.c (Fset_match_data): Remove the `evaporate' feature.
16276 (unwind_set_match_data): Don't use the `evaporate' feature.
16277
162782007-11-21 Jason Rumney <jasonr@gnu.org>
16279
16280 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
16281
16282 * w32console.c (w32con_write_glyphs): Remove unused variables.
16283
162842007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
16285
16286 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
16287
16288 * s/darwin.h (MULTI_KBOARD): Remove.
16289
16290 * macfns.c (x_create_tip_frame, Fx_create_frame)
16291 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
16292
162932007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
16294
16295 * buffer.c (Fbuffer_local_value): Remove redundant test.
16296 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
16297 than in `current-buffer' to match the comment.
16298 Do the swap using swap_in_global_binding.
16299
16300 * data.c (store_symval_forwarding, set_internal):
16301 * eval.c (specbind): Remove dead code.
16302
16303 * coding.c (detect_coding, Fupdate_coding_systems_internal):
16304 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
16305 Since we do not want to see internal Lisp_*fwd objects here.
16306
163072007-11-18 Jan Djärv <jan.h.d@swipnet.se>
16308
16309 * sysdep.c (init_system_name): Use getaddrinfo if available.
16310
16311 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
16312 (x_scroll_bar_note_movement): start, end, with, height in struct
16313 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
16314
163152007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
16316
16317 * puresize.h (BASE_PURESIZE): Increase to 1190000.
16318
163192007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
16320
16321 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
16322 This undoes Richard's change of 14-Oct-2002.
16323
16324 * alloc.c (allocate_other_vector):
16325 * lisp.h (allocate_other_vector): Remove.
16326
16327 * window.c (struct save_window_data): Move non-lisp data to the end
16328 and make it `int' rather than Lisp_Object.
16329 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
16330 Done wrap/unwrap integer values.
16331 (Fset_window_configuration, compare_window_configurations):
16332 Update use of fields to their new types.
16333
16334 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
16335 Turn integer fields into `int'. Merge x_window_low and x_window_high.
16336 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
16337 (SET_SCROLL_BAR_X_WINDOW): Remove.
16338 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
16339 Access the new x_window field directly.
16340 * xterm.c (x_scroll_bar_create): Use a pseudovector.
16341 Don't wrap/unwrap integers into Lisp_Objects.
16342 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
16343 (x_scroll_bar_report_motion):
16344 Don't wrap/unwrap integers into Lisp_Objects.
16345 (x_term_init): Use SDATA.
16346 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
16347 (x_scroll_bar_set_handle, x_scroll_bar_remove)
16348 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
16349 (x_scroll_bar_report_motion, x_scroll_bar_clear):
16350 * xfns.c (x_set_background_color):
16351 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
16352 Access the new x_window field directly.
16353
16354 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
16355 (allocate_pseudovector): Make non-static.
16356
16357 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
16358 (allocate_pseudovector): Declare.
16359 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
16360
163612007-11-15 Andreas Schwab <schwab@suse.de>
16362
16363 * editfns.c (Fformat): Correctly format EMACS_INT values.
16364 Also take precision into account when formatting an integer.
16365
16366 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
16367
163682007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
16369
16370 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
16371 (syms_of_keyboard): Defsubr it.
16372
16373 * data.c (swap_in_global_binding): Fix longstanding bug where
16374 store_symval_forwarding was not called with the right second argument,
16375 thus causing objfwd-ing from being dropped.
16376
163772007-11-14 Juanma Barranquero <lekktu@gmail.com>
16378
16379 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
16380 (Fx_display_pixel_height, Fx_display_planes)
16381 (Fx_display_color_cells, Fx_server_max_request_size)
16382 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
16383 (Fx_display_visual_class, Fx_display_save_under):
16384 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
16385 (Fx_display_pixel_height, Fx_display_planes)
16386 (Fx_display_color_cells, Fx_server_max_request_size)
16387 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
16388 (Fx_display_mm_height, Fx_display_mm_width)
16389 (Fx_display_backing_store, Fx_display_visual_class)
16390 (Fw32_select_font, Fx_display_save_under):
16391 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
16392 (Fx_display_pixel_height, Fx_display_planes)
16393 (Fx_display_color_cells, Fx_server_max_request_size)
16394 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
16395 (Fx_display_save_under): Fix typos in docstrings.
16396
163972007-11-14 Juanma Barranquero <lekktu@gmail.com>
16398
16399 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
16400 corresponding to deleted entries; they are an implementation detail.
16401 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
16402 Remove variables.
16403 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
16404 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
16405 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
16406 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
16407 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
16408 (Fw32_define_rgb_color, Fw32_load_color_file)
16409 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
16410 Fix typos in docstrings.
16411 (Fx_server_version): Reflow docstring.
16412 (Fw32_shell_execute): Doc fixes.
16413
164142007-11-13 Juanma Barranquero <lekktu@gmail.com>
16415
16416 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
16417 if w32_parse_hot_key returned nil.
16418
164192007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
16420
16421 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
16422
164232007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 16424
aac0c6e3
MR
16425 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
16426
16427 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
16428
16429 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
16430 Remove W32_SCROLL_BAR_CLICK_EVENT.
16431
16432 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
16433 Add MULTIMEDIA_KEY_EVENT.
16434
16435 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
16436 (lispy_multimedia_keys) [WINDOWSNT]: New array.
16437 (make_lispy_event) [WINDOWSNT]: Use it to translate
16438 MULTIMEDIA_KEY_EVENT.
16439
16440 * w32term.h (WM_APPCOMMAND): Define if not already.
16441 (GET_APPCOMMAND_LPARAM): Likewise.
16442
16443 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
16444 WM_APPCOMMAND.
16445
16446 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
16447 (syms_of_w32fns): Export and initialize it.
16448 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
16449
164502007-11-09 Chong Yidong <cyd@stupidchicken.com>
16451
16452 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
16453 twice.
16454
16455 * xdisp.c (handle_face_prop): Fix last change.
16456
164572007-11-09 Richard Stallman <rms@gnu.org>
16458
16459 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
16460 not just for after-strings and before-strings.
16461 Call face_for_overlay_string and pass the overlay to it.
16462 (handle_display_prop): Determine whether property came from an overlay.
16463 Pass OVERLAY arg to handle_single_display_spec.
16464 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
16465 (load_overlay_strings): Fill in it->string_overlays.
16466 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
16467
16468 * xfaces.c (face_for_overlay_string): Function renamed from
16469 face_at_buffer_position_no_overlays, and add arg OVERLAY.
16470
16471 * dispextern.h (struct it): New elt string_overlays.
16472 New elt from_overlay, also in stack.
16473 Rearrange a few elements.
16474 (face_for_overlay_string): Decl renamed from
16475 face_at_buffer_position_no_overlays, and add argument.
16476
164772007-11-09 Richard Stallman <rms@gnu.org>
16478
16479 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
16480 to get the base face for an overlay string.
16481
16482 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
16483
16484 * xfaces.c (face_at_buffer_position_no_overlays): New function.
16485
16486 * xdisp.c (handle_stop): Move some code out of loop.
16487
164882007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16489
16490 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
16491 Fix conversion from Lisp object to ATSUFontID.
16492
164932007-11-09 Jason Rumney <jasonr@gnu.org>
16494
16495 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
16496
164972007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16498
16499 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
16500 Don't assume regions are aligned to page boundary.
16501 (print_load_command_name): Add LC_UUID if defined.
16502
165032007-11-09 Richard Stallman <rms@gnu.org>
16504
16505 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
16506
165072007-11-07 Jason Rumney <jasonr@gnu.org>
16508
16509 * s/windows95.h: Remove.
16510
165112007-11-06 Jan Djärv <jan.h.d@swipnet.se>
16512
16513 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
16514 abort with a message on unhandled store_type values.
16515
165162007-11-01 Jan Djärv <jan.h.d@swipnet.se>
16517
16518 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
16519 Remove HAVE_X11R5 and HAVE_X11R4.
16520
165212007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
16522
16523 * Makefile.in: Remove references to sunfns.c and sunfns.o.
16524
165252007-11-01 Johan Bockgård <bojohan@gnu.org>
16526
16527 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
16528 Don't set s->stippled_p here, since it has already been set by
16529 x_set_glyph_string_gc from x_draw_glyph_string.
16530
165312007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
16532
16533 * sunfns.c: Remove file.
16534
16535 * m/sun386.h:
16536 * m/sun2.h:
16537 * m/sparc.h: Remove Sun windows code.
16538
165392007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
16540
16541 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
16542 (init_keyboard): Set current_kboard's window-system to nil.
16543 (tty_read_avail_input): Typo.
16544 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
16545
165462007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
16547
16548 * s/usg5-4.h:
16549 * s/usg5-3.h:
16550 * s/ptx.h:
16551 * m/is386.h:
16552 * m/ibmps2-aix.h:
16553 * Makefile.in: Remove all mentions of X10.
16554
16555 * dispnew.c (syms_of_display): Don't mention version 10.
16556
165572007-10-28 Juanma Barranquero <lekktu@gmail.com>
16558
16559 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
16560 ($(BLD)/abbrev.$(O)): Remove.
16561
165622007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
16563
16564 Rewrite abbrev.c in Elisp.
16565 * image.c (Qcount): Don't declare as extern.
16566 (syms_of_image): Initialize and staticpro `Qcount'.
16567 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
16568 * emacs.c (main): Don't call syms_of_abbrev.
16569 * Makefile.in (obj): Remove abbrev.o.
16570 (abbrev.o): Remove.
16571 * abbrev.c: Remove.
16572
165732007-10-26 Martin Rudalics <rudalics@gmx.at>
16574
16575 * window.c (window_min_size_2): Don't count header-line.
16576
165772007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
16578
16579 * frame.h (struct frame): Move all bit fields after the first bit
16580 field to take advantage of the available space. Group all the
16581 chars together to reduce wasted space due to padding.
16582
165832007-10-26 Juanma Barranquero <lekktu@gmail.com>
16584
16585 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
16586
16587 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
16588 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
16589 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
16590 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
16591 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
16592 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
16593 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
16594 (last_marked, mark_object_loop_halt): Make static.
16595
16596 * frame.c (syms_of_frame) <delete-frame-functions>:
16597 Fix typo in docstring.
16598
165992007-10-25 Juanma Barranquero <lekktu@gmail.com>
16600
16601 * w32.c (init_environment): Fix tiny memory leak.
16602 (w32_get_resource): Remove unused variable `ok'.
16603
166042007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
16605
16606 Make `window-system' into a keyboard-local variable (rather than
16607 frame-local as done originally by multi-tty).
16608
16609 * keyboard.h (struct kboard): Add Vwindow_system.
16610 * keyboard.c (init_kboard): Set a default for Vwindow_system.
16611 (mark_kboards): Mark Vwindow_system.
16612
16613 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
16614 (init_display): Don't set the obsolete `window-system' frame-param.
16615
16616 * xterm.c (x_term_init):
16617 * w32term.c (w32_create_terminal):
16618 * term.c (init_tty): Set Vwindow_system.
16619 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
16620 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
16621
16622 * xfns.c (Fx_create_frame, x_create_tip_frame):
16623 * w32fns.c (Fx_create_frame, x_create_tip_frame):
16624 * macfns.c (Fx_create_frame):
16625 Don't set the obsolete `window-system' frame-param.
16626
16627 * frame.h (Qwindow_system): Remove.
16628 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
16629 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
16630
166312007-10-24 Richard Stallman <rms@gnu.org>
16632
16633 * frame.c (x_figure_window_size): For fullscreen case,
16634 set USPosition | PPosition without clobbering rest of window_prompting.
16635
16636 * keyboard.c (Fcurrent_idle_time): Doc fix.
16637
16638 * print.c (Fwith_output_to_temp_buffer): Doc fix.
16639
166402007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
16641
16642 * process.c (unwind_request_sigio): Only define if __ultrix__.
16643
16644 * callproc.c (child_setup): Remove spurious *.
16645
16646 * lisp.h (Fget_text_property): Declare.
16647 (have_menus_p): Declare it here rather than in sys-dep header files.
16648 * macterm.h (have_menus_p):
16649 * msdos.h (have_menus_p):
16650 * xterm.h (have_menus_p): Remove.
16651
16652 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
16653 (Fmake_variable_frame_local): Just check the variable's const-ness
16654 rather than checking nil or t.
16655
166562007-10-22 Jason Rumney <jasonr@gnu.org>
16657
16658 * w32fns.c: Include math.h.
16659 (w32_abort): Declaration moved to nt/config.nt.
16660
16661 * s/ms-w32.h (HAVE_STDLIB_H): Define.
16662 (abort): Redefinition moved to nt/config.nt.
16663
16664 * m/windowsnt.h: Remove.
16665
166662007-10-22 Juanma Barranquero <lekktu@gmail.com>
16667
16668 * emacs.c (Fdump_emacs): Fix typo in message.
16669 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
16670 <installation-directory>: Reflow docstring.
16671
166722007-10-22 Juri Linkov <juri@jurta.org>
16673
16674 * minibuf.c: Allow minibuffer default to be a list of default values.
16675 With empty input use the first element of this list as returned default.
16676 (string_to_object)
16677 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
16678 (read_minibuf): If defalt is cons, set histstring to its car.
16679 (Fread_string): If default_value is cons, set val to its car.
16680 (Fread_buffer): If def is cons, use its car.
16681 (Fcompleting_read): If defalt is cons, set val to its car.
16682
166832007-10-21 Michael Albinus <michael.albinus@gmx.de>
16684
16685 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
16686
166872007-10-20 Juanma Barranquero <lekktu@gmail.com>
16688
16689 * doc.c (Fdocumentation): Check for advice in all cases.
16690
166912007-10-19 Chong Yidong <cyd@stupidchicken.com>
16692
16693 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
16694
166952007-10-19 Richard Stallman <rms@gnu.org>
16696
16697 * doc.c (Fdocumentation): Check for and handle an advised function.
16698
166992007-10-19 Juanma Barranquero <lekktu@gmail.com>
16700
16701 * process.c (Fset_process_filter): Doc fix.
16702
167032007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
16704
16705 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
16706 which caused key-translation-map to applied repeatedly (thus breaking
16707 double-mode).
16708
167092007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
16710
16711 * xselect.c (x_own_selection, x_handle_selection_clear)
16712 (x_clear_frame_selections):
16713 * w32menu.c (list_of_panes, list_of_items):
16714 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
16715 * textprop.c (validate_plist, interval_has_all_properties)
16716 (interval_has_some_properties, interval_has_some_properties_list)
16717 (add_properties, text_property_list):
16718 * process.c (Fget_buffer_process, list_processes_1, status_notify):
16719 * minibuf.c (Fassoc_string):
16720 * macselect.c (x_own_selection, x_clear_frame_selections)
16721 (Fx_disown_selection_internal):
16722 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
16723 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
16724
167252007-10-17 Chong Yidong <cyd@stupidchicken.com>
16726
16727 * process.c: Link to libs for calling res_init() if available.
16728 (Fmake_network_process): Call res_init() before getaddrinfo or
16729 gethostbyname, if possible.
16730
167312007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
16732
16733 * lread.c (read1): Set pvectype for char_tables.
16734
16735 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
16736 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
16737 Add type checks.
16738 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
16739
16740 * alloc.c (free_misc): Use XMISCTYPE.
16741 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
16742
167432007-10-17 Glenn Morris <rgm@gnu.org>
16744
16745 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
16746 (syms_of_minibuf): Add Qcompletion_ignore_case.
16747 * dired.c (Qcompletion_ignore_case): Change to external.
16748 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
16749 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
16750 (Fread_file_name): Use it rather than intern'ing.
16751
16752 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
16753 (Fread_coding_system): Ignore case of user input.
16754
167552007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16756
16757 * xdisp.c (handle_display_prop): Ignore display specs after
16758 replacing one when string text is being replaced.
16759 (handle_single_display_spec): Pretend as if characters with display
16760 property haven't been consumed only when buffer text is being replaced.
16761
167622007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
16763
16764 * xfns.c (Fx_create_frame, Fx_display_list):
16765 * window.c (window_fixed_size_p, enlarge_window)
16766 (shrink_window_lowest_first):
16767 * macterm.c (init_font_name_table):
16768 * macfns.c (Fx_create_frame, Fx_display_list):
16769 * lread.c (close_load_descs):
16770 * keyboard.c (read_char_x_menu_prompt):
16771 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
16772 * coding.c (code_convert_region_unwind): Test the type of an object
16773 rather than just !NILP before extracting data from it.
16774
16775 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
16776
16777 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
16778 (XMISCANY): New macro.
16779 (XMISCTYPE): Use it.
16780 (struct Lisp_Misc_Any): New type.
16781 (union Lisp_Misc): Use it.
16782 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
16783 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
16784 (find_symbol_value, set_internal, default_value, Fset_default)
16785 (Fmake_variable_buffer_local, Fmake_local_variable)
16786 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
16787 (Flocal_variable_if_set_p, Fvariable_binding_locus):
16788 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
16789 * alloc.c (allocate_buffer): Set the size and tag.
16790 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
16791 Use XMISCANY.
16792 (die): Follow the GNU convention for error messages.
16793 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
16794 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
16795 tag any more.
16796 (set_buffer_internal_1):
16797 * frame.c (store_frame_param):
16798 * eval.c (specbind):
16799 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
16800
16801 * doc.c (Fsnarf_documentation): Simplify.
16802
168032007-10-14 Juanma Barranquero <lekktu@gmail.com>
16804
16805 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
16806 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
16807
168082007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
16809
16810 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
16811
168122007-10-14 Juanma Barranquero <lekktu@gmail.com>
16813
16814 * eval.c (do_autoload): Don't save autoloads.
16815
16816 * data.c (Ffset): Save autoload of the function being set.
16817
168182007-10-07 John Paul Wallington <jpw@pobox.com>
16819
16820 * xfns.c (x_create_tip_frame): Set the `display-type' frame
16821 parameter before setting up faces.
16822
168232007-10-13 Eli Zaretskii <eliz@gnu.org>
16824
16825 * ccl.c (Fregister_code_conversion_map):
16826 * keyboard.c (append_tool_bar_item): Reformat last change.
16827
16828 * lisp.h (eabs): Rename from `abs'. All callers changed.
16829
168302007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
16831
16832 * buffer.c (add_overlay_mod_hooklist):
16833 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
16834 * fontset.c (make_fontset):
16835 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
16836 (append_tool_bar_item):
16837 * macmenu.c (grow_menu_items):
16838 * w32menu.c (grow_menu_items):
16839 * xmenu.c (grow_menu_items): Use larger_vector.
16840
168412007-10-13 Eli Zaretskii <eliz@gnu.org>
16842
16843 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
16844 selected frame'' on MSDOS).
16845
168462007-10-12 Martin Rudalics <rudalics@gmx.at>
16847
16848 * frame.c (Qexplicit_name): New variable.
16849 (x_report_frame_params): Report it in parameter alist.
16850 (syms_of_frame): Intern and staticpro it.
16851
168522007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
16853
16854 * macfns.c (x_create_tip_frame): Set terminal for frame.
16855
168562007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
16857
16858 * frame.c (Qenvironment): Remove.
16859 (syms_of_frame) <Qenvironment>: Don't initialize.
16860 (Fdelete_frame): Don't treat the `environment' param specially.
16861 * frame.h (Qenvironment): Don't declare.
16862 * callproc.c (set_initial_environment): Don't set unused frame param.
16863
16864 * frame.c (Fframe_with_environment): Remove.
16865 (syms_of_frame) <Sframe_with_environment>: Don't declare.
16866
16867 * lisp.h (Fframe_with_environment): Don't declare.
16868
168692007-10-10 Juanma Barranquero <lekktu@gmail.com>
16870
16871 * indent.c (indent_tabs_mode, last_known_column)
16872 (last_known_column_modified): Make static.
16873 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
16874
168752007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
16876
16877 * puresize.h (BASE_PURESIZE): Increase to 1170000.
16878
168792007-10-09 Jason Rumney <jasonr@gnu.org>
16880
16881 * w32term.c (x_set_window_size): Disable code that attempts to tell
16882 Lisp code about a size change before it actually happens.
16883
168842007-10-09 Richard Stallman <rms@gnu.org>
16885
16886 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
16887 return HANDLED_RETURN.
16888
168892007-10-08 Martin Rudalics <rudalics@gmx.at>
16890
16891 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
16892 when there's an unread command event.
16893
16894 * frame.c (focus_follows_mouse): Move here from frame.el to allow
16895 window autoselection act appropriately when leaving selected frame.
16896 (syms_of_frame): Initialize focus_follows_mouse.
16897 * frame.h (focus_follows_mouse): Extern it.
16898 * macterm.c (XTread_socket): When focus_follows_mouse is nil
16899 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
16900 * msdos.c (dos_rawgetc): Likewise.
16901 * w32term.c (w32_read_socket): Likewise.
16902 * xterm.c (handle_one_xevent): Likewise.
16903 * xdisp.c (syms_of_xdisp): In doc-string of
16904 mouse-autoselect-window mention focus-follows-mouse.
16905
169062007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16907
16908 * macterm.c (mac_load_query_font): Fix missing return value.
16909 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
16910 Add BLOCK_INPUT.
16911
169122007-10-08 Richard Stallman <rms@gnu.org>
16913
16914 * xdisp.c (get_window_cursor_type): Implement documented behavior
16915 for cursor-in-non-selected-windows = t.
16916
169172007-10-08 Jason Rumney <jasonr@gnu.org>
16918
16919 * w32.c (w32_get_resource): Always close registry keys.
16920
169212007-10-08 Jason Rumney <jasonr@gnu.org>
16922
16923 * makefile.w32-in (LIBS): Add COMCTL32.
16924
16925 * w32fns.c (globals_of_w32fns): Init common controls.
16926
169272007-10-08 Richard Stallman <rms@gnu.org>
16928
16929 * image.c (our_memory_buffer): Rename from omfib_buffer.
16930
169312007-10-08 Richard Stallman <rms@gnu.org>
16932
16933 * buffer.c (Foverlays_at): Doc fix.
16934
169352007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
16936
16937 * fns.c (Fplist_put): Preserve uneven tail data.
16938
169392007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
16940
16941 * termhooks.h (enum event_kind): Remove trailing comma.
16942
16943 * frame.h (enum): Remove trailing comma.
16944
169452007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
16946
16947 * w32proc.c (delete_child): Don't terminate threads of zombies.
16948
169492007-10-08 Martin Rudalics <rudalics@gmx.at>
16950
16951 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
16952
16953 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
16954 last-repeatable-command.
16955 (init_kboard): Initialize Vlast_repeatable_command.
16956 (command_loop_1): Set it to real_this_command unless that was
16957 bound to an input event.
16958 (mark_kboards): Mark it.
16959
169602007-10-08 Richard Stallman <rms@gnu.org>
16961
16962 * eval.c (condition-case): Doc fix.
16963
169642007-10-08 Masatake YAMATO <jet@gyve.org>
16965
16966 * xfaces.c (tty_supports_face_attributes_p): Fix code
16967 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
16968 was copied and not edited.
16969
169702007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
16971
16972 Add new `input-decode-map' keymap and use it for terminal
16973 escape sequences.
16974 * keyboard.h (struct kboard): Add Vinput_decode_map.
16975 Remove Vlocal_key_translation_map.
16976 * keyboard.c (read_key_sequence): Add support for input-decode-map.
16977 (init_kboard): Init input-decode-map.
16978 Replace local-key-translation-map back with key-translation-map.
16979 (syms_of_keyboard): Declare input-decode-map.
16980 Remove local-key-translation-map. Update docstrings.
16981 (mark_kboards): Mark Vinput_decode_map.
16982 Don't mark Vlocal_key_translation_map.
16983 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
16984 Replace local-key-translation-map back with key-translation-map.
16985 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
16986 Bind in input-decode-map rather than function-key-map.
16987
16988 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
16989 This was made redundant by the previous introduction of XSETPVECTYPE.
16990
169912007-10-09 Richard Stallman <rms@gnu.org>
16992
16993 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
16994
169952007-09-29 Richard Stallman <rms@gnu.org>
16996
16997 * eval.c (internal_condition_case_2, internal_condition_case_1)
16998 (internal_condition_case): Reenable abort if x_catching_errors ()
16999 to see if that really happens and why.
17000
170012007-10-06 Andreas Schwab <schwab@suse.de>
17002
17003 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
17004
170052007-10-04 Juanma Barranquero <lekktu@gmail.com>
17006
17007 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
17008
170092007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
17010
17011 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
17012
170132007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
17014
17015 * window.h (struct window):
17016 * window.c (struct save_window_data, struct saved_window):
17017 * termhooks.h (struct terminal):
17018 * process.h (struct Lisp_Process):
17019 * frame.h (struct frame):
17020 * buffer.h (struct buffer):
17021 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
17022 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
17023 The size field of (pseudo)vectors is now unsigned.
17024 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
17025
17026 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
17027 Turn `count' into an integer.
17028
17029 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
17030 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
17031 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
17032 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
17033 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
17034
17035 * alloc.c (allocate_pseudovector): New fun.
17036 (ALLOCATE_PSEUDOVECTOR): New macro.
17037 (allocate_window, allocate_terminal, allocate_frame)
17038 (allocate_process): Use it.
17039 (mark_vectorlike): New function.
17040 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
17041 (mark_terminals): Use it.
17042 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
17043 (Fmake_byte_code): Use XSETPVECTYPE.
17044
17045 * frame.c (Fframe_parameters): Minor simplification.
17046
17047 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
17048
17049 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
17050
17051 * buffer.c (Fget_buffer_create, init_buffer_once):
17052 * lread.c (defsubr):
17053 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
17054
17055 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
17056 defined differently in the m/*.h files.
17057 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
17058 (XSETPVECTYPE): New macro.
17059 (XSETPSEUDOVECTOR): Use it.
17060
17061 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
17062 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
17063
17064 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
17065 * lread.c (defvar_per_buffer):
17066 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
17067
17068 * window.c (candidate_window_p): Only consider as visible frames that
17069 are on the same terminal.
17070
17071 * m/ibms390x.h (MARKBIT): Remove unused macro.
17072
170732007-10-01 Juanma Barranquero <lekktu@gmail.com>
17074
17075 * lread.c (Fload): Fix typo in docstring.
17076
170772007-10-01 Michaël Cadilhac <michael@cadilhac.name>
17078
17079 * floatfns.c (Fexpt): Manually check for overflows, so that a power
17080 of a non-zero value can't yield zero.
17081
170822007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
17083
17084 * term.c (term_clear_mouse_face, term_mouse_highlight)
17085 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
17086
17087 * print.c (safe_debug_print): Use XHASH.
17088
17089 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
17090 Lisp elements such as tags.
17091 (XHASH): New macro.
17092 (EQ): Use it.
17093 (SREF, SSET, STRING_COPYIN): Use SDATA.
17094 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
17095
17096 * alloc.c (mark_terminal): Remove left-over declaration.
17097 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
17098 (allocate_vectorlike): Remove type argument. Adjust callers.
17099 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
17100 Only handle the one remaining MEM_TYPE_VECTORLIKE.
17101
17102 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
17103 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
17104 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
17105 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
17106 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
17107 Use them.
17108
17109 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
17110 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
17111 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
17112
171132007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
17114
17115 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
17116 loaded by default.
17117
171182007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
17119
17120 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
17121 on this tty.
17122 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
17123
17124 * term.c (mouse_face_window): Rename from Qmouse_face_window.
17125 Update all users.
17126 (handle_one_term_event): Use Gpm_DrawPointer.
17127 (Fgpm_mouse_start): Rename from Fterm_open_connection.
17128 Signal errors instead of returning nil. Always return nil.
17129 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
17130 Make it a noop if gpm-mouse was not activated.
17131 (syms_of_term): Update names.
17132
171332007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
17134
17135 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
17136 (init_sys_modes): Check that gpm_tty is the current tty.
17137
17138 * alloc.c (allocate_terminal): Set the vector size to only count the
17139 lisp fields. Initialize those to nil.
17140 (mark_object): Don't treat terminals specially.
17141 (mark_terminal): Remove.
17142 (mark_terminals): Use mark_object instead.
17143
17144 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
17145 the GC to the beginning.
17146
17147 * indent.h:
17148 * indent.c: Use EMACS_INT for ints coming from Elisp data.
17149
17150 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
17151
171522007-09-25 Jason Rumney <jasonr@gnu.org>
17153
17154 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
17155
17156 * w32console.c (create_w32cons_output): Remove.
17157
17158 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
17159
17160 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
17161 (reset_sys_modes): Use reset_terminal_modes_hook.
17162
171632007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
17164
17165 * eval.c (do_autoload): Don't output any message.
17166
171672007-09-24 Juri Linkov <juri@jurta.org>
17168
17169 * emacs.c (standard_args): Change priority of "--no-splash"
17170 from 40 to 3. Add "--no-desktop" with the same priority.
17171
171722007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
17173
17174 * alloc.c (gc_sweep): Check cons cell mark bits word by word
17175 and optimize the case where they are all 1.
17176
171772007-09-23 Johannes Weiner <hannes@saeurebad.de>
17178
17179 * lisp.h (abs): Define if not defined.
17180 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
17181 Don't define `abs', since it's defined in lisp.h.
17182
171832007-09-22 Eli Zaretskii <eliz@gnu.org>
17184
17185 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
17186 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
17187 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
17188 (init_tty): Use DEV_TTY instead of "/dev/tty".
17189 [WINDOWSNT]: No need to protect from NAME arg being null.
17190
171912007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
17192
17193 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
17194 up the tty state.
17195
171962007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17197
17198 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
17199 (gpm_tty): Change its type.
17200 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
17201 (gpm_tty): Change its type and initialize it.
17202 (Fterm_open_connection): Check the frame is indeed a tty.
17203 Use the new gpm_tty.
17204 (Fterm_close_connection): Use the new gpm_tty.
17205 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
17206 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
17207
172082007-09-21 Juanma Barranquero <lekktu@gmail.com>
17209
17210 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
17211 underline_color, to draw strike-through.
17212
172132007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17214
17215 * lisp.h (allocate_terminal): Declare.
17216
17217 * window.c (candidate_window_p): Consider frames that are being placed
17218 by the user as somewhere between visible and iconified.
17219 (window_loop): Prefer windows on the current frame.
17220 (Fselect_window): Move the use of select-frame to the beginning so we
17221 can just delegate all the work (it'll call us back anyway).
17222
17223 * frame.c (Qdisplay_environment_variable):
17224 * frame.h (Qdisplay_environment_variable): Delete.
17225
17226 * .gdbinit (xbacktrace): Print the arg's address rather than the value
17227 of the first arg, since that value may be a union.
17228
17229 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
17230 parameter rather than Qdisplay_environment_variable. If all else
17231 fails, look for DISPLAY in initial-environment.
17232
172332007-09-21 Glenn Morris <rgm@gnu.org>
17234
17235 * Makefile.in (emacstool): Remove target.
17236 (lisp, shortlisp): Remove termdev.elc.
17237
172382007-09-21 Markus Triska <markus.triska@gmx.at>
17239
17240 * xterm.c (x_delete_display): Compile session management conditionally.
17241
172422007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
17243
17244 * callproc.c (getenv_internal_1): New function.
17245 (getenv_internal): Use it.
17246 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
17247
17248 * terminal.c (get_terminal): Don't accept ints to represent terminals.
17249 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
17250 (Fset_terminal_parameter): Work with dead terminals as well.
17251 (Fmodify_terminal_parameters): Remove.
17252
17253 * terminal.c (get_terminal): Handle terminals.
17254 Make sure the terminal returned is live.
17255 (create_terminal): Use allocate_terminal.
17256 (mark_terminals): Move to alloc.c.
17257 (delete_terminal): Use terminal->name as liveness status.
17258 NULL out fields after freeing their contents.
17259 Don't deallocate the object.
17260 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
17261 rather than an int.
17262 (Fterminal_live_p): Accept non-integer arguments.
17263 (Fterminal_list): Return terminal objects rather than an ints.
17264
17265 * alloc.c (enum mem_type): New member for `terminal' objects.
17266 (allocate_terminal): New function.
17267 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
17268 Handle terminals.
17269 (mark_terminal): New fun.
17270 (mark_terminals): Move from terminal.c.
17271
17272 * term.c (get_tty_terminal): Don't treat output_initial specially.
17273 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
17274 (delete_tty): Use terminal->name as liveness status.
17275
17276 * termhooks.h (struct terminal): Make it into a pseudovector.
17277 Remove `deleted' replaced by checking `name's nullness.
17278
17279 * print.c (print_object): Handle terminals.
17280
17281 * lisp.h (enum pvec_type): New `terminal' pseudovector.
17282 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
17283
17284 * frame.c (make_terminal_frame):
17285 * keyboard.c (tty_read_avail_input):
17286 * w32term.c (x_delete_terminal):
17287 * xfns.c (Fx_create_frame, x_create_tip_frame):
17288 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
17289
172902007-09-20 Glenn Morris <rgm@gnu.org>
17291
17292 * process.c (Fmake_network_process): Doc fix.
17293
172942007-09-19 Jason Rumney <jasonr@gnu.org>
17295
17296 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
17297
172982007-09-19 Michaël Cadilhac <michael@cadilhac.name>
17299
17300 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
17301 Fix a C warning regarding variable constness.
17302
17303 * xterm.c (handle_one_xevent): Fix a C warning.
17304
173052007-09-18 Jason Rumney <jasonr@gnu.org>
17306
17307 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
17308
173092007-09-17 Jan Djärv <jan.h.d@swipnet.se>
17310
17311 * gtkutil.c (gdpy_def): New variable.
17312 (xg_initialize): Initialize gdpy_def.
17313 (xg_display_close): If no other display exists, set gdpy_def to a
17314 new connection.
17315
173162007-09-16 Jan Djärv <jan.h.d@swipnet.se>
17317
17318 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
17319 when we have no file name for the icon.
17320 (xg_tool_bar_expose_callback): Remove.
17321 (xg_create_tool_bar): Don't connect expose signal to
17322 xg_tool_bar_expose_callback.
17323 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
17324
173252007-09-16 Andreas Schwab <schwab@suse.de>
17326
17327 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
17328 values instead of zapping them.
17329
173302007-09-14 Glenn Morris <rgm@gnu.org>
17331
17332 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
17333 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
17334 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
17335 scope and rename to omfib_buffer for clarity.
17336 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
17337
173382007-09-14 Kenichi Handa <handa@m17n.org>
17339
17340 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
17341
173422007-09-13 Jason Rumney <jasonr@gnu.org>
17343
17344 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
17345
17346 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
17347
17348 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
17349 (mac_term_init): Call here instead, passing rif.
17350
173512007-09-13 Glenn Morris <rgm@gnu.org>
17352
17353 * s/hpux.h: No longer define `static' as nothing.
17354
173552007-09-13 Johan Bockgård <bojohan@gnu.org>
17356
17357 * callint.c (Fcall_interactively): Remove unused var `fun'.
17358
173592007-09-12 Romain Francoise <romain@orebokech.com>
17360
17361 * window.c (prefer_window_split_horizontally, display_buffer):
17362 Revert 2007-09-08 change.
17363
173642007-09-12 Glenn Morris <rgm@gnu.org>
17365
17366 * alloca.c: Remove file.
17367 * Makefile.in (alloca): Do not undef.
17368 (allocaobj, alloca.o): Remove.
17369 (otherobj): Remove allocaobj.
17370 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
17371 * regex.c (C_ALLOCA): Remove all references and code that was only
17372 used when this was defined.
17373 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
17374 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
17375 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
17376
17377 * Makefile.in (SOURCES, unlock, relock): Delete.
17378
17379 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
17380 (menu_grab_callback): All uses changed.
17381
17382 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
17383 (x_reply_selection_request): All uses changed.
17384
173852007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
17386
17387 * lread.c (load_warn_old_style_backquotes): Change message to look
17388 better when it appears in the middle of byte-compiler messages.
17389
173902007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
17391
17392 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
17393
17394 * xterm.c (x_create_terminal): Add comment.
17395
17396 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
17397
173982007-09-10 Richard Stallman <rms@gnu.org>
17399
17400 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
17401
174022007-09-10 Michaël Cadilhac <michael@cadilhac.name>
17403
17404 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
17405 (DEFUN): Document `intspec', use it instead of `prompt'.
17406
17407 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
17408
17409 * data.c (Finteractive_form): If the interactive specification starts
17410 with a `(', use it as a Lisp form.
17411
17412 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
17413 name and file modes.
17414
17415 * callint.c (Fcall_interactively): Comment fixes.
17416
174172007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
17418
17419 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
17420 and compiled functions.
17421
174222007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
17423
17424 * window.c (prefer_window_split_horizontally): New variable.
17425 (display_buffer): Consider splitting window horizontally depending
17426 on prefer_window_split_horizontally.
17427
174282007-09-08 Eli Zaretskii <eliz@gnu.org>
17429
17430 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
17431
174322007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
17433
17434 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
17435
17436 * frame.c (x_set_frame_parameters): Check number is positive before
17437 using XFASTINT.
17438
17439 * window.c (freeze_window_start): Don't presume selected_window holds
17440 a window object.
17441 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
17442
174432007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
17444
17445 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
17446
174472007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
17448
17449 * window.c (Vsplit_window_preferred_function): New var.
17450 (Fdisplay_buffer): Use it.
17451 (syms_of_window): Export, and initialize it.
17452
174532007-09-06 Pixel <pixel@mandriva.com> (tiny change)
17454
17455 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
17456
174572007-09-06 Glenn Morris <rgm@gnu.org>
17458
17459 * gtkutil.c (menu_grab_callback) <cnt>:
17460 * xselect.c (x_reply_selection_request) <cnt>: Move static
17461 variable to file scope.
17462
174632007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
17464
17465 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
17466 consistent values of selected_frame and selected_window.
17467
174682007-09-04 Jason Rumney <jasonr@gnu.org>
17469
17470 * w32console.c (initialize_w32_display): Zero unused hooks.
17471
174722007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
17473
17474 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
17475 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
17476
174772007-09-04 Jason Rumney <jasonr@gnu.org>
17478
17479 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
17480 in w32console.c. Set up input. Remove XXX comments that have been
17481 confirmed as correct.
17482
17483 * s/ms-w32.h (MULTI_KBOARD): Define.
17484
17485 * w32console.c (one_and_only_w32cons): Remove.
17486 (initialize_w32_display): Take terminal argument.
17487
17488 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
17489 initialize_w32_display.
17490 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
17491
17492 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
17493
17494 * keyboard.c (discard_mouse_events): Discard it.
17495 (make_lispy_event): Translate it to a lisp event.
17496 (lispy_wheel_names): Add wheel-left and right events.
17497 (syms_of_keyboard): Enlarge wheel_syms.
17498
17499 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
17500 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
17501
17502 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
17503
17504 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
17505 from WM_MOUSEHWHEEL.
17506 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
17507
17508 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
17509 terminal.
17510
17511 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
17512 keyboard for the terminal.
17513
175142007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
17515
17516 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
17517 (Vresume_tty_hook): Rename from Vresume_tty_functions.
17518 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
17519 and resume-tty-function to resume-tty-hook.
17520 (Fsuspend_tty, Fresume_tty): Use new names.
17521
175222007-09-02 Jan Djärv <jan.h.d@swipnet.se>
17523
17524 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
17525 if it starts with "n:".
17526
175272007-08-31 Jan Djärv <jan.h.d@swipnet.se>
17528
17529 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
17530
175312007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
17532
17533 * frame.h:
17534 * frame.c (Qterm_environment_variable): Remove.
17535 (syms_of_frame): Don't init and staticpro it.
17536
17537 * callproc.c (getenv_internal): Remove special case for $TERM.
17538
17539 * callproc.c (Vinitial_environment): New variable.
17540 (set_initial_environment): Initialize it.
17541 (syms_of_callproc): Declare it.
17542 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
17543 TERM under which a process runs is never related to the TERM in which
17544 Emacs is running.
17545
175462007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
17547
17548 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
17549 * s/darwin.h: ... do it here.
17550
175512007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
17552
17553 * lisp.h (set_initial_environment): Rename from set_global_environment.
17554
17555 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
17556 removed by mistake on the multi-tty branch.
17557
17558 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
17559 (Fmodify_frame_parameters): Return a value.
17560
17561 * image.c (png_load): Comment-out var only used in commented-out code.
17562
17563 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
17564 before passing it to mark_object.
17565
17566 * xfaces.c (internal_resolve_face_name): Return a value.
17567 (internal_resolve_face_name, resolve_face_name_error): Comment out.
17568
17569 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
17570 (x_icon): Comment-out var only used in commented-out code.
17571
175722007-08-29 Romain Francoise <romain@orebokech.com>
17573
17574 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
17575 QUIT hasn't been provided.
17576
175772007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
17578
17579 * callproc.c (child_setup, getenv_internal): Use the
17580 display-environment-variable and term-environment-variable frame params.
17581 (set_initial_environment): Initialise Vprocess_environment.
17582
17583 * config.in: Disable multi-keyboard support on a mac.
17584
17585 * frame.c (Qterm_environment_variable)
17586 (Qdisplay_environment_variable): New variables.
17587 (syms_of_frame): Intern and staticpro them.
17588 (Fmake_terminal_frame): Disable output method test.
17589
17590 * frame.h: Declare them here.
17591
17592 * macfns.c (x_set_mouse_color): Get rif from the frame.
17593 (x_set_tool_bar_lines): Don't use updating_frame.
17594 (mac_window): Add 2 new parameters for consistency with other systems.
17595 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
17596 frame parameters following what is done in X11 and w32. Don't use
17597 FRAME_MAC_DISPLAY_INFO.
17598 (Fx_open_connection, start_hourglass): Remove window-system check.
17599 (x_create_tip_frame): Get the keyboard from the terminal.
17600
17601 * macmenu.c: Reorder includes.
17602 (Fx_popup_menu): Use terminal specific mouse_position_hook.
17603
17604 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
17605 terminal parameter.
17606 (x_clear_frame): Add a frame parameter.
17607 (note_mouse_movement): Get rif from the frame.
17608 (mac_term_init): Initialize the terminal.
17609 (mac_initialize): Make static and move terminal initialization ...
17610 (mac_create_terminal): ... to this new function.
17611
17612 * macterm.h (struct mac_display_info): Add terminal.
17613 (mac_initialize): Delete declaration.
17614
17615 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
17616
17617 * sysdep.c: Comment out text after #endif.
17618
17619 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
17620 is defined. Better initialize ttys in windows. Use terminal
17621 specific mouse_position_hook.
17622
17623 * termhooks.h (union display_info): Add mac_display_info.
17624
17625 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
17626 Set the default minibuffer frame, window_system and the rest of the
17627 frame parameters following what is done in X11.
17628
17629 * w32term.c (w32_initialize): Make static.
17630
17631 * xselect.c (x_handle_selection_clear): Only access
17632 terminal->kboard when MULTI_KBOARD is defined.
17633
17634 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
17635 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
17636
176372007-08-29 Jason Rumney <jasonr@gnu.org>
17638
17639 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
17640 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
17641
17642 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
17643 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
17644
17645 * keyboard.c (restore_kboard_configuration): Only define when
17646 MULTI_KBOARD defined.
17647
17648 * makefile.w32-in: Update dependancies from Makefile.in.
17649 (OBJ1): Add terminal.$(O)
17650
17651 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
17652 Don't define function body.
17653 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
17654
17655 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
17656
17657 * w32.c (request_sigio, unrequest_sigio): Remove.
17658
17659 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
17660 (w32con_clear_frame, w32con_clear_end_of_line)
17661 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
17662 (w32con_delete_glyphs, w32con_set_terminal_window)
17663 (scroll_line, w32_sys_ring_bell): Add frame arg.
17664 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
17665 Add terminal arg.
17666 (PICK_FRAME): Remove.
17667 (w32con_write_glyphs): Use frame specific terminal coding.
17668 (one_and_only_w32cons): New global variable.
17669 (initialize_w32_display): Use it for storing hooks.
17670 (create_w32cons_output): New function.
17671
17672 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
17673 arg a frame.
17674
17675 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
17676 Set window_system.
17677 (x_set_tool_bar_lines): Don't use updating_frame.
17678 (Fx_create_frame): Set terminal and ref count.
17679 (Fx_open_connection): Remove window-system check.
17680
17681 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
17682
17683 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
17684 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
17685 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
17686 Add frame arg.
17687 (x_delete_terminal, w32_create_terminal): New functions.
17688 (w32_term_init): Create a terminal.
17689 (w32_initialize): Move terminal specific initialization to
17690 w32_create_terminal.
17691
17692 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
17693 (w32_clear_rect, w32_clear_area): Use background from frame.
17694 (w32_display_info): Add terminal.
17695 (w32_sys_ring_bell, x_delete_display): Declare here.
17696
17697 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
17698
17699 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
17700
177012007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
17702
17703 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
17704 Fix get_named_tty calls for the controlling tty.
17705
177062007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
17707
17708 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
17709
177102007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
17711
17712 * term.c (tty_insert_glyphs): Add missing first parameter.
17713
177142007-08-29 Károly Lőrentey <karoly@lorentey.hu>
17715
17716 * buffer.c (Fbuffer_list, Fbury_buffer):
17717 Take frame->buried_buffer_list into account.
17718
17719 * cm.c (current_tty): New variable, for cmputc().
17720 (cmputc): Use it.
17721 (cmcheckmagic): Add tty parameter, look up terminal streams there.
17722 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
17723 (cmgoto): Add tty parameter. Pass it on to calccost().
17724 Use emacs_tputs() instead of tputs().
17725
17726 * cm.h (emacs_tputs): New macro to set current_tty, and then call
17727 tputs().
17728 (current_tty): New variable, for cmputc().
17729 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
17730
17731 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
17732 (internal_condition_case, internal_condition_case_1)
17733 (internal_condition_case_2): Don't abort when x_catching_errors.
17734
17735 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
17736 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
17737 prevent crashes caused by bogus longjmps in read_char.
17738
17739 * keymap.h (Fset_keymap_parent): Add EXFUN.
17740
17741 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
17742 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
17743 Remove redundant definition.
17744
17745 * macfns.c (x_set_mouse_color, x_make_gc):
17746 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17747
17748 * w32term.c (x_free_frame_resources):
17749 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17750 (w32_initialize): Use the accessor macros for terminal characteristics.
17751
17752 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
17753 Use the accessor macros for terminal characteristics.
17754 * msdos.c (internal_terminal_init): Use the accessor macros for
17755 terminal characteristics.
17756 (ScreenVisualBell, internal_terminal_init):
17757 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17758
17759 * termopts.h (no_redraw_on_reenter): Declare.
17760
17761 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
17762 (mark_terminals, mark_ttys): Declare.
17763 (Fgarbage_collect): Call them.
17764 (mark_object): Mark buried_buffer_list.
17765
17766 * prefix-args.c: Include stdlib.h for exit.
17767
17768 * syssignal.h: Add comment.
17769
17770 * indent.c: Include stdio.h.
17771
17772 * window.h (Vinitial_window_system): Declare.
17773 (Vwindow_system): Delete declaration.
17774
17775 * fontset.c (Finternal_char_font): Use FRAME_RIF.
17776
17777 * image.c (lookup_image): Don't initialize `c' until the xasserts
17778 have been run.
17779
17780 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
17781 FRAME_FOREGROUND_PIXEL.
17782
17783 * print.c (print_preprocess): Don't lose print_depth levels while
17784 iterating.
17785
17786 * widget.c (update_from_various_frame_slots):
17787 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17788
17789 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
17790 frames.
17791 (window_internal_height): Remove bogus make_number call.
17792 (init_window_once): Call make_terminal_frame with two zero parameters.
17793
17794 * fileio.c (Fread_file_name): Update comment.
17795
17796 * callint.c (Fcall_interactively):
17797 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
17798 Make sure it is correctly unwound.
17799
17800 * xsmfns.c (x_session_close): New function.
17801
17802 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
17803 Delete declarations.
17804
17805 * xterm.h: Remove declaration for x_fully_uncatch_errors.
17806 (x_output): Remove background_pixel and foreground_pixel fields.
17807 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
17808 (x_delete_device, x_session_close): Declare.
17809
17810 * lread.c: Include setjmp.h. Update declaration of `read_char'.
17811 (read_filtered_event): Call `read_char' with a local
17812 `wrong_kboard_jmpbuf'.
17813
17814 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
17815 Don't call single_kboard_state. Use FRAME_RIF.
17816
17817 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
17818 systems.
17819
17820 * lisp.h (set_process_environment): Rename to `set_global_environment'.
17821 (Fframe_with_environment, Fset_input_meta_mode)
17822 (Fset_quit_char): EXFUN.
17823 (x_create_device, tty_output, terminal, tty_display_info): Declare.
17824 (init_sys_modes, reset_sys_modes): Update prototypes.
17825 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
17826
17827 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
17828 Vlocal_key_translation_map, and Vkeyboard_translate_table.
17829 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
17830 Delete declarations.
17831 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
17832 (temporarily_switch_to_single_kboard, tty_read_avail_input):
17833 New declarations.
17834
17835 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
17836 already does that during init_display(). Call syms_of_keymap
17837 before syms_of_keyboard. Call `syms_of_terminal'.
17838 Call set_initial_environment, not set_process_environment.
17839 (shut_down_emacs): Call reset_all_sys_modes() instead of
17840 reset_sys_modes().
17841
17842 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
17843 (internal_resolve_face_name, resolve_face_name_error): New functions.
17844 (resolve_face_name): Protect against loops and errors thrown by Fget.
17845 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
17846 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
17847
17848 * scroll.c: Replace CURTTY() with local variables throughout the
17849 file (where applicable).
17850 (calculate_scrolling, calculate_direct_scrolling)
17851 (scrolling_1, scroll_cost): Use the accessor macros for terminal
17852 characteristics.
17853
17854 * keymap.c (Vfunction_key_map): Remove.
17855 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
17856 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
17857 (Vkey_translation_map): Remove.
17858 (syms_of_keymap): Remove DEFVAR for key-translation-map.
17859 (Fdescribe_buffer_bindings)
17860 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
17861 Update for terminal-local key-translation-map.
17862
17863 * Makefile.in (callproc.o): Update dependencies.
17864 (lisp, shortlisp): Add termdev.elc.
17865 (obj): Add terminal.o.
17866 (terminal.o): Add dependencies.
17867 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
17868 (data.o, fns.o): Add termhooks.h dependency.
17869 (SOME_MACHINE_LISP): Add dnd.elc.
17870 (minibuf.o): Fix typo.
17871 Update dependencies.
17872
17873 * data.c (do_symval_forwarding, store_symval_forwarding)
17874 (find_symbol_value): Use the selected frame's keyboard, not
17875 current_kboard.
17876
17877 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
17878 Vwindow_system.
17879
17880 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
17881 Fmenu_bar_open.
17882 (syms_of_xmenu): Update defsubr.
17883 (mouse_position_for_popup, Fx_popup_menu)
17884 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
17885 (set_frame_menubar, free_frame_menubar)
b97439ce 17886 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
17887 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
17888 an X frame.
17889
17890 * xselect.c (x_own_selection): Abort if not an X frame.
17891 (some_frame_on_display): Check if it is an X frame.
17892 (x_handle_selection_clear): Deal with MULTI_KBOARD.
17893
17894 * coding.c: Include frame.h and termhooks.h.
17895 (terminal_coding, keyboard_coding): Delete.
17896 (Fset_terminal_coding_system_internal)
17897 (Fset_keyboard_coding_system_internal)
17898 (Fkeyboard_coding_system)
17899 (Fterminal_coding_system): Add a terminal parameter.
17900 Get terminal_coding from the terminal.
17901 (init_coding_once): Don't call setup_coding_system here.
17902
17903 * dispextern.h (set_scroll_region, turn_off_insert)
17904 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
17905 (tty_clear_end_of_line, tty_setup_colors)
17906 (delete_tty, updating_frame)
17907 (produce_special_glyphs, produce_glyphs, write_glyphs)
17908 (insert_glyphs): Remove.
17909 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
17910 (tty_turn_off_highlight, get_tty_size): Add declaration.
17911 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
17912
17913 * frame.h (enum output_method): Add output_initial.
17914 (struct x_output): Delete.
17915 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
17916 Access foreground_pixel and background_pixel directly from the frame.
17917 (tty_display): Delete.
17918 (struct frame): Add buried_buffer_list, foreground_pixel,
17919 background_pixel and terminal. Delete kboard.
17920 (union output_data): Add tty.
17921 (FRAME_KBOARD): Get the kboard from the terminal.
17922 (FRAME_INITIAL_P): New macro.
17923 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
17924 (Qterm_environment_variable, Qdisplay_environment_variable)
17925 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
17926 New declarations.
17927
17928 * termchar.h (tty_output, tty_display_info): New structures.
17929 (tty_list): Declare.
17930 (FRAME_TTY, CURTTY): New macros.
17931 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
17932 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
17933 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
17934 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
17935
17936 * callproc.c: Include frame.h and termhooks.h, for terminal
17937 parameters.
17938 (add_env): New function.
17939 (child_setup): Use it.
17940 (child_setup, getenv_internal): Handle the new Vprocess_environment.
17941 (getenv_internal): Fix get_terminal_param call.
17942 (Fgetenv_internal, egetenv): Update doc.
17943 (syms_of_callproc): Initialize Vprocess_environment to nil.
17944 Register and initialize them. Remove obsolete defvars. Update doc
17945 strings.
17946 (child_setup): Handle Vlocal_environment_variables.
17947 (getenv_internal): Add terminal parameter.
17948 Handle Vlocal_environment_variables.
17949 (Fgetenv_internal): Add terminal parameter.
17950 (child_setup, getenv_internal, Fgetenv_internal): Store the local
17951 environment in a frame (not terminal) parameter. Update doc strings.
17952 (set_initial_environment): Rename from set_global_environment.
17953 Store Emacs environment in initial frame parameter.
17954
17955 * xdisp.c (redisplay_internal): Update references to
17956 `previous_terminal_frame'.
17957 (display_mode_line, Fformat_mode_line): Replace calls to
17958 `push_frame_kboard' with `push_kboard'.
17959 (get_glyph_string_clip_rects): Add extra parentheses and
17960 braces to prevent compiler warnings.
17961 (calc_pixel_width_or_height): Add xassert to check that the
17962 frame is alive. Don't call `lookup_image' on a termcap frame.
17963 (message2_nolog, message3_nolog, redisplay_internal)
17964 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
17965 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
17966 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
17967 (Fx_display_pixel_width, Fx_display_pixel_height)
17968 (Fx_display_planes, Fx_display_color_cells)
17969 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
17970 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
17971 (Fx_display_backing_store, Fx_display_visual_class)
17972 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
17973 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
17974
17975 * xfns.c (x_set_foreground_color x_set_background_color)
17976 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
17977 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17978 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
17979 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
17980 terminal that is being deleted.
17981 (Fx_create_frame): Use `store_frame_param' to set `window-system'
17982 frame parameter, and make sure it overrides any user-supplied setting.
17983 (Fx_close_connection, Fx_synchronize): Unify argument names with
17984 the rest of the DEFUNs.
17985
17986 * dispnew.c (Fsend_string_to_terminal): Update call to
17987 `get_tty_terminal'.
17988 (Fredraw_frame, Fsend_string_to_terminal)
17989 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
17990 FRAME_TERMCAP_P and FRAME_TTY.
17991 (window_change_signal): Don't believe width/height values that are
17992 impossibly small.
17993 (Vinitial_window_system): Rename from Vwindow_system.
17994 (termscript, Wcm, rif): Delete.
17995
17996 * termhooks.h (struct terminal): New struct containing the
17997 previously global text display hooks and new members NAME,
17998 DELETED and PARAM_ALIST.
17999 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
18000 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
18001 (FRAME_RIF): New macros.
18002 (get_terminal_param, get_device): New declarations.
18003 (termscript): Delete declaration.
18004
18005 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
18006 (XTflash, x_free_frame_resources, x_scroll_bar_create)
18007 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
18008 FRAME_FOREGROUND_PIXEL.
18009 (x_fully_uncatch_errors): Disable definition.
18010 (x_scroll_bar_expose): Fix reference to foreground pixel.
18011 (XTread_socket): Disable loop on all X displays.
18012 (x_delete_terminal): Don't set terminal->deleted and let
18013 delete_terminal delete the frames on the terminal.
18014 (x_delete_display): Doc update to reflect changes in
18015 delete_terminal.
18016 (x_display_info) <terminal>: Move member earlier in the struct.
18017 (deleting_tty): Remove old variable.
18018 (Fsuspend_tty): Call clear_tty_hooks.
18019 (Fresume_tty, init_tty): Call set_tty_hooks.
18020 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
18021 errors on X frames.
18022 (x_catch_errors_unwind): Abort if x_error_message is NULL.
18023 (handle_one_xevent): Initialize `f' to NULL.
18024 (x_delete_terminal, x_create_terminal): New functions.
18025 (XTset_terminal_modes, XTreset_terminal_modes)
18026 (XTread_socket, x_connection_closed, x_term_init)
18027 (x_term_init, x_delete_display): Add terminal parameter.
18028 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
18029 X connections.
18030
18031 * frame.c: Include termchar.h.
18032 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
18033 (Qwindow_system, Qenvironment, Qterm_environment_variable)
18034 (Qdisplay_environment_variable): New vars.
18035 (Fframep): Deal with output_initial.
18036 (Fframe-live-p): Doc fix.
18037 (Fwindow-system): New function.
18038 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
18039 (make_terminal_frame): Don't create frames on a terminal that is
18040 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18041 (store_frame_param): Check for found_for_frame before calling XFRAME.
18042 (Fmake_terminal_frame): Handle NULL tty names correctly.
18043 (syms_of_frame): Enhance doc string of `default-frame-alist'.
18044 (Fdelete_frame): Remove unused variable `count'. Don't allow other
18045 frames to refer to a deleted frame in their 'environment parameter.
18046 (Fframe_with_environment): New function.
18047 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
18048 (get_future_frame_param): New function.
18049 (Fmake_terminal_frame): Use it.
18050 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
18051
18052 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
18053 * sysdep.c (reset_sys_modes): Update for renames.
18054
18055 * keyboard.c (tty_read_avail_input): New function.
18056 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
18057 (syms_of_keyboard): Defsubr them.
18058 (Fset_input_meta_mode, Fset_quit_char): New functions.
18059 (Fset_input_mode): Split to above functions.
18060 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
18061 parameter. Use it in call to `read_char'.
18062 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
18063 Set wrong_kboard_jmpbuf correctly in recursive calls.
18064 Use current_kboard to access Vkeyboard_translate_table.
18065 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
18066 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
18067 Update longjmp invocations. Remember the original current_kboard,
18068 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
18069 changes it. Comment out unnecessary calls to
18070 `record_single_kboard_state' and `any_kboard_state'.
18071 Update recursive calls.
18072 (wrong_kboard_jmpbuf): Remove global variable.
18073 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
18074 Handle deleted interrupted_kboards correctly; that is a legal
18075 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
18076 and read_char calls. Abort if interrupted_kboard died in read_char.
18077 (any_kboard_state, single_kboard_state)
18078 (push_frame_kboard): Remove function.
18079 (pop_kboard): Switch out of single_kboard mode if the kboard has
18080 been deleted. Remove unused variable. Help debugging by not
18081 changing current_kboard unnecessarily. Set current_kboard to the
18082 kboard of the selected frame when the stored kboard object has
18083 been deleted before pop_kboard.
18084 (temporarily_switch_to_single_kboard): Change first parameter to a
18085 frame pointer. Throw an error when caller wants to change kboards
18086 while in single_kboard mode. Don't push_kboard if we weren't in
18087 single kboard state. Don't pop_kboard if we popped into any
18088 kboard state.
18089 (restore_kboard_configuration): Abort if pop_kboard changed the
18090 kboard in single_kboard mode. Call pop_kboard only after setting
18091 up single_kboard mode.
18092 (Frecursive_edit): Switch to single_kboard mode only in nested
18093 command loops.
18094 (cmd_error, command_loop, command_loop_1, timer_check):
18095 Comment out unnecessary call to `any_kboard_state' and
18096 `record_single_kboard_state'.
18097 (delete_kboard): Exit single_kboard mode if we have just deleted
18098 that kboard. Use FRAME_KBOARD.
18099 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
18100 `fatal_error_signal'.
18101 (record_single_kboard_state): Don't push_kboard if we weren't in
18102 single kboard state. Don't pop_kboard if we popped into any
18103 kboard state.
18104 (push_frame_kboard): Rename to push_kboard.
18105 (kbd_buffer_get_event): Use FRAME_TERMINAL.
18106 (read_avail_input): Read input from all terminals.
18107 (mark_kboards): Also mark Vkeyboard_translate_table.
18108 (kbd_buffer_store_event_hold): Simplify condition.
18109 (read_key_sequence): Reinitialize fkey and keytran at each replay.
18110 (Vkeyboard_translate_table): Move to struct kboard.
18111 (init_kboard): Initialize Vkeyboard_translate_table.
18112 (syms_of_keyboard): Use DEFVAR_KBOARD to define
18113 Vkeyboard_translate_table. Update doc strings. Update docs of
18114 local-function-key-map and function-key-map.
18115
18116 * terminal.c: New file.
18117
18118 * term.c: Include errno.h.
18119 (Vring_bell_function, device_list, initial_device)
18120 (next_device_id, ring_bell, update_begin, update_end)
18121 (set_terminal_window, cursor_to, raw_cursor_to)
18122 (clear_to_end, clear_frame, clear_end_of_line)
18123 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
18124 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
18125 (syms_of_term): Move their initialization to terminal.c.
18126 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
18127 (Ftty_display_color_cells)
18128 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
18129 (clear_tty_hooks, set_tty_hooks)
18130 (init_tty, maybe_fatal): New functions.
18131 (Ftty_type): Return nil if terminal is not on a tty instead of
18132 throwing an error. Doc update.
18133 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
18134 Doc update. Initialize new subrs and variables.
18135 (delete_tty): Use terminal->deleted.
18136 (tty_set_terminal_modes): Rename from set_terminal_modes.
18137 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
18138 (set_scroll_region): Rename to `tty_set_scroll_region'.
18139 (turn_on_insert): Rename to `tty_turn_on_insert'.
18140 (turn_off_insert): Rename to `tty_turn_off_insert'.
18141 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
18142 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
18143 (toggle_highligh): Rename to `tty_toggle_highlight'.
18144 (background_highlight): Rename to `tty_background_highlight'.
18145 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
18146 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
18147 (tty_set_scroll_region, tty_background_highlight)
18148 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
18149 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
18150 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
18151 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
18152 Add static modifier.
18153 (tty_reset_terminal_modes, tty_set_terminal_window)
18154 (tty_set_scroll_region, tty_background_highlight)
18155 (tty_highlight_if_desired, tty_cursor_to)
18156 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
18157 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
18158 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
18159 renames.
18160
181612007-08-28 Jan Djärv <jan.h.d@swipnet.se>
18162
18163 * keyboard.c: Qrtl is new.
18164 (parse_tool_bar_item): Handle :rtl keyword.
18165 (syms_of_keyboard): Intern :rtl keyword.
18166
18167 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
18168
18169 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
18170 so no Lisp code is executed.
18171 (file_for_image, find_rtl_image): New functions.
18172 (xg_get_image_for_pixmap): Use file_for_image.
18173 (update_frame_tool_bar): If direction is RTL, use RTL image if
18174 defined. Use Gtk stock images if defined.
18175
181762007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18177
18178 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
18179 for nonexistent or zero-width glyph in composition glyph.
18180
181812007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
18182
18183 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
18184
18185 * xdisp.c (Finvisible_p): New function.
18186 (syms_of_xdisp): defsubr it.
18187
181882007-08-24 Juanma Barranquero <lekktu@gmail.com>
18189
18190 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
18191 Doc fixes.
18192
181932007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18194
18195 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
18196
181972007-08-24 Martin Rudalics <rudalics@gmx.at>
18198
18199 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
18200 whether decoding has modified buffer contents.
18201
182022007-08-24 Jason Rumney <jasonr@gnu.org>
18203
18204 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
18205 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
18206 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
18207 (init_svg_functions) [HAVE_NTGUI]: New function.
18208 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
18209 (svg_load_image): Use them.
18210 (svg_load_image) [HAVE_NTGUI]: Implement background.
18211
182122007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18213
18214 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
18215 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
18216 (LIBX): Remove @RSVG_LIBS@.
18217 (LIBES): Add $(RSVG_LIBS).
18218
18219 * image.c (svg_load_image): Blend with specified background if exists.
18220 Use IMAGE_BACKGROUND. Add Mac OS Support.
18221
18222 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
18223 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
18224 Remove macros.
18225 [MAC_OSX] (socket_callback): Do nothing.
18226 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
18227 ReceiveNextEvent.
18228 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
18229 socket_callback.
18230 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
18231
182322007-08-22 Glenn Morris <rgm@gnu.org>
18233
18234 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
18235
182362007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
18237
18238 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
18239
18240 * image.c: Add support for SVG images. Some additional comments
18241 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
18242 (svg_image_p): New function to test for SVG image.
18243 (svg_load): New function to load SVG image.
18244 (svg_load_image): New function, helper for svg_load.
18245 (Qsvg): New Lisp_object.
18246 (svg_keyword_index): New enum.
18247 (svg_format): New static `image_keyword' struct.
18248 (svg_type): New static `image_type' struct.
18249 (librsvg/rsvg.h): Include it.
18250
182512007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
18252
18253 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
18254
182552007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
18256
18257 * lread.c (Qold_style_backquotes): New var.
18258 (syms_of_lread): Init and staticpro it.
18259 (load_warn_old_style_backquotes): New fun.
18260 (Fload): Use them to warn about old style backquotes.
18261 (end_of_file_error, Fload): Remove unused vars.
18262
18263 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
18264
18265 * lread.c (Vold_style_backquotes): New var.
18266 (syms_of_lread): Init and export it to Elisp.
18267 (read1): Set it when we find an old-style (back)quote.
18268
182692007-08-22 Jason Rumney <jasonr@gnu.org>
18270
18271 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
18272
182732007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
18274
18275 * puresize.h (BASE_PURESIZE): Increase to 1140000.
18276
182772007-08-19 Richard Stallman <rms@gnu.org>
18278
18279 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
18280
182812007-08-19 Andreas Schwab <schwab@suse.de>
18282
18283 * alloc.c (pure): Round PURESIZE up.
18284
182852007-08-17 Jan Djärv <jan.h.d@swipnet.se>
18286
18287 * xterm.c (handle_one_xevent): Remove check that mouse click is in
18288 active frame.
18289
182902007-08-16 Richard Stallman <rms@gnu.org>
18291
18292 * eval.c (Fcommandp): Add parens to clarify.
18293
18294 * minibuf.c (Fall_completions): Use enum for type of table.
18295
18296 * emacs.c (USAGE2): Improve text.
18297
182982007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
18299
18300 * term.c (tty_default_color_capabilities): Declare static
18301 variables in file scope, to avoid HPUX compiler problem.
18302
183032007-08-13 Jan Djärv <jan.h.d@swipnet.se>
18304
18305 * gtkutil.c (update_frame_tool_bar): Use -1 as index
18306 to gtk_toolbar_insert.
18307
183082007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
18309
18310 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
18311
18312 * insdel.c (reset_var_on_error): New fun.
18313 (signal_before_change, signal_after_change):
18314 Use it to reset (after|before)-change-functions to nil in case of error.
18315 Bind inhibit-modification-hooks to t.
18316 Don't bind (after|before)-change-functions to nil while they run.
18317
183182007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18319
18320 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
18321 filling pixmap with stippled background.
18322
183232007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18324
18325 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
18326 Don't use invisible frame as parent window for repositioning.
18327
183282007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
18329
18330 * print.c (new_backquote_output): Rename from old_backquote_output.
18331 (print): Inverse its logic (according to its name) so as to match the
18332 behavior of new_backquote_flag in lread.c.
18333
183342007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18335
18336 * gmalloc.c (posix_memalign): New function.
18337
18338 * macterm.c (frame_highlight, frame_unhighlight): Don't call
18339 ActivateControl/DeactivateControl here.
18340 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
18341 frame-notice-user-settings is non-nil.
18342 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
18343 for kEventParamFMFontStyle.
18344 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
18345 mac_pass_command_to_system and mac_pass_control_to_system here.
18346 (XTread_socket): Call ActivateControl/DeactivateControl here.
18347 (XTread_socket) [TARGET_API_MAC_CARBON]:
18348 Check mac_pass_command_to_system and mac_pass_control_to_system here.
18349 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
18350 for window repositioning.
18351
183522007-08-08 Glenn Morris <rgm@gnu.org>
18353
18354 * Replace `iff' in doc-strings and comments.
18355
183562007-08-07 Chong Yidong <cyd@stupidchicken.com>
18357
18358 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
18359
183602007-08-07 Martin Rudalics <rudalics@gmx.at>
18361
18362 * fileio.c (Finsert_file_contents): Run format-decode and
18363 after_insert_file_functions on entire buffer when REPLACE is
18364 non-nil and inhibit modification_hooks and point_motion_hooks.
18365 For consistency, run after_insert_file_functions iff something
18366 got inserted. Move signal_after_change and update_compositions
18367 after code running after_insert_file_functions. Make sure that
18368 undo_list doesn't record intermediate steps of the decoding process.
18369
183702007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18371
18372 * emacs.c (main)
18373 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
18374 Call malloc_enable_thread on interactive startup.
18375
18376 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
18377 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
18378 [USE_PTHREAD]: Conditionalize with it.
18379 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
18380 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
18381 New functions.
18382
183832007-08-06 Chong Yidong <cyd@stupidchicken.com>
18384
18385 * xdisp.c (redisplay_window): When restoring original buffer
18386 position, make sure it is still valid.
18387
18388 * image.c (png_load): Ignore png-supplied background color.
18389
183902007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18391
18392 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
18393 Use kCFAbsoluteTimeIntervalSince1970.
18394
18395 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
18396 New variable.
18397 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
18398 event loop should be quit.
18399 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
18400 Quit dialog event loop if quit_dialog_event_loop is set.
18401
18402 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
18403 (Selection): New typedef. Use instead of ScrapRef.
18404 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
18405 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
18406 (mac_clear_selection): Rename from clear_scrap.
18407 (get_flavor_type_from_symbol): New argument SEL and subsume function of
18408 scrap_has_target_type. All uses changed.
18409 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
18410 (mac_selection_has_target_p): New functions.
18411 (mac_put_selection_value): Rename from put_scrap_string.
18412 (mac_get_selection_value): Rename from get_scrap_string.
18413 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
18414 (put_scrap_private_timestamp, scrap_has_target_type)
18415 (get_scrap_private_timestamp): Remove functions.
18416 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
18417 (x_own_selection, x_get_local_selection):
18418 Use mac_valid_selection_value_p.
18419 (x_own_selection): Don't use put_scrap_private_timestamp.
18420 Record OWNERSHIP-INFO into Vselection_alist instead.
18421 (x_get_local_selection): Don't check type if request is local.
18422 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
18423 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
18424
184252007-08-04 Jan Djärv <jan.h.d@swipnet.se>
18426
18427 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
18428 add comment explaining why.
18429
184302007-08-03 Richard Stallman <rms@gnu.org>
18431
18432 * fileio.c (Fvisited_file_modtime): Use make_time.
18433
184342007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
18435
18436 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
18437 build.
18438
184392007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
18440
18441 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
18442
184432007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
18444
18445 * puresize.h (BASE_PURESIZE): Increase to 1130000.
18446
184472007-07-30 Richard Stallman <rms@gnu.org>
18448
18449 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
18450
184512007-07-29 Jan Djärv <jan.h.d@swipnet.se>
18452
18453 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
18454
184552007-07-28 Nick Roberts <nickrob@snap.net.nz>
18456
18457 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
18458 remote default-directory.
18459
18460 * buffer.c (mode-line-format): Update doc string.
18461
184622007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18463
18464 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
18465 scroll bar gap.
18466 (x_scroll_bar_create): Set bar->fringe_extended_p.
18467 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
18468 on frame edge. Check fringe background extension. Don't clear
18469 extended fringe background area.
18470
18471 * w32term.h (struct scroll_bar): New member fringe_extended_p.
18472 (w32_fill_area): Enclose multiple statements with do ... while (0).
18473
18474 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
18475 Extend fringe background to scroll bar gap.
18476 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
18477 Set bar->fringe_extended_p.
18478 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
18479 Put leftmost/rightmost scroll bars on frame edge. Check fringe
18480 background extension. Don't clear extended fringe background area.
18481
18482 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
18483 New member fringe_extended_p.
18484
184852007-07-25 Glenn Morris <rgm@gnu.org>
18486
18487 * Relicense all FSF files to GPLv3 or later.
18488
18489 * COPYING: Switch to GPLv3.
18490
184912007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
18492
18493 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
18494
18495 * data.c (Finteractive_form): Check for the presence of an
18496 `interactive-form' symbol property more thoroughly.
18497
18498 * data.c (Finteractive_form): Use an `interactive-form' property if
18499 present, analogous to the function-documentation property.
18500
185012007-07-24 Jason Rumney <jasonr@gnu.org>
18502
18503 * w32fns.c (x_real_positions): Get real position from OS instead of
18504 calculating it.
18505
185062007-07-23 Jason Rumney <jasonr@gnu.org>
18507
18508 * filelock.c (current_lock_owner): Allow for @ sign in username.
18509
185102007-07-22 Nick Roberts <nickrob@snap.net.nz>
18511
18512 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
18513 remote default-directory.
18514
18515 * buffer.c (mode-line-format): Describe above case in doc string.
18516
185172007-07-20 Eli Zaretskii <eliz@gnu.org>
18518
18519 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
18520 Define if not defined.
18521
185222007-07-18 Jason Rumney <jasonr@gnu.org>
18523
18524 * w32proc.c (w32_executable_type): Handle 64 bit executables.
18525
185262007-07-18 Richard Stallman <rms@gnu.org>
18527
18528 * data.c (Fsetq_default): Doc fix.
18529
18530 * eval.c (Fsetq): Doc fix.
18531
185322007-07-18 Juanma Barranquero <lekktu@gmail.com>
18533
18534 * coding.c (Ffind_operation_coding_system):
18535 * eval.c (For, Fand): Doc fixes.
18536 Reported by Johan Bockgård.
18537
185382007-07-18 Jan Djärv <jan.h.d@swipnet.se>
18539
18540 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
18541
18542 * xterm.h: Declare x_ewmh_activate_frame.
18543
18544 * xterm.c (x_ewmh_activate_frame): New function.
18545 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
18546
185472007-07-17 Martin Rudalics <rudalics@gmx.at>
18548
18549 * window.c (Fdisplay_buffer): If largest or LRU window is the
18550 only window, split it even if it is not eligible for splitting.
18551 This restores the original behavior broken by the 2007-07-15
18552 change.
18553
185542007-07-17 Glenn Morris <rgm@gnu.org>
18555
18556 * abbrev.c (abbrev_check_chars): New function.
18557 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
18558 Call abbrev_check_chars to check abbrev characters are word
18559 constituents. Doc fix.
18560
185612007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
18562
18563 * process.c (Fstart_process, Fmake_network_process)
18564 (read_process_output): Fix up last changes.
18565
185662007-07-16 Eli Zaretskii <eliz@gnu.org>
18567
18568 * makefile.w32-in (clean): Don't delete *~.
18569
185702007-07-16 Andreas Schwab <schwab@suse.de>
18571
18572 * window.c (Fdisplay_buffer): Use NILP.
18573 (Fset_window_scroll_bars): Likewise.
18574
185752007-07-15 Martin Rudalics <rudalics@gmx.at>
18576
18577 * window.c (window_min_size_2): New function.
18578 (window_min_size_1, size_window, Fdisplay_buffer)
18579 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
18580 windows without mode- or header-lines when window-min-height is
18581 too small.
18582 (size_window): Reset nodelete_p after testing it, following an
18583 earlier note by Kim F. Storm.
18584 (display_buffer): Do not set split_height_threshold to twice the
18585 value of window_min_height to avoid changing the value of a
18586 customizable variable. Rather explicitly check whether the
18587 height of the window that shall be splitted is at least as large
18588 as split_height_threshold.
18589 (Fwindow_full_width_p): New defun.
18590 (syms_of_window): Defsubr it.
18591
18592 * window.h: Add EXFUN for Fwindow_full_width_p.
18593
185942007-07-14 Jason Rumney <jasonr@gnu.org>
18595
18596 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
18597
185982007-07-14 Richard Stallman <rms@gnu.org>
18599
18600 * eval.c (maybe_call_debugger): New function.
18601 (find_handler_clause): Use maybe_call_debugger.
18602 Call it when the handler says `debug'.
18603 Eliminate DEBUGGER_VALUE_PTR.
18604 (Fsignal): Eliminate debugger_value.
18605 (Qdebug): New variable.
18606 (syms_of_eval): Initialize it.
18607
186082007-07-14 Juanma Barranquero <lekktu@gmail.com>
18609
18610 * eval.c (Fprogn):
18611 * keyboard.c (Ftrack_mouse):
18612 * print.c (Fwith_output_to_temp_buffer):
18613 * window.c (Fsave_window_excursion): Doc fix.
18614
186152007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
18616
18617 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
18618
186192007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
18620
18621 * process.h (struct Lisp_Process): Turn slots infd, outfd,
18622 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
18623 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
18624 read_output_delay, and read_output_skip from Lisp_Objects to ints.
18625 Remove unused encoding_carryover.
18626 * process.c: Adjust all functions accordingly.
18627
186282007-07-12 Richard Stallman <rms@gnu.org>
18629
18630 * term.c: Include unistd.h only if HAVE_UNISTD_H.
18631
186322007-07-11 Jason Rumney <jasonr@gnu.org>
18633
18634 * makefile.w32-in (LIBS): Include OLE32.
18635
18636 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
18637 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
18638
186392007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
18640
18641 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
18642 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
18643 from a Lisp_Object into a bare pointer.
18644 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
18645 Adjust the code correspondingly.
18646
18647 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
18648
18649 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
18650 (term_show_mouse_face): Remove unused var `j'.
18651 (handle_one_term_event): Remove unused vars `i' and `j'.
18652 Don't cast return value of ttyname since it's not necessary.
18653
186542007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
18655
18656 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
18657 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
18658
18659 * fns.c (map_char_table): Use an array of int for `indices' rather than
18660 an array of Lisp_Objects (which are only ever integers anyway).
18661 (Fmap_char_table): Update caller.
18662 * lisp.h: Update prototype.
18663 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
18664 * fontset.c (Ffontset_info):
18665 * casetab.c (set_case_table): Update callers.
18666
18667 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
18668
18669 * keymap.c (struct accessible_keymaps_data)
18670 (struct where_is_internal_data): New structures.
18671 (accessible_keymaps_1, where_is_internal_1): Use them to change
18672 interface to adhere to the one used by map_keymap.
18673 (Faccessible_keymaps, where_is_internal): Use map_keymap.
18674 (accessible_keymaps_char_table, where_is_internal_2): Remove.
18675
18676 * keymap.h (map_keymap_function_t): More informative prototype.
18677
186782007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
18679
18680 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
18681 (looking_at_1): Don't change search_regs and last_thing_searched
18682 if `inhibit-changing-match-data' is non-nil.
18683 (string_match_1, search_buffer, set_search_regs): Likewise.
18684 (syms_of_search): Add Lisp level definition for
18685 `inhibit-changing-match-data' and set it to nil.
18686 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
18687 start and end of the match, instead of using values in search_regs.
18688
186892007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
18690
18691 * minibuf.c (Fcompleting_read): New value `confirm-only'
18692 for `require-match'.
18693
186942007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
18695
18696 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
18697 part of the 2007-06-27 change to syms_of_fileio.
18698
186992007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18700
18701 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
18702 Check WINDOWP before using XWINDOW. Consolidate return statements.
18703
187042007-06-27 Richard Stallman <rms@gnu.org>
18705
18706 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
18707
187082007-06-27 Juanma Barranquero <lekktu@gmail.com>
18709
18710 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
18711
187122007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18713
18714 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
18715 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
18716 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
18717 (_free_internal, memalign): Use them.
18718 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
18719 Initialize to PTHREAD_MUTEX_INITIALIZER.
18720 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
18721 (morecore_nolock): Rename from morecore. All uses changed.
18722 Use only nolock versions of internal allocation functions.
18723 (_malloc_internal_nolock, _realloc_internal_nolock)
18724 (_free_internal_nolock): New functions created from
18725 _malloc_internal, _realloc_internal, and _free_internal.
18726 (_malloc_internal, _realloc_internal, _free_internal): Use them.
18727 Copy hook value to automatic variable before its use.
18728 (memalign): Copy hook value to automatic variable before its use.
18729
187302007-06-26 Kenichi Handa <handa@m17n.org>
18731
18732 * coding.c (Ffind_operation_coding_system): Docstring improved.
18733 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
18734
187352007-06-25 David Kastrup <dak@gnu.org>
18736
18737 * keymap.c (Fcurrent_active_maps): Add `position' argument.
18738 (Fwhere_is_internal): Adjust call to `current-active-maps' to
18739 cater for additional parameter.
18740
18741 * keymap.h: Adjust number of parameters to `current-active-maps'.
18742
18743 * doc.c (Fsubstitute_command_keys): Adjust call of
18744 `current-active-maps'.
18745
187462007-06-25 David Kastrup <dak@gnu.org>
18747
18748 * callint.c (Fcall_interactively): Make the parsing of interactive
18749 specs somewhat more readable.
18750
187512007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18752
18753 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
18754 to scroll bar gap also when bitmap fills fringe. Draw only foreground
18755 if extended background has already been filled.
18756
187572007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18758
18759 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
18760 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
18761
18762 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
18763 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
18764 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
18765 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
18766 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
18767 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
18768 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
18769 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
18770 Run timers during dialog popup.
18771 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
18772
187732007-06-21 Jason Rumney <jasonr@gnu.org>
18774
18775 * image.c (convert_mono_to_color_image): Swap fore and background.
18776
187772007-06-20 Jason Rumney <jasonr@gnu.org>
18778
18779 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
18780 (w32_free_bdf_font): Unmap memory not handle.
18781
187822007-06-20 Sam Steingold <sds@gnu.org>
18783
18784 * gmalloc.c (__morecore): Fix the declaration to comply with the
18785 definition.
18786
187872007-06-20 Juanma Barranquero <lekktu@gmail.com>
18788
18789 * w32term.c (w32_delete_display): Remove leftover declaration.
18790 (w32_define_cursor, w32_initialize): Make static.
18791
18792 * w32.c (_wsa_errlist): Fix typo in error message.
18793 (init_environment): Ignore any environment variable from the
18794 registry having a null value.
18795
187962007-06-20 Glenn Morris <rgm@gnu.org>
18797
18798 * Makefile.in (LIBGIF): Default to -lgif.
18799
188002007-06-17 Jason Rumney <jasonr@gnu.org>
18801
18802 * w32menu.c (add_menu_item): Don't use multibyte string functions on
18803 unicode strings.
18804
188052007-06-16 Juanma Barranquero <lekktu@gmail.com>
18806
18807 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
18808 Fix typo in docstring.
18809
188102007-06-16 Eli Zaretskii <eliz@gnu.org>
18811
18812 * w32menu.c (add_menu_item): Escape `&' characters in menu items
18813 and their keybindings.
18814
188152007-06-15 Chong Yidong <cyd@stupidchicken.com>
18816
18817 * composite.c (update_compositions): Fix last fix.
18818
188192007-06-14 Jason Rumney <jasonr@gnu.org>
18820
18821 * w32.c (get_process_times_fn): New function pointer.
18822 (globals_of_w32): Intialize it if present in kernel32.dll.
18823 (w32_get_internal_run_time): New function.
18824
18825 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
18826
188272007-06-14 Kenichi Handa <handa@etlken.m17n.org>
18828
18829 * composite.c (update_compositions): Check the validness of
18830 compositions.
18831
188322007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18833
18834 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
18835 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
18836
18837 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
18838 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
18839
18840 * macgui.h (USE_MAC_TOOLBAR): New define.
18841
18842 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
18843 Return immediately unless popup is activated.
18844
18845 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
18846 background to scroll bar gap.
18847 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
18848 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
18849 scroll bars on frame edge. Check fringe background extension.
18850 Don't clear extended fringe background area.
18851 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
18852 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
18853 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
18854 [USE_MAC_TOOLBAR]: New macros.
18855 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
18856 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
18857 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
18858 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
18859 [USE_MAC_TOOLBAR]: New functions.
18860 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
18861 manually if previous repositioning has failed.
18862 (mac_handle_keyboard_event): Use precomputed event kind.
18863 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
18864 as tool bar item click. Handle mouse movement over tool bar items.
18865
18866 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
18867 toolbar_win_gravity.
18868 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
18869 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
18870 Add externs.
18871
18872 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
18873 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
18874
188752007-06-14 Chong Yidong <cyd@stupidchicken.com>
18876
18877 * image.c (search_image_cache): Remove unused variable.
18878
188792007-06-13 Chong Yidong <cyd@stupidchicken.com>
18880
18881 * xfns.c, xmenu.c: Link to xaw3d if available.
18882
188832007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18884
18885 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
18886 frame_foreground and frame_background.
18887
18888 * image.c (lookup_image): Save frame foreground and background colors.
18889 (search_image_cache): Check if saved and current frame colors match.
18890
188912007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
18892
18893 * regex.c (regex_compile): Remove the `regnum' counter.
18894 Use bufp->re_nsub instead. Add support for \(?N:RE\).
18895
188962007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
18897
18898 * term.c: Include intervals.h to declare Fget_text_property.
18899
189002007-06-10 Jason Rumney <jasonr@gnu.org>
18901
18902 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
18903
189042007-06-08 Juanma Barranquero <lekktu@gmail.com>
18905
18906 * callint.c (Fcall_interactively):
18907 * editfns.c (Fdelete_and_extract_region):
18908 * fileio.c (Fread_file_name):
18909 * fns.c (Fmapconcat):
18910 * keyboard.c (cmd_error_internal):
18911 * keymap.c (Fkey_description):
18912 * lread.c (openp):
18913 * minibuf.c (read_minibuf):
18914 * search.c (wordify):
18915 * sunfns.c (sel_read):
18916 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
18917 * xfns.c (x_default_scroll_bar_color_parameter):
18918 * xmenu.c (menu_help_callback):
18919 * xselect.c (Fx_get_atom_name):
18920 * xterm.c (x_term_init): Use empty_unibyte_string.
18921
189222007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
18923
18924 * alloc.c (init_strings): Initialize canonical empty strings.
18925 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
18926 canonical empty string when the requested size is 0.
18927
18928 * emacs.c (empty_unibyte_string): Rename from empty_string.
18929 (empty_multibyte_string): New canonical empty string.
18930 (syms_of_emacs): Don't initialize empty_string.
18931
18932 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
18933 string, if appropriate.
18934 (empty_unibyte_string, empty_multibyte_string): New externs.
18935 (empty_string): Remove extern.
18936
18937 * lread.c (syms_of_lread): Use empty_unibyte_string.
18938
189392007-06-07 Jason Rumney <jasonr@gnu.org>
18940
18941 * s/ms-w32.h: Don't define HAVE_TZNAME.
18942
18943 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
18944
189452007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18946
18947 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
18948
18949 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
18950 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
18951
18952 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
18953 Don't call next handler.
18954 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
18955 Remove argument. Install handler to application.
18956 (set_frame_menubar): Don't change deep_p.
18957 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
18958 FRAME_OUTER_TO_INNER_DIFF_Y.
18959 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
18960 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
18961 [HAVE_DIALOGS]: New macros.
18962 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
18963 Use them.
18964 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
18965
18966 * macselect.c [MAC_OSX] (install_service_handler): Rename from
18967 init_service_handler. All callers changed. Return OSStatus value.
18968
18969 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
18970 All callers changed so as not to call SetPortWindowPort.
18971 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
18972 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
18973 mac_draw_string_common.
18974 (mac_draw_image_string_qd): Likewise.
18975 (mac_draw_string_common): Use them. Add INLINE.
18976 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
18977 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
18978 GetGlobalMouse.
18979 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
18980 and FRAME_OUTER_TO_INNER_DIFF_Y.
18981 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
18982 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
18983 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
18984 repositioning window to mac_handle_window_event.
18985 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
18986 saving window location to mac_handle_window_event
18987 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
18988 (install_menu_target_item_handler): Remove argument in extern.
18989 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
18990 Also accept command events.
18991 (do_keystroke): New function created from XTread_socket.
18992 (init_command_handler): Remove functions.
18993 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
18994 and save window location by kEventWindowShowing and kEventWindowHiding
18995 handlers here. Don't call next handler for window state change and
18996 focus events.
18997 (mac_handle_application_event, mac_handle_keyboard_event)
18998 [TARGET_API_MAC_CARBON]: New functions.
18999 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
19000 kEventWindowShowing and kEventWindowHiding events. Move installation
19001 of mouse, font, text input and menu target item handlers to
19002 install_application_handler.
19003 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
19004 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19005 New function.
19006 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19007 Register it.
19008 (XTread_socket) [TARGET_API_MAC_CARBON]:
19009 Consolidate SendEventToEventTarget calls.
19010 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
19011 Move application activation handler to mac_handle_application_event.
19012 Move keyboard handler to mac_handle_keyboard_event.
19013 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
19014 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
19015 init_command_handler. Call install_application_handler.
19016
19017 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
19018 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
19019
190202007-06-07 Glenn Morris <rgm@gnu.org>
19021
19022 * emacs.c (main): Use `emacs-copyright' in --version output.
19023
190242007-06-06 Chong Yidong <cyd@stupidchicken.com>
19025
19026 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
19027
190282007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19029
19030 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
19031
19032 * macgui.h: Replace WindowPtr with WindowRef.
19033
19034 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19035 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19036 Replace ControlHandle with ControlRef.
19037 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
19038
19039 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19040 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19041 Replace ControlHandle with ControlRef.
19042 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
19043 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
19044
19045 * macterm.h (struct scroll_bar): Rename member control_handle_low
19046 and control_handle_high to control_ref_low and control_ref_high.
19047 All uses changed.
19048 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
19049 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
19050 respectively. All uses changed.
19051 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
19052 (install_window_handler, remove_window_handler): Replace WindowPtr
19053 with WindowRef in externs.
19054
190552007-06-05 Juanma Barranquero <lekktu@gmail.com>
19056
19057 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
19058
190592007-06-03 Nick Roberts <nickrob@snap.net.nz>
19060
19061 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
19062
19063 * frame.c (Fmouse_position, Fmouse_pixel_position):
19064 Condition on HAVE_GPM too.
19065
19066 * term.c (term_mouse_highlight): Remove unused variables.
19067 (Fterm_open_connection): Set gpm_zerobased to 1.
19068 (term_mouse_movement, term_mouse_click, handle_one_term_event):
19069 Use zero based co-ordinates.
19070 (handle_one_term_event): Report a drag as mouse movement too.
19071
19072 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
19073
190742007-06-03 Chong Yidong <cyd@stupidchicken.com>
19075
19076 * image.c (search_image_cache): New function. Require background
19077 color match if background color is unspecified in the image spec.
19078 (uncache_image, lookup_image): Use it.
19079
190802007-06-01 Juanma Barranquero <lekktu@gmail.com>
19081
19082 * window.c (Fshrink_window): Reflow docstring.
19083
190842007-06-02 Chong Yidong <cyd@stupidchicken.com>
19085
19086 * Version 22.1 released.
19087
190882007-06-01 Richard Stallman <rms@gnu.org>
19089
19090 * xfns.c (x_encode_text): Add GCPRO.
19091
190922007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19093
19094 * xfns.c (x_set_name_internal): Save encoded name before
19095 x_encode_text in case string data is relocated.
19096
190972007-05-31 Richard Stallman <rms@gnu.org>
19098
19099 * buffer.c (syms_of_buffer): Doc fix.
19100
191012007-05-30 Nick Roberts <nickrob@snap.net.nz>
19102
19103 * sysdep.c (init_sys_modes): Add rather than replace with
19104 O_NONBLOCK.
19105
19106 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
19107 term_mouse_moveto.
19108
19109 * termhooks.h (term_mouse_moveto): New extern.
19110
19111 * term.c (mouse_face_window): Rename...
19112 (Qmouse_face_window): ...to this.
19113 (term_show_mouse_face, term_clear_mouse_face)
19114 (term_mouse_highlight): Use Qmouse_face_window.
19115 (term_mouse_moveto): New function.
19116 (term_mouse_position): Make it work.
19117 (syms_of_term): Uncomment assignment to mouse_position_hook.
19118 Staticpro Qmouse_face_window.
19119
191202007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19121
19122 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
19123 around current_column call.
19124
191252007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
19126
19127 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
19128 * xdisp.c (next_element_from_buffer):
19129 * window.c (delete_window):
19130 * term.c (term_mouse_highlight):
19131 * msdos.c (getdefdir):
19132 * macterm.c (mac_create_bitmap_from_bitmap_data)
19133 (init_font_name_table):
19134 * fns.c (Fsxhash):
19135 * data.c (Fmake_local_variable):
19136 * ccl.c (ccl_driver): Likewise.
19137
191382007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19139
19140 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
19141 Call mac_wakeup_from_rne on window size change.
19142
191432007-05-25 Chong Yidong <cyd@stupidchicken.com>
19144
19145 * image.c (uncache_image): Fix typo.
19146
191472007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
19148
19149 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
19150
191512007-05-22 Richard Stallman <rms@gnu.org>
19152
19153 * xterm.c (x_connection_closed): Remove NO_RETURN.
19154
191552007-05-22 Martin Rudalics <rudalics@gmx.at>
19156
19157 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
19158
191592007-05-21 Chong Yidong <cyd@stupidchicken.com>
19160
19161 * image.c (uncache_image): New function.
19162 (Fimage_refresh): New function.
19163
191642007-05-20 Jan Djärv <jan.h.d@swipnet.se>
19165
19166 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
19167
191682007-05-20 Nick Roberts <nickrob@snap.net.nz>
19169
19170 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
19171 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
19172
191732007-05-20 Nick Roberts <nickrob@snap.net.nz>
19174
19175 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
19176 conditional on [HAVE_GPM_H].
19177
191782007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
19179
19180 * syntax.c (skip_chars): Update syntax-table only after we checked that
19181 the new location is valid.
19182
191832007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19184
19185 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
19186 mac_get_window_bounds.
19187
191882007-05-20 Nick Roberts <nickrob@snap.net.nz>
19189
19190 * Makefile.in (LIBGPM): Allow it to be set from configure.
19191 If set then link Emacs with it.
19192
19193 * config.in: Regenerate.
19194
19195 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
19196 New externs.
19197
19198 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
19199 Include gpm.h.
19200 (handle_one_term_event, term_gpm): New externs.
19201
19202 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
19203 and allow it to be interrupted by SIGIO.
19204
19205 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
19206 (wait_reading_process_output): Wait on gpm_fd too.
19207 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
19208 (add_gpm_wait_descriptor_called_flag): New variable.
19209 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
19210
19211 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
19212 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
19213 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
19214 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
19215 (make_lispy_event): Add case GPM_CLICK_EVENT.
19216 (read_avail_input): Handle mouse input.
19217
19218 * term.c (write_glyphs_with_face): New function.
19219 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
19220 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
19221 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
19222 (mouse_face_face_id, term_gpm, pos_x, pos_y)
19223 (last_mouse_x, last_mouse_y): New variables.
19224 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
19225 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
19226 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
19227 (Fterm_close_connection): New functions.
19228 (term_init): Initialise mouse_face_window.
19229
192302007-05-19 Chong Yidong <cyd@stupidchicken.com>
19231
19232 * xdisp.c (redisplay_window): If first window line is a
19233 continuation line, recompute the new window start instead of
19234 recentering.
19235
192362007-05-18 Glenn Morris <rgm@gnu.org>
19237
19238 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
19239 Suggested by Alfred M. Szmidt <ams@gnu.org>.
19240
192412007-05-17 Glenn Morris <rgm@gnu.org>
19242
19243 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
19244
192452007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19246
19247 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
19248 dead key repeat and up events.
19249
192502007-05-14 Chong Yidong <cyd@stupidchicken.com>
19251
19252 * image.c (pbm_load): Check image size for monochrome pbm.
19253
192542007-05-13 Chong Yidong <cyd@stupidchicken.com>
19255
19256 * xterm.c (XTread_socket): Revert last change.
19257
192582007-05-12 Chong Yidong <cyd@stupidchicken.com>
19259
19260 * image.c (pbm_load): Correctly check image size for greyscale pbm.
19261
19262 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
19263
192642007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19265
19266 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
19267 mixup (YAILOM).
19268
192692007-05-07 Andreas Schwab <schwab@suse.de>
19270
19271 * keymap.c (Flookup_key): Fix typo in last change.
19272
192732007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19274
19275 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
19276 mapping for unibyte strings.
19277
192782007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19279
19280 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
19281 (Fx_popup_dialog) [MAC_OSX]: Likewise.
19282
192832007-04-29 Richard Stallman <rms@gnu.org>
19284
19285 * insdel.c (replace_range): For undo, record insertion first.
19286
192872007-04-29 Andreas Schwab <schwab@suse.de>
19288
19289 * lisp.h (VECSIZE): Use OFFSETOF.
19290
192912007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19292
19293 * xdisp.c (try_window_reusing_current_matrix): Fix number of
19294 disabled lines.
19295
192962007-04-28 Richard Stallman <rms@gnu.org>
19297
19298 * lread.c (read_escape): In a string, \s is always space.
19299
193002007-04-27 Jan Djärv <jan.h.d@swipnet.se>
19301
19302 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
19303
19304 * gtkutil.c (xg_update_menubar, create_menus): Create empty
19305 submenu for menu bar items.
19306
19307See ChangeLog.10 for earlier changes.
19308
19309;; Local Variables:
19310;; coding: utf-8
19311;; add-log-time-zone-rule: t
aac0c6e3
MR
19312;; End:
19313
76b6f707 19314 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
19315
19316 This file is part of GNU Emacs.
19317
19318 GNU Emacs is free software: you can redistribute it and/or modify
19319 it under the terms of the GNU General Public License as published by
19320 the Free Software Foundation, either version 3 of the License, or
19321 (at your option) any later version.
19322
19323 GNU Emacs is distributed in the hope that it will be useful,
19324 but WITHOUT ANY WARRANTY; without even the implied warranty of
19325 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19326 GNU General Public License for more details.
19327
19328 You should have received a copy of the GNU General Public License
19329 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
19330
19331;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40