* xdisp.c (move_it_to): For continued lines ending in a tab, take
[bpt/emacs.git] / src / ChangeLog
CommitLineData
e6583e3d
CY
12009-07-21 Chong Yidong <cyd@stupidchicken.com>
2
3 * xdisp.c (move_it_to): For continued lines ending in a tab, take
4 the overflowed pixels into account (Bug#3879).
5
ece435a5
KR
62009-07-21 Ken Raeburn <raeburn@raeburn.org>
7
8 * lread.c (load_depth): New variable.
9 (Fload, load_unwind, init_lread): Set it to the load recursion
10 depth; set load_in_progress as a simple boolean based on the
11 current load_depth. (Bug#3892)
12
40b2d973
AR
132009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
14
15 * nsfont.m (ns_has_attribute): Remove.
16 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
17
10be7e0d
JL
182009-07-18 Juri Linkov <juri@jurta.org>
19
20 * process.c (Fset_process_query_on_exit_flag): Mention killing
21 a buffer in docstring.
22
fa055055
KH
232009-07-17 Kenichi Handa <handa@m17n.org>
24
25 * casetab.c (shuffle): Fix the logic of setting up the cycle.
26
042f7b69
YM
272009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
28
29 * nsfns.m (Fns_set_alpha): Remove function.
30 (syms_of_nsfns): Don't defsubr it.
31
32 * nsterm.m (ns_get_color): Remove incompatible color formats.
33 (ns_color_to_lisp): Generate #rrggbb color format string.
34
4be941e3
RS
352009-07-16 Richard Stallman <rms@gnu.org>
36
37 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
38 (Fset_buffer_auto_saved): Handle save_length = -2.
39
4e6b227d
CY
402009-07-16 Chong Yidong <cyd@stupidchicken.com>
41
42 * xterm.c (Qx_gtk_map_stock): New var.
43
44 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
45 of calling intern each time.
46
a1856973
YM
472009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
48
49 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
50 does tiling.
51
52 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
53
497e54d8
KH
542009-07-14 Kenichi Handa <handa@m17n.org>
55
72d36834
KH
56 * font.c (font_vconcat_entity_vectors): New function.
57 (struct font_sort_data): New member font_driver_preference.
58 (font_compare): Check font_driver_preference.
59 (font_sort_entities): The format of the first argument changed.
60 (font_delete_unmatched): Likewise.
61 (font_list_entities): The return type changed.
62 (font_select_entity): The format of the second argument changed.
63 (font_find_for_lface): Adjusted for the above changes. Don't
64 suppress the checking of C even if the repertory supports it.
65 (Flist_fonts): Adjusted for the above changes.
66
497e54d8
KH
67 * ftfont.c (ftfont_spec_pattern): New arg langname. Caller
68 changed.
69 (ftfont_list): Adjusted for the change of ftfont_spec_pattern.
70 Reject a font who has adstyle property that is different from a
71 langname derived from registry property.
72 (ftfont_match): Adjusted for the change of ftfont_spec_pattern.
73
b6046155
EZ
742009-07-13 Eli Zaretskii <eliz@gnu.org>
75
76 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
77 local copy of dirfilename.
78
fb6b6049
KH
792009-07-13 Kenichi Handa <handa@m17n.org>
80
e2402a5e
KH
81 * chartab.c (sub_char_table_ref_and_range): Fix the range check
82 against max_char.
83
fb6b6049
KH
84 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
85 calling XSYMBOL (sym).
86
65156807
EZ
872009-07-11 Eli Zaretskii <eliz@gnu.org>
88
89 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]: New
90 function.
91 (directory_files_internal) [WINDOWSNT]: Bind
92 w32-get-true-file-attributes to either t or nil, depending whether
93 the filesystem of the directory is fast or slow.
94
95 * w32.c (logon_network_drive): Don't assume PATH is an absolute
96 file name.
97 (is_slow_fs): New function.
98 (stat): Use it to determine whether to issue more system calls to
99 get accurate file attributes, when w32-get-true-file-attributes is
100 `local'.
101
e0ab5fcf
JD
1022009-07-10 Jan Djärv <jan.h.d@swipnet.se>
103
104 * xfns.c (Fx_select_font): Remember last font selected in
105 x_last_font_name and use that the next time. Also try the frame
106 parameter font-parameter as default to the font dialog.
107
784ceded
KH
1082009-07-10 Kenichi Handa <handa@m17n.org>
109
110 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
111
fb8edc0b
EZ
1122009-07-09 Eli Zaretskii <eliz@gnu.org>
113
017dab84
EZ
114 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc
115 fix.
116
fb8edc0b
EZ
117 * w32.c (stat): Treat UNC file names as residing on remote
118 drives. (Bug#3542)
119
635c75b1
KH
1202009-07-09 Kenichi Handa <handa@m17n.org>
121
122 * fontset.c (fontset_find_font): Fix previous change.
123
c1d5ce94
MA
1242009-07-08 Michael Albinus <michael.albinus@gmx.de>
125
126 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
127 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
128 error flag.
129
edb61b39
KH
1302009-07-08 Kenichi Handa <handa@m17n.org>
131
374bf7e4
KH
132 * fontset.c (fontset_find_font): Fix the logic of handling
133 charset_matched.
134 (font_for_char): Delete unused var.
135 (generate_ascii_font_name): Delete it.
136
edb61b39
KH
137 * coding.h (JIS_TO_SJIS2): Fix the code range check.
138
139 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
140 (encode_coding_sjis): Fix the code range check.
141
0f3f018c
CY
1422009-07-07 Chong Yidong <cyd@stupidchicken.com>
143
144 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
145 (Fexpand_file_name): Copy string data properly (Bug#3772).
146
fcaf6f3a
JD
1472009-07-07 Jan Djärv <jan.h.d@swipnet.se>
148
149 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
150 first MapNotify.
151
6809ca75
KH
1522009-07-07 Kenichi Handa <handa@m17n.org>
153
154 * character.h (unibyte_has_multibyte_table): Delete extern.
155 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
156
157 * charset.c (Fset_charset_priority): Update charset_unibyte.
158 (syms_of_charset): Initialize charset_unibyte.
159
160 * character.c (unibyte_has_multibyte_table): Delete it.
161 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
162 charset_unibyte.
163 (multibyte_char_to_unibyte_safe): Likewise.
164 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
165
166 * xdisp.c (get_next_display_element): Decode it->c by
167 charset_unibyte.
168 (x_produce_glyphs): Likewise.
169
170 * .gdbinit (xcharset): Fix the treating $arg0.
171
ad9e2d54
EZ
1722009-07-04 Eli Zaretskii <eliz@gnu.org>
173
174 Emulation of `getloadavg' on MS-Windows.
175 * w32.c: Include float.h
176 (g_b_init_get_native_system_info, g_b_init_get_system_times)
177 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
178 (get_native_system_info, get_system_times): New functions.
179 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
180 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
181 (globals_of_w32): Initialize g_b_init_get_native_system_info,
182 g_b_init_get_system_times, and num_of_processors.
183
0a3472c7
JR
1842009-07-03 Jason Rumney <jasonr@gnu.org>
185
186 * w32term.c (w32_initialize): Use standard types.
187
80904120
EZ
1882009-07-03 Eli Zaretskii <eliz@gnu.org>
189
190 * dired.c (Ffile_attributes): Decode user and group names by the
191 locale's encoding. (Bug#3443)
192
6978862d
DN
1932009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
194
f8d23104
DN
195 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
196 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
197
198 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
199
200 * term.c (init_tty): Remove spurious #ifdef.
201
6978862d
DN
202 * m/mips.h: Mention this file is also used for netbsd.
203 * m/pmax.h: Remove file.
204
e044e4fc
JD
2052009-07-03 Jan Djärv <jan.h.d@swipnet.se>
206
207 * xterm.h (struct x_display_info): Add invisible_cursor.
208 (struct x_output): Add current_cursor.
209
210 * xterm.c (XTtoggle_invisible_pointer): New function.
211 (x_define_frame_cursor): Don't define cursor if invisible or the
212 same as before. Set current_cursor.
213 (x_create_terminal): Set toggle_invisible_pointer_hook.
214
215 * xfns.c (make_invisible_cursor): New function.
216 (x_set_mouse_color): Call make_invisible_cursor.
217 Set current_cursor.
218 (x_window): Set current_cursor.
219
220 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
221
222 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
223 inserting a character.
224 (read_avail_input): Call frame_make_pointer_visible.
225
226 * frame.c (Vmake_pointer_invisible): New variable.
227 (frame_make_pointer_invisible, frame_make_pointer_visible): New
228 functions.
229 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
230
231 * frame.h: Declare frame_make_pointer_invisible and
232 frame_make_pointer_visible.
233 (struct frame): Add pointer_invisible.
234
574c8efa
JD
2352009-07-02 Jan Djärv <jan.h.d@swipnet.se>
236
7b507248
JD
237 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
238 frame isn't visible.
239 (xg_frame_resized): If width/height is -1, get size of window
240 from X server.
241
242 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
243 for MapNotify.
244
835bdaa7
JD
245 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
246 here or call change_frame_size. Just call flush_and_sync.
247 (flush_and_sync): Reintroduced.
574c8efa 248
3f1c6666 2492009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 250
acd51077
JD
251 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky
252
253 * xterm.c (x_handle_net_wm_state): Also look for sticky.
254 (x_term_init): Initialize Xatom_net_wm_state_sticky.
255
256 * frame.h: Declare Qsticky.
257
cad9ef74
JD
258 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
259
260 * nsfns.m (ns_frame_parm_handlers): Ditto.
261
262 * frame.c: Declare Qsticky.
263 (frame_parms): Add sticky.
264
265 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
266
267 * xterm.h: Declare x_set_sticky.
268
269 * xterm.c (x_set_sticky): New function.
270
69b16610
JD
271 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
272 (xg_tool_bar_menu_proxy): Attach enter/leave events to
273 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
274
275 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
276
277 * frame.c: Qmaximized is new.
278 (x_set_frame_parameters): Do not handle fullscreen specially.
279 Only set width and height if explicitly set.
280 (x_set_fullscreen): Handle Qmaximized.
281 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
282 (syms_of_frame): Initialize Qmaximized.
283
284 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED. Declare
285 Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
286
287 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
288 for Expose event. Add call to x_check_fullscreen for MapNotify event.
289 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
290 set gravity to NorthWestGravity when USE_GTK.
291 (set_wm_state): New function.
292 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
293 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
294 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
295 or the case when no window manager is running. That means remove calls
296 to x_real_positions and x_fullscreen_adjust.
297
298 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
299 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
300 flush_and_sync.
301 (xg_height_changed): New function.
302 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
303 and gtk_window_set_policy. Set frame gravity after parsing the geometry
304 string.
305 (xg_update_frame_menubar, free_frame_menubar)
306 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
307 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
308 Remove calls to xg_frame_set_char_size.
309
fd503d99
KH
3102009-07-01 Kenichi Handa <handa@m17n.org>
311
312 * keyboard.c (decode_keyboard_code): New function.
313 (tty_read_avail_input): Decode the input bytes if necessary.
314
315 * coding.c (setup_coding_system): Initialize
316 coding->carryover_bytes to 0.
317 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
318 use Qno_conversion.
319
24ed93fb
YM
3202009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
321
322 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
323
99061dfc
CY
3242009-06-30 Chong Yidong <cyd@stupidchicken.com>
325
326 * xftfont.c (xftfont_open): Avoid passing NULL argument to
327 XftLockFace.
328
ff90fbde
JR
3292009-06-30 Jason Rumney <jasonr@gnu.org>
330
331 * w32term.c (w32_initialize): Use GetModuleHandle for library that
332 is already loaded.
333 Set user model ID if supported (bug#1849).
334
5f445726
JM
3352009-06-29 Jim Meyering <meyering@redhat.com>
336
337 Remove useless if-before-xfree test.
338 * nsfont.m (nsfont_close): Remove useless test.
339 * term.c (delete_tty): Likewise.
340 * w32.c (system_process_attributes): Likewise.
341 * w32font.c (w32font_close): Likewise.
342 * xfaces.c (x_free_gc): Likewise.
343 * xselect.c (buffer): Likewise.
344
b9607587
AS
3452009-06-28 Andreas Schwab <schwab@linux-m68k.org>
346
347 * process.c (send_process): Keep decoded string in a local
348 variable and protect it from GC. (Bug#3521)
349
89ba96f4
EZ
3502009-06-28 Eli Zaretskii <eliz@gnu.org>
351
352 * term.c (create_tty_output) [MSDOS]: #ifdef away.
353 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
354
098a1589
CY
3552009-06-28 Chong Yidong <cyd@stupidchicken.com>
356
485422be
CY
357 * xdisp.c (start_display, handle_face_prop)
358 (move_it_vertically_backward, cursor_row_fully_visible_p)
359 (redisplay_window, try_window_id, produce_image_glyph): Delete
360 some #ifdef-ed out code chunks that are now obsolete.
361
098a1589
CY
362 * xterm.c (x_update_window_begin, x_new_focus_frame)
363 (x_scroll_bar_handle_click, handle_one_xevent)
364 (handle_one_xevent, XTread_socket, x_focus_on_frame)
365 (x_make_frame_visible, x_make_frame_invisible)
366 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
367 code chunks that are now obsolete.
368
78c38319
MA
3692009-06-28 Michael Albinus <michael.albinus@gmx.de>
370
371 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
372 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
373 for hours, when optimzation is enabled.
374 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
375 (xd_read_message): Make them static.
376
4189ed40
CY
3772009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
378
379 * term.c (turn_on_face): Allow simultaneously bold and dim
380 terminal faces (Bug#3530).
381
cd9b5e16
CY
3822009-06-27 Chong Yidong <cyd@stupidchicken.com>
383
4e23bedb
CY
384 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
385
cd9b5e16
CY
386 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
387 truncation glyphs (Bug#3686).
388
07cc3c35
GM
3892009-06-27 Glenn Morris <rgm@gnu.org>
390
391 * m/pmax.h: Restore file, with only netbsd portions.
392
25c5550f
DR
3932009-06-26 David Reitter <david.reitter@gmail.com>
394
cd9b5e16 395 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 396
42d4a64f
KH
3972009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
398
399 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
400 the arg FORCE_SYMBOL.
401
930fe55b 4022009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
403
404 * fontset.c (fontset_find_font): When a usable rfont_def is found
405 in a fallback font-group, make it the first element of the group.
406
57ebc3fd
CY
4072009-06-24 Chong Yidong <cyd@stupidchicken.com>
408
409 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
410
f084f942
KH
4112009-06-24 Kenichi Handa <handa@m17n.org>
412
413 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
414 set for C.
415 (fontset_font): Record the availability of a font for C both in
416 the realized fontsets of the current one and the default one.
417
2f686c87
DN
4182009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
419
420 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
421 conditional, it is always defined on AIX.
422
666e158e
MB
4232009-06-23 Miles Bader <miles@gnu.org>
424
425 * window.c (Vrecenter_redisplay): New variable.
426 (syms_of_window): Initialize it.
427 (Qtty): New extern declaration.
428 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
429
c6da7cd2
JM
4302009-06-23 Jim Meyering <meyering@redhat.com>
431
632c2030
CY
432 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt): Use
433 xmalloc and xrealloc (not malloc and realloc), so subsequent heap
434 pointer dereferences are guaranteed to be valid.
c6da7cd2 435
678dca3d
KH
4362009-06-23 Kenichi Handa <handa@m17n.org>
437
74d75424
KH
438 * emacs.c (main): Call init_font ().
439
440 * font.h (Vfont_log): Extern it.
441 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
442
443 * font.c (font_sort_entities, font_list_entities)
444 (font_matching_entity, font_open_entity)
445 (font_close_object): Change font_add_log to FONT_ADD_LOG.
446 (Vfont_log): Delete static.
447 (font_log_env_checked): Delete this variable.
448 (font_add_log): Don't check font_log_env_checked.
449 (font_deferred_log): Check Vfont_log.
450 (init_font): New function.
451
678dca3d
KH
452 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
453
454 * w32font.c: Change font_add_log to FONT_ADD_LOG.
455
456 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
457
458 * xfont.c: Change font_add_log to FONT_ADD_LOG.
459
460 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
461 (face_for_char): Don't call font_deferred_log here.
462 (font_for_char): Likewise.
463
8a668709
CY
4642009-06-22 Chong Yidong <cyd@stupidchicken.com>
465
9a01ee33
CY
466 * w32term.c (x_draw_glyph_string): Use the glyph string's width
467 rather than its background_width for drawing the overline and
468 underline (Bug#489).
469
470 * xterm.c (x_draw_glyph_string): Use the glyph string's width
471 rather than its background_width for drawing the overline and
472 underline (Bug#489).
ec7c9926
CY
473 (xg_default_icon_file): New variable.
474 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
475 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 476
8a668709
CY
477 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
478 (load_overlay_strings): Remove externs.
479 (fast_find_position): Function deleted.
480 (mouse_face_from_buffer_pos): New function, based on
481 fast_find_position. Correctly handle before-strings,
482 display-strings, and after-strings (Bug#1220).
483 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
484
4d4c02d8
CY
4852009-06-21 Chong Yidong <cyd@stupidchicken.com>
486
487 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for
488 !HAVE_WINDOW_SYSTEM.
489 (move_it_in_display_line_to, move_it_in_display_line_to)
490 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
491
70243478
CY
4922009-06-21 Chong Yidong <cyd@stupidchicken.com>
493
494 * Branch for 23.1.
495
13087e59
JR
4962009-06-21 Jason Rumney <jasonr@gnu.org>
497
498 * w32term.c (keyboard_codepage): New static variable.
499 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
500 (w32_read_socket) [WM_CHAR]: Use it to decode character
501 input (bug#3237).
502 (w32_initialize): Initialize it.
503 (codepage_for_locale): New function.
504
4735b74e
KR
5052009-06-20 Ken Raeburn <raeburn@raeburn.org>
506
507 * process.c (status_message): Pass Faset index argument as a lisp
508 object, so as to work with USE_LISP_UNION_TYPE.
509
0e727afa
YM
5102009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
511
512 * coding.c (Ffind_coding_systems_region_internal):
513 Cache checked characters.
514
cf299835
KH
5152009-06-18 Kenichi Handa <handa@m17n.org>
516
517 * coding.c (decode_coding_iso_2022): Check MSB of bytes more
518 rigidly.
519
90f20d94
AS
5202009-06-18 Andreas Schwab <aschwab@redhat.com>
521
522 * xdisp.c (redisplay_internal): Check that the frame is still
523 live after redisplay of its windows.
524 (redisplay_windows): Check that the window is still live.
525
7f1faf1c
KH
5262009-06-17 Andreas Schwab <schwab@linux-m68k.org>
527
528 * coding.c (detect_coding_utf_16): Fix previous change.
529
cc13543e
KH
5302009-06-16 Kenichi Handa <handa@m17n.org>
531
532 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
533 UTF-16 by checking the dispersion of Eth and Oth bytes.
534
977b85f4
AS
5352009-06-15 Andreas Schwab <schwab@linux-m68k.org>
536
537 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
538
66bd43d1
KH
5392009-06-15 Kenichi Handa <handa@m17n.org>
540
541 * process.c (status_message): Fix previous change. Be sure to
542 decode a localized string.
543
cb5ca9c5
YM
5442009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
545
546 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
547 add comment explaining why.
548
ec7709ba 5492009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 550
ec7709ba 551 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 552
4b7f335c
AR
5532009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
554
555 * nsfont.m (ns_attribute_value): Remove.
556 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
557 (ns_has_attribute): Shrink the normal range.
558 (ns_findfonts): Don't worry about requested spec in determining
559 need for synthItal.
e41820ee 560 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 561
73b26103
SZ
5622009-06-14 Seiji Zenitani <zenitani@mac.com>
563
564 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
565
5753e4da
KH
5662009-06-11 Kenichi Handa <handa@m17n.org>
567
568 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
569 overhang for the static composition case.
570
3561b671
KH
5712009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
572
5753e4da
KH
573 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
574 overhang for the automatic composition case.
575
3561b671
KH
576 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
577 composition case.
578
852bbd41
CY
5792009-06-10 Chong Yidong <cyd@stupidchicken.com>
580
581 * xdisp.c (get_next_display_element): When handling wrap-prefix
582 and line-prefix, treat \n as a control character (bug#3502).
583
9903d1e6
KH
5842009-06-10 Kenichi Handa <handa@m17n.org>
585
586 * font.c (font_parse_family_registry): Fix for one-char foundry.
587 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
588
0bcbaaaa
CY
5892009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
590
591 * process.c (status_message): Fix handling of multibyte signal
592 string (Bug#3499).
593
40aa3f13
JM
5942009-06-09 Jim Meyering <meyering@redhat.com>
595
1f80c7e2
CY
596 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
597 color name is missing.
40aa3f13 598
72d51285
KH
5992009-06-09 Kenichi Handa <handa@m17n.org>
600
601 * charset.c (Fmap_charset_chars): In docstring, state clearly that
602 FROM-CODE and TO-CODE are codepoints of CHARSET.
603
c1d04d84
AR
6042009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
605
606 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
607
6082009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
609
610 Changes to support :script/:lang/:otf in NS font driver.
611 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
612 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
613 indicate not part of font driver interface, and change callers.
614 (ns_get_family): Remove pointless null check.
615 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
616 ns_spec_to_descriptor, ns_descriptor_to_entity.
617 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
618 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
619 (ns_spec_to_descriptor, ns_descriptor_to_entity)
620 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
621 (ns_get_req_script, ns_accumulate_script_ranges)
622 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
623 New functions.
624 (nsfont_list, nsfont_match): Use ns_findfonts.
625 (nsfont_open): Use font descriptor instead of traits.
626 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
627 (dump_glyphstring): Rename to ns_dump_glyphstring.
628
c7eb9816
AR
629 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
630
c1d04d84
AR
631 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
632
633 * fontset.c (fontset_from_font): Remove NS-specific code.
634
ec7709ba 6352009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
636
637 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
638 nonactive windows.
639
6402009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
641
642 * nsterm.m (ns_init_paths): Append path separator to INFOPATH
643 variable.
644
68852c13 6452009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
646
647 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
648
6756cd1d
CY
6492009-06-07 Chong Yidong <cyd@stupidchicken.com>
650
651 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
652 account for the overflowing of newlines into the last glyph on the
653 display line (Bug#3482).
654
28bf482a
DR
6552009-06-05 David Reitter <david.reitter@gmail.com>
656
ec7709ba
JB
657 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
658 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
659 Fns_selection_exists_p, Fns_selection_owner_p.
660
fdb55376
JR
6612009-06-03 Jason Rumney <jasonr@gnu.org>
662
663 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
664 available. (Bug#3379)
665
05129fbe
KH
6662009-05-29 Kenichi Handa <handa@m17n.org>
667
668 * coding.c (get_translation_table): Check
669 Venable_character_translation.
670
ec7709ba 6712009-05-26 David Reitter <david.reitter@gmail.com>
15891144 672
ec7709ba
JB
673 * nsterm.m (ns_raise_frame): Only raise frame if visible.
674 (x_make_frame_visible): Move frame to front rather than calling
15891144 675 ns_raise_frame().
ec7709ba 676 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 677 isn't key window.
ec7709ba 678 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
679 drawRect may be called by NSView even if the frame is hidden.
680
ec7709ba
JB
681 * nsfns.m (Fx_create_frame): Follow other ports in
682 determining visibility; default to t. Ensure async_visible is set.
15891144 683
21f73755
EZ
6842009-05-23 Eli Zaretskii <eliz@gnu.org>
685
686 * dired.c (Ffile_attributes): Doc fix.
687
34001e41
CY
6882009-05-22 Chong Yidong <cyd@stupidchicken.com>
689
690 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
691
46306a17
SM
6922009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
693
694 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
695 and xfont_scratch_props.
696 (syms_of_xfont): Do it here instead.
697 (xfont_find_ccl_program): Delete, unused.
698 (xfont_open): Delete unused var `i'.
699
ef6e0694
KH
7002009-05-21 Kenichi Handa <handa@m17n.org>
701
702 * fontset.c (Qlatin): Don't make it static.
703
46306a17
SM
704 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
705 New functions.
ef6e0694
KH
706 (xfont_scripts_cache, xfont_scratch_props): New variables.
707 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
708 (xfont_list_pattern): Argument changed. Callers changed.
709 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
710 (xfont_list): Don't reject a font spec with :script property.
711 (xfont_has_char): Fix setting of encoding.
712 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
713 xfont_scratch_props.
714
7152009-05-19 Kenichi Handa <handa@m17n.org>
716
46306a17 717 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
718 Callers changed.
719
7202009-05-18 Kenichi Handa <handa@m17n.org>
721
722 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
723
ac71ced7
SM
7242009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
725
726 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
727 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
728
1c6d1051
YM
7292009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
730
731 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
732 (x_delete_terminal): Dissociate resource database from display and
733 then call XrmDestroyDatabase before closing display.
734
9b9b779c
AR
7352009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
736
737 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
738 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
739 whether selected frame is viable before raising it (based on patch
740 by David Reitter), and improve commentary.
741 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 742
cccd42d5
KH
7432009-05-15 Kenichi Handa <handa@m17n.org>
744
745 * font.c (Ffont_spec): Check arguments.
746
337fbd17
CY
7472009-05-14 Chong Yidong <cyd@stupidchicken.com>
748
749 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
750 weight when testing attributes (Bug#3282).
751
47a6002f
JD
7522009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
753
754 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
755 what we expect to get in the next ConfigureNotify event.
756
9cb363db
YM
757 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
758 before Xft one (Bug#1696).
759
b9126609
CY
7602009-05-07 David Reitter <david.reitter@gmail.com>
761
762 * nsfns.m (Fx_display_planes): Compute bitplanes using
763 NSBitsPerPixelFromDepth (Bug#3207).
764
27a69fd9
CY
7652009-05-10 Chong Yidong <cyd@stupidchicken.com>
766
767 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
768
00f37552
TTN
7692009-05-10 Ulrich Mueller <ulm@gentoo.org>
770
771 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
772
2d82a920
DR
7732009-05-07 David Reitter <david.reitter@gmail.com>
774
ec7709ba
JB
775 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
776 Respect mouse face background.
2d82a920 777
46b0d52d
DR
7782009-05-07 David Reitter <david.reitter@gmail.com>
779
ec7709ba
JB
780 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
781 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
782 in ns_update_begin and ns_update_end.
783
ce1b23bb
SM
7842009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
785
5996e1b7
SM
786 * nsfns.m (ns_get_screen): Rewrite.
787 Don't presume selected-frame is of type `ns'.
788
ba98e3a0
SM
789 * font.c (font_update_drivers): Sanity fallback to avoid disabling
790 all drivers.
791
ce1b23bb
SM
792 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
793
bcda200f
YM
7942009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
795
796 * keyboard.h (add_user_signal): Fix typo in extern.
797
798 * lisp.h (add_user_signal): Remove extern.
799
800 * unexelf.c (unexec): Consider a section to precede the .bss section
801 if its addresses overlap that of .bss.
802 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
803 instead of dumping process.
804
864660a2
SM
8052009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
806
807 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
808
50da4e56
SM
8092009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
810
811 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
812
51520a1a
DN
8132009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
814
815 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
816 any statements.
817
409ea3a1
AS
8182009-05-02 Andreas Schwab <schwab@linux-m68k.org>
819
59c4c60f
AS
820 * process.c (read_process_output): Make sure the current buffer is
821 always restored.
822
409ea3a1
AS
823 * coding.c (record_conversion_result): Don't modify
824 Vlast_code_conversion_error for successful result.
825 (alloc_destination): Don't clobber conversion result. (Bug#1650)
826
56f00ed2
KH
8272009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
828
829 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 830 (load_charset_map): Remove unnecessary code.
56f00ed2 831
4491c9d2
DR
8322009-04-30 David Reitter <david.reitter@gmail.com>
833
35f5b128 834 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
835 through f24.
836
6970f632
CY
8372009-04-30 Chong Yidong <cyd@stupidchicken.com>
838
839 * xfaces.c (face_at_buffer_position): New arg base_face_id.
840
841 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
842 face_at_buffer_position.
843 (face_before_or_after_it_pos, get_next_display_element)
844 (note_mouse_highlight): Update face_at_buffer_position call.
845
846 * term.c (term_mouse_highlight):
847 * msdos.c (IT_note_mouse_highlight):
848 * fontset.c (Finternal_char_font):
35f5b128 849 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
850
851 * dispextern.h (face_at_buffer_position): Update prototype.
852
0c616f63
KH
8532009-04-30 Kenichi Handa <handa@m17n.org>
854
35f5b128 855 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 856
ad3aaf33
AS
8572009-04-29 Andreas Schwab <schwab@linux-m68k.org>
858
859 * callproc.c (Fcall_process): Fix GC protection. Make sure
860 current buffer is always restored.
861
c3c963a0
YM
8622009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
863
864 * atimer.c (init_atimer): Also clear stopped_atimers.
865
866 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
867
7e3386cb
YM
868 * process.c (create_process): Clean up merger residues of
869 2008-07-17 change.
870
91f68422
CY
8712009-04-29 Ulrich Mueller <ulm@gentoo.org>
872
873 * lread.c (Vread_circle): New variable.
874 (read1): Disable recursive read if Vread_circle is nil.
875
24b34550
KH
8762009-04-29 Kenichi Handa <handa@m17n.org>
877
878 * fontset.h (set_default_ascii_font): Delete extern.
879
880 * fontset.c (set_default_ascii_font): Delete this unused function.
881
882 * frame.c (x_set_font): When ARG is a font-object, check if the
883 font-object matches with the ASCII font-spec of the frame's
9c358bda 884 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 885
77bf07e1
AS
8862009-04-28 Andreas Schwab <schwab@linux-m68k.org>
887
888 * fns.c (Flocale_info): Protect vector from GC during decoding.
889
890 * process.c (Fstart_process): Protect argv strings from GC during
891 encoding.
892
2c55aacf
AS
8932009-04-27 Andreas Schwab <schwab@linux-m68k.org>
894
895 * sysdep.c: Include <ctype.h>.
896
b892d3c9
DR
8972009-04-27 David Reitter <david.reitter@gmail.com>
898
35f5b128 899 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
900 Remove commented-out code.
901
9d0644c4
JB
9022009-04-26 Johan Bockgård <bojohan@gnu.org>
903
904 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
905
b7053016
JR
9062009-04-25 Jason Rumney <jasonr@gnu.org>
907
908 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
909
4e8231f3
YM
9102009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
911
912 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
913 Swap bytes in short integer if fringe bitmap width > 8.
914
493dcf2c
KH
9152009-04-23 Kenichi Handa <handa@m17n.org>
916
917 * xfaces.c (Fx_list_fonts): If a font size is specified in
918 PATTERN, set it in returned scalable fonts.
919
401e9e57
CY
9202009-04-22 Chong Yidong <cyd@stupidchicken.com>
921
708e05dc
CY
922 * keyboard.c (Fset_input_meta_mode): Doc fix.
923
924 * dispnew.c (Fsend_string_to_terminal): Doc fix.
925
926 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc
927 fixes.
928
929 * coding.c (Fterminal_coding_system): Doc fix.
930
931 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
932 (Fx_display_pixel_height, Fx_display_planes)
933 (Fx_display_color_cells, Fx_server_max_request_size)
934 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
935 (Fx_display_mm_height, Fx_display_mm_width)
936 (Fx_display_backing_store, Fx_display_visual_class)
937 (Fx_display_save_under, Fx_close_connection, Fx_synchronize): Doc
938 fixes, replacing "terminal id" with "terminal object".
939 (check_x_display_info): Handle terminal objects instead of
940 terminal ids.
941
401e9e57
CY
942 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
943 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
fdc496e7
CY
944 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions): Doc
945 fixes, replacing "terminal id" with "terminal object".
401e9e57 946
df80c7f0
KH
9472009-04-21 Kenichi Handa <handa@m17n.org>
948
5a8f12af 949 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 950 (font_score): Check AVGWIDTH too.
908567ef 951
df80c7f0
KH
952 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
953 worst case.
954 (decode_coding_emacs_mule, decode_coding_iso_2022)
955 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
956 Likewise.
957
705af33f
JR
9582009-04-19 Jason Rumney <jasonr@gnu.org>
959
960 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 961 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
962
963 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
964 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
965 get_phys_cursor_geometry.
966
b71ac3dd 967 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
968 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
969 using get_phys_cursor_geometry.
970
971 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
972 correctly calculated.
973
dc2933eb
JD
9742009-04-19 Jan Djärv <jan.h.d@swipnet.se>
975
976 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar): Use
977 G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
978 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
979 is deprecated.
980
973e7849
AS
9812009-04-18 Andreas Schwab <schwab@linux-m68k.org>
982
983 * font.c (font_put_frame_data): Use xfree instead of free.
984
314d66f4
JB
9852009-04-17 Juanma Barranquero <lekktu@gmail.com>
986
987 * w32font.c (Qja, Qko): Remove declarations.
988 (syms_of_w32font): Don't DEFSYM them.
989
cf702558
CY
9902009-04-17 Chong Yidong <cyd@stupidchicken.com>
991
992 * font.c (Qja, Qko): Move definitions here from ftfont.c.
993
994 * font.h (Qja, Qko): Extern them.
995
996 * ftfont.c (Qja, Qko): Remove declarations.
997
998 * xfont.c (Qja, Qko): Remove declarations.
999
b50504f5
KH
10002009-04-17 Kenichi Handa <handa@m17n.org>
1001
bde25748
KH
1002 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
1003 string from a vector to handle Latin-1 characters correctly.
1004
b50504f5
KH
1005 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
1006 entity even if the cache hits.
1007
f4646fff
AS
10082009-04-16 Andreas Schwab <schwab@linux-m68k.org>
1009
1010 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 1011 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 1012
e7deaab0
AS
1013 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
1014 * lisp.h: Adjust prototypes.
1015
0a0e7d49
CY
10162009-04-16 Chong Yidong <cyd@stupidchicken.com>
1017
1018 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
1019 change (Bug#3003).
1020
3c908a57
KH
10212009-04-16 Kenichi Handa <handa@m17n.org>
1022
bd0af90d
KH
1023 * xfont.c (xfont_has_char): Special handling of `ja' and `ko'
1024 adstyle.
1025
1026 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
1027 adstyle.
1028
1029 * ftfont.c (Qja, Qko): Don't make them static.
1030 (enum ftfont_cache_for): New enum.
1031 (fc_charset_table): Undo the previous change.
1032 (ftfont_get_latin1_charset): Delete it.
1033 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache. Set
1034 FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
1035 non-scarable font, try to get AVERAGE_WIDTH.
1036 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
1037 Change ft_face_cache from a list of a hash-table. Don't check
1038 `ja' and `ko' adstyle here.
1039 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
1040 FTFONT_CACHE_FOR_CHARET.
1041 (ftfont_get_charset): Undo the previous change.
1042 (ftfont_open): Call ftfont_lookup_cache with
1043 FTFONT_CACHE_FOR_FACE.
1044 (ftfont_close): Likewise.
1045 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
1046
1047 * font.c (font_sort_entites): Change the meaning of the arg
1048 BEST-ONLY. Don't optimize for VEC of lenght 1.
1049 (font_select_entity): Just return the value of font_sort_entites.
1050
1051 * xfaces.c (merge_face_vectors): Reflect font properties in
1052 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
1053 font_clear_prop if a face attribute doesn't change.
1054
3c908a57
KH
1055 * charset.h (charset_ksc5601): Extern it.
1056
1057 * charset.c (charset_ksc5601): New variable.
1058 (Fdefine_charset_internal): Set charset_ksc5601.
1059 (init_charset_once): Initialize charset_ksc5601 to -1.
1060
d65859c3
DN
10612009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1062
1063 * fileio.c (history_delete_duplicates): Remove unused declaration.
1064
1065 * callint.c (history_delete_duplicates): New declaration.
1066 (Fcall_interactively): Remove command history duplicates when
1067 history_delete_duplicates is true.
1068
3ba010e5
EZ
10692009-04-14 Eli Zaretskii <eliz@gnu.org>
1070
1071 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
1072
06f19b91
KH
10732009-04-14 Kenichi Handa <handa@m17n.org>
1074
1075 * font.c (Ffont_info): Fix docstring. Fix the second element of
1076 the returned value (bug#2949).
1077
2cce8bfc
CY
10782009-04-14 Chong Yidong <cyd@stupidchicken.com>
1079
1080 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
1081
d156542d
KH
10822009-04-14 Kenichi Handa <handa@m17n.org>
1083
1084 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
1085 encoding charset is ascii_compatible.
1086
1087 * charset.c (Fdefine_charset_internal): Make charset
1088 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
1089 code_offset is 0, and covers all ASCII characters.
1090
86fa089e
SM
10912009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1092
1093 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
1094 (ns_string_to_pasteboard_internal):
1095 * nsmenu.m (process_dialog):
1096 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
1097 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
1098 * lisp.h (Fx_load_color_file): Declare.
1099
a8a3728b
KH
11002009-04-13 Kenichi Handa <handa@m17n.org>
1101
1102 * font.c (font_delete_unmatched): Preserve the order of list
1103 elements.
1104 (font_select_entity): Suppress the code to optimize for the same
1105 kind of fonts.
1106 (font_load_for_lface): Get a font that supports at least ASCII
1107 characters.
1108
1109 * ftfont.c (Qja, Qko): New variables.
1110 (fc_charset_table): Delete uniquifier data for iso8859-1.
1111 (ftfont_get_latin1_charset): New function.
1112 (get_adstyle_property): New function.
1113 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
1114 bitmap fonts.
1115 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
1116 Delete iso-8859-1 range from the charset of fonts whose adstyle is
1117 `ko' or `ja'.
1118 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1119 (ftfont_get_charset): For iso8859-1, call
1120 ftfont_get_latin1_charset.
1121 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
1122 property.
1123 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
1124 (syms_of_ftfont): DEFSYM Qja and Qko.
1125
483670b5
KH
11262009-04-09 Kenichi Handa <handa@m17n.org>
1127
12b55765
KH
1128 * charset.c (map_charset_chars): For a charset of `superset'
1129 method, fix calculation of code range.
1130
483670b5
KH
1131 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
1132 from the list of extra properties.
1133 (font_clear_prop): Be sure to delete `:name' font property.
1134
57d3b93b
KH
11352009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1136
b4b2c2ca
YM
1137 * dispnew.c (redraw_overlapping_rows): Fix detection of
1138 overlapping for topmost and bottommost rows.
1139
57d3b93b
KH
1140 * ftfont.c (ftfont_text_extents): Fix calculation of
1141 metrics->descent.
1142
472c3609
JR
11432009-04-06 Jason Rumney <jasonr@gnu.org>
1144
1145 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
1146
ab193662
KH
11472009-04-06 Kenichi Handa <handa@m17n.org>
1148
1149 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
1150
1151 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
1152
0c26f026
KH
11532009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1154
1155 * ftfont.c (ftfont_open): Fix checking of the return value of
1156 FT_Load_Char. Fix setting font->underline_thickness.
1157
e173bbce
CY
11582009-04-04 Chong Yidong <cyd@stupidchicken.com>
1159
1160 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
1161 (Fterminal_parameters, Fterminal_parameter)
1162 (Fset_terminal_parameter): In doc string, refer to terminal
1163 objects rather than terminal ids.
1164
693a2698
EZ
11652009-04-04 Eli Zaretskii <eliz@gnu.org>
1166
1167 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
1168 ret_lim_data. (Bug#2867)
1169
d5221487
CY
11702009-04-03 Chong Yidong <cyd@stupidchicken.com>
1171
1172 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
1173 so they don't get wider than the window, matching 2006-01-23
1174 change to the partner function in xdisp.c (Bug#2800).
1175
223509a3
KH
11762009-04-03 Kenichi Handa <handa@m17n.org>
1177
1178 * print.c (print_object): Make each lowest sub_char_table start a
1179 new line (Bug#2866).
1180
74fcd0b1
KH
11812009-04-02 Kenichi Handa <handa@m17n.org>
1182
1183 * fontset.c (fontset_font): Record no-font when a fontset
1184 explicitly tells not to try another font-specs.
1185
c542407d
SM
11862009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
1187
1188 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
1189
e3869731
KH
11902009-03-30 Kenichi Handa <handa@m17n.org>
1191
d8d2f142
KH
1192 * fontset.c (fontset_from_font): Specify only registry in a
1193 font-spec for all characters supported by that registry.
1194
e3869731
KH
1195 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
1196 even if HAVE_M17N_FLT is not defined.
1197
5da5f805
CY
11982009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
1199
1200 * ftfont.c: Conditionalize prototyping and use of
1201 ftfont_variation_glyphs.
1202
ab226c50
SM
12032009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1204
9628fed7
SM
1205 * frame.c (delete_frame): Work around compiler bug.
1206
1207 * editfns.c (general_insert_function): Adjust to insdel.c changes.
1208 * insdel.c (prepare_to_modify_buffer, signal_before_change):
1209 Some more EMACS_INT.
1210 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
1211
1212 * xdisp.c (dump_glyph): Fix typo.
1213
ae19ba7c
SM
1214 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
1215 (adjust_markers_gap_motion, adjust_markers_for_delete)
1216 (adjust_markers_for_insert, adjust_point)
1217 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
1218 (make_gap, copy_text, count_size_as_multibyte, insert)
1219 (insert_and_inherit, insert_before_markers)
1220 (insert_before_markers_and_inherit, insert_1)
1221 (count_combining_before, count_combining_after, insert_1_both)
1222 (insert_from_string, insert_from_string_before_markers)
1223 (insert_from_string_1, insert_from_gap, insert_from_buffer)
1224 (insert_from_buffer_1, adjust_after_replace)
1225 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
1226 (replace_range_2, del_range, del_range_1, del_range_byte)
1227 (del_range_both, del_range_2, modify_region)
1228 (prepare_to_modify_buffer, signal_before_change)
1229 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
1230 for buffer positions and sizes.
1231 * lisp.h: Adjust prototypes accordingly.
1232
1233 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
1234 (non_regular_inserted, non_regular_nbytes, read_non_regular)
1235 (Finsert_file_contents): Use EMACS_INT for buffer positions.
1236
ab226c50
SM
1237 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
1238
46dfb8fb
JD
12392009-03-27 Jan Djärv <jan.h.d@swipnet.se>
1240
1241 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
1242 lines and columns so we keep the same pixel height and width.
1243
1244 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
1245 the property _NET_WM_STATE has changed.
46dfb8fb
JD
1246 (x_handle_net_wm_state): New function to update frame parameter
1247 fullscreen.
1248 (x_term_init): Initialize atoms for _NET_WM_STATE.
1249
1250 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
1251
d347e494
SM
12522009-03-27 Kevin Ryde <user42@zip.com.au>
1253
1254 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
1255 Gpm_GetEvent as an error that justifies closing the filedescriptor.
1256 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
1257 (Fgpm_mouse_stop): Pass that new parameter.
1258 * termhooks.h (close_gpm): Adjust prototype.
1259
84db11d6
SM
12602009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
1261
c95a5008
SM
1262 * lisp.h (Fx_focus_frame): Declare.
1263
84db11d6
SM
1264 * callint.c (Fcall_interactively): For '^' just delegate the work to
1265 handle-shift-selection.
1266 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
1267
0a1958d6
CY
12682009-03-24 Chong Yidong <cyd@stupidchicken.com>
1269
0bfdff23
CY
1270 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
1271
0a1958d6
CY
1272 * data.c (Qinteractive_form): New variable.
1273 (Finteractive_form): Use it.
1274
1275 * eval.c (Fcommandp): Use Qinteractive_form.
1276
58aec0d6
JR
12772009-03-24 Jason Rumney <jasonr@gnu.org>
1278
1279 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
1280 Calculate total size precisely. Decode environment variables
1281 before substituting. (Bug#38)
1282
553dd618
KH
12832009-03-24 Kenichi Handa <handa@m17n.org>
1284
1285 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 1286 encoding (Bug#2722).
553dd618 1287
c39ea606
JD
12882009-03-23 Jan Djärv <jan.h.d@swipnet.se>
1289
1290 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
1291 that gdpy is set.
1292
bc9b2b5e
AM
12932009-03-22 Alan Mackenzie <acm@muc.de>
1294
1295 * callint.c (Finteractive): Clarify the doc string - even
1296 promptless elements need \n separators.
1297
9f995a76
JR
12982009-03-22 Jason Rumney <jasonr@gnu.org>
1299
1300 * w32term.c (syms_of_w32term): Doc fix for
1301 x-use-underline-position-properties.
1302
22749e9a
EZ
13032009-03-21 Eli Zaretskii <eliz@gnu.org>
1304
1305 * w32.c (getpwuid): Change argument type to unsigned.
1306 (struct w32_id): Change type of `rid' member to unsigned.
1307 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
1308 argument ID to unsigned. All callers changed.
1309 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
1310
e00553bf
EZ
13112009-03-20 Eli Zaretskii <eliz@gnu.org>
1312
1313 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
1314 negative, produce a float value.
1315
1316 * dired.c (make_uid, make_gid): New functions.
1317 (Ffile_attributes): Use them to avoid negative UID and GID.
1318
f761d6b6
JB
13192009-03-20 Juanma Barranquero <lekktu@gmail.com>
1320
1321 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
1322 (syms_of_keyboard) <command-hook-internal, input-method-function>:
1323 Fix typos in docstrings.
1324
d507f8d7
KH
13252009-03-19 Kenichi Handa <handa@m17n.org>
1326
1327 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
1328 changed, use font_load_for_lface to get a new font object.
1329 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
1330
1331 * frame.c (x_set_font): Handle the case that ARG is a cons.
1332
c68845e0
GM
13332009-03-19 Glenn Morris <rgm@gnu.org>
1334
1335 * fileio.c (Fsubstitute_in_file_name): Doc fix.
1336
bfa49dd1
CY
13372009-03-19 Chong Yidong <cyd@stupidchicken.com>
1338
1339 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
1340
8458d4c1
KH
13412009-03-19 Kenichi Handa <handa@m17n.org>
1342
1343 * charset.c (load_charset_map_from_file): When a mapfile can't be
1344 loaded, signal an error.
1345
78e7d1fe
EZ
13462009-03-18 Eli Zaretskii <eliz@gnu.org>
1347
1348 * dired.c (Ffile_attributes): Make sure UID and GID are always
1349 positive, even if the value is too large for a positive EMACS_INT.
1350 Doc fix.
1351
1352 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
1353
5da9fdfa
YM
13542009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1355
1356 * xmenu.c (xdialog_show): Move Fredisplay call ...
1357 (Fx_popup_dialog): ... here.
1358
7519c40d
SM
13592009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
1360
1361 * dired.c (file_name_completion): Disable the first optimization just
1362 installed, since it is not implemented correctly.
1363
2cd298e2
SM
13642009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1365
1366 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 1367 only if the entry can affect bestmatch.
2cd298e2
SM
1368 Stop the search early, as Ftry_completion already does.
1369
48d37adf
CY
13702009-03-17 Chong Yidong <cyd@stupidchicken.com>
1371
e10c9c93 1372 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 1373
9286b16a
CY
13742009-03-15 Chong Yidong <cyd@stupidchicken.com>
1375
1376 * keyboard.c (parse_menu_item): Don't display remappings as menu
1377 equivalent bindings (Bug#788).
1378
f7b146dc
JR
13792009-03-15 Jason Rumney <jasonr@gnu.org>
1380
1381 * w32term.h (WM_EMACS_PAINT): New message.
1382 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
1383 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
1384 before passing to lisp thread. (Bug#950)
1385
f761d6b6 13862009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 1387
d93f9575
CY
1388 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
1389 variable as it was never reset.
1390 (ns_term_init): Remove initialization of Lisp-settable defaults
1391 and ns_expand_space.
1392 (-setPanelFromDefaultValues): Remove ns_expand_space.
1393 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
1394 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
1395 i.e. no additional spacing, similar to Carbon port.
1396
d93f9575
CY
1397 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
1398 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 1399
305018ec
JD
14002009-03-14 Jan Djärv <jan.h.d@swipnet.se>
1401
1402 * sound.c (alsa_configure): Remove call to deprecated
1403 snd_pcm_sw_params_set_xfer_align.
1404
f761d6b6 14052009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
1406
1407 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
1408 after clicking in a detached tool bar.
1409 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
1410
46e722a9
SM
14112009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
1412
348db3dd
SM
1413 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
1414 int/Lisp_Object mixup).
46e722a9 1415
a3d16f39
KH
14162009-03-13 Kenichi Handa <handa@m17n.org>
1417
1418 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 1419 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
1420 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
1421 (set_fontset_font): Change ARG to a vector. Handle range_list in
1422 ARG correctly.
1423 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 1424 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
1425 the above change.
1426 (fontset_from_font): Fix previous change.
fe24f56a 1427 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
1428 entry. If FONTSET is the default fontset, don't set the extra
1429 slot of the returning char-table.
1430
b066e6b6
JB
14312009-03-12 Juanma Barranquero <lekktu@gmail.com>
1432
1433 * nsfns.m (Fx_close_connection): Doc fix.
1434 (Fns_do_applescript): Reflow docstring.
1435 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
1436 (Fx_display_pixel_width, Fx_display_pixel_height)
1437 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
1438 Fix typos in docstrings.
1439 (Fns_set_alpha): Fix typos in error messages.
1440
d472514e 14412009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 1442
d472514e 1443 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
1444 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
1445 were used for such events.
1446
d472514e
JB
1447 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
1448 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 1449
d472514e 1450 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
1451 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
1452
fb930676
KH
14532009-03-11 Kenichi Handa <handa@m17n.org>
1454
ff85581a
KH
1455 * font.h (font_open_by_spec): Extern it.
1456
c50b7e98
KH
1457 * font.c (font_open_by_spec): New function.
1458 (font_open_by_name): Use font_open_by_spec.
1459
fb930676
KH
1460 * frame.c (x_set_font): When ARG is a font-object, don't alter the
1461 fontset of the frame.
1462
1463 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
1464 modify the default font of frames that use this fontset.
1465 (num_auto_fontsets): New variable.
1466 (fontset_from_font): Use num_auto_fontsets to decide a fontset
1467 name. Be sure to set FONTSET_ASCII to the correct font name.
1468 (update_auto_fontset_alist): New function.
1469
df4e8455
JB
14702009-03-11 Juanma Barranquero <lekktu@gmail.com>
1471
1472 * makefile.w32-in: Update dependencies.
1473
0a375797
AR
14742009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
1475
1476 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
1477
61313fa3
SM
14782009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
1479
1480 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
1481
b55103fb
CY
14822009-03-10 Chong Yidong <cyd@stupidchicken.com>
1483
1484 * lread.c (Feval_buffer): Doc fix.
1485
dde2559c
KH
14862009-03-09 Kenichi Handa <handa@m17n.org>
1487
1488 * charset.c (Qfile_name_handler_alist): Extern it.
1489 (load_charset_map_from_file): Temporarily bind
1490 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
1491
df4e8455 14922009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 1493
47f588bb
GM
1494 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
1495 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 1496
4ddf94bd
AR
14972009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
1498
4c9bdfc2
AR
1499 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
1500 (x_set_window_size): Change back to calculated method of setting
1501 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
1502 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
1503 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
1504
fe41ae9e
AR
1505 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
1506
4c9bdfc2
AR
1507 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
1508 accelerator in parens under GNUstep.
1509
825d0875
KH
15102009-03-06 Kenichi Handa <handa@m17n.org>
1511
1512 These changes are to detect incorrect composition sequence without
f3b3be74 1513 looking ahead the source. (Bug#2370)
825d0875
KH
1514
1515 * coding.h: Include "composite.h".
1516 (enum compisition_state): New enum.
1517 (struct compisition_status): New struct.
1518 (struct iso_2022_spec): New member cmp_status.
1519 (struct emacs_mule_spec): New struct.
1520 (struct coding_system): New members ctext_extended_segment_len and
1521 embedded_utf_8. Change the union member
1522 spec.emacs_mule_full_support to spec.emacs_mule.
1523
1524 * coding.c (CODING_ISO_CMP_STATUS): New macro.
1525 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 1526 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
1527 (ADD_COMPOSITION_DATA): New arg nbytes.
1528 (emacs_mule_char): New arg cmp_status.
1529 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
1530 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
1531 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
1532 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
1533 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
1534 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
1535 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
1536 (EMACS_MULE_COMPOSITION_END): New macro.
1537 (emacs_mule_finish_composition): New function.
1538 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
1539 (decode_coding_emacs_mule): Avoid long looking ahead while
1540 handling composition.
1541 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
1542 (ENCODE_COMPOSITION_RULE): New macro.
1543 (finish_composition): New function.
1544 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
1545 (DECODE_COMPOSITION_START): New implementation.
1546 (DECODE_COMPOSITION_END): Likewise.
1547 (STORE_COMPOSITION_RULE): New macro.
1548 (decode_coding_iso_2022): Avoid long looking ahead while handling
1549 composition, CTEXT extended segment, and embedded UTF-8.
1550 (setup_coding_system): For a coding of type iso-2022, reset
1551 CODING_ISO_EXTSEGMENT_LEN (coding) and
1552 CODING_ISO_EMBEDDED_UTF_8 (coding).
1553 (get_translation): Delete arguments last_block, from_nchars,
1554 to_nchars. Callers changed.
1555 (produce_chars): Don't modify charbuf. Adjusted for the change of
1556 get_translation.
98a326f7 1557 (produce_composition): Adjust for the new annotation sequence.
825d0875 1558 (handle_composition_annotation): Likewise.
98a326f7 1559 (consume_chars): Adjust for the change of get_translation.
825d0875 1560
ccbc4452
AR
15612009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
1562
4ddf94bd 1563 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 1564
988a7ddb
KH
15652009-03-05 Kenichi Handa <handa@m17n.org>
1566
1567 * font.c (font_select_entity): New function.
1568 (font_find_for_lface): Use font_select_entity to select a font.
1569
1570 * fontset.c (fontset_find_font): If a font found without
a8a3728b 1571 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
1572 font with C restriction.
1573
98a326f7 15742009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 1575
be1bce46 1576 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 1577
10ea2b82
JR
15782009-03-04 Jason Rumney <jasonr@gnu.org>
1579
2c93b248 1580 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 1581 characters that have already been read. (Bug#2569)
2c93b248 1582
10ea2b82
JR
1583 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
1584 Log an error message if check_image_size failed.
1585 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 1586 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 1587
71a0c011
EZ
15882009-03-02 Eli Zaretskii <eliz@gnu.org>
1589
1590 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
1591 when decoding process output.
1592
2f63bba8
RS
15932009-03-01 Richard M Stallman <rms@gnu.org>
1594
1595 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
1596
1597 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
1598
0a9564cb
EZ
15992009-02-28 Eli Zaretskii <eliz@gnu.org>
1600
1601 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
1602 (decode_coding_emacs_mule, decode_coding_iso_2022)
1603 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
1604 (decode_coding_raw_text, decode_coding_charset)
1605 (setup_coding_system, decode_eol, decode_coding, consume_chars):
1606 Honor inhibit-eol-conversion. (Bug #2186)
1607
449148b3
JR
16082009-02-28 Jason Rumney <jasonr@gnu.org>
1609
1610 * coding.c (detect_coding_charset): If not checking latin extra,
1611 fail on characters between 0x80 and 0xA0. (Bug#2354)
1612
a4aee864
EZ
16132009-02-28 Eli Zaretskii <eliz@gnu.org>
1614
1615 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 1616 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 1617
d88bee5a
GM
16182009-02-27 Glenn Morris <rgm@gnu.org>
1619
1620 * callint.c (Finteractive): Doc fix.
1621
a808f22d
KH
16222009-02-27 Kenichi Handa <handa@m17n.org>
1623
1624 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
1625
caf8d60c
CY
16262009-02-27 Chong Yidong <cyd@stupidchicken.com>
1627
1628 * font.c (font_style_to_value): Set value for unknown symbols to
1629 100 instead of 255.
b61137ea
CY
1630 (weight_table, slant_table, width_table): Treat "unspecified" as
1631 the default value.
caf8d60c 1632
1a0de25c
JB
16332009-02-26 Juanma Barranquero <lekktu@gmail.com>
1634
1635 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
1636
8fc45744
JB
16372009-02-25 Juanma Barranquero <lekktu@gmail.com>
1638
107bd7d1
JB
1639 * lread.c (Fload): Stop checking Vloads_in_progress and signal
1640 error as soon as a recursive load is detected.
8fc45744 1641
f097e223
AR
16422009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1643
1644 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
1645 before caching.
1646
8810a12f
KH
16472009-02-24 Kenichi Handa <handa@m17n.org>
1648
1649 * fontset.c (fontset_find_font): Fix the condition for checking
1650 unavailable font.
1651
2c7d1565
GM
16522009-02-24 Glenn Morris <rgm@gnu.org>
1653
1654 * xfaces.c (Finternal_set_font_selection_order): Remove leading
1655 whitespace that confuses documentation.
1656
a20878b6
MB
16572009-02-23 Miles Bader <miles@gnu.org>
1658
1659 * process.c (Flist_system_processes, Fprocess_attributes)
1660 (syms_of_process): Rename `system-process-attributes' to
1661 `process-attributes'.
1662
b3b58c01
AS
16632009-02-22 Andreas Schwab <schwab@linux-m68k.org>
1664
1b3b981b
AS
1665 * coding.h (struct coding_system): Make safe_charsets a pointer to
1666 unsigned char.
1667 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
1668 being 255.
1669 (SAFE_CHARSET_P): Likewise.
1670 (setup_iso_safe_charsets): Properly setup safe_charsets.
1671 (Fdefine_coding_system_internal): Likewise.
1672 (setup_coding_system): Likewise. Remove unneeded casts.
1673 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
1674 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
1675 unneeded casts.
1676
b3b58c01
AS
1677 * insdel.c (del_range_2): Don't modify gap contents when called
1678 from decode_coding_object. (Bug#1809)
1679
0b6f228c
CY
16802009-02-21 Chong Yidong <cyd@stupidchicken.com>
1681
1682 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
1683 Qfont_object.
1684 (Ftype_of): Recognize font objects.
1685
1686 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
1687
1688 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
1689 moved to data.c.
1690
52f8870b
AR
16912009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
1692
1693 * nsterm.m (x_make_frame_invisible): Unset async_visible,
1694 async_iconified. Based on a patch by Christian Lynbech
1695 <christian.lynbech@tieto.com>.
1696 (EmacsView-windowDidMiniaturize:): Unset async_visible.
1697
7087d5e9
GM
16982009-02-20 Glenn Morris <rgm@gnu.org>
1699
1700 * syntax.c (Fskip_chars_forward): Fix doc typo.
1701
41d2ceef
CY
17022009-02-20 Chong Yidong <cyd@stupidchicken.com>
1703
1704 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
1705
1a3b7ca6
CY
17062009-02-19 Chong Yidong <cyd@stupidchicken.com>
1707
1708 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
1709
73cce38d
KH
17102009-02-19 Kenichi Handa <handa@m17n.org>
1711
1712 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 1713 Don't overflow coding->carryover. (Bug#2370)
73cce38d 1714
a51092ee
DN
17152009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
1716
1717 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
1718
c423ecca
KH
17192009-02-18 Kenichi Handa <handa@m17n.org>
1720
1721 * font.c (font_check_otf_features): Fix handling of `nil' element.
1722 (Ffont_spec): Describe :lang and :otf in the docstring.
1723
4c1958f4
AS
17242009-02-16 Andreas Schwab <schwab@suse.de>
1725
1726 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
1727 string.
1728
5704f39a
KH
17292009-02-16 Kenichi Handa <handa@m17n.org>
1730
1731 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 1732 (Bug#1723)
5704f39a 1733
8f0085aa
CY
17342009-02-14 Chong Yidong <cyd@stupidchicken.com>
1735
a057d86a 1736 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
1737
1738 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
1739 (handle_line_prefix): Suppress wrapping of wrap prefixes.
1740
aff01dd9
EZ
17412009-02-14 Eli Zaretskii <eliz@gnu.org>
1742
1743 * msdos.c (MAX_SCREEN_BUF): New macro.
1744 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
1745 Encode the entire run of glyphs sharing the same face, instead of
1746 doing that one glyph at a time (fixes a bug with displaying
1747 double-size characters).
1748
ba301db3
AR
17492009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
1750
1751 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
1752
1753 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
1754 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 1755 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
1756
1757 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 1758 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 1759
51d861de
SM
17602009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
1761
1762 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
1763 invisible areas.
1764
7fed8996
JR
17652009-02-12 Jason Rumney <jasonr@gnu.org>
1766
631ea4fb
JR
1767 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
1768 (add_font_entity_to_list): Call check_face_name even when family
1769 is unspecified.
1770
cb4a3e42
JR
1771 * w32term.c (x_display_pixel_height, x_display_pixel_width):
1772 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 1773 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 1774
7fed8996 1775 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 1776 raster fonts. (Bug#2219)
7fed8996 1777
895416e3
KH
17782009-02-12 Kenichi Handa <handa@m17n.org>
1779
1780 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
1781 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
1782 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 1783 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
1784 (find_automatic_composition): While looking forward and backward,
1785 check static composition. Fix where to stop looking forward.
1786 (composition_adjust_point): Fix checking of static composition.
1787 (Fcomposition_get_gstring): Pay attention to
1dacf998 1788 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
1789
1790 * lisp.h (fast_looking_at): Extern it.
1791
1792 * search.c (fast_looking_at): New function.
1793
51d861de 1794 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
1795 <struct glyph>.u.cmp.to.
1796 (append_composite_glyph): Likewise.
1797
51d861de 1798 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
1799 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
1800 composition.
51d861de 1801 (append_composite_glyph): Adjust for the change of
895416e3
KH
1802 <strcut glyph>.u.cmp.to.
1803
8510724d
JB
18042009-02-11 Juanma Barranquero <lekktu@gmail.com>
1805
1806 * casetab.c (init_casetab_once):
1807 * coding.c (ALLOC_CONVERSION_WORK_AREA):
1808 * font.c (font_update_lface):
1809 * fontset.c (Fnew_fontset):
1810 * ftfont.c (ftfont_drive_otf):
1811 * xfont.c (xfont_open):
1812 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
1813
294fa707
SM
18142009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
1815
1816 * fileio.c (Fwrite_region): !NILP -> CONSP.
1817
b5bfebec
AS
18182009-02-10 Andreas Schwab <schwab@suse.de>
1819
1820 * process.c (send_process): Properly relocate pointer into data
adab88bd 1821 when using encoded data. (Bug#2272)
b5bfebec 1822
cb84a2be
KH
18232009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
1824
1825 * coding.c (detect_coding_charset): Fix previous change.
1826
89e09428
JR
18272009-02-08 Jason Rumney <jasonr@gnu.org>
1828
1829 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 1830 disappeared while hourglass was displayed. (Bug #2193)
89e09428 1831
4470a277
AS
18322009-02-07 Andreas Schwab <schwab@suse.de>
1833
1834 * unexelf.c (unexec): Fix error message.
1835
3175b12a
AR
18362009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
1837
1838 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 1839 when modal window is active. (Bug #2152)
3175b12a
AR
1840 (applicationShouldTerminate:): Remove now-unneeded while loop
1841 around NSRunAlertPanel.
1842
1843 * nsmenu.m (popupSession): New file-global variable.
1844 (pop_down_menu): End the popupSession before closing dialog.
1845 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
1846 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
1847 don't query NSApp for events (just sleep instead).
1848
8434d0b8
EZ
18492009-02-07 Eli Zaretskii <eliz@gnu.org>
1850
51d861de
SM
1851 * coding.c (syms_of_coding) <translation-table-for-input>:
1852 Modify doc string to discourage use for character code unification.
8434d0b8 1853
aa82edfd
CY
18542009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1855
1856 * atimer.c (run_timers): Update pending_atimers.
1857
2d283c7c
CY
18582009-02-06 Chong Yidong <cyd@stupidchicken.com>
1859
eb306cab
CY
1860 * image.c (svg_load_image): Fix last change.
1861
2d283c7c
CY
1862 * xfns.c (Fx_create_frame): Signal an error if no font is
1863 found (Bug#2147).
1864
4d8e170e
JB
18652009-02-05 Juanma Barranquero <lekktu@gmail.com>
1866
1867 * character.c (syms_of_character) <script-representative-chars>:
1868 Fix typo in docstring.
1869
c96169a0
AR
18702009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
1871
1872 * nsmenu.m (pop_down_menu): New function.
1873 (ns_popup_dialog): Call it on unwind.
1874 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
1875 call timer_check() (Bug#2154).
1876 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
1877 handling_signal is set.
1878 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
1879
1880 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G
1881
1882 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
1883
1884 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
1885
51d861de
SM
1886 * keyboard.c (poll_for_input_1, handle_async_input):
1887 Set handling_signal under HAVE_NS.
c96169a0 1888
aacd8ba1
GM
18892009-02-04 Glenn Morris <rgm@gnu.org>
1890
1891 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
1892
4cb75c4b
KH
18932009-02-04 Kenichi Handa <handa@m17n.org>
1894
1895 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
1896
1897 * charset.c (Fchar_charset): New optional arg restriction.
1898
1899 * coding.h (coding_system_charset_list): Extern it.
1900
1901 * coding.c (coding_system_charset_list): New function.
1902
1903 * composite.c: Include coding.h and termhooks.h.
1904 (composition_gstring_p): Fix for the terminal case.
1905 (composition_gstring_width): Likewise.
1906 (fill_gstring_body): Likewise.
1907 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
1908 the frame.
1909 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
1910 is within a composition.
867d4bb3 1911 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
1912
1913 * term.c (encode_terminal_code): Fix handling of composition.
1914 (produce_composite_glyph): For static composition, get pixel_width
1915 from struct composition.
1916
826ba17e
AS
19172009-02-02 Andreas Schwab <schwab@suse.de>
1918
1919 * unexelf.c (unexec): Handle unaligned bss offset.
1920
8ad093db
AR
19212009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
1922
1923 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
1924 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 1925
8ad093db
AR
1926 * keyboard.c (handle_interrupt): Don't call
1927 quit_throw_to_read_char() under NS.
d0a76a6e 1928
8ad093db
AR
1929 * blockinput.h: Remove NS-specific code.
1930
4d18a7a2
DN
19312009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
1932
db878925
DN
1933 * dispnew.c (window_change_signal): Don't try to get the size of a
1934 suspended tty frame.
1935 * term.c (Fresume_tty): Resize if the size has changed while the
1936 tty was suspended.
1937
4d18a7a2
DN
1938 * alloc.c (mark_stack): Properly conditionalize previous change.
1939
8984df7c
JB
19402009-01-30 Juanma Barranquero <lekktu@gmail.com>
1941
1942 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
1943 * w32term.c (w32_read_socket) [SYNC_INPUT]:
1944 Remove; this code is not used on Windows.
1945
75f4f1ac
EZ
19462009-01-30 Eli Zaretskii <eliz@gnu.org>
1947
1948 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
1949 EOLs that also has stray ^M characters.
1950
07a1e794
JB
19512009-01-30 Juanma Barranquero <lekktu@gmail.com>
1952
1953 * atimer.c (run_timers, alarm_signal_handler):
1954 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
1955 * w32inevt.c (w32_console_read_socket):
1956 * w32term.c (w32_read_socket):
1957 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
1958
a8b11cc9
CY
19592009-01-30 Chong Yidong <cyd@stupidchicken.com>
1960
1961 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
1962 Initialize it as a relative filename pattern.
1963 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
1964 (Fcall_process_region): Simplify temp file creation using
1965 temporary-file-directory.
1966
c279587b
EZ
19672009-01-29 Eli Zaretskii <eliz@gnu.org>
1968
1969 * msdos.c: Rename pending_signals to msdos_pending_signals.
1970 (sig_suspender, sigprocmask): Adjust.
1971
a8fe3242
CY
19722009-01-29 Chong Yidong <cyd@stupidchicken.com>
1973
1974 * keyboard.c (pending_signals): New var.
1975 (poll_for_input, input_available_signal, init_keyboard): Set it.
1976 (process_pending_signals): New function.
1977
1978 * lisp.h (QUIT): Check pending_signals instead of
1979 interrupt_input_pending. Use process_pending_signals.
1980
51d861de 1981 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 1982
51d861de 1983 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
1984
1985 * sysdep.c (emacs_write): Use process_pending_signals.
1986
1987 * xterm.c (XTread_socket): Update pending_signals.
1988
1989 * w32term.c (w32_read_socket): Update pending_signals.
1990
1991 * w32inevt.c (w32_console_read_socket): Update pending_signals.
1992
6570a1c4
KH
19932009-01-29 Kenichi Handa <handa@m17n.org>
1994
1995 * xftfont.c (xftfont_has_char): New function.
1996 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
1997
d72a4afa
AR
19982009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1999
2000 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
2001 under GNUstep.
2002 (ns_query_color): New declaration.
2003
2004 * nsterm.m (ns_confirm_quit): New variable.
2005 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
2006 (EmacsApp-applicationShouldTerminate:): Use it.
2007 (EmacsPrefsController): Let user set it.
2008 (ns_query_color): New function.
2009 (ns_defined_color): Use it.
2010 (ns_initialize): Drop.
2011 (ns_term_init): Add two lines from ns_initialize(), and set
2012 input_interrupt_mode to nil.
2013
2014 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 2015 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 2016
9fe78804
KH
20172009-01-28 Kenichi Handa <handa@m17n.org>
2018
2019 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
2020 (fontset_get_font_group): Remember that no font-group is specified
2021 for C.
9fe78804 2022
fa57de36
CY
20232009-01-27 Chong Yidong <cyd@stupidchicken.com>
2024
930600e9
CY
2025 * fns.c (concat): Check for string overflow (bug#1787).
2026
fa57de36
CY
2027 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
2028 Quadruple undo limits (bug#1501).
2029
7179ce7b
KH
20302009-01-27 Kenichi Handa <handa@m17n.org>
2031
2032 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
2033 directly use GT_Get_Char_index.
2034
2035 * xftfont.c (struct xftfont_info): New member `index'.
2036
2037 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 2038 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 2039
5be8fcc0
CY
20402009-01-26 Kenichi Handa <handa@m17n.org>
2041
2042 * fontset.c (fontset_find_font): Fix handling of non-cons return
2043 value of fontset_get_font_group.
2044 (fontset_font): Revert last change.
2045
19ae3e61
JR
20462009-01-26 Jason Rumney <jasonr@gnu.org>
2047
2048 * w32font.c (w32font_list_internal): Return quickly if registry is
2049 unknown. Simplify final return.
2050 (add_font_entity_to_list): Break complex logic down into more
2051 manageable chunks. Move unknown registry check to
2052 w32font_list_internal.
2053
8612b71a
AR
20542009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
2055
2056 Changes to remove Feval calls from GUI under NS.
2057
d8038940
JB
2058 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
2059 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
2060 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
2061
2062 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
2063 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
2064 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
2065 instead of NON_ASCII_KEYSTROKE_EVENT.
2066 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
2067 (EmacsApp-applicationShouldTerminate:): Query user.
2068 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
2069 instead of Feval.
2070
2071 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
2072
2073 * keyboard.c (kbd_buffer_get_event): Check for it.
2074 (keys_of_keyboard): Define lispy keys for
2075 ns-put/unput-working-text.
2076
2077 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
2078 versions.
2079 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
2080
6288ae55
CY
20812009-01-25 Chong Yidong <cyd@stupidchicken.com>
2082
2083 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 2084 setting current_buffer directly. (Bug#2044)
6288ae55 2085
289e7f8f
CY
20862009-01-24 Chong Yidong <cyd@stupidchicken.com>
2087
5ce87308 2088 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 2089 any work. (Bug#1952, bug#1990).
5ce87308 2090
64cc3cf6 2091 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 2092
b3243e6f
AR
20932009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2094
2095 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
2096 (ns_no_defaults): New declaration.
2097 (main): Use it.
e0d2e69a 2098
d900b2af 2099 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 2100
d900b2af 2101 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 2102
d900b2af
AR
2103 * nsterm.m (ns_no_defaults): New variable.
2104 (ns_initialize): Don't read defaults when ns_no_defaults.
2105 (EmacsView-readSelectionFromPasteboard:)
2106 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 2107 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
2108 (ns_dumpglyphs_stretch): New function.
2109 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 2110 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 2111
e0d2e69a
AR
2112 * nsimage.m (setPixmapData:): Set to ignore image DPI.
2113
3ac71f5d
CY
21142009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
2115
2116 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
2117 call for Sparc64.
2118
3fe53a83
AR
21192009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2120
2121 * nsfns.m:
2122 * nsgui.h:
2123 * nsmenu.m:
2124 * nsselect.m:
2125 * nsterm.h:
2126 * nsterm.m: Remove '23' comments that indicated code added during
2127 update from emacs-20 -> emacs-23.
2128
10f87c6f 21292009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
2130
2131 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 2132 ns_alternate_modifier. (Bug#1217)
a3b53a85 2133
c7cef62d
AR
2134 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
2135 Display all shortcuts, including those w/o super modifier.
2136
575fb8bd
AR
2137 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
2138
918b848b
CY
21392009-01-22 Chong Yidong <cyd@stupidchicken.com>
2140
2141 * fileio.c (Vwrite_region_post_annotation_function)
2142 (Vwrite_region_annotation_buffers): New vars.
2143 (build_annotations_unwind): Just reset
2144 Vwrite_region_annotation_buffers.
2145 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
2146 Call write-region-post-annotation-function.
2147 (build_annotations): Add to Vwrite_region_annotation_buffers if
2148 buffer changes.
2149
a39e2539
AR
21502009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2151
2152 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
2153 Tiger.
51d861de
SM
2154 * nsfns.m (ns_do_applescript):
2155 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 2156
35ed44db
AR
21572009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
2158
2159 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
2160
cbe0b5bf
AR
21612009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2162
2163 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 2164
6049d3a0
AR
2165 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
2166
2167 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
2168 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
2169 handle Ctrl-tab. (Bug#1841)
2170 (ns_get_color): Use unsigned long long for scanned hex string value.
2171 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 2172 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 2173 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 2174 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 2175 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 2176 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 2177 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 2178
d3810c21 2179 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 2180 DPI. (Bug#1316)
d3810c21
AR
2181 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
2182 values in onTiger section.
4c7077c3 2183
e301e634
CY
21842009-01-19 Chong Yidong <cyd@stupidchicken.com>
2185
7f82490b
CY
2186 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
2187 Check return value of font_spec_from_name.
64cc3cf6 2188 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
2189
2190 * font.c (font_spec_from_name): Return Qnil if font name could not
2191 be parsed.
2192 (font_parse_name): Treat a `?' character as part of an XLFD.
2193
e301e634
CY
2194 * fns.c (Fsubstring): Doc fix.
2195
1c0db158
KH
21962009-01-19 Kenichi Handa <handa@m17n.org>
2197
51d861de 2198 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
2199 (ftfont_list): Likewise.
2200
acf20901
JB
22012009-01-18 Juanma Barranquero <lekktu@gmail.com>
2202
fff4e459
JB
2203 * dbusbind.c (Fdbus_register_signal):
2204 * process.c (conv_sockaddr_to_lisp):
2205 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
2206
acf20901
JB
2207 * callproc.c (Fgetenv_internal): Doc fix.
2208
e7abcdfb
CY
22092009-01-16 Chong Yidong <cyd@stupidchicken.com>
2210
2211 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
2212 it is not even used.
2213
b60861e6
GM
22142009-01-16 Glenn Morris <rgm@gnu.org>
2215
2216 * font.c (Ffont_variation_glyphs): Silence compiler.
2217
8db52afe
JB
22182009-01-15 Juanma Barranquero <lekktu@gmail.com>
2219
2220 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
2221 Reported by David Robinow <drobinow@gmail.com>.
2222
4cddb209
KH
22232009-01-15 Kenichi Handa <handa@m17n.org>
2224
51d861de 2225 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 2226
f247f67b
JR
22272009-01-14 Jason Rumney <jasonr@gnu.org>
2228
2229 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 2230 never a fontset. (Bug#1562)
f247f67b 2231
f56a4450
KH
22322009-01-14 Kenichi Handa <handa@m17n.org>
2233
2234 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 2235 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 2236
4e99855e
CY
22372009-01-13 Chong Yidong <cyd@stupidchicken.com>
2238
2239 * font.c (font_clear_prop): If clearing the family, clear the font
2240 width index too.
2241
fff4e459 2242 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 2243
24f01470
JB
22442009-01-12 Juanma Barranquero <lekktu@gmail.com>
2245
2246 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
2247 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
2248 functions, use sizeof.
2249
a41240a3
MR
22502009-01-12 Martin Rudalics <rudalics@gmx.at>
2251
2252 * keyboard.c (read_char): Fix case where last_nonmenu_event
2253 returned a bad value with submenus. (Bug#447)
2254
944636b8
CY
22552009-01-12 Chong Yidong <cyd@stupidchicken.com>
2256
2257 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
2258 family, clear the font width index too.
2259
0dad7c6f
JR
22602009-01-11 Jason Rumney <jasonr@gnu.org>
2261
2262 * keyboard.c (cmd_error_internal): Exit when errors occur before
2263 frame creation and not in daemon mode. (Bug#1836)
2264
7c2363af
CY
22652009-01-10 Chong Yidong <cyd@stupidchicken.com>
2266
2267 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
2268 of a display vector, backtrack.
2269 (try_window_reusing_current_matrix): Check glyph type before
2270 referencing charpos member.
2271
97b1b294
EZ
22722009-01-10 Eli Zaretskii <eliz@gnu.org>
2273
2274 Fix Bug #876:
2275
2276 * coding.c (inhibit_null_byte_detection): New variable.
2277 (detect_coding, detect_coding_system): Don't pay attention to null
2278 bytes if inhibit_null_byte_detection is non-zero.
51d861de 2279 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
2280 <inhibit-iso-escape-detection>: Doc fix.
2281
4624b6e3
JR
22822009-01-09 Jason Rumney <jasonr@gnu.org>
2283
2284 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 2285 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
2286 Only report Unicode Plane 2 fonts as unicode-sip.
2287
323b840c
CY
22882009-01-09 Chong Yidong <cyd@stupidchicken.com>
2289
51d861de
SM
2290 * xfaces.c (Fx_font_family_list): Delete function.
2291 Move compatibility version to faces.el.
323b840c 2292
51d861de 2293 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 2294
eba7400d
MR
22952009-01-09 Martin Rudalics <rudalics@gmx.at>
2296
2297 * frame.c (x_set_frame_parameters): Remember requested value for
2298 fullscreen before it's reset by the parameter handler.
2299
4b09796d
GM
23002009-01-09 Glenn Morris <rgm@gnu.org>
2301
2302 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 2303 (last_command_event): ... and update all users.
4b09796d
GM
2304 (last_input_char): For clarity, rename to...
2305 (last_input_event): ... and update all users.
2306 (last-command-char, last-input-char): Move to subr.el as aliases.
2307 * cmds.c, commands.h: Update for last_command_char rename.
2308
14ccea62
CY
23092009-01-08 Chong Yidong <cyd@stupidchicken.com>
2310
51d861de 2311 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 2312
5f004711
JR
23132009-01-08 Jason Rumney <jasonr@gnu.org>
2314
2315 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
2316 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
2317 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
2318 Don't declare.
fff4e459 2319 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
2320 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
2321
b71f6f73
KH
23222009-01-07 Kenichi Handa <handa@m17n.org>
2323
50b06221 2324 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 2325 remember the coding system used for decoding in
50b06221
KH
2326 coding_system (Bug#1039).
2327
b71f6f73 2328 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 2329 breaking the loop. (Bug#870)
b71f6f73
KH
2330 (decode_coding_utf_16, decode_coding_emacs_mule)
2331 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
2332 (decode_coding_charset): Likewise.
2333
56f668f7
MR
23342009-01-05 Martin Rudalics <rudalics@gmx.at>
2335
2336 * frame.c (x_set_frame_parameters): Make sure height (width) get
2337 applied when fullwidth (fullheight) is set. (Bug#1522)
2338
5da9424d
JB
23392009-01-04 Juanma Barranquero <lekktu@gmail.com>
2340
2341 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
2342 (utc_base): Declare as ULONGLONG, not long double.
2343 (convert_time_raw): Delete.
2344 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
2345 (initialize_utc_base): New function.
2346 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
2347 (convert_from_time_t): Use initialize_utc_base; compute result with
2348 64-bit arithmetic.
2349 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
2350
c4605e09
EZ
23512009-01-03 Eli Zaretskii <eliz@gnu.org>
2352
9acef61c 2353 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
2354 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
2355 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
2356 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
2357 [!subprocesses]: Define.
2358 (syms_of_process) [!subprocesses]: Intern and staticpro them.
2359 (Flist_system_processes, Fsystem_process_attributes)
2360 [!subprocesses]: Call list_system_processes and
2361 system_process_attributes instead of returning Qnil.
2362
9acef61c
JB
2363 * dosfns.c (system_process_attributes, list_system_processes):
2364 New functions.
c4605e09
EZ
2365
2366 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
2367
2368 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
2369 Don't use the default (no-op) implementation.
2370
8b7d0a16
JR
23712009-01-03 Jason Rumney <jasonr@gnu.org>
2372
a6d46bc1
JR
2373 * keyboard.c (parse_modifiers_uncached): Wheel events are
2374 clicks (bug#687).
2375
8b7d0a16
JR
2376 * w32term.c (x_query_colors, x_query_color): New functions.
2377
2378 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
2379 (svg_load_image): Cast returned pointers from dynamically loaded
2380 functions. Eliminate W32 specific code.
2381
bfe11752
DN
23822009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
2383
89e2438a
DN
2384 * nsfns.m (x_set_foreground_color, x_set_background_color)
2385 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
2386 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
2387 x_ prefix instead of ns_. Update references.
2388 (syms_of_nsfns): Add a FIXME comment.
2389
2390 * nsterm.m (x_set_cursor_type): New prototype.
2391 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
2392
bfe11752
DN
2393 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
2394 for Solaris instead of incorrectly providing Qutime and Qcutime.
2395
031da700
EZ
23962009-01-02 Eli Zaretskii <eliz@gnu.org>
2397
2398 * w32.c (process_times): Compute sum of utime and stime.
2399 (system_process_attributes): Add Qtime to the alist.
2400
2401 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
2402 and add them to the alist.
2403
2404 * process.c (top level) <Qtime, Qctime>: New variables.
2405 (syms_of_process): staticpro them.
2406 (Fsystem_process_attributes): Add their documentation to the doc
2407 string.
2408
2409 * process.h: Declare Qtime and Qctime.
2410
df23bf08
JR
24112009-01-02 Jason Rumney <jasonr@gnu.org>
2412
9acef61c 2413 * image.c (Qgobject): New symbol.
df23bf08
JR
2414 (syms_of_image): Initialize it.
2415 (init_svg_functions): Load some functions from gobject library.
2416
5bbdf7aa
DN
24172009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
2418
2419 * frame.c (make_terminal_frame): Remove redundant code and useless
2420 block.
2421
63136da6
AS
24222009-01-01 Andreas Schwab <schwab@suse.de>
2423
2424 * process.c (conv_sockaddr_to_lisp): Add workaround for
2425 getsockname bug on BSD.
2426
9ef69046
CY
24272009-01-01 Chong Yidong <cyd@stupidchicken.com>
2428
d6fafbe0
CY
2429 * xfns.c (x_create_tip_frame): Set border width of the X window.
2430
51d861de 2431 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 2432
f9c34147
JR
24332009-01-01 Jason Rumney <jasonr@gnu.org>
2434
9acef61c 2435 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
2436 Don't block input, as per earlier xterm.c changes.
2437
f5497e45
AR
24382008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
2439
2440 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
2441 (ns_appkit_version_int): New function.
2442 (x-server-version): Use ns_appkit_version_int and follow 21+
2443 convention of returning 3 integers.
2444
c19cab20
KH
24452008-12-30 Kenichi Handa <handa@m17n.org>
2446
2447 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
2448 (CHAR_SURROGATE_PAIR_P): New macro.
2449
2450 * font.h (struct font_driver): New member get_variation_glyphs.
2451
9acef61c 2452 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
2453 (Ffont_variation_glyphs): New function.
2454 (syms_of_font): Defsubr it.
2455
2456 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
2457 ftfont_variation_glyphs.
2458 (setup_otf_gstring): New function.
2459 (ftfont_drive_otf): Use it.
2460 (ftfont_shape_by_flt): Handle variation selector.
2461 (ftfont_variation_glyphs): New function.
2462
28cd591f
MR
24632008-12-30 Martin Rudalics <rudalics@gmx.at>
2464
2465 * frame.c (Vemacs_iconified): Remove.
2466
7f714baf
JR
24672008-12-30 Jason Rumney <jasonr@gnu.org>
2468
2469 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 2470 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 2471
9d2d22ab
CY
24722008-12-30 Chong Yidong <cyd@stupidchicken.com>
2473
2474 * indent.c (Fvertical_motion): Don't advance iterator if we have
2475 reseated to the desired position.
2476
2477 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
2478 checking for pos match.
2479
545312c2
KH
24802008-12-30 Kenichi Handa <handa@m17n.org>
2481
1ede3eb6
KH
2482 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
2483 just get the low 8-bit of the code.
2484
545312c2
KH
2485 * font.c (font_intern_prop): Validate str as multibyte.
2486
bd7bbf29
DN
24872008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
2488
31e0750e
DN
2489 * dispextern.h (struct face): Move lface and hash from the middle
2490 of bitfields.
2491
bd7bbf29
DN
2492 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
2493
b5672e7c
DN
24942008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
2495
2496 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
2497 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
2498 instead of intervals.h.
2499
d704470f
AS
25002008-12-26 Andreas Schwab <schwab@suse.de>
2501
2502 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
2503 cons.
2504
54b33868
MR
25052008-12-26 Martin Rudalics <rudalics@gmx.at>
2506
2507 * textprop.c (Qminibuffer_prompt): New variable.
2508 (syms_of_textprop): Initialize it.
2509 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
2510 in minibuffer-prompt face. (Bug#1662)
2511
40b615d6
JR
25122008-12-25 Jason Rumney <jasonr@gnu.org>
2513
2514 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
2515
baae5c2d
JR
25162008-12-24 Jason Rumney <jasonr@gnu.org>
2517
2518 * ralloc.c (r_alloc_reset_variable): New function.
2519
2520 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 2521 record of what points where. (Bug#716)
baae5c2d 2522
a9051c88
DN
25232008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
2524
2525 * minibuf.c (read_minibuf): Follow the non-interactive case when
2526 running as a daemon, before detaching.
2527
8b146312
AS
25282008-12-22 Andreas Schwab <schwab@suse.de>
2529
2530 * buffer.c (init_buffer): Use realloc instead of xrealloc.
2531 * gtkutil.c (free_widget_value): Use xfree instead of free.
2532
56f2de10
MR
25332008-12-22 Martin Rudalics <rudalics@gmx.at>
2534
2535 * frame.c (delete_frame): New function derived from
2536 Fdelete_frame to handle Qnoelisp value for FORCE argument.
2537 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
2538 (Fdelete_frame): Call delete_frame. Remove line from doc-string
2539 saying that FORCE non-nil doesn't run `delete-frame-functions'.
2540 * frame.h: Extern delete_frame.
2541 * window.c (window_loop):
2542 * terminal.c (delete_terminal):
2543 * xterm.c (x_connection_closed):
2544 * xfns.c (Fx_hide_tip):
9acef61c 2545 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 2546
1fc200d6
JR
25472008-12-21 Jason Rumney <jasonr@gnu.org>
2548
2549 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
2550 when character maps to .notdef character.
2551
5e252df2
SM
25522008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
2553
2554 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
2555
99b72cc4
JR
25562008-12-20 Jason Rumney <jasonr@gnu.org>
2557
2558 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 2559 a graphical frame on Windows. (Bug#1325)
99b72cc4 2560
acc49a52
JD
25612008-12-20 Jan Djärv <jan.h.d@swipnet.se>
2562
2563 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
2564
6ea15123
CY
25652008-12-20 Chong Yidong <cyd@stupidchicken.com>
2566
2567 * minibuf.c (Fread_buffer): Doc fix.
2568
b2dab6c8
JR
25692008-12-20 Jason Rumney <jasonr@gnu.org>
2570
54ea0c87 2571 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 2572 server name in UNC paths. (Bug#719)
54ea0c87 2573
b2dab6c8 2574 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 2575 charbuf. (Bug#1035)
b2dab6c8 2576
6d1921be
DN
25772008-12-19 Daniel Engeler <engeler@gmail.com>
2578
2579 * sysdep.c (serial_configure): Fix typo.
2580
53934c98
DN
25812008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
2582
2583 * sysdep.c: Include alloca.h.
f4f634e8
DN
2584 (system_process_attributes): Add implementation for Solaris.
2585
2586 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 2587
06e111a6
DN
25882008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
2589
2590 Reorganize implementation of Flist_system_processes and
2591 Fsystem_process_attributes. No functional changes.
2592 * process.c: Don't #include pwd.h, grp.h and limits.h.
2593 (Flist_system_processes): Just call list_system_processes.
2594 (Fsystem_process_attributes): Just call system_process_attributes.
2595 (procfs_list_system_processes, time_from_jiffies)
2596 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
2597 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
2598
2599 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
2600 (list_system_processes): Rename from
2601 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
2602 Provide a do nothing implementation.
2603 (system_process_attributes): Rename from
2604 procfs_list_system_processes.
2605 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 2606 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
2607
2608 * w32.c (list_system_processes): Rename from
2609 w32_list_system_processes.
2610 (system_process_attributes): Rename from
2611 w32_system_process_attributes.
2612
2613 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
2614
2615 * process.h (w32_list_system_processes)
2616 (w32_system_process_attributes): Remove.
2617 (list_system_processes, system_process_attributes): New
2618 prototypes.
2619
6a705b23
KH
26202008-12-19 Kenichi Handa <handa@m17n.org>
2621
2622 * xfont.c (xfont_decode_coding_xlfd): New function.
2623 (xfont_encode_coding_xlfd): New function.
2624 (xfont_list_pattern): Decode XLFD by iso-8859-1.
2625 (xfont_list): Decode and encode XLFD by iso-8859-1.
2626 (xfont_match): Likewise.
2627 (xfont_list_family): Likewise.
2628 (xfont_open): Likewise.
2629
d66c0241 2630 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
2631 names are utf-8.
2632
d66c0241 2633 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
2634 names are utf-8.
2635
5a130941
JD
26362008-12-18 Jan Djärv <jan.h.d@swipnet.se>
2637
2638 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
2639 changed.
bfd20325
JD
2640 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
2641 clicked on a detached tool bar button.
5a130941 2642
fd95644b
DN
26432008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
2644
2645 * emacs.c (main): Print and error and exit when no data is read
2646 from the pipe.
2647
e6eee6ae
JR
26482008-12-17 Jason Rumney <jasonr@gnu.org>
2649
2650 * w32font.c (w32font_has_char): Always return -1.
2651
a35dd56b
KH
26522008-12-16 Kenichi Handa <handa@m17n.org>
2653
2654 * font.c (font_open_entity): Fix previous change.
2655
0e3635c2
DN
26562008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
2657
2658 * process.c: Include <limits.h>.
2659
d4835507 26602008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
2661
2662 * font.c (font_update_drivers): Fix mistake in reconstructing the
2663 driver list.
2664
26652008-12-16 Chong Yidong <cyd@stupidchicken.com>
2666
2667 * font.c (font_clear_cache): Fix format of font cache data.
2668
e2cbc401
CY
26692008-12-15 Chong Yidong <cyd@stupidchicken.com>
2670
2671 * xftfont.c (xftfont_open): Free Xft font pattern if
2672 XftFontOpenPattern fails.
2673
2674 * xterm.c (x_free_frame_resources): Remove extraneous call to
2675 free_frame_faces.
2676
b131d535
CY
26772008-12-13 Chong Yidong <cyd@stupidchicken.com>
2678
2679 * xterm.c (x_delete_display): Move xim_close_dpy call to
2680 x_delete_terminal.
2681 (x_delete_terminal): Call xim_close_dpy.
2682
e6df5336
JR
26832008-12-13 Jason Rumney <jasonr@gnu.org>
2684
2685 * w32font.c (intern_font_name): New function.
2686 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
2687 (w32font_open_internal, Fx_select_font): Decode font name.
2688 (fill_in_logfont, list_all_matching_fonts): Encode font name.
2689
2690 * w32font.h (intern_font_name): Declare new function.
2691
2692 * w32uniscribe.c (add_opentype_font_name_to_list):
2693 Use intern_font_name.
2694
20d68145
CY
26952008-12-13 Chong Yidong <cyd@stupidchicken.com>
2696
9f2554de
CY
2697 * frame.c (Fdelete_frame): Call free_font_driver_list.
2698
3d9bec9a
CY
2699 * font.c (free_font_driver_list): Implement missing function.
2700
20d68145
CY
2701 * w32term.c (w32_term_init): Don't initialize the image cache
2702 here; it will be done in init_frame_faces.
2703
2704 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
2705 (struct x_display_info): Remove unused member null_pixel. New
2706 member xim_callback_data.
2707
2708 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
2709 (xim_initialize): Save pointer to callback function data.
2710 (xim_close_dpy): Free callback function data. Call XCloseIM,
2711 reverting 2008-11-04 change by David Smith.
2712 (x_term_init): Don't initialize the image cache here; it will be
2713 done in init_frame_faces. Remove ancient "null_pixel" cruft.
2714 (x_delete_display): Free x_dnd_atoms member.
2715
96f9306b
KH
27162008-12-13 Kenichi Handa <handa@m17n.org>
2717
6dec9044
JB
2718 * font.c (font_rescale_ratio): Moved from xfaces.c.
2719 Argument type changed. Handle a font-spec too.
96f9306b 2720 (font_score): Check Vface_font_rescale_alist.
6dec9044 2721 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
2722
2723 * xfaces.c (font_rescale_ratio): Moved to font.c.
2724
8d5b4964
CY
27252008-12-13 Chong Yidong <cyd@stupidchicken.com>
2726
2727 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
2728
e6df5336
JR
27292008-12-12 Jason Rumney <jasonr@gnu.org>
2730
2731 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
2732 Vwindow_system_version to the real w32 major version.
2733
97c6058a
DN
27342008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
2735
2736 * term.c (init_tty): Move setting the terminal name before the
2737 potential user: maybe_fatal.
2738
ec4e88d7
CY
27392008-12-11 Chong Yidong <cyd@stupidchicken.com>
2740
d4835507
JB
2741 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
2742 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 2743
b4233ec9
JR
27442008-12-11 Jason Rumney <jasonr@gnu.org>
2745
8ec71e23 2746 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 2747 SYMBOL_CHARSET. (Bug#547)
8ec71e23 2748
b4233ec9 2749 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 2750 size for surrogates. (Bug#1096, bug#872)
b4233ec9 2751
011a0143
JB
27522008-12-11 Juanma Barranquero <lekktu@gmail.com>
2753
2754 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
2755
3c309f34
JB
27562008-12-11 Juanma Barranquero <lekktu@gmail.com>
2757
2758 * process.c (Fsystem_process_attributes, syms_of_process):
2759 Fix typo in name of Ssystem_process_attributes.
2760 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
2761
fedc6ab5
JB
27622008-12-11 Juanma Barranquero <lekktu@gmail.com>
2763
2764 * syntax.c (Fmodify_syntax_entry): Doc fix.
2765
ba3de0e8
JB
27662008-12-10 Juanma Barranquero <lekktu@gmail.com>
2767
2768 * font.c (Ffont_spec): Move usage to end of docstring.
2769
174f1c74
JR
27702008-12-10 Jason Rumney <jasonr@gnu.org>
2771
2772 * w32font.c (Qcham): New symbol.
2773 (font_supported_scripts): Add cham, and comments for other new
2774 scripts in bitfield from OpenType spec.
9d32f818
JR
2775 (add_font_entity_to_list): Limit unicode-sip fonts to those that
2776 contain characters beyond the bmp.
174f1c74 2777
7b649478
KH
27782008-12-10 Kenichi Handa <handa@m17n.org>
2779
2780 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 2781 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
2782 Qunicode_sip.
2783
2133e2d1
JB
27842008-12-10 Juanma Barranquero <lekktu@gmail.com>
2785
2786 * coding.c (QCdefault_char): Rename from QCdefalut_char.
2787 (Fcoding_system_put): Use QCdefault_char.
2788 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
2789
9af886ee
CY
27902008-12-09 Chong Yidong <cyd@stupidchicken.com>
2791
74d819eb
CY
2792 * xftfont.c (syms_of_xftfont): Fix typo.
2793
4ccfa1c0 2794 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 2795
7c19d3ae
DN
27962008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
2797
2798 * emacs.c (main): Close daemon_pipe on exec.
2799
567826bb
CY
28002008-12-08 Chong Yidong <cyd@stupidchicken.com>
2801
2802 * termchar.h (struct tty): New members termcap_term_buffer and
2803 termcap_strings_buffer.
2804
2805 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 2806 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
2807 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
2808 All callers changed.
2809 (init_tty): Store termcap data and string buffers in new struct
2810 tty members termcap_term_buffer and termcap_strings_buffer.
2811 (delete_tty): Free them.
4ccfa1c0 2812 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 2813
aa96c42b
SZ
28142008-12-07 Seiji Zenitani <zenitani@mac.com>
2815
2816 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 2817 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 2818
b7e1d896
CY
28192008-12-06 Chong Yidong <cyd@stupidchicken.com>
2820
2821 * coding.c (make_conversion_work_buffer): Disable buffer
2822 modification hooks in the work buffer.
2823
b5ec91a5
EZ
28242008-12-05 Eli Zaretskii <eliz@gnu.org>
2825
2826 * process.c (procfs_system_process_attributes): If `nread' has a
2827 negative value, assign zero to it.
2828
a5d2a52b
CY
28292008-12-05 Chong Yidong <cyd@stupidchicken.com>
2830
68c5540b 2831 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 2832
7bf1bb21
KH
28332008-12-05 Kenichi Handa <handa@m17n.org>
2834
2835 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
2836 second character is a combining character.
2837
2fdc7d00
EZ
28382008-12-05 Eli Zaretskii <eliz@gnu.org>
2839
2840 * process.c (procfs_system_process_attributes): Don't use cmd,
2841 cmdsize, and q without initializing them first.
2842
bf6bfba8
JR
28432008-12-04 Jason Rumney <jasonr@gnu.org>
2844
2845 * w32font.c (w32font_draw): Initialize orig_clip before getting
2846 it, and delete it when finished.
2847
a3b1a468
DN
28482008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
2849
2850 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
2851 case when running as a daemon before detaching.
2852
8b8be8eb
JB
28532008-12-03 Juanma Barranquero <lekktu@gmail.com>
2854
805f2638 2855 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 2856
b1bde622
KH
28572008-12-03 Kenichi Handa <handa@m17n.org>
2858
e500c47d
KH
2859 * font.c (font_at): Set `multibyte' at first.
2860
ca516334
KH
2861 * coding.c (decode_coding_charset): Check type of an element of
2862 vector VALIDS.
7bf1bb21 2863 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 2864
4ccfa1c0 2865 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
2866 (font_for_char): Likewise.
2867
1e5ecd37
CY
28682008-12-03 Chong Yidong <cyd@stupidchicken.com>
2869
d5b01609 2870 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
2871 (font_update_lface): Handle fonts with corrupted size specs,
2872 i.e. non-int and non-float.
d5b01609 2873
11e3a6e4 2874 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 2875 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 2876 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 2877
ab06788b
CY
2878 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
2879
1e5ecd37 2880 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 2881 underline_minimum_offset for underline position.
1e5ecd37 2882
63c125ab
DN
28832008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
2884
2885 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
2886
2887 * character.c (c_string_width): Specify the type for LEN.
2888
3a8406e1
KH
28892008-12-03 Kenichi Handa <handa@m17n.org>
2890
4ccfa1c0 2891 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 2892 (decode_coding_utf_8): Likewise.
4ccfa1c0 2893 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 2894 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 2895
651df7d9
CY
28962008-12-02 Chong Yidong <cyd@stupidchicken.com>
2897
2898 * keyboard.c (make_lispy_position): Only use PT if the selected
2899 window is current.
2900
1f625c6c
AS
29012008-12-02 Andreas Schwab <schwab@suse.de>
2902
f7741ce9
AS
2903 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
2904
1f625c6c
AS
2905 * doprnt.c (doprnt1): Fix size of charbuf.
2906
92bc2678
CY
29072008-12-02 Chong Yidong <cyd@stupidchicken.com>
2908
2909 * keyboard.c (timer_check): Revert last change.
2910
93b9e8cc
JB
29112008-12-02 Juanma Barranquero <lekktu@gmail.com>
2912
2913 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
2914
fd7a37d5
JB
29152008-12-01 Juanma Barranquero <lekktu@gmail.com>
2916
2917 * makefile.w32-in: Update dependencies.
2918 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
2919
c115043b
AS
29202008-12-01 Andreas Schwab <schwab@suse.de>
2921
2922 * font.c (register_font_driver): Use xmalloc.
2923 (font_put_frame_data): Likewise.
2924
f5668d2a
CY
29252008-12-01 Chong Yidong <cyd@stupidchicken.com>
2926
860d96be
CY
2927 * xfaces.c (realize_x_face): Make abort condition clearer.
2928
f5668d2a
CY
2929 * gtkutil.c (update_frame_tool_bar): Initialize variable.
2930
379c17e7
CY
29312008-11-30 Chong Yidong <cyd@stupidchicken.com>
2932
2933 * keyboard.c (timer_check): After a timer runs, ensure that the
2934 selected window's buffer is current.
2935
35f36d65
JB
29362008-11-30 Juanma Barranquero <lekktu@gmail.com>
2937
f952c61c
JB
2938 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
2939 It was accidentally restored by the Unicode merge.
2940
35f36d65
JB
2941 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
2942
b23077df
JB
29432008-11-29 Juanma Barranquero <lekktu@gmail.com>
2944
2945 * w32proc.c: Include "coding.h".
2946 (Fw32_short_file_name): Encode filename passed to Windows API.
2947 (Fw32_long_file_name): Encode filename passed to Windows API and
2948 decode back the result. (Bug#1433)
2949
b8ebe9dd
KH
29502008-11-29 Kenichi Handa <handa@m17n.org>
2951
8cc53f96
KH
2952 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
2953 not before accessing it.
2954
b8ebe9dd
KH
2955 * charset.c (Fdefine_charset_internal): After calculating
2956 min_char, max_char, and fastmap, copy the charset structure again.
2957 (encode_char): Fix the previous change.
2958
59bc82c0
SZ
29592008-11-28 Seiji Zenitani <zenitani@mac.com>
2960
2961 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
2962
2963 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
2964
2965 * nsterm.m (x_set_frame_alpha): New function.
2966
32247e3d
EZ
29672008-11-27 Eli Zaretskii <eliz@gnu.org>
2968
2969 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
2970
b003e5ff
JB
29712008-11-27 Juanma Barranquero <lekktu@gmail.com>
2972
2973 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
2974 pointer to check_face_name.
2975
708550f5
KH
29762008-11-27 Kenichi Handa <handa@m17n.org>
2977
2978 * category.h (SET_CATEGORY_SET): Call set_category_set.
2979 (set_category_set): Extern it.
2980
2981 * category.c (hash_get_category_set): New function.
2982 (Fmodify_category_entry): Adjusted for the change of
2983 char_table_ref_and_range. Call hash_get_category_set to get a
2984 category set to store in the table.
2985
2986 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
2987 Funify_charset.
2988
2ae37cf0 2989 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
2990 (DECODE_CHAR): Check if the decoder vector is ready.
2991 (ENCODE_CHAR): Check if the encoder char-table is ready.
2992 (maybe_unify_char): Extern it.
2993
2994 * charset.c (Vchar_unified_charset_table): Delete it.
2995 (inhibit_load_charset_map): New variable.
2996 (temp_charset_work): New variable.
2997 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
2998 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
2999 New macros.
3000 (load_charset_map): Meaning of control_flag changed. If
3001 inhibit_load_charset_map is nonzero, setup a table in
3002 temp_charset_work.
3003 (load_charset): New argument control_flag.
3004 (map_charset_for_dump): New function.
3005 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
3006 map_charset_for_dump.
3007 (Fdefine_charset_internal): If the charset method is MAP, load
3008 mapping tables by calling load_charset.
3009 (Funify_charset): Don't load a mapping table but directly set
3010 Vchar_unify_table.
3011 (maybe_unify_char): New function.
3012 (decode_char): Don't handle the deleted method MAP_DEFERRED.
3013 Handle the case of inhibit_load_charset_map being nonzero.
3014 (encode_char): Don't handle the deleted method MAP_DEFERRED.
3015 Handle the case of inhibit_load_charset_map being nonzero.
3016 (Fclear_charset_maps): Just free temp_charset_work.
3017 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
3018 variable.
3019
3020 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
3021 change of char_table_ref_and_range.
3022 (char_table_ref_and_range): Change the meaning of argument FROM
3023 and TO. Now the caller must provide initial values for *FROM
3024 and *TO.
3025
3026 * fontset.c (fontset_add): Adjusted for the change of
3027 char_table_ref_and_range.
3028 (fontset_get_font_group): Likewise.
3029 (Ffontset_info): Likewise.
3030
3031 * keymap.c (describe_vector): Adjusted for the change of
3032 char_table_ref_and_range. For char-table, put boundary between
3033 non-ASCII and 8-bit characters.
3034
3035 * print.c (print_object): For bool-vector, delete unnecessary
3036 check of ASCII_BYTE_P.
3037
9196133b
JR
30382008-11-26 Jason Rumney <jasonr@gnu.org>
3039
3040 * w32font.c (w32font_open_internal): Don't include external
9acef61c 3041 leading in font height. (Bug#879)
9196133b 3042
9f688acf
GM
30432008-11-26 Glenn Morris <rgm@gnu.org>
3044
3045 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
3046 redefinition with ifdef. (Bug#1383)
3047
90d19aff
AR
30482008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3049
3050 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
3051
4ccfa1c0 30522008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
3053
3054 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
3055 New EmacsView methods.
3056 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
3057 Fixes bug #1048,1357,1414.
3058
30592008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3060
3061 Fix bug #1362.
3062 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
3063 is not an indexed color.
3064 * nsterm.m (free_indexed_color): Add argument checking.
3065 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
3066
e7d5ecb3
CY
30672008-11-24 Chong Yidong <cyd@stupidchicken.com>
3068
3069 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
3070 Document confirm-after-completion value for
3071 minibuffer-completion-confirm.
3072
c285743c
JR
30732008-11-24 Jason Rumney <jasonr@gnu.org>
3074
3075 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
3076 warning.
3077
b0857706
JR
30782008-11-23 Jason Rumney <jasonr@gnu.org>
3079
3080 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
3081 restored before returning.
3082
3083 * w32font.c (check_face_name): New function.
3084 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 3085 fonts. (Bug#642)
b0857706 3086
ee50ff07
MR
30872008-11-22 Martin Rudalics <rudalics@gmx.at>
3088
3089 * buffer.c (Fswitch_to_buffer): Reword and mention new option
3090 confirm-nonexistent-file-or-buffer in doc-string.
3091
b8ff72fa
SM
30922008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
3093
3094 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
3095 Fix copy/paste typo. Add checks.
3096
cee53ed4
KH
30972008-11-21 Kenichi Handa <handa@m17n.org>
3098
3099 * coding.c (detect_coding_iso_2022): Reject invalid composition
3100 sequence.
3101 (DECODE_COMPOSITION_START): If the current source is the last
3102 block, and the current composition doesn't end, regard this
3103 sequence as invalid.
3104 (decode_coding_iso_2022): Handle invalid composition sequence.
3105
f6ef1e65
MR
31062008-11-20 Martin Rudalics <rudalics@gmx.at>
3107
3108 * window.c (coordinates_in_window): Don't return
3109 ON_VERTICAL_BORDER for the rightmost position of a mode/header
3110 line when the window is not the rightmost one. (Bug#1372)
3111
e08b1705
MR
31122008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
3113
3114 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
3115
ad98e89f
EZ
31162008-11-15 Eli Zaretskii <eliz@gnu.org>
3117
3118 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
3119 and bright_bg if noninteractive is non-zero.
3120
fb098a4b
CY
31212008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3122
3123 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
3124 x_draw_glyph_string_background.
3125
3126 * w32term.c (x_draw_glyph_string): Likewise.
3127
ce952b6e
CY
31282008-11-15 Chong Yidong <cyd@stupidchicken.com>
3129
3130 * xterm.c (x_draw_glyph_string): Stop drawing the background of
3131 the next glyph string once past the overhang width.
3132
3133 * nsterm.m (ns_draw_glyph_string): Likewise.
3134
3135 * w32term.c (x_draw_glyph_string): Likewise.
3136
26ea7079
CY
31372008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
3138
3139 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
3140 double file close.
3141
1c33c906
MR
31422008-11-14 Martin Rudalics <rudalics@gmx.at>
3143
3144 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
3145 dedicated status of window before attempting to display another
3146 buffer in it.
3147
8fc29035
JB
31482008-11-14 Juanma Barranquero <lekktu@gmail.com>
3149
3150 * msdos.c (Fmsdos_long_file_names):
3151 (syms_of_msdos) <dos-unsupported-char-glyph>:
3152 * dosfns.c (Fint86): Fix typos in docstrings.
3153
55fb4286
EZ
31542008-11-14 Eli Zaretskii <eliz@gnu.org>
3155
3156 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
3157
3fda0315
KY
31582008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
3159
3160 * puresize.h (BASE_PURESIZE): Increase to 1260000.
3161
7e849c17
CY
31622008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
3163
3164 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
3165
3166 * frame.h: Negative alpha means "don't touch".
3167
3168 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
3169
3170 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
3171
b9fd67bd
DN
31722008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
3173
3174 * hftctl.c:
3175 * chpdef.h:
3176 * acldef.h: Remove files used only for systems no longer supported.
3177
3178 * Makefile.in: Fix .o alphabetical ordering.
3179 (hftctl.o): Remove dependency, file removed.
3180 (keymap.o, print.o): Depend on charset.h.
3181
d5998e03
KH
31822008-11-10 Kenichi Handa <handa@m17n.org>
3183
2ae37cf0 3184 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 3185
be70e183
CY
31862008-11-08 Chong Yidong <cyd@stupidchicken.com>
3187
3188 * dired.c (file_name_completion): If completion_ignore_case is
3189 enabled, ignore case when checking completion-regexp-list.
3190
7cf94eac
EZ
31912008-11-08 Eli Zaretskii <eliz@gnu.org>
3192
3193 * vm-limit.c (get_lim_data): Fix last change.
3194
ee107a89
KH
31952008-11-08 Kenichi Handa <handa@m17n.org>
3196
3197 * character.c (Fget_byte): New function.
3198 (syms_of_character): Defsubr Fget_byte.
3199
5fd15622
CY
32002008-11-07 Chong Yidong <cyd@stupidchicken.com>
3201
3202 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
3203 cursor position is valid after scrolling.
3204
13d62fad
JB
32052008-11-06 Juanma Barranquero <lekktu@gmail.com>
3206
3207 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
3208
a1dd2936
GM
32092008-11-06 Glenn Morris <rgm@gnu.org>
3210
3211 * xterm.c (handle_one_xevent): Don't let popup menus cause
3212 mouse-autoselect-window related window switching. (Bug#1261)
3213
860cd236
CY
32142008-11-04 David Smith <davidsmith@acm.org> (tiny change)
3215
3216 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
3217
653a3150
AS
32182008-11-04 Andreas Schwab <schwab@suse.de>
3219
3220 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
3221
870f5cac
CY
32222008-11-03 Chong Yidong <cyd@stupidchicken.com>
3223
3224 * xfns.c (Fx_wm_set_size_hint): New function.
3225
1e02f3cb
MR
32262008-11-03 Martin Rudalics <rudalics@gmx.at>
3227
3228 * textprop.c (Fprevious_single_char_property_change): Return 0
3229 when there's no change in a string. (Bug#1301)
3230
e630dfc6
MR
32312008-11-02 Martin Rudalics <rudalics@gmx.at>
3232
3233 * frame.c (do_switch_frame): New argument NORECORD passed to
3234 Fselect_window.
3235 (Fselect_frame): New argument NORECORD passed to
3236 do_switch_frame.
3237 (Fset_frame_selected_window): New argument NORECORD passed to
3238 Fselect_frame.
3239 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
3240 in call of do_switch_frame.
3241 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
3242 Handle NORECORD argument in call of Fselect_frame.
3243 * lisp.h (do_switch_frame, Fselect_frame)
3244 (Fset_frame_selected_window): Adjust declarations.
3245 * window.c (select_frame_norecord): New function.
3246 (run_window_configuration_change_hook): Use it and call
3247 Fselect_frame with NORECORD set.
3248 (Fselect_window): Pass NORECORD to Fselect_frame.
3249 (Fset_window_configuration): Handle NORECORD argument in call of
3250 do_switch_frame.
3251 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
3252 Fset_frame_selected_window.
3253 * keyboard.c (command_loop_1): Handle NORECORD in call of
3254 Fselect_frame (currently ifdefd).
3255
9020b223
GM
32562008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
3257
3258 * emacs.c (USAGE2): Untabify.
3259
793ffee8
SM
32602008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
3261
3262 * composite.c (fill_gstring_header): Fix copy/paste typo.
3263
ab6d1131
MR
32642008-10-31 Martin Rudalics <rudalics@gmx.at>
3265
3266 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
3267 (Fother_window): Rename argument and rewrite doc-string.
3268 (select_window_norecord): Fix return value. (Bug#1276)
3269
601a9cf1
JB
32702008-10-30 Juanma Barranquero <lekktu@gmail.com>
3271
3272 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
3273 new frames overriding foreground for tooltips. Based on similar patch
3274 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
3275
813b0652
CY
32762008-10-29 Chong Yidong <cyd@stupidchicken.com>
3277
3278 * emacs.c (Fdaemon_initialized): Initialize nfd.
3279
4414f58f
MR
32802008-10-29 Martin Rudalics <rudalics@gmx.at>
3281
3282 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
3283 (Fwindow_text_height): Clarify doc-strings.
3284 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
3285 doc-string of window-scroll-functions.
3286
ecdcaa09
RS
32872008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
3288
3289 * category.c (syms_of_category): Fix typo in docstring.
3290
23fe745a
JB
32912008-10-28 Juanma Barranquero <lekktu@gmail.com>
3292
3293 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
3294 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
3295 Fix typos in docstrings.
3296
ff808935
DN
32972008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
3298
3299 * emacs.c (daemon_pipe): Make non-static.
3300 (IS_DAEMON): Move definition ...
3301 * lisp.h (IS_DAEMON): ... here.
3302 (daemon_pipe): Declare.
3303 (is_daemon): Remove.
3304 * dispnew.c (init_display): Use IS_DAEMON.
3305
fc012771
SM
33062008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
3307
3308 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
3309 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
3310
3311 * emacs.c (is_daemon): Remove.
3312 (main): Don't set is_daemon.
3313 (IS_DAEMON): New macro.
3314 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 3315 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
3316 parent exits.
3317 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
3318
d8bdbe6f
CY
33192008-10-27 Chong Yidong <cyd@stupidchicken.com>
3320
d1a072bf
CY
3321 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
3322 over-sized glyph, draw it with the default glyph width.
3323
e2e325aa
CY
3324 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
3325 glyph, draw it with the default glyph width.
3326
3327 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
3328 glyph, draw it with the default glyph width.
3329
d8bdbe6f
CY
3330 * xdisp.c (try_scrolling): When computing the distance from the
3331 scroll margin to PT, try moving some distance past the window
3332 bottom before giving up.
3333
7bfac547
MR
33342008-10-27 Martin Rudalics <rudalics@gmx.at>
3335
3336 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
3337 (Fset_window_buffer): Explain in doc-string that a window can be
3338 "strongly" dedicated to its buffer.
3339
4ff029f6
DN
33402008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
3341
3342 * emacs.c (daemon_name): New variable.
3343 (main): Deal with --daemon=SERVER_NAME.
3344 (Fdaemonp): Return a name if one was passed to --daemon.
3345
5790ef40
DN
33462008-10-26 Romain Francoise <romain@orebokech.com>
3347
f9bd0df9 3348 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
3349 (main): Create a pipe before forking, make the parent exit only after
3350 the child has closed its end of the pipe. Move closing the
3351 descriptors ...
3352 (Fdaemon_initialized): ... here. New function.
3353
f5385255
SM
33542008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
3355
4d632321
SM
3356 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
3357 the previous unoptimized table.
3358
f5385255
SM
3359 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
3360 the distinction between non-nil and non-t value of `dedicated'.
3361
6c56a0f3
CY
33622008-10-25 Chong Yidong <cyd@stupidchicken.com>
3363
3364 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 3365 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 3366
fec89261
MR
33672008-10-25 Martin Rudalics <rudalics@gmx.at>
3368
3369 * window.c (Fget_buffer_window, Fdelete_windows_on)
3370 (Freplace_buffer_in_windows): Make buffer argument optional and
3371 rename to buffer_or_name.
3372
34fcddd0
CY
33732008-10-24 Chong Yidong <cyd@stupidchicken.com>
3374
f5385255
SM
3375 * xdisp.c (handle_single_display_spec, handle_display_prop):
3376 Undo 2005-05-16 change.
34fcddd0
CY
3377 (handle_stop): Pop iterator if it's loaded with an empty string.
3378 (get_overlay_strings_1): Don't save iterator if it's loaded with
3379 an empty string (bug#1201).
3380
064766f2
KH
33812008-10-24 Kenichi Handa <handa@m17n.org>
3382
3383 * ftfont.c (ftfont_otf_features): Fix previous change.
3384 (ftfont_otf_capability): Check FeatureList.FeatureCount before
3385 calling ftfont_otf_features.
3386
f9bd0df9 33872008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
3388
3389 * font.c (font_match_p): Fix for the case that a vector of
3390 characters is in script-representative-chars.
3391
1dae9197
MA
33922008-10-24 Michael Albinus <michael.albinus@gmx.de>
3393
3394 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 3395 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
3396 (xd_read_queued_messages): Catch Qdbus_error from the macros.
3397 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
3398 macro. (Bug#1186).
3399
f9bd0df9 34002008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
3401
3402 * s/sol2-10.h: New file.
3403
878a4584
JB
34042008-10-23 Juanma Barranquero <lekktu@gmail.com>
3405
3406 * xdisp.c (fill_glyph_string): Fix typo in source (though the
3407 poor beast has survived 9+ years and the jump from xterm.c!).
3408
cd265ca6
MR
34092008-10-23 Martin Rudalics <rudalics@gmx.at>
3410
3411 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
3412 Reword doc-string.
f5385255 3413 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 3414
472a4dc9
JB
34152008-10-23 Juanma Barranquero <lekktu@gmail.com>
3416
3417 * character.c (syms_of_character) <script-representative-chars>:
3418 <unicode-category-table>: Doc fixes.
3419
159bd5a2
NF
34202008-10-23 Noah Friedman <friedman@splode.com>
3421
3422 * coding.c (make_conversion_work_buffer): Check that
3423 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
3424 Fget_buffer_create.
3425
49f9c344
KH
34262008-10-23 Kenichi Handa <handa@m17n.org>
3427
3428 * font.c (font_add_log): Check the values of extra properties.
3429
12bb3111
MR
34302008-10-22 Martin Rudalics <rudalics@gmx.at>
3431
3432 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
3433 Reword doc-string.
3434 (Fset_window_parameter): Use NILP.
3435 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 3436 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 3437
bbeb4e99
JB
34382008-10-22 Juanma Barranquero <lekktu@gmail.com>
3439
3440 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
3441
34422008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
3443
3444 * nsfns.m (ns_appkit_version): New function.
3445 (x-server-version): Use it.
3446 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
3447 (x-server-vendor): Don't check_ns().
3448
3449 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
3450
a9b555d3
JB
34512008-10-22 Juanma Barranquero <lekktu@gmail.com>
3452
3453 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
3454 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
3455
4626499f
KH
34562008-10-22 Kenichi Handa <handa@m17n.org>
3457
e3681952
KH
3458 * syntax.c (scan_words): Call word_boundary_p instead of comparing
3459 scripts.
3460
4626499f
KH
3461 * category.c (word_boundary_p): Check scripts instead of charset.
3462 Handle nil value in word-separating-categories and
3463 word-combining-categories.
3464 (syms_of_category): Fix docstrings of word-separating-categories
3465 and word-combining-categories.
3466
1560f91a
EZ
34672008-10-21 Eli Zaretskii <eliz@gnu.org>
3468
3469 * coding.c (Fencode_coding_region, Fdecode_coding_region)
3470 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
3471
f4668441
MR
34722008-10-21 Martin Rudalics <rudalics@gmx.at>
3473
3474 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
3475 Rename arg "buffer" to "buffer_or_name".
3476 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
3477 it optional.
3478 (no_switch_window): Remove since the return value is not used.
a9b555d3 3479 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
3480 Consider window as dedicated when Fwindow_dedicated_p returns a
3481 non-nil value.
3482 * lisp.h: Remove prototype for no_switch_window.
3483
fd75ddb2
JD
34842008-10-21 Jan Djärv <jan.h.d@swipnet.se>
3485
3486 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 3487 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 3488
07295713
KH
34892008-10-21 Kenichi Handa <handa@m17n.org>
3490
3491 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
3492 check Vlatin_extra_code_table.
3493
712adc82
EZ
34942008-10-20 Eli Zaretskii <eliz@gnu.org>
3495
3496 * fileio.c (Fset_file_modes): Doc fix.
3497
f549eb0b
MA
34982008-10-19 Michael Albinus <michael.albinus@gmx.de>
3499
3500 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
3501 in arrays.
3502
aac0c6e3
MR
35032008-10-19 Martin Rudalics <rudalics@gmx.at>
3504
3505 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
3506 Mention kill-buffer in doc-string.
3507 (Fset_window_buffer): Reinsert tem check removed in last commit.
3508 (Fenlarge_window, Fshrink_window): Have argument names and
3509 doc-string follow Elisp manual more closely.
3510
35112008-10-18 Eli Zaretskii <eliz@gnu.org>
3512
3513 * fileio.c (Fset_file_modes): Doc fix.
3514
35152008-10-18 Martin Rudalics <rudalics@gmx.at>
3516
3517 * window.c (Fwindow_width, Fset_window_start)
3518 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
3519 (Fdelete_windows_on, Freplace_buffer_in_windows):
3520 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
3521 (Fwindow_dedicated_p): Make window argument optional.
3522 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
3523 (Fset_window_buffer): Respect any non-nil dedicated value for
3524 window. Rename "buffer" argument to "buffer_or_name".
3525
35262008-10-18 Ulrich Mueller <ulm@gentoo.org>
3527
3528 * m/sh3.h: New file, machine description for SuperH.
3529
35302008-10-17 Martin Rudalics <rudalics@gmx.at>
3531
3532 * window.c (Fsplit_window): Rename arg horflag to horizontal.
3533
35342008-10-17 Kenichi Handa <handa@m17n.org>
3535
3536 * ftfont.c (ftfont_otf_features): Fix indexing
3537 gsub_gpos->FeatureList.Feature. Check the validity of indices.
3538
35392008-10-16 Magnus Henoch <mange@freemail.hu>
3540
3541 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
3542 (Fdbus_call_method_asynchronously): Ditto.
3543 This change makes C-h f display the argument list.
3544
35452008-10-16 Chong Yidong <cyd@stupidchicken.com>
3546
3547 * fileio.c (Fexpand_file_name): Doc fix.
3548
3549 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
3550 of :foreground and :background equivalent to unspecified (20.x
3551 compatibility).
3552
35532008-10-15 Eli Zaretskii <eliz@gnu.org>
3554
3555 * buffer.c (syms_of_buffer): Doc fix.
3556
35572008-10-14 Kenichi Handa <handa@m17n.org>
3558
3559 * font.c (font_clear_prop): When clearing font width, clear the
3560 average width field too.
3561
35622008-10-12 Andreas Schwab <schwab@suse.de>
3563
3564 * ftfont.c (ftfont_shape_by_flt): Make static.
3565 * ftfont.h (ftfont_shape_by_flt): Don't declare.
3566
3567 * font.c: Don't include <m17n-flt.h>.
3568
35692008-10-10 Eli Zaretskii <eliz@gnu.org>
3570
3571 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
3572
35732008-10-09 Eli Zaretskii <eliz@gnu.org>
3574
3575 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
3576 away code.
3577
35782008-10-09 Chong Yidong <cyd@stupidchicken.com>
3579
3580 * dispnew.c (update_text_area): Avoid looping due to large glyph
3581 overhangs (bug#1070).
3582
35832008-10-09 Kenichi Handa <handa@m17n.org>
3584
3585 * fontset.c (face_for_char): If face->fontset is negative, just
3586 return ascii_face.
3587
f5385255
SM
3588 * font.c (font_delete_unmatched): Fix previous change.
3589 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
3590
35912008-10-09 Martin Rudalics <rudalics@gmx.at>
3592
3593 * frame.c (Fraise_frame): On text-only terminals select frame in
3594 order to make it visible. (Bug#1061)
3595
35962008-10-08 Chong Yidong <cyd@stupidchicken.com>
3597
3598 * fontset.c (fontset_find_font): Check frame validity.
3599
36002008-10-07 Chong Yidong <cyd@stupidchicken.com>
3601
a9b555d3 3602 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
3603 (xg_display_close): Allow Emacs to close all displays (bug#985).
3604
36052008-10-06 Andreas Schwab <schwab@suse.de>
3606
f5385255 3607 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
3608
36092008-10-06 Chong Yidong <cyd@stupidchicken.com>
3610
f5385255 3611 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 3612
a9b555d3 3613 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
3614
3615 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
3616 during initialization.
3617
36182008-10-04 Eli Zaretskii <eliz@gnu.org>
3619
3620 * xdisp.c (redisplay_internal): If frame switched, redisplay the
3621 whole thing on MSDOS frames as well as on a TTY.
3622
3623 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
3624 well as for TTY.
3625 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
3626 well as on a TTY.
3627
3628 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
3629 as well as for TTY.
3630
3631 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
3632
3633 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
3634 MSDOS frames as well.
3635
36362008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
3637
3638 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
3639 correct arguments.
b71ac3dd 3640 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
3641
36422008-10-03 Glenn Morris <rgm@gnu.org>
3643
3644 * emacs.c (USAGE1): Add --daemon.
3645
36462008-10-02 Eli Zaretskii <eliz@gnu.org>
3647
3648 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
3649 100, so it's in percents as advertised.
3650
36512008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
3652
3653 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
3654 (ns_output.current_cursor, ns_output.desired_cursor)
3655 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
3656 (FRAME_NEW_CURSOR_COLOR): Remove.
3657
3658 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 3659 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
3660 enumeration (HOLLOW_BOX_CURSOR, etc.).
3661
3662 * nsterm.m (ns_frame_rehighlight): Remove commented code.
3663 (draw_window_cursor): Simplify code.
f5385255
SM
3664 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
3665 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 3666 updates manually.
a9b555d3
JB
3667 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
3668 Use core Emacs cursor types.
aac0c6e3 3669
b8ff72fa 3670 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
3671
36722008-10-02 Martin Rudalics <rudalics@gmx.at>
3673
3674 * process.c (Faccept_process_output): Fix doc-string.
3675
36762008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
3677
3678 * gmalloc.c (__sbrk): Also define for uClibc.
3679
3680 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
3681 for uClibc.
3682
36832008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3684
3685 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
3686 styles.
3687 (nsfont_open): Reenable the cache.
3688
36892008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3690
3691 * font.c (font_matching_entity): Reflect ATTRS in font selection.
3692 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
3693
36942008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
3695
3696 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
3697 a suspended terminal.
3698
36992008-09-30 Michael Albinus <michael.albinus@gmx.de>
3700
3701 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
3702
37032008-09-30 Eli Zaretskii <eliz@gnu.org>
3704
3705 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
3706
37072008-09-30 Chong Yidong <cyd@stupidchicken.com>
3708
3709 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
3710 in a continued line coincides with a line beginning.
3711
37122008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3713
3714 * nsfont.m (nsfont_trait_distance): Fix bug.
3715 (nsfont_list): Return a list rather than a vector (syncs with Handa
3716 changes of 2008-05-14).
3717 (nsfont_open): Improve logging.
3718
37192008-09-29 Andreas Schwab <schwab@suse.de>
3720
3721 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
3722
37232008-09-28 Martin Rudalics <rudalics@gmx.at>
3724
3725 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
3726 name as char-resolve-modifiers.
3727 Reported by: Markus Triska <markus.triska@gmx.at>
3728
37292008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
3730
3731 * dispnew.c (init_display): Return earlier when running as a daemon.
3732
37332008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3734
3735 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
3736
37372008-09-27 Eli Zaretskii <eliz@gnu.org>
3738
3739 * composite.c (Fcomposition_get_gstring)
3740 (Fcompose_region_internal, Fcompose_string_internal)
3741 (Ffind_composition_internal): Doc fix.
3742 (syms_of_composite) <compose-chars-after-function>: Doc fix.
3743 (syms_of_composite) <auto-composition-function>: Doc fix.
3744 (syms_of_composite) <composition-function-table>: Doc fix.
3745
37462008-09-25 Chong Yidong <cyd@stupidchicken.com>
3747
3748 * search.c (wordify): New argument for lax word-ends.
3749 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
3750
37512008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
3752
3753 * lisp.h (is_daemon): Declare.
3754 * dispnew.c (init_display): Do not try to initialize the terminal
3755 when running as a daemon.
3756
37572008-09-22 Chong Yidong <cyd@stupidchicken.com>
3758
3759 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
3760 x_display_pixel_height.
3761
37622008-09-22 Martin Rudalics <rudalics@gmx.at>
3763
3764 * undo.c (record_point): Don't call Fundo_boundary for first
3765 change. (Bug#731)
3766
37672008-09-22 Juanma Barranquero <lekktu@gmail.com>
3768
3769 * emacs.c (Fdaemonp): Doc fix.
3770
37712008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
3772
3773 * emacs.c (main): Place #ifdef in the proper place.
3774
37752008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
3776
3777 * emacs.c (standard_args): Add --daemon.
3778 (main): Disconnect from the terminal when --daemon is passed.
3779 (is_daemon): New variable.
3780 (Fdaemonp): New function.
3781 (syms_of_emacs): Defsubr it.
3782
37832008-09-20 Chong Yidong <cyd@stupidchicken.com>
3784
3785 * xdisp.c (get_next_display_element): Handle string display
3786 correctly when checking for the end of a box run.
3787
37882008-09-20 Glenn Morris <rgm@gnu.org>
3789
3790 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
3791 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
3792 (Frename_file): Avoid copying to trash if a rename involves
3793 a delete. (Bug#964).
3794
37952008-09-20 Eli Zaretskii <eliz@gnu.org>
3796
3797 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
3798 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
3799 frames as well as termcap frames.
3800 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
3801 get_named_tty.
3802
38032008-09-19 Eli Zaretskii <eliz@gnu.org>
3804
3805 * process.c (procfs_system_process_attributes): Fix cmdline in
3806 case /proc/PID/cmdline is empty.
3807
3808 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
3809 x_display_pixel_height.
3810
38112008-09-19 Juanma Barranquero <lekktu@gmail.com>
3812
3813 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
3814
3815 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
3816 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
3817
38182008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
3819
3820 * dispextern.h (struct it): Move line_wrap away from the middle of
3821 bitfields. Move voffset in struct iterator_stack_entry after the
3822 bitfields. Move tab_width near after another short.
3823
38242008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
3825
3826 * frame.h (struct frame): Move alpha from the middle of bitfields.
3827
3828 * window.h (struct window): Move frozen_window_start_p after the
3829 rest of the bitfields to reduce padding.
3830
38312008-09-18 Chong Yidong <cyd@stupidchicken.com>
3832
3833 * xterm.h (x_display_info): Remove `height' and `width' members.
3834
3835 * nsterm.h (ns_display_info): Remove `height' and `width' members.
3836
3837 * w32term.h (w32_display_info): Remove `height', `width',
3838 `height_in', and `width_in' members.
3839
b8ff72fa
SM
3840 * xterm.c (x_display_pixel_height, x_display_pixel_width):
3841 New functions.
aac0c6e3
MR
3842 (x_calc_absolute_position): Use them.
3843 (x_term_init): Omit removed `height' and `width' members.
3844
b8ff72fa
SM
3845 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3846 New functions.
aac0c6e3
MR
3847 (w32_read_socket, x_calc_absolute_position): Use them.
3848 (w32_initialize_display_info, w32_term_init): Omit removed members
3849 of w32_display_info.
3850
b8ff72fa
SM
3851 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
3852 New functions.
3853 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 3854
b8ff72fa
SM
3855 * xterm.c (x_display_pixel_height, x_display_pixel_width):
3856 New functions.
aac0c6e3
MR
3857 (x_calc_absolute_position): Use them.
3858 (x_term_init): Omit removed `height' and `width' members.
3859
3860 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
3861 (compute_tip_xy):
3862 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
3863 * xmenu.c (menu_position_func): Use x_display_pixel_height and
3864 x_display_pixel_width.
3865
38662008-09-18 Kenichi Handa <handa@m17n.org>
3867
3868 * composite.c (fill_gstring_header): Don't check FROM and TO here.
3869 (composition_compute_stop_pos): Fix handling of static composition.
3870 (Fcomposition_get_gstring): Check FROM and TO at first.
3871
38722008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
3873
46e722a9 3874 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
3875 mixup (YAILOM).
3876
38772008-09-17 Chong Yidong <cyd@stupidchicken.com>
3878
3879 * indent.c (Fvertical_motion): Use position reported by iterator
3880 instead of PT for determining screen motion (bug#943).
3881
38822008-09-17 Romain Francoise <romain@orebokech.com>
3883
3884 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
3885
38862008-09-17 Kenichi Handa <handa@m17n.org>
3887
3888 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
3889
3890 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
3891 if necessary.
3892
38932008-09-16 Kenichi Handa <handa@m17n.org>
3894
3895 * coding.c (make_conversion_work_buffer): Avoid calling
3896 Fget_buffer_create if it is not necessary.
3897
38982008-09-15 Martin Rudalics <rudalics@gmx.at>
3899
3900 * window.c (Fselect_window): Don't update window_select_count and
3901 use_time when norecord is not nil.
3902
39032008-09-14 Kenichi Handa <handa@m17n.org>
3904
3905 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
3906 specpdl_ptr.
3907
39082008-09-12 Kenichi Handa <handa@m17n.org>
3909
3910 * indent.c (scan_for_column): Don't handle automatic composition
3911 if the current buffer is not associated with a window.
3912
3913 * composite.c (composition_reseat_it): If the current buffer is
3914 not associated with a window, ignore the automatic composition.
3915 (find_automatic_composition): Likewise.
3916
39172008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3918
3919 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
3920 (Fgpm_mouse_stop): Use it.
3921 * termhooks.h (close_gpm): Declare.
3922 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
3923 connection if Gpm_GetEvent fails.
3924
3925 * window.c (set_window_buffer): Always preserve current-buffer.
3926
39272008-09-12 Glenn Morris <rgm@gnu.org>
3928
3929 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
3930
39312008-09-11 Glenn Morris <rgm@gnu.org>
3932
3933 * charset.c (charset-map-path): Doc fix.
3934
39352008-09-10 Kenichi Handa <handa@m17n.org>
3936
3937 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
3938
3939 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
3940 compose a grapheme cluster with the preceding base glyph.
3941
3942 * composite.c (composition_compute_stop_pos): Fix previous change.
3943 Reset cmp_it->id to -1 at first.
3944
39452008-09-10 Glenn Morris <rgm@gnu.org>
3946
3947 * Makefile.in (character.o, chartab.o): Fix config.h typo.
3948
39492008-09-09 Chong Yidong <cyd@stupidchicken.com>
3950
3951 * keyboard.c (read_key_sequence): Reapply translation maps when
3952 switching keyboards.
3953
39542008-09-09 Kenichi Handa <handa@m17n.org>
3955
3956 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
3957 characters.
3958
3959 * composite.c (FORWARD_CHAR): Fix calculation
3960 of (POSITION).pos_byte.
3961 (composition_compute_stop_pos): Limit the search of composition to
3962 at most 500 characters ahead. If we reach the limit or find a
3963 newline, set cmp_it->ch to -2 and return 0.
3964 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
3965
39662008-09-08 Kenichi Handa <handa@m17n.org>
3967
3968 * indent.c (Fvertical_motion): Be sure to set
3969 it_overshoot_expected if it.cmp_it.id is non-negative.
3970
39712008-09-07 Andreas Schwab <schwab@suse.de>
3972
3973 * callproc.c (Fcall_process): Don't hold references to string data
3974 across garbage collection. Move initialisation of new_argv down
3975 to avoid compiler bug.
3976
39772008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
3978
3979 * process.c (Fsystem_process_attributes): Doc fix.
3980
39812008-09-07 Chong Yidong <cyd@stupidchicken.com>
3982
3983 * callproc.c (Fcall_process): Canonicalize current directory name.
3984
3985 * xdisp.c (move_it_to): When moving by vpos, ensure that the
3986 iterator advances to the next line if the current line ends in a
3987 continued tab.
3988
39892008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
3990
3991 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
3992 member to point to cmp_from.
3993
3994 * xdisp.c: Doc fix for references to gidx data member.
3995
39962008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
3997
3998 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
3999
40002008-09-07 Kenichi Handa <handa@m17n.org>
4001
4002 * composite.c (FORWARD_CHAR): Check STOP after
4003 incrementing (POSITION).pos.
4004
40052008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4006
4007 * process.c (Fsystem_process_attributes): Doc fix.
4008
40092008-09-06 Chong Yidong <cyd@stupidchicken.com>
4010
4011 * keyboard.c (Ftop_level): Doc fix.
4012
40132008-09-06 Eli Zaretskii <eliz@gnu.org>
4014
4015 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
4016 minibuffer, don't let lower part of menu invade the echo area.
4017
4018 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
4019 "char *q" to access menu text and advance through it. Revert the
4020 change that displayed ">" instead of ASCII character 0x10.
4021
40222008-09-05 Eli Zaretskii <eliz@gnu.org>
4023
4024 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
4025 toggle boxes and radio buttons on MS-DOS as well.
4026
40272008-09-05 Kenichi Handa <handa@m17n.org>
4028
4029 * composite.c (autocmp_chars): Check lookback count.
4030 (composition_compute_stop_pos): Set cmp_it->lookback.
4031 (composition_reseat_it): Check lookback count.
4032 (struct position_record): New struct.
4033 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
4034 (find_automatic_composition): New function.
4035 (composition_adjust_point): Use find_automatic_composition.
4036
4037 * dispextern.h (struct composition_it): New member lookback.
4038
40392008-09-02 Chong Yidong <cyd@stupidchicken.com>
4040
4041 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
4042 if moving by a single line.
4043
40442008-09-02 Andreas Schwab <schwab@suse.de>
4045
4046 * xterm.c (x_delete_display): Fix merge error.
4047
4048 * fileio.c (Fexpand_file_name): Remove unused variables.
4049
40502008-09-02 Eli Zaretskii <eliz@gnu.org>
4051
4052 * fileio.c (Fexpand_file_name): Copy argument `name' into local
4053 storage on all platforms, not just on DOS_NT.
4054
40552008-09-02 Jason Rumney <jasonr@gnu.org>
4056
b8ff72fa
SM
4057 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
4058 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
4059
40602008-09-01 Chong Yidong <cyd@stupidchicken.com>
4061
4062 * xfaces.c (Finternal_set_alternative_font_family_alist)
4063 (Finternal_set_alternative_font_registry_alist): Properly copy
4064 entire alist structure.
4065
40662008-09-01 Kenichi Handa <handa@m17n.org>
4067
d66c0241 4068 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 4069 representative chars of the script is a vector.
d66c0241
JB
4070 (ftfont_list): Handle the case where the representative chars of
4071 the script is a vector.
aac0c6e3
MR
4072
4073 * character.c (syms_of_character): Docstring of
4074 script-representative-chars fixed.
4075
40762008-08-31 Eli Zaretskii <eliz@gnu.org>
4077
4078 * msdos.c (BUILD_CHAR_GLYPH): New macro.
4079 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
4080 the menu. Allocate larger buffer for `text', to account for
4081 possible ^C characters.
4082
40832008-08-31 Martin Rudalics <rudalics@gmx.at>
4084
4085 * xdisp.c (prepare_menu_bars): Don't call
4086 Vwindow_size_change_functions with arg Qt.
4087
40882008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
4089
4090 * font.h (font_range):
4091 * fileio.c (report_file_error):
46e722a9
SM
4092 * composite.c (composition_update_it): Yet another int/Lisp_Object
4093 mixup (YAILOM).
aac0c6e3
MR
4094
40952008-08-30 Glenn Morris <rgm@gnu.org>
4096
4097 * data.c (Fmake_variable_frame_local): Doc fix.
4098
4099 * frame.c (Fmodify_frame_parameters): Doc fix.
4100
41012008-08-30 Eli Zaretskii <eliz@gnu.org>
4102
4103 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
4104 needed by GetTokenInformation.
4105 (w32_system_process_attributes): Check return values of all system
4106 APIs.
4107
4108 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
4109 only when the state changes.
4110 (IT_update_begin, IT_update_end): Add termscript trace.
4111
4112 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
4113 clipboard is unavailable. Set dst to NULL if it doesn't point to
4114 malloc'ed data.
4115 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
4116 passing random values to xfree.
4117
4118 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 4119 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
4120
41212008-08-29 Jason Rumney <jasonr@gnu.org>
4122
4123 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
4124
41252008-08-29 Eli Zaretskii <eliz@gnu.org>
4126
4127 * composite.c (fill_gstring_body): Avoid compiler warnings.
4128
4129 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
4130 LGLYPH_SET_CODE to avoid compiler warnings.
4131
2ae37cf0 4132 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
4133
4134 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
4135
4136 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
4137 LGLYPH_SET_CODE.
4138
41392008-08-29 Kenichi Handa <handa@m17n.org>
4140
4141 * fileio.c (report_file_error): Don't downcase the first character
4142 of errstring if it is still unibyte.
4143
41442008-08-29 Kenichi Handa <handa@m17n.org>
4145
4146 These changes are to re-implement the automatic composition so
4147 that it doesn't use text properties.
4148
4149 * Makefile.in (ftfont.o): Depend on composite.h.
4150 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
4151
4152 * character.h (Vunicode_category_table): Extern it.
4153
4154 * character.c (Vunicode_category_table): New variable.
4155 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
4156
4157 * chartab.c (optimize_sub_char_table): Perform more greedy
4158 optimization.
4159
b8ff72fa
SM
4160 * composite.h (enum composition_method):
4161 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
4162 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
4163 (Vcomposition_function_table): Extern it.
4164 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
4165 (composition_gstring_put_cache, composition_gstring_from_id)
4166 (composition_gstring_p, composition_gstring_width)
4167 (composition_compute_stop_pos, composition_reseat_it)
4168 (composition_update_it, composition_adjust_point): Extern them.
4169 (Fcomposition_get_gstring): EXFUN it.
4170
d66c0241 4171 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
4172 (Vcomposition_function_table)
4173 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
4174 (gstring_hash_table, gstring_work, gstring_work_headers):
4175 New variables.
aac0c6e3
MR
4176 (gstring_lookup_cache, composition_gstring_put_cache)
4177 (composition_gstring_from_id, composition_gstring_p)
4178 (composition_gstring_width, fill_gstring_header)
4179 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
4180 (composition_reseat_it, composition_update_it)
b8ff72fa 4181 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
4182 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
4183 and gstring_work_headers. DEFVAR_LISP composition-function-table.
4184 Defsubr compostion_get_gstring.
4185
4186 * dispextern.h (struct glyph): New union u.cmp. Delete the member
4187 cmp_id.
4188 (struct glyph_string): Delete the member gidx. New members
4189 cmp_id, cmp_from, and cmp_to.
4190 (enum it_method): Delete GET_FROM_COMPOSITION.
4191 (struct composition_it): New struct.
4192 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
4193 Delete c, len, cmp_id, cmp_len in u.comp.
4194
4195 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 4196 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 4197 (enum lglyph_indices): Likewise.
b8ff72fa 4198 (font_range): Adjust extern.
aac0c6e3
MR
4199 (font_fill_lglyph_metrics): Extern it.
4200
4201 * font.c (QCf): New variable.
4202 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4203 (font_prepare_composition): Delete this function.
4204 (font_range): Type and arguments changed.
4205 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
4206 (font_fill_lglyph_metrics): New function.
b8ff72fa 4207 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 4208 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
4209 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
4210 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
4211
4212 * fontset.h (font_for_char): Extern it.
4213
4214 * fontset.c (font_for_char): New function.
4215
4216 * ftfont.c: Include composite.h.
4217 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 4218 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
4219
4220 * indent.c: Include composite.h and dispextern.h.
4221 (check_composition): Delete this function.
4222 (scan_for_column): Handle composition by
4223 composition_compute_stop_pos, composition_reseat_it, and
4224 composition_update_it.
4225 (compute_motion): Likewise.
4226 (Fvertical_motion): Fix checking of composition.
4227
4228 * keyboard.c (adjust_point_for_property): Check composition by
4229 composition_adjust_point.
4230
b8ff72fa 4231 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
4232 struct glyph_string.
4233
b8ff72fa
SM
4234 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
4235 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
4236 struct glyph.
4237 (produce_composite_glyph): Likewise.
4238
b8ff72fa
SM
4239 * w32term.c (x_draw_composite_glyph_string_foreground):
4240 Adjust for the change of struct glyph_string.
aac0c6e3
MR
4241 (x_draw_glyph_string): Likewise.
4242
4243 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
4244 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4245
4246 * xdisp.c: Include font.h.
4247 (it_props): Delete the entry for Qauto_composed.
4248 (init_iterator): Initialize it->cmp_it.id to -1.
4249 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 4250 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
4251 (handle_auto_composed_prop): Delete it.
4252 (handle_composition_prop): Handle only static composition.
4253 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
4254 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 4255 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
4256 (pop_it): Likewise.
4257 (get_next_element): Delete next_element_from_composition.
4258 (CHAR_COMPOSED_P): New macro.
4259 (get_next_display_element): For automatic composition, get a face
4260 from the font in the glyph-string.
4261 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 4262 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
4263 (next_element_from_string): Check if the character at the current
4264 position is composed by CHAR_COMPOSED_P.
4265 (next_element_from_buffer): Likewise.
d66c0241
JB
4266 (next_element_from_composition): Adjust for the change of struct it.
4267 Update it->cmp_it.
b8ff72fa
SM
4268 (dump_glyph): Adjust for the change of struct glyph.
4269 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
4270 it and struct glyph. Don't handle automatic composition here.
4271 (fill_gstring_glyph_string): New function.
4272 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 4273 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
4274 (BUILD_GSTRING_GLYPH_STRING): New macro.
4275 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
4276 automatic composition.
b8ff72fa 4277 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 4278 struct glyph.
b8ff72fa 4279 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 4280
b8ff72fa 4281 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
4282 the change of struct glyph_string.
4283 (x_draw_glyph_string): Likewise.
4284
42852008-08-29 Glenn Morris <rgm@gnu.org>
4286
4287 * buffer.c (word-wrap): Doc fix.
4288 * xdisp.c (truncate-partial-width-windows): Doc fix.
4289 Increase default to 50.
4290
42912008-08-29 Chong Yidong <cyd@stupidchicken.com>
4292
4293 * xdisp.c (update_tool_bar_unwind): New function.
4294 (update_tool_bar): Temporarily set selected frame before building
4295 tool-bar items.
4296
42972008-08-28 Michael Albinus <michael.albinus@gmx.de>
4298
4299 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
4300 snprintf, respectively.
4301 (xd_append_arg): Convert strings with Fstring_make_unibyte.
4302
43032008-08-28 Chong Yidong <cyd@stupidchicken.com>
4304
4305 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
4306 LDFLAGS to GNUstep CC invocation.
4307
43082008-08-27 Chong Yidong <cyd@stupidchicken.com>
4309
4310 * indent.c (Fvertical_motion): Revert last change. Handle the
4311 general case where we are moving forward, and PT spans multiple
4312 screen lines.
4313
4314 * eval.c (find_handler_clause): Temporarily increase
4315 max-lisp-eval-depth while printing the backtrace buffer, to
4316 guarantee that help-mode code can run.
4317
43182008-08-27 Eli Zaretskii <eliz@gnu.org>
4319
4320 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
4321 colors under -rv.
4322 (IT_set_frame_parameters): Don't swap foreground and background
4323 colors if `(reverse . t)' is present in the frame properties.
4324 (internal_terminal_init): Call init_frame_faces only for the
4325 initial frame.
4326
43272008-08-27 Andreas Schwab <schwab@suse.de>
4328
4329 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
4330
43312008-08-27 Andreas Schwab <schwab@suse.de>
4332
4333 * search.c (search_buffer): Set char_base to zero only at the end.
4334
43352008-08-27 Kenichi Handa <handa@m17n.org>
4336
b8ff72fa 4337 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
4338
43392008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
4340
4341 * xterm.c (x_term_init): Temporarily hide the partially
4342 initialized terminal while calling vendor-specific-keysyms.
4343
43442008-08-26 Eli Zaretskii <eliz@gnu.org>
4345
4346 * msdos.c (internal_terminal_init): Most initializations done only
4347 once, especially initial_screen_colors[] and termscript open.
4348
43492008-08-26 Chong Yidong <cyd@stupidchicken.com>
4350
4351 * eval.c (Fcondition_case): Doc fix.
4352
4353 * widgetprv.h (EmacsFramePart): Change font member to the new font
4354 struct.
4355
4356 * widget.c: Include character.h and font.h for XSETFONT.
4357 (setup_frame_gcs): Compute X font id from font struct, just once.
4358
43592008-08-26 Eli Zaretskii <eliz@gnu.org>
4360
4361 * term.c (get_named_tty): Fix last change.
4362
43632008-08-26 Chong Yidong <cyd@stupidchicken.com>
4364
4365 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 4366 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
4367
43682008-08-25 Eli Zaretskii <eliz@gnu.org>
4369
4370 * frame.c (do_switch_frame): Mark previously displayed frame as
4371 obscured for FRAME_MSDOS_P frames as well.
4372
43732008-08-24 Eli Zaretskii <eliz@gnu.org>
4374
4375 * frame.c (make_terminal_frame): Initialize f->terminal,
4376 f->terminal->reference_count, and scroll bars on MS-DOS as well.
4377 Set the top frame to newly created frame.
4378 (Fmake_terminal_frame): Reuse the_only_display_info.
4379
4380 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
4381 estimating available memory.
4382
b97439ce 43832008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
4384
4385 * nsterm.m (ns_draw_window_cursor): Don't call
4386 NSDisableScreenUpdates and NSEnableScreenUpdates on
4387 non-NS_IMPL_COCOA systems.
4388
43892008-08-23 Andreas Schwab <schwab@suse.de>
4390
4391 * process.c (procfs_system_process_attributes): Fix use of
4392 uninitialized variables.
4393
43942008-08-23 Eli Zaretskii <eliz@gnu.org>
4395
4396 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
4397
4398 * dispnew.c (init_display): Remove MS-DOS specific conditions for
4399 calling tty-set-up-initial-frame-faces.
4400
b8ff72fa
SM
4401 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
4402 Allow MSDOS frames along with X frames.
aac0c6e3
MR
4403
4404 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
4405 addition to output_termcap.
4406
4407 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
4408
4409 * termchar.h (FRAME_TTY): Support output_msdos_raw.
4410 (struct tty_display_info) [MSDOS]: Add fields related to mouse
4411 highlight.
4412
4413 * process.c [!subprocesses]: Define QCname.
4414 (syms_of_process): Intern and staticpro it.
4415
4416 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
4417 Adjust for changes in encoding/decoding routines.
4418 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
4419 encode_coding and decode_coding.
4420
b8ff72fa 4421 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
4422
4423 * dosfns.c: Include frame.h before termhooks.h.
4424 (dos_cleanup): Use CURTTY ()->termscript instead of a global
4425 variable termscript.
4426
4427 * s/msdos.h (USER_FULL_NAME): Define.
4428 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
4429
4430 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
4431 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
4432 pw->pw_gecos.
4433
4434 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
4435 SELECTED_FRAME as additional (1st) argument.
4436 (tty_read_avail_input): Handle output_msdos_raw in
4437 addition to output_termcap.
4438
4439 * msdos.c: Include frame.h before termhooks.h.
4440 (mouse_on, mouse_off, mouse_moveto, mouse_init)
4441 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
4442 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
4443 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
4444 (IT_set_terminal_modes, IT_reset_terminal_modes)
4445 (IT_set_frame_parameters): Use tty->termscript instead of a global
4446 variable termscript.
4447 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
4448 global variable terminal_coding. Don't refer to
4449 Vnonascii_translation_table.
4450 (internal_terminal_init): Set Vwindow_system in current_kboard.
4451 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
4452 Announce date and time of session start, if termscript is open.
4453 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
4454 term.c:init_tty). Open termscript only of not already open.
4455 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
4456 here instead of dos_ttraw. Don't initialize display if this is an
4457 initial tty. Don't set FRAME_FONT.
4458 (Vwindow_system_version): Bump to 23.
4459 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
4460 is available, set up mouse_position_hook.
4461 (dos_ttraw, IT_set_terminal_modes): If called with initial
4462 terminal, do nothing.
4463 (IT_set_frame_parameters): Handle the Qtty_type frame
4464 parameter by calling internal_terminal_init.
4465 (dos_set_window_size, show_mouse_face)
4466 (clear_mouse_face, IT_note_mode_line_highlight)
4467 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
4468 (dos_rawgetc): Use tty_display_info instead of x_display_info.
4469 (initialize_msdos_display): New function.
4470 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
4471 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
4472 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
4473 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 4474 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
4475 (request_sigio, unrequest_sigio): Don't define, now defined on
4476 sysdep.c.
4477 (IT_write_glyphs): Rewrite to use encode_terminal_code.
4478
4479 * term.c [MSDOS]: Include msdos.h.
4480 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
4481 conditional to DOS_NT. Allow only one call to this function in a
4482 session. Don't allocate a new struct tty_display_info; instead,
4483 reuse the_only_display_info. Call get_tty_size to get screen
4484 dimensions. Call init_baud_rate to set bad_rate.
4485 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
4486 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 4487 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
4488 (get_tty_terminal, get_named_tty, Ftty_type)
4489 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
4490 output_termcap.
b8ff72fa
SM
4491 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
4492 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 4493 only when subprocesses are supported.
aac0c6e3
MR
4494
4495 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
4496 f->output_data.x.
4497 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
4498 terminal devices.
4499
5582fbc7 4500 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
4501 x_output.
4502 (FRAME_FONT): Use output_data.tty.
4503 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
4504 (struct x_display_info): Rename from display_info. Update all users in
4505 msdos.c.
aac0c6e3 4506 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 4507 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
4508 (dos_ttraw): Update prototype.
4509
4510 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
4511 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
4512
45132008-08-23 Jason Rumney <jasonr@gnu.org>
4514
4515 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
4516 (fn_TIFFSetDirectory): New library function used.
4517 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
4518 (tiff_load): Use :index to select among multiple images. Set count
4519 property when multiple images exist.
4520 (gif_format): Use :index, not :image.
4521
45222008-08-23 Chong Yidong <cyd@stupidchicken.com>
4523
4524 * xdisp.c (try_scrolling): Check INT_MAX instead of
4525 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
4526 to obtain INT_MAX.
4527
45282008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
4529
4530 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
4531
45322008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
4533
4534 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
4535 GNUstep library location.
4536
45372008-08-21 Chong Yidong <cyd@stupidchicken.com>
4538
4539 * xfaces.c (x_update_menu_appearance): Check validity of menu font
4540 before using it.
4541
4542 * puresize.h (BASE_PURESIZE): Increase to 1250000.
4543
45442008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4545
4546 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
4547 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
4548 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
4549 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
4550 (EmacsApp-cursor_blink_handler): Remove declaration.
4551 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
4552 match 01 Feb 2008 changes in xterm.c.
4553 (ns_read_socket): Add cast to avoid warning.
4554 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
4555 GNUstep.
4556
45572008-08-20 Chong Yidong <cyd@stupidchicken.com>
4558
4559 * xselect.c (x_get_foreign_selection): Return nil if desired
4560 selection could not be obtained, instead of signalling an error.
4561
45622008-08-20 David Reitter <david.reitter@gmail.com>
4563
4564 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
4565 * nsterm.m: Remove ns-specific code for cursor blinking.
4566 (ns_draw_window_cursor): Clear cursor properly rather than
4567 redrawing the area. Respect width of bar cursors.
4568 These changes enable the use of generic blink-cursor-mode and
4569 generic cursor types in NS and support smooth cursor movements (do
4570 not blink off after command).
4571 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
4572 Nextstep, too.
4573
45742008-08-19 Kenichi Handa <handa@m17n.org>
4575
4576 * font.c (Vfont_log_deferred): New variable.
4577 (font_add_log): Check Vfont_log_deferred.
4578 (font_deferred_log): New function.
4579
4580 * font.h (font_deferred_log): Extern it.
4581
4582 * fontset.c (reorder_font_vector): Use encoding charset of fonts
4583 for sorting.
4584 (face_for_char): Use deferred log.
4585
45862008-08-18 Kenichi Handa <handa@m17n.org>
4587
4588 * fontset.c (face_for_char): Add font log.
4589
4590 * font.c (font_add_log): Add the font properties :script, :lang,
4591 and :otf in the log.
4592
45932008-08-17 Chong Yidong <cyd@stupidchicken.com>
4594
4595 * xdisp.c: Remove dead code.
4596 (handle_invisible_prop, next_overlay_string): Defer call to
4597 setup_for_ellipsis.
4598 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
4599
46002008-08-15 Chong Yidong <cyd@stupidchicken.com>
4601
4602 * xfaces.c (lookup_derived_face): Properly handle possible zero
4603 return value of get_lface_attributes.
4604 (merge_faces): Don't tell lookup_derived_face to signal an error
4605 if face is not found.
4606
4607 * dired.c (Fdirectory_files): Doc fix.
4608
4609 * process.c (make_process): Initialize kill_without_query struct
4610 member.
4611
46122008-08-15 Eli Zaretskii <eliz@gnu.org>
4613
4614 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
4615 Alternative calculation of totphys for Visual Studio 6.
4616
4617 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
4618
4619 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
4620 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
4621 All users changed.
4622 (stat): Only root directory passed to GetDriveType. Allow RAM
4623 disk as well as local fixed disk when w32-get-true-file-attributes
4624 is set to `local'.
4625 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
4626 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
4627 (w32_cached_id, w32_add_to_cache): New functions.
4628 (get_name_and_id): Look account names in the cache before calling
4629 lookup_account_sid.
4630 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
4631 New initialization flags.
4632 (globals_of_w32): Initialize them to zero.
4633 (w32_system_process_attributes): Use w32_cached_id and
4634 w32_add_to_cache.
4635
46362008-08-14 Lawrence Mitchell <wence@gmx.li>
4637
4638 * lread.c (Fread_char, Fread_char_exclusive): If no character
4639 event is read before timeout is reached, return nil, rather than
4640 converting to a number.
4641
46422008-08-14 Chong Yidong <cyd@stupidchicken.com>
4643
4644 * fns.c (use_dialog_box): Doc fix.
4645
4646 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
4647 on OS X.
4648
46492008-08-13 Chong Yidong <cyd@stupidchicken.com>
4650
4651 * frame.c (Qns_parse_geometry): New var.
4652 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
4653
46542008-08-11 Chong Yidong <cyd@stupidchicken.com>
4655
4656 * xdisp.c (x_produce_glyphs): Handle the case when font has no
4657 space character in calculating tabs.
4658
46592008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
4660
4661 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
4662
46632008-08-10 Glenn Morris <rgm@gnu.org>
4664
4665 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
4666 silence gcc "limited range of data type" warnings in some
4667 make_fixnum_or_float calls.
4668
46692008-08-09 Eli Zaretskii <eliz@gnu.org>
4670
4671 * w32.c (w32_system_process_attributes): If the process does not
4672 exist, return nil.
4673
4674 * w32.c: Include thelp32.h, psapi.h and coding.h.
4675 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
4676 declarations.
4677 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
4678 (Process32Next_Proc): New typedefs.
4679 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
4680 (g_b_init_process32_next, g_b_init_open_thread_token)
4681 (g_b_init_impersonate_self, g_b_init_revert_to_self)
4682 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
4683 (g_b_init_get_process_working_set_size)
4684 (g_b_init_global_memory_status_ex): New static variables.
4685 (globals_of_w32): Initialize them.
4686 (create_toolhelp32_snapshot, process32_first, process32_next)
4687 (open_thread_token, impersonate_self, revert_to_self)
4688 (get_process_memory_info, get_process_working_set_size)
4689 (global_memory_status, global_memory_status_ex): New wrapper
4690 functions.
4691 (w32_list_system_processes, w32_system_process_attributes)
4692 (enable_privilege, restore_privilege, ltime, process_times):
4693 New functions.
4694 (convert_time_raw): New function.
4695 (convert_time): Remove conversion of FILETIME into time in 100
4696 nsec units, call convert_time_raw instead.
4697
4698 * process.h (w32_list_system_processes, w32_system_process_attributes):
4699 Add prototypes.
4700 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
4701 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
4702 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
4703 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
4704
4705 * process.c (Fsystem_process_attributes): Doc fix.
4706
47072008-08-08 Chong Yidong <cyd@stupidchicken.com>
4708
4709 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
4710 a continued multi-char glyph; if so, advance to the actual glyph.
4711
47122008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
4713
4714 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
4715
4716 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
4717 (.m.o): Use it.
4718 * config.in: Regenerate.
4719
47202008-08-07 Chong Yidong <cyd@stupidchicken.com>
4721
4722 * xdisp.c (redisplay_window): Revert last change.
4723 (try_window): Check bottom scroll margin too.
4724
47252008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
4726
4727 * config.in: Regenerate.
4728
4729 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
4730 -list-load-path-shadows'.
4731 (nsgui.h): Reduce number of things depending on it.
4732
47332008-08-06 Chong Yidong <cyd@stupidchicken.com>
4734
4735 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
4736 instead of window-end which does the wrong thing at eob.
4737 (try_cursor_movement): Minor optimization.
4738 (redisplay_window): If scroll margin is defined, don't assume
4739 window doesn't need scrolling.
4740
47412008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
4742
4743 * config.in: Regenerate.
4744
4745 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
4746 (mostlyclean): Don't delete *.d under NS.
4747
4748 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
4749
47502008-08-06 Kenichi Handa <handa@m17n.org>
4751
4752 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
4753
47542008-08-06 Andreas Schwab <schwab@suse.de>
4755
4756 * config.in: Regenerate.
4757
47582008-08-05 Chong Yidong <cyd@stupidchicken.com>
4759
4760 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
4761 forcing a window start.
4762
4763 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
4764 (auto_save_1): Update modtime when auto-save-list-file-name is on.
4765
47662008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4767
4768 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
4769 argument.
4770
47712008-08-05 Juanma Barranquero <lekktu@gmail.com>
4772
4773 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
4774 <scroll-down-aggressively, before-change-functions>:
4775 <after-change-functions>: Reflow docstrings.
4776
47772008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4778 Ken Raeburn <raeburn@gnu.org>
4779
4780 Dock menu customization, based on a patch by Ken Raeburn, plus some
4781 other fixes.
4782 * nsmenu.m (dockMenu): New variable.
4783 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
4784
4785 * nsterm.h (dockMenu): Declare.
4786
4787 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
4788 (ns_term_init): Initialize dockMenu.
4789 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
4790 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
4791 left.
4792
4793 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
4794
47952008-08-04 Chong Yidong <cyd@stupidchicken.com>
4796
4797 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
4798
4799 * config.in: Regenerate.
4800
48012008-08-04 Seiji Zenitani <zenitani@mac.com>
4802
4803 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
4804
48052008-08-04 Chong Yidong <cyd@stupidchicken.com>
4806
4807 * nsterm.h (find_and_call_menu_selection): Fix prototype.
4808
48092008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4810
4811 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
4812
4813 * keyboard.h: Comment an #endif.
4814
4815 * lisp.h (have_menus_p): Adjust comment.
4816
4817 * menu.c (find_and_return_menu_selection): Fix comparison with
4818 client_data.
4819
4820 * nsmenu.m (popup_activated_flag): New variable.
4821 (popup_activated): New function.
4822 (menu-or-popup-active-p): New exported lisp definition.
4823 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
4824 when popup done.
4825 (ns_popup_dialog): Set popup_activated_flag.
4826
4827 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
4828 version for GNUstep (handled by conditional typedef in nsterm.m).
4829 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
4830 in rgb.txt).
4831
4832 * process.c (init_process): Use DARWIN_OS, not DARWIN.
4833
4834 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
4835
4836 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
4837
4838 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
4839 shortcircuit if popup_activated like GTK and X toolkit.
4840
4841 * m/inter386.h: Change DARWIN to DARWIN_OS.
4842
4843 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
4844 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
4845 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
4846 comment on NO_SOCK_SIGIO.
4847
48482008-08-03 Chong Yidong <cyd@stupidchicken.com>
4849
4850 * nsterm.m (windowDidResize): Remove stopModal call.
4851
48522008-08-03 Andreas Schwab <schwab@suse.de>
4853
4854 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
4855 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
4856
48572008-08-02 Chong Yidong <cyd@stupidchicken.com>
4858
4859 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
4860 Don't use uninitialized pointer variable when using getrlimit.
4861
48622008-08-02 Jason Rumney <jasonr@gnu.org>
4863
4864 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
4865
48662008-08-02 Eli Zaretskii <eliz@gnu.org>
4867
4868 * alloc.c (NSTATICS): Bump to 0x640.
4869
4870 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
4871
4872 * lisp.h: Add prototype for directory_files_internal.
4873
4874 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
4875 New functions.
4876 (syms_of_process): Defsubr them. Add initializations for various
4877 Q* symbols used in procfs_system_process_attributes.
4878 (procfs_list_system_processes, procfs_system_process_attributes)
4879 [HAVE_PROCFS]: New functions.
4880 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
4881 (procfs_get_total_memory): New functions.
4882
48832008-08-01 Juanma Barranquero <lekktu@gmail.com>
4884
4885 * xfaces.c (Fx_load_color_file): Fix previous change;
4886 it is #ifdef WINDOWSNT, not WINDOWS_NT.
4887
48882008-08-01 Michael Albinus <michael.albinus@gmx.de>
4889
4890 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
4891
48922008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4893
4894 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
4895
48962008-08-01 Chong Yidong <cyd@stupidchicken.com>
4897
4898 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
4899
4900 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
4901 define NSApplicationDelegateReplySuccess.
4902 (EmacsView -converstationIdentifier): Use long instead of
4903 NSInteger for GNUstep, since it doesn't have NSInteger.
4904
4905 * xmenu.c: Revert last change.
4906
4907 * keyboard.h: Fix last change.
4908
49092008-08-01 Juanma Barranquero <lekktu@gmail.com>
4910
4911 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
4912 on Windows.
4913
49142008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4915
4916 Warning clearing and clean-up in NS port.
4917 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
4918 Add prototypes.
4919 * nsgui.h (FACE_DEFAULT): Remove, unused.
4920 (XGCValues): Change colors to unsigned long.
4921 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
4922 nsterm.m.
4923 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
4924 (ns_list_fonts): Remove, unused.
4925 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
4926 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
4927 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
4928 (nsfont_draw): Compare face colors to 0, not nil.
4929 * nsmenu.m (struct widget_value): Drop unneeded declaration.
4930 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
4931 (-addSubmenuWithTitle:): Use NSMenuItem class.
4932 (ns_popup_menu): Use NO, not NULL, for enabled setting.
4933 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
4934 (ns_clip_to_row): Make gc arg a BOOL.
4935 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
4936 ns_clip_to_row() call.
4937 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
4938 used). Cast FRAME_FONT assignments.
4939 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
4940 (ns_string_to_lispmod): Change arg to const char.
4941 (ns_term_init): Use NSMenuItem class.
4942 (EmacsApp -openFile:): Move to different section of file.
4943 (EmacsApp -application:openFiles:): Don't return a value, call
4944 -replyToOpenOrPrint:.
4945 (EmacsView -keyDown:): Fix up cast.
4946 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
4947 (EmacsView -menuDown:): Cast tag in call to
4948 find_and_call_menu_selection().
4949 (ns_list_fonts): Remove, unused.
4950 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
4951 (ns_fontname_to_xlfd): Make static.
4952 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
4953 Remove prototypes (now in keyboard.h).
4954 (next_menubar_widget_id): Remove, unused.
4955 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
4956 Remove prototypes (now in keyboard.h).
4957 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
4958
49592008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
4960
4961 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
4962 (floatfns.o): Depend on syssignal.h.
4963 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
4964
4965 * systty.h: Fix previous change that removed BSD_TERMIOS.
4966 Add comments to #ifdefs.
4967
49682008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4969
4970 * w32fns.c (w32-load-color-file): Remove.
4971 (x-open-connection): Use renamed Fx_load_color_file.
4972 * xfaces.c (x-load-color-file): Add.
4973 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
4974 Emacs.clr.
4975 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
4976
49772008-07-31 Michael Albinus <michael.albinus@gmx.de>
4978
4979 * dbusbind.c (Fdbus_call_method_asynchronously)
4980 (Fdbus_method_error_internal): New defuns.
4981 (xd_read_message): Handle also reply messages.
4982 (Vdbus_registered_functions_table): Extend docstring.
4983
49842008-07-31 Juanma Barranquero <lekktu@gmail.com>
4985
4986 * keyboard.c (gobble_input): Fix previous change.
4987
49882008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
4989
4990 * bitmaps/README:
4991 * xfns.c:
4992 * termcap.c:
4993 * term.c:
4994 * syswait.h:
4995 * systty.h:
4996 * systime.h:
4997 * syssignal.h:
4998 * sysdep.c:
4999 * process.h:
5000 * process.c:
5001 * print.c:
5002 * ndir.h:
5003 * lread.c:
5004 * keyboard.c:
5005 * getpagesize.h:
5006 * floatfns.c:
5007 * fileio.c:
5008 * emacs.c:
5009 * doc.c:
5010 * dispnew.c:
5011 * dired.c:
5012 * data.c:
5013 * callproc.c:
5014 * buffer.c:
5015 * README:
5016 * Makefile.in:
5017 * s/template.h:
5018 * s/msdos.h:
5019 * m/vax.h: Remove VMS support.
5020 * s/vms.h:
5021 * vlimit.h:
5022 * uaf.h:
5023 * temacs.opt:
5024 * param.h:
5025 * ioctl.h: Remove file.
5026
50272008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5028
5029 * s/ms-w32.h (MULTI_KBOARD): Remove.
5030 * xterm.c:
5031 * xselect.c:
5032 * xfns.c:
5033 * window.c:
5034 * w32term.c:
5035 * w32fns.c:
5036 * terminal.c:
5037 * termhooks.h:
5038 * term.c:
5039 * sysdep.c:
5040 * keyboard.h:
5041 * keyboard.c:
5042 * frame.h:
5043 * frame.c:
5044 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
5045 * config.in: Regenerate.
5046
50472008-07-30 Jason Rumney <jasonr@gnu.org>
5048
5049 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
5050
5051 * w32font.c (w32font_encode_char): Leave as unicode if in range.
5052 (w32font_open_internal): Get unicode version of textmetrics.
5053 Don't enable or disable glyph indices here.
5054 (w32font_open): Disable use of glyph indices.
5055
5056 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
5057
50582008-07-30 Chong Yidong <cyd@stupidchicken.com>
5059
5060 * minibuf.c (Vread_buffer_function): Doc fix.
5061
50622008-07-30 John Paul Wallington <jpw@pobox.com>
5063
5064 * minibuf.c (read_buffer_completion_ignore_case): New var.
5065 (Fread_buffer): Use it.
5066
50672008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
5068
5069 * systty.h (sensemode): Remove empty #if. Remove reference to
5070 BSD_TERMIOS, unused.
5071
5072 * sysdep.c: Remove reference to DGUX.
5073 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
5074
5075 * config.in: Regenerate.
5076
50772008-07-30 Jason Rumney <jasonr@gnu.org>
5078
5079 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
5080
50812008-07-29 Jason Rumney <jasonr@gnu.org>
5082
5083 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
5084 is populated.
5085 (uniscribe_encode_char): Always use uniscribe.
5086 Avoid using context if cache is populated.
5087
50882008-07-29 Jan Djärv <jan.h.d@swipnet.se>
5089
5090 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
5091 open menu.
5092
5093 * gtkutil.c (menu_nav_ended): Remove.
5094 (create_menus): Remove signal connect for menu_nav_ended.
5095
50962008-07-28 Chong Yidong <cyd@stupidchicken.com>
5097
5098 * xdisp.c (redisplay_window): Check return value of
5099 compute_window_start_on_continuation_line before forcing a window
5100 start.
5101
51022008-07-28 Jason Rumney <jasonr@gnu.org>
5103
5104 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
5105
5106 * w32term.c (w32_enable_unicode_output, cleartype_active):
5107 Remove obsolete display options.
5108 (x_draw_glyph_string_background): Don't use old cleartype_active
5109 workaround.
5110 (w32_initialize): Remove cleartype_active initialization.
5111 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
5112
51132008-07-28 Andreas Schwab <schwab@suse.de>
5114
5115 * lisp.h (init_weak_hash_tables, syms_of_font)
5116 (xd_read_queued_messages, syms_of_dbusbind): Declare.
5117 (remove_hash_entry): Don't declare.
5118 * eval.c (maybe_call_debugger): Make static and move before use.
5119 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
5120 * xdisp.c: Include "gtkutil.h" if USE_GTK.
5121 * xterm.h (x_set_frame_alpha): Declare.
5122
51232008-07-28 Jan Djärv <jan.h.d@swipnet.se>
5124
5125 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
5126 (create_menus): Connect selection-done to menu_nav_ended.
5127
51282008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5129
5130 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
5131 Set Vx_resource_name to a fallback. Replace read of 'buffered'
5132 parameter with read of 'alpha' one.
5133 (Qns_frame_parameter): Remove.
5582fbc7 5134 * nsselect.m (selection-coding-system)
aac0c6e3
MR
5135 (next-selection-coding-system, Vselection_coding_system)
5136 (Vnext_selection_coding_system): Drop.
5137
51382008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5139
5140 * nsfns.m (do-applescript, do_applescript): Rename to
5141 ns-do-applescript, ns_do_applescript, and move within file.
5142
51432008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
5144
5145 Remove support for Mac Carbon.
5146 * mactoolbox.c:
5147 * macterm.h:
5148 * macterm.c:
5149 * macselect.c:
5150 * macmenu.c:
5151 * macgui.h:
5152 * macfns.c:
5153 * mac.c: Remove file.
5154 * s/darwin.h:
5155 * m/intel386.h:
5156 * xfaces.c:
5157 * xdisp.c:
5158 * window.c:
5159 * tparam.c:
5160 * termhooks.h:
5161 * termcap.c:
5162 * term.c:
5163 * syssignal.h:
5164 * sysselect.h:
5165 * sysdep.c:
5166 * process.c:
5167 * lread.c:
5168 * lisp.h:
5169 * keyboard.c:
5170 * image.c:
5171 * fringe.c:
5172 * frame.h:
5173 * frame.c:
5174 * fontset.c:
5175 * font.h:
5176 * font.c:
5177 * fns.c:
5178 * fileio.c:
5179 * emacs.c:
5180 * dispnew.c:
5181 * dispextern.h:
5182 * config.in:
5183 * atimer.c:
2ae37cf0 5184 * Makefile.in: Remove code for Carbon.
aac0c6e3 5185
f0131492 51862008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
5187
5188 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
5189
51902008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5191
5192 * macterm.h (kCGBitmapByteOrder32Host): New define for
5193 non-universal SDKs.
5194
5195 * image.c (mac_create_cg_image_from_image, image_load_image_io)
5196 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5197
5198 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
5199 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5200
52012008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
5202
5203 * w32inevt.c: Include dispextern.h.
5204
52052008-07-26 Andreas Schwab <schwab@suse.de>
5206
5207 * print.c (print_object): Fix off-by-one in last change.
5208
52092008-07-25 Juanma Barranquero <lekktu@gmail.com>
5210
5211 * term.c (syms_of_term): Don't initialize default_orig_pair,
5212 default_set_foreground and default_set_background on Windows.
5213
52142008-07-25 Jason Rumney <jasonr@gnu.org>
5215
5216 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
5217 ScriptItemize. Clean up return value checking. Remove unused
5218 variables.
5219 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
5220 shaping engine.
5221
5222 * w32font.c (w32font_has_char): Handle the case where we can't
5223 determine the script for a character.
5224
52252008-07-25 Chong Yidong <cyd@stupidchicken.com>
5226
5227 * term.c (syms_of_term): Initialize default_orig_pair,
5228 default_set_foreground, and default_set_background.
5229
5230 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
5231 clash (bug#86).
5232 (getloadavg): Callers changed.
5233
5234 * image.c (svg_load_image): Fix last change.
5235 (svg_load_image): Use rsvg_handle_get_dimensions to check that
5236 image size is valid. Use g_object_unref instead of deprecated
5237 rsvg_handle_free to free rsvg handle.
5238 (x_from_xcolors): Don't initialize pixmap (silence compiler).
5239
52402008-07-25 Jason Rumney <jasonr@gnu.org>
5241
5242 * w32font.c (w32font_encode_char): Encode characters outside BMP as
5243 surrogates before looking up glyph index.
5244 (w32font_text_extents): Encode as surrogates if falling back to
5245 functions that need UTF-16 wide chars.
5246
5247 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
5248 BMP as surrogates before looking up glyph index.
5249
52502008-07-25 Chong Yidong <cyd@stupidchicken.com>
5251
5252 * image.c (svg_load_image): Check for failure in return value of
5253 rsvg_handle_get_pixbuf. Free rsvg handle when done.
5254
52552008-07-25 Jason Rumney <jasonr@gnu.org>
5256
5257 * w32font.c (Fx_select_font): Reverse sense of second arg.
5258
52592008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
5260
5261 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
5262 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
5263
5264 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
5265 (PURESIZE): Use it.
5266
52672008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
5268
5269 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
5270 * m/alpha.h (TEXT_END):
5271 * m/ibmrs6000.h (TEXT_END):
5272 * m/macppc.h (TEXT_END):
5273 * s/darwin.h (TEXT_END):
5274 * s/msdos.h (TEXT_END): Remove, unused.
5275 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
5276 * s/cygwin.h: Remove comment.
5277
5278 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
5279 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
5280 * m/intel386.h (DOT_GLOBAL_START):
5281 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
5282 (USG): Remove, file not used on USG platforms.
5283
5284 * Makefile.in (HAVE_X11): Remove empty #else.
5285
52862008-07-24 Andreas Schwab <schwab@suse.de>
5287
5288 * fileio.c (Finsert_file_contents): Properly adjust undo list
5289 after format conversion.
5290
52912008-07-24 Jan Djärv <jan.h.d@swipnet.se>
5292
5293 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
5294 (menu_nav_ended): Remove.
5295 (create_menus): Remove signal connect for menu_nav_ended.
5296 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
5297 create_menus.
5298 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
5299
53002008-07-23 Jason Rumney <jasonr@gnu.org>
5301
5302 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
5303 with opened font.
5304 (w32font_open): Set font type to gdi.
5305
5306 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
5307
53082008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
5309
5310 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
5311 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
5312 defines it.
5313 * unexec.c (ADDR_CORRECT): Define unconditionally.
5314
5315 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
5316
5317 * unexec.c: Remove code depending on !COFF and USG, the file is
5318 not used for such systems.
5319
5320 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
5321 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
5322 (LD_SWITCH_SYSTEM_1): Remove, update users.
5323
5324 * s/darwin.h (DATA_END):
5325 * m/intel386.h (DATA_END):
5326 * m/ibmrs6000.h (DATA_END):
5327 * m/alpha.h (DATA_END): Remove, unused.
5328
5329 * config.in: Regenerate.
5330 * s/ms-w32.h (subprocesses): Define unconditionally.
5331 * s/template.h (subprocesses): Update comment.
5332 * s/vms.h (subprocesses):
5333 * s/usg5-4.h (subprocesses):
5334 * s/hpux10-20.h (subprocesses):
5335 * s/gnu-linux.h (subprocesses):
5336 * s/cygwin.h (subprocesses):
5337 * s/bsd-common.h (subprocesses):
5338 * s/aix4-2.h (subprocesses):
5339 * s/darwin.h (subprocesses): Do not define, defined by default now.
5340
5341 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
5342 Remove all references.
5343 (temacs): Add GNUstep specific ld flags.
5344
5345 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
5346 similarly to what X does.
5347
53482008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5349
5350 * nsfns.m (x-list-fonts): Remove.
5351 (syms_of_nsfns): Drop the x-list-fonts declaration.
5352 * nsterm.m: Get rid of remaining "//" comments.
5353
53542008-07-22 Chong Yidong <cyd@stupidchicken.com>
5355
5356 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
5357
5358 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
5359 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
5360 (Fns_own_selection_internal, Fx_disown_selection_internal)
5361 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
5362
5363 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
5364 ... */' style of docstrings. Doc fixes.
5365
53662008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
5367
5368 * terminfo.c (UP, BC, PC): Undo previous change.
5369
5370 * nsfns.m: Rename ns prefixed functions/variables to the
5371 corresponding x versions. Update references.
5372
53732008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
5374
5375 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
5376
53772008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
5378
5379 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
5380 Remove forwarding functions.
5381 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
5382 non-static.
5383 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
5384 non-static.
5385 (ns_frame_parm_handlers): Use the new names.
5386 (syms_of_nsfns): Move to the end of file.
5387
5388 * nsterm.m (syms_of_nsterm): Move to the end of file.
5389
5390 * dispnew.c (init_display): Remove code for X10.
5391
53922008-07-22 Jason Rumney <jasonr@gnu.org>
5393
5394 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
5395 bare drive.
5396
53972008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5398
5399 * nsterm.m (syms_of_nsterm): Remove debugging println.
5400
54012008-07-22 David Reitter <david.reitter@gmail.com>
5402
5403 * nsfns.m (do_applescript, F_do_applescript): NS version of the
5404 Carbon implementation of the same functionality: execute arbitrary
5405 AppleScript code.
5406
54072008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
5408
5409 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
5410 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
5411 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5412 (Fx_display_mm_height, Fx_display_mm_width)
5413 (Fx_display_backing_store, Fx_display_visual_class)
5414 (Fx_display_save_under, Fx_open_connection)
5415 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
5416 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
5417 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
5418 (Fx_display_pixel_width, Fx_display_pixel_height)
5419 (Fx_display_usable_bounds, Fx_display_planes)
5420 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
5421 ... */' style of docstrings.
5422
54232008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
5424
5425 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
5426 on this platform.
5427 (mips):
5428 * m/iris4d.h (mips): Do not define.
5429 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
5430
5431 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
5432
5433 * image.c:
5434 * nsfns.m:
5435 * nsselect.m:
5436 * nsterm.h:
5437 * nsterm.m: Rename ns prefixed functions/variables to the
5438 corresponding x versions. Update references.
5439
5440 * m/ibms390x.h (NO_REMAP): Do not undefine.
5441
5442 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
5443
54442008-07-21 Chong Yidong <cyd@stupidchicken.com>
5445
5446 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
5447 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
5448 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
5449 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
5450 (Fns_display_mm_height, Fns_display_mm_width)
5451 (Fns_display_backing_store, Fns_display_visual_class)
5452 (Fns_display_save_under, Fns_open_connection)
5453 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
5454 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
5455 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
5456 (Fns_display_pixel_width, Fns_display_pixel_height)
5457 (Fns_display_usable_bounds, Fx_display_planes)
5458 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
5459
54602008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
5461
5462 * print.c (print_object): Check print_depth before searching for
5463 circularities.
5464
54652008-07-21 Michael Albinus <michael.albinus@gmx.de>
5466
5467 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
5468 only sprintf.
5469
54702008-07-21 Kenichi Handa <handa@m17n.org>
5471
5472 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
5473
54742008-07-20 Andreas Schwab <schwab@suse.de>
5475
5476 * syntax.c (find_start_pos, find_start_value)
5477 (find_start_value_byte, find_start_begv, find_defun_start)
5478 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
5479
54802008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
5481
5482 * s/sol2-3.h: Insert contents of s/sol2.h.
5483 (LD_SWITCH_SYSTEM): Remove redundant definition.
5484 * s/sol2.h: Remove, unused.
5485
54862008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5487
5488 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
5489
54902008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5491
5492 * Makefile.in (ns_appdir): Fix typo in find command.
5493
54942008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
5495
5496 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
5497
5498 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
5499 added not supported anymore.
5500
5501 * s/usg5-4-2.h (LIBS_SYSTEM):
5502 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
5503
5504 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
5505 * s/lynxos.h (GETPGRP_NO_ARG):
5506 * s/hpux10-20.h (NO_SIOCTL_H):
5507 * s/gnu.h (GETPGRP_NO_ARG):
5508 * s/gnu-linux.h (NO_SIOCTL_H):
5509 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
5510 * s/cygwin.h (GETPGRP_NO_ARG):
5511 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
5512 (C_DEBUG_SWITCH): Remove duplicate definition.
5513
5514 * m/ibms390.h: Remove boilerplate comments.
5515
5516 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
5517
5518 * process.c (HAVE_SERIAL): Consolidate ifdefs.
5519 (wait_reading_process_output): Remove code for SunOS, platform not
5520 supported anymore. Use SOLARIS2 instead of sun.
5521
55222008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5523
5524 * font.c (font_open_by_name): Under NS, default lface height to zero.
5525 (font_open_for_lface): Under NS, set size based on frame fontsize.
5526 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
5527 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
5528
55292008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5530
5531 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
5532 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
5533 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
5534 YES/NO.
5535 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
5536 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
5537 * Makefile.in (clean): Clear out build destination dir.
5538
55392008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5540
5541 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
5542 xterm, xselect.
5543 * lisp.h: Remove declaration of hash_remove.
5544 * nsgui.h: Remove redefinitions of hash_remove.
5545 * fns.c (hash_remove): Rename to hash_remove_from_table.
5546
55472008-07-19 Seiji Zenitani <zenitani@mac.com>
5548
5549 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
5550 strdup() the family UTF8String before modifying it.
5551
55522008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5553
5554 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
5555 NS_FACE_BACKGROUND with 0 instead of nil.
5556 * nsfont.m (nsfont_draw): Same.
5557
55582008-07-19 Chong Yidong <cyd@stupidchicken.com>
5559
5560 * nsfns.m (ns_set_background_color): Fix crash.
5561
55622008-07-18 Chong Yidong <cyd@stupidchicken.com>
5563
5564 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
5565
55662008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
5567
5568 * puresize.h (BASE_PURESIZE): Increase to 1240000.
5569
55702008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5571
5572 * gtkutil.c: Include <config.h> instead of "config.h".
5573
5574 * lisp.h (Foverlay_buffer): Add EXFUN.
5575
5576 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
5577 child process to complete child_setup. Undo 2005-09-21 change.
5578
5579 * s/darwin.h: Mention setsid after vfork.
5580
55812008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5582
5583 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
5584 Depend on macgui.h.
5585
5586 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
5587 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
5588
5589 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
5590 and f19.
5591 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
5592
5593 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
5594 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
5595 Remove enumerators.
5596
5597 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
5598 Check if FACE_FROM_ID returns NULL.
5599
56002008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
5601
5602 * w32inevt.c (change_frame_size): Remove extern declaration.
5603 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
5604 change_frame_size.
5605
56062008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
5607
5608 * getloadavg.c: Revert last change (2008-07-15).
5609
56102008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
5611
5612 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
5613 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
5614 from configure.
5615
56162008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
5617
5618 * s/sol2.h:
5619 * s/sol2-4.h: Reorganize conditionals.
5620
5621 * ecrt0.c: Remove code depending on m68000, not used anymore.
5622
5623 * fns.c (hash_remove): Make static.
5624 * lisp.h (hash_remove): Don't prototype.
5625
5626 * m/ibmrs6000.h:
5627 * m/ibms390x.h:
5628 * m/macppc.h: Remove boilerplate comments.
5629
5630 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
5631 Solaris, which does not need them.
5632
5633 * m/vax.h: Remove comments about unsupported systems.
5634
5635 * s/darwin.h: Reorganize ifdefs.
5636
56372008-07-17 Andreas Schwab <schwab@suse.de>
5638
5639 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
5640
56412008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
5642
5643 Use SDATA. Follow coding convention of placing operators at
5644 beginning of next line rather than end of previous line, and placing
5645 spaces around infix operators.
5646
5647 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
5648 in case it was defined already.
5649 USE @GNUSTEP_MAKEFILES@ rather than envvars.
5650 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
5651 ns_default.
5652 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
5653 Lisp_Objects.
5654 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
5655 (ns_defined_color, ns_color_to_lisp): Declare.
5656 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
5657 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
5658 it's accepted even with USE_LISP_UNION_TYPE.
5659 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
5660 (update_frame_tool_bar): Remove apparently obsolete tests for
5661 non-integerness of f->tool_bar_lines.
5662 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
5663 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
5664 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
5665 (nsfont_open): Don't confuse NULL for Qnil.
5666 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
5667 * menu.h (find_and_call_menu_selection):
5668 * menu.c (find_and_call_menu_selection): Use just int for vector size.
5669 (find_and_return_menu_selection): Always return something.
5670 * frame.h: Include dispextern.h for Display_Info.
5671 (display_x_get_resource): Declare.
5672
56732008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
5674
5675 * syntax.c: Remove stdio.h include accidentally introduced in
5676 Emacs.app commit.
5677 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
5678 NS_IMPL_COCOA.
5679 * keyboard.c (handle_async_input, input_available_signal): Remove
5680 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
5681
56822008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
5683
5684 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
5685 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
5686 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
5687 Use SDATA.
5688
5689 * keymap.c: Remove all NS-specific code.
5690 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
5691 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
5692 where_is_preferred_modifier, return a different value depending on how
5693 preferred is the binding.
5694 (where_is_internal): Adjust accordingly.
5695 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
5696 Adjust to new preferred_sequence_p.
5697 (syms_of_keymap): Declare `where-is-preferred-modifier'.
5698 * keyboard.c (parse_solitary_modifier): Not static any more.
5699 * keyboard.h (parse_solitary_modifier): Declare.
5700
57012008-07-16 Andreas Schwab <schwab@suse.de>
5702
5703 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
5704 of easymenu.
5705
57062008-07-16 Chong Yidong <cyd@stupidchicken.com>
5707
5708 * xdisp.c (move_it_in_display_line): Account for word wrap, so
5709 that we don't move off the line.
5710
57112008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
5712
5713 * keyboard.c (Qsuper): Remove.
5714 (parse_menu_item): Don't call where_is_internal specially for NS.
5715
57162008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
5717
5718 * s/gnu-linux.h: Remove boilerplate comments.
5719
5720 * m/alpha.h (__ELF__): Consolidate conditions.
5721
5722 * m/m68k.h (linux): Use GNU_LINUX instead.
5723 Remove boilerplate comments.
5724
5725 * m/intel386.h: Undo refactoring from previous change.
5726 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
5727 too, remove dead code.
5728 (linux): Use GNU_LINUX instead.
5729
57302008-07-16 Jason Rumney <jasonr@gnu.org>
5731
5732 * w32gui.h: Repeat 26 June changes lost by last change.
5733
57342008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
5735
5736 * systty.h: Remove code for Aix on 386, unsupported platform.
5737
5738 * s/ms-w32.h: Remove boilerplate comments.
5739 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
5740
5741 * s/gnu-linux.h (TERM): Remove support.
5742 (HAVE_SYSVIPC): Remove, unused.
5743 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
5744 for this system.
5745
5746 * process.c: Remove support for IRIS, unused.
5747 Remove support for TERM, not relevant anymore.
5748
5749 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
5750 used with the definition.
5751
5752 * s/aix4-2.h (static): Do not undef.
5753
5754 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
5755 only used on Aix.
5756 (HAVE_SYSVIPC): Remove, unused.
5757
5758 * m/hp800.h (CANNOT_DUMP): Do not undef.
5759
5760 * m/alpha.h: Fix comment.
5761
5762 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
5763 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
5764 used by this configuration.
5765 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
5766 * unexec.c: Remove code depending on HPUX and
5767 USG_SHARED_LIBRARIES, not used with this file. Remove code
5768 depending on IRIS, unused. Remove if 0-ed code.
5769
5770 * s/template.h: Remove comments about static.
5771
5772 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
5773 Remove if 0-ed code.
5774 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
5775 were the same as the default.
5776 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
5777 Remove boilerplate comments.
5778 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
5779 (HAVE_SYSVIPC): Remove, unused.
5780 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
5781
5782 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
5783 Remove boilerplate comments.
5784 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
5785 Remove boilerplate comments.
5786 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
5787 Remove boilerplate comments.
5788 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
5789
5790 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
5791 USG systems which do not use DATA_SEG_BITS.
5792 Refactor code. Remove boilerplate comments.
5793
5794 * m/ibms390.h:
5795 * m/m68k.h:
5796 * s/bsd-common.h:
5797 * s/cygwin.h:
5798 * s/darwin.h:
5799 * s/freebsd.h:
5800 * s/gnu.h:
5801 * s/msdos.h: Remove boilerplate comments.
5802
5803 * m/iris4d.h: Remove boilerplate comments and code for systems that
5804 do not use this file.
5805 (IRIS_4D): Remove, unused.
5806
5807 * m/mips.h: Remove boilerplate comments and code for systems that
5808 do not use this file.
5809 (SIGN_EXTEND_CHAR):
5810 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
5811 * unexmips.c: Remove file, unused.
5812
5813 * editfns.c (Fuser_full_name): Replace the only use of
5814 USER_FULL_NAME with its value.
5815 * config.in: Regenerate.
5816
58172008-07-16 David Reitter <david.reitter@gmail.com>
5818
5819 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
5820 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
5821
58222008-07-16 Glenn Morris <rgm@gnu.org>
5823
5824 * emacs.c (system-type): Doc fix.
5825
58262008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
5827
5828 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
5829 If the cache doesn't work, let's fix it, rather than work around it.
5830
58312008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
5832
5833 * Makefile.in: Correct additions for nsfont.o in last commit.
5834 * nsfont.m: New file (forgot last commit).
5835
58362008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
5837
5838 * callproc.c (set_initial_environment): Initialize
5839 Vprocess_environment under CANNOT_DUMP (fixes crash when
5840 batch-compiling for bootstrap).
5841
58422008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
5843 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5844
5845 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
5846 fix crash due to different init order.
5847
58482008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
5849
5850 Changes and additions for NeXTstep windowing system (Cocoa and
5851 GNUstep) support.
5852
5853 * Makefile.in:
5854 * config.in: Support defines and build commands for NS port.
5855 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
5856 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
5857 * dispextern.h: Include nsgui.h and add needed typedefs under NS
5858 windowing.
5859 (struct face): Add synth_ital field.
5860 * dispnew.c: Include nsterm.h when compiling under NS windowing.
5861 (init_display): Initialize Vinitial_window_system to "ns" when so
5862 compiled.
5863 * emacs.c: Include GSConfig.h when compiling under GNUstep.
5864 (display_arg): Use under NS.
5865 (main): Under NS, allocate autorelease pool and handle command line
5866 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
5867 (standard_args): Add NS-specific args.
5868 (shut_down_emacs): Shut down NS terminal if compiled under NS.
5869 * font.c (DEFAULT_ENCODING): New variable.
5870 (font_find_for_lface): Use it.
5871 (syms_of_font): Load syms_of_nsfont under NS.
5872 * font.h: Declare nsfont_driver when compiled under NS.
5873 * fontset.c: When compiling under NS, include nsterm.h.
5874 (fontset_from_font): Autoconstruct fontset under NS.
5875 * frame.c (various): Under NS, include nsterm.h, add Qns window system
5876 symbol, document and use it.
5877 (do_switch_frame): When for_deletion under Cocoa, add
5878 Fraise_frame(Qnil).
5879 (x_set_frame_parameters): Ensure font attribute changes are picked up.
5880 (x_get_arg): Allow "yes" and "no" as boolean values.
5881 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
5882 Qright under Cocoa.
5883 (focus-follows-mouse): Default to 0 under NS.
5884 * frame.h (enum output_method): Add output_ns.
5885 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
5886 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
5887 (FRAME_WINDOW_P): NS-specific definition.
5888 * fringe.c (max_used_fringe_bitmap): Make public.
5889 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
5890 (getloadavg): Use NeXT code under descendant OS's.
5891 * image.c (includes and header section, x_create_bitmap_from_data)
5892 (x_create_bitmap_from_file, free_bitmap_record, image_background)
5893 (image_background_transparent, x_clear_image_1)
5894 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
5895 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
5896 (x_to_xcolors, x_from_xcolors, x_disable_image)
5897 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
5898 other GUIs, including XPM support using code originally written for
5899 Carbon GUI.
5900 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
5901 using NS API.
5902 (image_ascent): Use font metrics macros instead of direct struct field
5903 access.
5904 * keyboard.c (includes): Add nsterm.h when compiling under NS.
5905 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
5906 Also, handle NS as GTK for menu bar purposes.
5907 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
5908 toolkit where they differ.
5909 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
5910 use cachelist, still needed under NS.
5911 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
5912 (struct widget_value): Define it here for menu.c.
5913 * keymap.c (includes): Include modifier internals.
5914 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
5915 NS.
5916 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
5917 support for preferring sequences using certain modifiers, specified by
5918 the FIRSTONLY argument.
5919 * lisp.h (hash_remove): Rename to avoid name clash when compiling
5920 under NS GNUstep implementation.
5921 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
5922 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
5923 * menu.c: Include nsterm.h under NS.
5924 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
5925 (free_menubar_widget_tree_value, update_submenu_strings)
5926 (find_and_call_menu_selection): Treat NS as X and NT.
5927 (find_and_return_menu_selection): New function, used for popup menus.
5928 * nsgui.h:
5929 * nsterm.h:
5930 * nsfns.m:
5931 * nsimage.m:
5932 * nsmenu.m:
5933 * nsselect.m:
5934 * nsterm.m: New files.
5935 * process.c (wait_reading_process_output): Under NS, call ns_select()
5936 instead of plain select().
5937 * syntax.c (char_quoted): Under NS, avoid a crash when called near
5938 beginning of buffer.
5939 * sysselect.h (init_process): Rename when compiling under Cocoa to
5940 avoid name conflict.
5941 * termhooks.h (display_info): Add ns_display_info to union.
5942 * terminal.c (Fterminal_live_p): Add ns to terminal types.
5943 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
5944 COCOA environment.
5945 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
5946 unexec() signature. (Note, this will dump, but the resulting file
5947 crashes; unexosx is used instead; keeping around for reference and
5948 possible aid in getting dump working under GNUstep.)
5949 * w32gui.h (button_type, widget_value): Remove definitions (now in
5950 keyboard.h).
5951 * window.c: Include nsterm.h when compiling under NS.
5952 * xdisp.c (includes): Include nsterm.h when compiling under NS.
5953 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
5954 other GUI windowing systems.
5955 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
5956 GTK.
5957 (x_consider_frame_title): Under NS, set icon type and frame
5958 modified-state indicator; use ns_set_name_as_filename() when using
5959 formatted title.
5960 (update_window_cursor): Make public when compiling under NS.
5961 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
5962 (hourglass_atimer, Vhourglass_delay
5963 * xfaces.c (header section, init_frame_faces, clear_font_table)
5964 (defined_color, unload_color, x_face_list_fonts)
5965 (prepare_face_for_display): Add NS support parallel to other GUIs.
5966 Emulate GCs like other non-X GUIs.
5967 (split_font_name): Don't lowercase font name under NS.
5968 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
5969 under NS.
5970 * s/darwin.h: Add support for compilation under NS.
5971
59722008-07-15 Jason Rumney <jasonr@gnu.org>
5973
5974 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
5975 (w32_show_hourglass): Rename from show_hourglass.
5976 (w32_hide_hourglass): Rename from hide_hourglass.
5977 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
5978 (Vhourglass_delay): Declare extern.
5979 (hourglass_started): Remove.
5980
5981 * xdisp.c (Vhourglass_delay): Remove static.
5982 (hourglass_started, start_hourglass, cancel_hourglass):
5983 Don't include these versions on WINDOWSNT.
5984
59852008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
5986
5987 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
5988 variables (formerly in xfns.c).
5989 (show_hourglass, hide_hourglass): New prototypes (same).
5990 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
5991 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
5992 in xfns.c).
5993 (syms_of_xdisp): Declare/initialize display-hourglass,
5994 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
5995 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
5996 formerly in xfns.c.
5997 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
5998 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
5999 (start_hourglass, cancel_hourglass): Remove.
6000 (show_hourglass, hide_hourglass): Remove prototypes and static
6001 modifiers.
6002 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
6003 hourglass_atimer, hourglass_shown_p declaration/initialization.
6004 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6005 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6006 (start_hourglass, cancel_hourglass): Remove.
6007 (show_hourglass, hide_hourglass): Remove prototypes and static
6008 modifiers.
6009 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
6010 hourglass_atimer, hourglass_shown_p declaration/initialization.
6011 * w32fns.c (display_hourglass_p, Vhourglass_delay)
6012 (DEFAULT_HOURGLASS_DELAY): Remove.
6013 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
6014 hourglass_shown_p declaration/initialization.
6015
60162008-07-14 Jason Rumney <jasonr@gnu.org>
6017
6018 * w32fns.c (w32_get_arg): Remove wrapper function.
6019 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
6020 directly.
6021 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
6022
60232008-07-14 Kenichi Handa <handa@m17n.org>
6024
6025 * xfont.c (xfont_open): Add workaround for X's bug.
6026
60272008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
6028
6029 * fontset.c: Include <stdio.h> unconditionally.
6030
60312008-07-13 Michael Albinus <michael.albinus@gmx.de>
6032
6033 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
6034 for filtering.
6035
60362008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
6037
6038 * s/vms.h: Use __GNUC__ instead of _GNUC_.
6039
6040 * m/macppc.h:
6041 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
6042
6043 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
6044 (SPECIAL_EMACS_INT):
6045 * m/ia64.h (SPECIAL_EMACS_INT):
6046 * m/amdx86-64.h (SPECIAL_EMACS_INT):
6047 * s/gnu.h (NLIST_STRUCT):
6048 * s/aix4-2.h (X11R5_INHIBIT_I18N):
6049 * s/gnu-linux.h (LINUX):
6050 * s/msdos.h (HAVE_FACES):
6051 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
6052
6053 * systty.h:
6054 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
6055 anymore.
6056
60572008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
6058
6059 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
6060 always defined as int.
6061
6062 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
6063 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
6064 * s/gnu-linux.h (HAVE_WAIT_HEADER):
6065 * s/freebsd.h (HAVE_WAIT_HEADER):
6066 * s/bsd-common.h (HAVE_UNION_WAIT):
6067 * s/aix4-2.h (HAVE_WAIT_HEADER):
6068 * m/mips.h (HAVE_UNION_WAIT):
6069 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
6070 (COFF, static): Do not define, they are undefined later in the file.
6071
6072 * process.c (update_status): Don't use a union.
6073 (status_convert):
6074 (sigchld_handler): Use int instead of WAITTYPE.
6075
60762008-07-12 Chong Yidong <cyd@stupidchicken.com>
6077
6078 * indent.c (Fvertical_motion): Restore hscroll before moving to
6079 goal column.
6080
60812008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6082
6083 * lisp.h: Remove left over code.
6084
60852008-07-11 Andreas Schwab <schwab@suse.de>
6086
6087 * lisp.h: Fix logic in last change.
6088
6089 * menu.h: New file.
6090 * menu.c: Include it.
6091 * xmenu.c: Likewise.
6092 * Makefile.in: Update dependencies.
6093
60942008-07-11 Kenichi Handa <handa@m17n.org>
6095
6096 * fontset.c (fontset_from_font): Cancel the previous change.
6097
60982008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6099
6100 * lisp.h:
6101 * w32heap.c:
6102 * emacs.c:
6103 * alloc.c: Replace all references of NO_UNION_TYPE with
6104 USE_LISP_UNION_TYPE.
6105
6106 * m/xtensa.h (NO_UNION_TYPE):
6107 * m/vax.h (NO_UNION_TYPE):
6108 * m/template.h (NO_UNION_TYPE):
6109 * m/sparc.h (NO_UNION_TYPE):
6110 * m/mips.h (NO_UNION_TYPE):
6111 * m/macppc.h (NO_UNION_TYPE):
6112 * m/m68k.h (NO_UNION_TYPE):
6113 * m/iris4d.h (NO_UNION_TYPE):
6114 * m/intel386.h (NO_UNION_TYPE):
6115 * m/ibms390x.h (NO_UNION_TYPE):
6116 * m/ibms390.h (NO_UNION_TYPE):
6117 * m/ibmrs6000.h (NO_UNION_TYPE):
6118 * m/ia64.h (NO_UNION_TYPE):
6119 * m/hp800.h (NO_UNION_TYPE):
6120 * m/arm.h (NO_UNION_TYPE):
6121 * m/amdx86-64.h (NO_UNION_TYPE):
6122 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
6123 defining it the same.
6124
61252008-07-10 Chong Yidong <cyd@stupidchicken.com>
6126
6127 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
6128
61292008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6130
6131 * fileio.c:
6132 * sysdep.c
6133 * systty.h:
6134 * m/ibmrs6000.h:
6135 * m/iris4d.h:
6136 * s/aix4-2.h:
6137 * s/freebsd.h:
6138 * s/gnu-linux.h:
6139 * s/hpux10-20.h:
6140 * s/hpux11.h:
6141 * s/netbsd.h:
6142 * s/sol2-3.h:
6143 * s/sol2-4.h:
6144 * s/sol2.h:
6145 * s/usg5-4.h:
6146 * s/vms.h: Remove references to unused variables.
6147
61482008-07-10 Andreas Schwab <schwab@suse.de>
6149
6150 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
6151 pattern before matching the generic family.
6152
61532008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6154
6155 * unexec.c:
6156 * s/vms.h:
6157 * s/usg5-4-2.h:
6158 * s/sol2-5.h:
6159 * s/freebsd.h:
6160 * s/darwin.h: Remove dead code.
6161
6162 * m/template.h:
6163 * m/sparc.h:
6164 * m/mips.h:
6165 * m/m68k.h:
6166 * m/iris4d.h:
6167 * m/intel386.h:
6168 * m/ibms390x.h:
6169 * m/ibms390.h:
6170 * m/ia64.h:
6171 * m/hp800.h:
6172 * m/arm.h:
6173 * m/amdx86-64.h: Remove dead code and references to unused
6174 and compiler defined symbols.
6175
6176 * unexmips.c:
6177 * unexelf.c: Remove references to desupported systems.
6178
6179 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
6180
6181 * m/powermac.h: Remove boilerplate comments.
6182 (NO_REMAP): Remove unused definition.
6183
6184 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
6185 define them.
6186
61872008-07-10 Kenichi Handa <handa@m17n.org>
6188
6189 * xfont.c (xfont_open): Log the reason of failure.
6190
61912008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
6192
6193 * fontset.c (fontset_get_font_group):
6194 * font.c (font_check_otf): Specify argument types.
6195
61962008-07-09 Kenichi Handa <handa@m17n.org>
6197
6198 * coding.c (detect_coding_utf_8): Set detect_info->found only when
6199 non-ASCII char is found.
6200
6201 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
6202 (reorder_font_vector): Change the arg preferred_family to font.
6203 Prefer the spec matching with font.
6204 (fontset_get_font_group): New function.
6205 (fontset_find_font): Change the format of an element of a realized
6206 fontset. Use fontset_get_font_group.
6207 (fontset_font): Try the current fontset, the default fontset, the
6208 fallbacks of the current fontset, and the fallbacks of the default
6209 fontset in this order.
6210 (face_for_char): Delete the shortcut to use the current font.
6211 (fontset_from_font): Don't set fonts for Latin in the fontset.
6212
6213 * font.h (font_make_object, font_match_p): Adjust prototypes.
6214
6215 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
6216
6217 * font.c (font_make_object): New arg entity and pixelsize.
6218 (font_check_otf_features, font_check_otf): New functions.
6219 (font_match_p): Check :lang, :script, and :otf properties.
6220
6221 * xfont.c (xfont_open): Adjust it for the change of
6222 font_make_object.
6223 (xfont_text_extents): Fix initial setting of metrics.
6224
6225 * ftfont.c (struct ftfont_info): New member index, delete member
6226 fc_charset_idx. Make the member order compatible with struct
6227 xftfont_info.
6228 (fc_charset_table): Change charset names to registry names.
6229 (ftfont_pattern_entity): Delete the args registry and
6230 fc_charset_idx. Change the value of :font-entity property
6231 to (FONTNAME . INDEX). Always set :registry property to
6232 `iso10646-1'.
6233 (struct ftfont_cache_data): New struct.
6234 (ftfont_lookup_cache): New arg for_face.
6235 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
6236 (ftfont_driver): Set the member otf_capability.
6237 (ftfont_get_charset): Adjust it for the change of
6238 fc_charset_table.
6239 (OTF_TAG_SYM): New macro.
6240 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
6241 for the change of fc_charset_table.
6242 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
6243 ftfont_pattern_entity. Add FC_INDEX to objset.
6244 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
6245 and ftfont_pattern_entity.
6246 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
6247 font_make_object, struct ftfont_info.
6248 (ftfont_has_char): Use ftfont_get_fc_charset.
6249 (ftfont_otf_features, ftfont_otf_capability): New functions.
6250 (ftfont_shape): Use ftfont_get_otf.
6251 (ftfont_text_extents): Fix initial setting of metrics.
6252
6253 * xftfont.c (struct xftfont_info): New member ft_size. Make the
6254 member order compatible with struct ftfont_info.
6255 (xftfont_open): Add FC_CHARSET to the pattern. Set
6256 xftfont_info->ft_size. Don't unlock the face. Check BDF
6257 properties if appropriate.
6258 (xftfont_close): Unlock the face.
6259 (xftfont_anchor_point, xftfont_shape): Deleted.
6260 (syms_of_xftfont): Don't set members anchor_point and shape of
6261 xftfont_driver.
6262
6263 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
6264 font_make_object.
6265
6266 * w32font.c (w32font_open): Adjust it for the change of
6267 font_make_object.
6268 (w32font_open_internal): Don't set properties of font_object here.
6269
62702008-07-08 Chong Yidong <cyd@stupidchicken.com>
6271
6272 * macfns.c (x_create_tip_frame):
6273 * w32fns.c (x_create_tip_frame):
6274 * xfns.c (x_create_tip_frame): Pass parameter argument to
6275 face-set-after-frame-default.
6276
6277 * xfaces.c (Finternal_merge_in_global_face): Save merged
6278 attributes for the default face back into the face vector.
6279
62802008-07-08 Andreas Schwab <schwab@suse.de>
6281
6282 * fontset.h: Declare fontset_from_font. Don't declare
6283 new_fontset_from_font and fontset_from_font_name.
6284 * xterm.c: Include "fontset.h".
6285 * Makefile.in (xterm.o): Update dependencies.
6286
62872008-07-08 Glenn Morris <rgm@gnu.org>
6288
6289 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
6290 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
6291
62922008-07-07 Chong Yidong <cyd@stupidchicken.com>
6293
6294 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
6295 (x_set_frame_parameters): Don't bind it.
6296
62972008-07-07 Juanma Barranquero <lekktu@gmail.com>
6298
6299 * w32fns.c (map_w32_filename): Declare extern.
6300
63012008-07-07 Jason Rumney <jasonr@gnu.org>
6302
6303 * w32term.c (WS_EX_LAYERED): Define if not already.
6304
63052008-07-06 Chong Yidong <cyd@stupidchicken.com>
6306
6307 * xfaces.c (set_font_frame_param): Don't try to set the font
6308 parameter if it is still unspecified in the lface.
6309
63102008-07-05 Chong Yidong <cyd@stupidchicken.com>
6311
6312 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
6313 face if it didn't already exist.
6314
6315 * xdisp.c (try_window_id): Give up if word-wrapping is on.
6316
63172008-07-05 Andreas Schwab <schwab@suse.de>
6318
6319 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
6320
63212008-07-05 Chong Yidong <cyd@stupidchicken.com>
6322
6323 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
6324 word-wrapping.
6325 (IT_DISPLAYING_WHITESPACE): New macro.
6326 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
6327 when word-wrapping. Simplify word-wrapping logic. Use correct
6328 pixel positions when saving copies of the iterator.
6329 (display_line): Use proper wrap point if the last character on a
6330 line was preceded by whitespace.
6331
63322008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
6333
6334 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
6335
63362008-07-04 Kenichi Handa <handa@m17n.org>
6337
6338 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
6339
6340 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
6341
63422008-07-02 Jason Rumney <jasonr@gnu.org>
6343
6344 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 6345 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
6346
6347 * xdisp.c (next_element_from_display_vector): Move assignment out
6348 of if statement.
6349
63502008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
6351
6352 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
6353
6354 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
6355 (syms_of_fileio): Initialize and export them.
6356 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
6357
6358 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
6359 (Fsystem_move_file_to_trash): New function.
6360 (syms_of_w32fns): Export it to lisp.
6361
63622008-07-01 Jason Rumney <jasonr@gnu.org>
6363
6364 * w32font.c (w32font_text_extents): Don't count overhang as part
6365 of width.
6366
63672008-06-30 Miles Bader <miles@gnu.org>
6368
6369 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
6370 Add `avoid_cursor_p' field.
6371
6372 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
6373 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
6374 (append_glyph, append_composite_glyph, produce_image_glyph)
6375 (append_stretch_glyph): Initialize avoid_cursor_p.
6376 (get_it_property): Rename from `get_line_height_property'.
6377 (x_produce_glyphs): Use get_it_property.
6378 (handle_line_prefix, push_display_prop): New functions.
6379 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
6380 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
6381 New variables.
6382 (syms_of_xdisp): Initialize them.
6383
63842008-06-30 Kenichi Handa <handa@m17n.org>
6385
6386 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
6387 XftDefaultSubstitute (they are called in XftFontMatch).
6388 (xftfont_open): Fix args to ftfont_font_format.
6389
6390 * ftfont.c (fc_charset_table): New member lang.
6391 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 6392 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
6393 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
6394 (ftfont_open): Fix args to ftfont_font_format.
6395 (ftfont_font_format): New arg filename.
6396
63972008-06-30 Chong Yidong <cyd@stupidchicken.com>
6398
6399 * xfaces.c (Finternal_merge_in_global_face): If default face was
6400 modified, realize it again. Update the font face attribute.
6401
64022008-06-29 Jason Rumney <jasonr@gnu.org>
6403
6404 * w32term.c (x_set_frame_alpha): Fix logic.
6405
64062008-06-29 Kenichi Handa <handa@m17n.org>
6407
6408 * fontset.c (Finternal_char_font): Return font-object instead of
6409 font-name.
6410
6411 * composite.c (get_composition_id): Fix the width calculation for TAB.
6412
64132008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
6414
6415 * indent.c (Fvertical_motion): Properly handle float column arg.
6416
64172008-06-28 Jason Rumney <jasonr@gnu.org>
6418
6419 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
6420 (pfnSetLayeredWindowAttributes): New function pointer.
6421 (w32_initialize): Initialize it when supported.
6422 (x_set_frame_alpha): New function.
6423
6424 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
6425 (w32_frame_parm_handlers): Set alpha handler.
6426
6427 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
6428
64292008-06-27 Jason Rumney <jasonr@gnu.org>
6430
6431 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
6432 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
6433 (w32_to_x_charset, x_to_w32_charset)
6434 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
6435 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
6436 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
6437 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
6438 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
6439 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
6440 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
6441 (Qw32_charset_unicode): Remove.
6442 (syms_of_w32fns): Update for above changes.
6443
6444 * w32font.c (w32_to_x_charset, x_to_w32_charset)
6445 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
6446 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
6447 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
6448 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
6449 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
6450 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
6451 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
6452 (syms_of_w32font): Update for above changes.
6453
64542008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
6455
6456 * s/usg5-4.h: Fix previous change: keep the correct branch of a
6457 removed #if.
6458 (USG_SHARED_LIBRARIES): Remove duplicate definition.
6459
64602008-06-26 Juanma Barranquero <lekktu@gmail.com>
6461 Eli Zaretskii <eliz@gnu.org>
6462
6463 * makefile.w32-in (LOCAL_FLAGS):
6464 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
6465
6466 * sysdep.c (_spawnlp, _getpid):
6467 Declare with explicit _cdecl instead of _CRTAPI1.
6468
6469 * editfns.c (Fget_internal_run_time):
6470 Check for WINDOWSNT with #ifdef, not #if.
6471
64722008-06-26 Jason Rumney <jasonr@gnu.org>
6473
6474 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
6475
6476 * w32term.c (x_draw_glyph_string_foreground)
6477 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
6478 Use FONT_HANDLE macro.
6479 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
6480
6481 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
6482 (uniscribe_encode_char): Use FONT_HANDLE macro.
6483
6484 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
6485 (w32font_text_extents): Use precast w32_font.
6486 (w32font_close): Free cached metrics.
6487 (w32font_open_internal): Allocate space for name on stack.
6488
64892008-06-26 Chong Yidong <cyd@stupidchicken.com>
6490
6491 * xdisp.c (extend_face_to_end_of_line): Fix last change.
6492
64932008-06-26 Jason Rumney <jasonr@gnu.org>
6494
6495 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
6496 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
6497
64982008-06-26 Juanma Barranquero <lekktu@gmail.com>
6499
6500 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
6501
65022008-06-26 Jason Rumney <jasonr@gnu.org>
6503
6504 * w32bdf.c, w32bdf.h: Remove obsolete files.
6505
6506 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
6507
6508 * w32gui.h: Don't include w32bdf.h.
6509 (XCharStruct, enum w32_char_font_type, W32FontStruct):
6510 Remove obsolete font support.
6511
6512 * w32font.h (struct w32font_info): Remove compat_w32_font.
6513 Add hfont member.
6514 (FONT_COMPAT): Remove obsolete macro.
6515
6516 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
6517 (w32font_encode_char, w32font_text_extents): Use new hfont member.
6518 (w32font_open_internal): Remove compat code. Set new hfont member.
6519 (Fx_select_font): Use new hfont member.
6520
6521 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
6522 (uniscribe_encode_char): Use new hfont member.
6523
6524 * w32term.c (x_draw_glyph_string_foreground)
6525 (x_draw_composite_glyph_string_foreground): Use new hfont member.
6526 (x_draw_glyph_string): Use metrics in w32font_info.
6527
65282008-06-26 Kenichi Handa <handa@m17n.org>
6529
6530 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
6531
65322008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
6533
6534 * unexnext.c:
6535 * m/ews4800.h:
6536 * m/hp9000s300.h:
6537 * m/ibm370aix.h:
6538 * m/mips-siemens.h:
6539 * m/ncr386.h:
6540 * m/next.h:
6541 * m/pmax.h:
6542 * m/powerpcle.h:
6543 * m/tandem-s2.h:
6544 * s/386bsd.h:
6545 * s/bsd386.h:
6546 * s/bsd4-1.h:
6547 * s/bsd4-2.h:
6548 * s/bsdos2-1.h:
6549 * s/bsdos2.h:
6550 * s/bsdos3.h:
6551 * s/bsdos4.h:
6552 * s/nextstep.h:
6553 * s/ultrix4-3.h:
6554 * s/usg5-0.h:
6555 * s/usg5-2-2.h:
6556 * s/usg5-2.h:
6557 * s/usg5-4-3.h:
6558 * s/ux4800.h:
6559 * s/uxpds.h:
6560 * s/uxpv.h: Remove support for obsolete systems.
6561 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 6562 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
6563 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
6564 Remove, insert contents in s/aix4-2.h.
6565 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
6566 * s/bsd4-3.h: Rename to ...
6567 * s/bsd-common.h: ... this.
6568 * data.c:
6569 * doc.c:
6570 * ecrt0.c:
6571 * emacs.c:
6572 * fileio.c:
6573 * floatfns.c:
6574 * keyboard.c:
6575 * mem-limits.h:
6576 * print.c:
6577 * process.c:
6578 * sysdep.c:
6579 * syssignal.h:
6580 * systty.h:
6581 * syswait.h:
6582 * term.c:
6583 * unexec.c:
6584 * unexelf.c:
6585 * unexhp9k800.c:
6586 * m/hp800.h:
6587 * m/ibmrs6000.h:
6588 * m/mips.h:
6589 * m/vax.h:
6590 * s/darwin.h:
6591 * s/freebsd.h:
6592 * s/gnu.h:
6593 * s/ms-w32.h:
6594 * s/msdos.h:
6595 * s/netbsd.h:
6596 * s/template.h: Remove references to obsolete variables.
6597
6598 * Makefile.in: Add dependencies for all unexec files.
6599 (admindir): Remove unused variable.
6600 (UNEXEC_SRC): Remove references.
6601
66022008-06-25 Chong Yidong <cyd@stupidchicken.com>
6603
6604 * xfns.c (x_default_font_parameter): If Xft is available, first
6605 try Monospace-12 for the default font.
6606
66072008-06-25 Jason Rumney <jasonr@gnu.org>
6608
6609 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
6610
66112008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
6612
6613 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
6614
6615 * buffer.c (syms_of_buffer): Remove default-word-wrap.
6616
66172008-06-25 Juanma Barranquero <lekktu@gmail.com>
6618
6619 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
6620 <scroll-conservatively>: Fix typo in docstring.
6621
6622 * xselect.c (Fx_send_client_event): Doc fix.
6623
66242008-06-25 Kenichi Handa <handa@m17n.org>
6625
6626 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
6627
6628 * font.c (font_parse_fcname): Remove unused variables.
6629 (font_sort_entites): Delete the arg SPEC. Caller changed.
6630 Fix for the case of ! best_only.
6631 (font_delete_unmatched): Check DPI and AVGWIDTH too.
6632
6633 * lisp.h (Fstring_to_unibyte): EXFUN it.
6634
6635 * character.h (str_to_unibyte): Extern it.
6636
6637 * character.c (str_to_unibyte): New function.
6638
6639 * fns.c (Fstring_to_unibyte): New function.
6640 (syms_of_fns): Defsubr it.
6641
66422008-06-24 Kenichi Handa <handa@m17n.org>
6643
6644 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
6645 DPI too.
6646 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
6647
66482008-06-24 Andreas Schwab <schwab@suse.de>
6649
6650 * Makefile.in (${lispsource}loaddefs.el): Rename from
6651 ../lisp/loaddefs.el.
6652 (bootstrap-clean): Do what distclean does but don't remove
6653 Makefile.
6654 (distclean): Depend on bootstrap-clean and remove Makefile.
6655
66562008-06-24 Chong Yidong <cyd@stupidchicken.com>
6657
6658 * buffer.h (struct buffer): New member word_wrap.
6659
6660 * buffer.c (syms_of_buffer): New variables default-word-wrap and
6661 word-wrap.
6662 (init_buffer_once): Initialize them.
6663
6664 * dispextern.h (struct it): Replace bool truncate_lines_p with a
6665 line_wrap enum possessing three possible values.
6666
6667 * termopts.h: Replace truncate_partial_width_windows with
6668 Vtruncate_partial_width_windows.
6669
6670 * dispnew.c (direct_output_for_insert): Avoid direct output when
6671 inserting a space with word wrap on.
6672
6673 * indent.c (compute_motion): Obey integer values of
6674 truncate-partial-width-windows.
6675
6676 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
6677 replacing truncate_partial_width_windows.
6678 (init_iterator): If Vtruncate_partial_width_windows is an integer,
6679 truncate only if the window width is below that integer.
6680 (start_display, resize_mini_window, produce_stretch_glyph)
6681 (display_string, move_it_in_display_line_to): Use line_wrap.
6682 (back_to_previous_visible_line_start, reseat_1): Reset
6683 string_from_display_prop_p.
6684 (display_line): Extend default face to end of line when wrapping.
6685
66862008-06-24 Kim F. Storm <storm@cua.dk>
6687
6688 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
6689 to wrap continued lines at word boundaries.
6690
66912008-06-24 Jason Rumney <jasonr@gnu.org>
6692
6693 * font.c (Ffont_face_attributes): Multiply pixel size before point
6694 conversion to avoid multiplying rounding error.
6695
66962008-06-23 Jason Rumney <jasonr@gnu.org>
6697
6698 * w32term.c (x_draw_glyph_string_background)
6699 (x_draw_glyph_string): Remove old bdf font code.
6700
6701 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
6702
67032008-06-22 Kenichi Handa <handa@m17n.org>
6704
6705 * font.c (font_find_for_lface): Try the adstyle specified in
6706 the property of LFACE_FONT of LFACE (if any).
6707
67082008-06-21 Seiji Zenitani <zenitani@mac.com>
6709 Ryo Yoshitake <ryo@shiftmode.net>
6710
6711 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
6712
67132008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
6714
6715 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
6716 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
6717 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
6718 (witness-emacs): Remove.
6719 (lisp, shortlisp): Move loaddefs.el earlier.
6720 (mostlyclean): Forget about witness-emacs.
6721
67222008-06-22 Glenn Morris <rgm@gnu.org>
6723
6724 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
6725 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
6726
67272008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
6728
6729 * Makefile.in (PRECOMP): Remove.
6730 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
6731 (witness-emacs): Run `compile-first'.
6732 (.el.elc): Use the new compile-onefile target.
6733
67342008-06-21 Kenichi Handa <handa@m17n.org>
6735
6736 * xftfont.c (xftfont_open): Handle QCembolden only when
6737 FC_EMBOLDEN is defined.
6738
67392008-06-21 Andreas Schwab <schwab@suse.de>
6740
6741 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
6742 (.el.elc): Likewise.
6743
67442008-06-21 Miles Bader <miles@gnu.org>
6745
6746 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
6747 build dir, not the lisp source dir.
6748
67492008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
6750
6751 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
6752 (bootstrapclean): Remove.
6753 (.el.elc): New rule.
6754 (PRECOMP): New var.
6755 (../lisp/subdirs.el): Remove.
6756 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
6757 (witness-emacs): New target.
6758 (mostlyclean): Remove witness-emacs as well.
6759 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
6760 Add witness-emacs dependency.
6761
67622008-06-20 Chong Yidong <cyd@stupidchicken.com>
6763
6764 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
6765 defined by the font.
6766
67672008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
6768
6769 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
6770 (bootstrap-clean): New target that keeps TAGS around.
6771 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
6772 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
6773
67742008-06-20 Jason Rumney <jasonr@gnu.org>
6775
6776 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
6777 Remove obsolete font code.
6778
6779 * w32font.c (font_matches_spec): Use csb bitfield from font signature
6780 to determine language support.
6781
67822008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
6783
6784 * sysdep.c (cfsetspeed): New fun extracted from the code.
6785 (cfmakeraw): Move before first use.
6786
67872008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
6788
6789 * sysdep.c (cfmakeraw): Provide fallback implementation.
6790 (serial_configure): Provide fallback implementation of cfsetspeed.
6791
67922008-06-20 Kenichi Handa <handa@m17n.org>
6793
6794 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
6795 the pattern.
6796
6797 * fontset.c (fontset_from_font): Copy font_spec before changing
6798 the elements.
6799
6800 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
6801
68022008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
6803
6804 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
6805 for explicit `font' parameters.
6806
6807 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
6808
68092008-06-19 Kenichi Handa <handa@m17n.org>
6810
6811 * frame.c: Include <ctype.h>.
6812 (x_set_font_backend): Allow spacing characters in the X resource
6813 for FontBackend.
6814
68152008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
6816
6817 * w32fns.c, xfns.c (Qfont_param): New var.
6818 (syms_of_w32fns): Initialize it.
6819 (x_default_font_parameter): Record explicit `font' into
6820 `font-parameter'.
6821
68222008-06-18 Kenichi Handa <handa@m17n.org>
6823
6824 * font.c (font_parse_xlfd): Fix previous change.
6825 (font_parse_fcname): Don't use :fc-unknown-spec.
6826 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
6827 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
6828 (font_add_log): Prepend the driver name to the resulting fonts.
6829
6830 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
6831 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
6832 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
6833
6834 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
6835 (QCembolden): New variables.
6836 (syms_of_xftfont): DEFSYM them.
6837 (xftfont_open): Call XftFontMatch. Don't trust the result of
6838 XftTextExtents8 if the pixel_size is less than 5.
6839
68402008-06-18 Andreas Schwab <schwab@suse.de>
6841
6842 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
6843 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
6844
68452008-06-18 Jason Rumney <jasonr@gnu.org>
6846
6847 * w32font.c (w32font_list, w32font_match): Add logging.
6848
6849 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
6850
68512008-06-17 Chong Yidong <cyd@stupidchicken.com>
6852
6853 * font.c (font_parse_fcname): Store divider characters for
6854 unknown-spec list. For known key symbols, intern using correct
6855 symbol name.
6856
68572008-06-17 Kenichi Handa <handa@m17n.org>
6858
6859 * xfaces.c (realize_default_face): If the frame is not on window
6860 system, set the fontset of face to nil.
6861
68622008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
6863
6864 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
6865
68662008-06-16 Juanma Barranquero <lekktu@gmail.com>
6867
6868 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
6869 (build_font_name_from_vector): Delete externs.
6870
6871 * xfaces.c (struct font_name): Don't declare.
6872
68732008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
6874
6875 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
6876
68772008-06-16 Chong Yidong <cyd@stupidchicken.com>
6878
6879 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
6880
68812008-06-16 Juanma Barranquero <lekktu@gmail.com>
6882
6883 * font.c (Ffont_spec): Fix usage in docstring.
6884 (Ffont_face_attributes): Doc fix.
6885
68862008-06-16 Andreas Schwab <schwab@suse.de>
6887
6888 * font.c (Ffont_face_attributes): Fix definition.
6889
68902008-06-16 Jason Rumney <jasonr@gnu.org>
6891
6892 * font.h (font_style_symbolic_from_value): Remove.
6893
6894 * font.c (font_style_symbolic_from_value): Remove.
6895 (font_style_symbolic): Revert to pre 2008-06-13 version.
6896
6897 * w32font.c (w32_to_fc_weight): New function.
6898 (w32font_full_name, logfont_to_fcname): Use it.
6899
69002008-06-16 Kenichi Handa <handa@m17n.org>
6901
6902 * font.c (font_check_object): Delete it.
6903 (font_clear_cache): Check if a font-object is alive.
6904 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
6905 font-object to nil.
6906 (font_close_object): Don't check FONT_CLOSE_OBJECT.
6907 (font_at): Don't call font_check_object.
6908 (Ffont_get): Return a symbol for :weight, :slant, and :width.
6909
69102008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
6911
6912 * puresize.h (BASE_PURESIZE): Increase to 1230000.
6913
69142008-06-16 Chong Yidong <cyd@stupidchicken.com>
6915
6916 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
6917
69182008-06-15 Chong Yidong <cyd@stupidchicken.com>
6919
6920 * font.c (font_parse_fcname): Only one decimal point.
6921 (font_unparse_fcname): Handle data in family and foundry indices
6922 as symbols, not strings.
6923 (font_unparse_gtkname, Ffont_face_attributes): New functions.
6924
6925 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
6926
6927 * font.h (font_unparse_gtkname): Add prototype.
6928
69292008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
6930
6931 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
6932
69332008-06-15 Andreas Schwab <schwab@suse.de>
6934
6935 * font.c (font_update_drivers): Fix crash when no drivers match.
6936
69372008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
6938
6939 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
6940 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
6941
69422008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
6943
6944 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
6945
69462008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
6947
6948 * process.c (Fserial_process_configure, Fprocess_send_eof):
6949 Use EQ to compare Lisp_Objects.
6950
69512008-06-13 Jason Rumney <jasonr@gnu.org>
6952
6953 * w32fns.c (Fw32_select_font): Remove old font API function.
6954
6955 * w32font.c (logfont_to_fcname): New function.
6956 (Fx_select_font): New font dialog function compatible with
6957 GTK/fontconfig version.
6958
6959 * font.c (font_style_symbolic_from_value): New function.
6960 (font_style_symbolic): Use it.
6961
6962 * font.h (font_style_symbolic_from_value): Declare new function.
6963
69642008-06-13 Juanma Barranquero <lekktu@gmail.com>
6965
6966 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
6967 <font-width-table>: Fix typos in docstrings.
6968
69692008-06-13 Daniel Engeler <engeler@gmail.com>
6970
6971 These changes add serial port access.
6972 * process.c: Add HAVE_SERIAL.
6973 (Fdelete_process, Fprocess_status, Fset_process_buffer)
6974 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
6975 (list_processes_1, select_wrapper, Fstop_process)
6976 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
6977 (status_notify): Modify to handle serial processes.
6978 [HAVE_SERIAL] (Fserial_process_configure)
6979 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
6980 New functions.
6981 * process.h (struct Lisp_Process): Add `type'.
6982 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
6983 New functions.
6984 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
6985 serial ports.
b71ac3dd 6986 (serial_open, serial_configure): New functions.
aac0c6e3
MR
6987 * w32.h: Add FILE_SERIAL.
6988 (struct _child_process): Add ovl_read, ovl_write.
6989
69902008-06-13 Kenichi Handa <handa@m17n.org>
6991
6992 * dispextern.h (enum lface_attribute_index): New member
6993 LFACE_FOUNDRY_INDEX.
6994
6995 * font.c (font_score): Delete arg alternate_families. Check only
6996 weight, slant, width, and size. Ignore the difference of alias
6997 style symbols.
6998 (font_sort_entites): Adjust for the above change. Reflect the
6999 order of font-driver to scores.
7000 (font_list_entities): Don't check alternate_familes here.
7001 (font_clear_prop): Handle foundry.
7002 (font_update_lface): Don't parse "foundry-family" form here.
7003 Handle FONT_FOUNDRY_INDEX.
7004 (font_find_for_lface): Likewise. Handle alternate families here.
7005 If registry is nil, try iso8859-1 and ascii-0.
7006 (font_open_for_lface): Pay attention to size in ENTITY.
7007 (font_open_by_name): Simplify by calling font_load_for_lface.
7008 (free_font_driver_list): Delete it.
7009 (font_update_drivers): Preserve the order of backends.
7010 (syms_of_font): Setting of sort_shift_bits adjusted for the change
7011 of font_score and font_sort_entites.
7012 (font_update_sort_order): Likewise.
7013
7014 * xfaces.c (LFACE_FOUNDRY): New macro.
7015 (check_lface_attrs): Check foundry.
7016 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
7017 (merge_face_vectors): Check foundry.
7018 (merge_face_ref): Likewise.
7019 (Finternal_set_lisp_face_attribute): Likewise.
7020 (x_update_menu_appearance): Likewise.
7021 (Finternal_get_lisp_face_attribute): Likewise.
7022 (lface_hash): Likewise.
7023 (lface_same_font_attributes_p): Likewise.
7024 (x_supports_face_attributes_p): Likewise.
7025 (tty_supports_face_attributes_p): Likewise.
7026 (Finternal_set_alternative_font_family_alist): Intern strings.
7027 (Finternal_set_alternative_font_registry_alist): Downcase strings.
7028 (realize_default_face): Set LFACE_FOUNDRY (lface).
7029
7030 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
7031 font-driver at first.
7032
7033 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
7034
70352008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7036
7037 * lread.c (Fload): Use xfree, not free on saved_doc_string.
7038
70392008-06-12 Jim Meyering <meyering@redhat.com>
7040
7041 Make unexec_free handle NULL the same way free does.
7042 * unexmacosx.c (unexec_free): Ignore a NULL argument.
7043
70442008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
7045
7046 * character.h (CHAR_TO_BYTE_SAFE): New macro.
7047 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
7048 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
7049 (WEAK_ALIAS): Simplify.
7050 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
7051 when searching a unibyte buffer.
7052
70532008-06-12 Chong Yidong <cyd@stupidchicken.com>
7054
7055 * xfns.c (Fx_select_font): Rename from x-font-dialog.
7056
70572008-06-12 Juanma Barranquero <lekktu@gmail.com>
7058
7059 * w32font.c: Include ctype.h.
7060
70612008-06-11 Jason Rumney <jasonr@gnu.org>
7062
7063 * w32font.c (w32font_encode_char): Detect missing glyphs that are
7064 misreported as space.
7065 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
7066 as aliases for registry iso10646-1.
7067
70682008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
7069
7070 * buffer.c (clone_per_buffer_values): Skip `name'.
7071
70722008-06-11 Chong Yidong <cyd@stupidchicken.com>
7073
7074 * font.c (font_parse_fcname): Fix last change; accept decimal
7075 points in font size.
7076
70772008-06-10 Jason Rumney <jasonr@gnu.org>
7078
7079 * w32uniscribe.c (add_opentype_font_name_to_list):
7080 Skip non unicode fonts.
7081
70822008-06-10 Chong Yidong <cyd@stupidchicken.com>
7083
7084 * xfns.c (Fx_font_dialog): New function.
7085
7086 * gtkutil.c (xg_dialog_response_cb): Rename from
7087 xg_file_response_callback.
7088 (pop_down_dialog): Rename from pop_down_file_dialog.
7089 (xg_get_file_name): Callers changed.
7090 (xg_get_font_name): New function.
7091
7092 * gtkutil.h (xg_get_font_name): Insert prototype.
7093
70942008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7095
7096 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
7097 x_underline_minimum_display_offset.
7098 (syms_of_xdisp): Declare it here rather than in xterm.c.
7099 * dispextern.h (underline_minimum_offset): Declare it.
7100 * w32term.c (x_draw_glyph_string): Use it.
7101 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
7102 (syms_of_xterm): Don't declare it any more.
7103 (x_draw_glyph_string): Adjust to the new name.
7104
71052008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
7106
7107 * xterm.c (x_underline_minimum_display_offset): New var.
7108 (x_draw_glyph_string): Use it.
7109 (syms_of_xterm): Declare it.
7110
71112008-06-10 Chong Yidong <cyd@stupidchicken.com>
7112
7113 * font.c (font_parse_fcname): Accept GTK-style font names too.
7114
71152008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7116
7117 * dired.c (file_name_completion): Don't return t if the match is exact
7118 but with different capitalization.
7119 * minibuf.c (Ftry_completion): Simplify.
7120
7121 * window.c (Vwindow_point_insertion_type): New var.
7122 (set_window_buffer): Use it.
7123 (syms_of_window): Init and export it to Lisp.
7124
71252008-06-10 Kenichi Handa <handa@m17n.org>
7126
7127 * font.h (font_intern_prop): Prototype adjusted.
7128
7129 * font.c (font_intern_prop): New arg force_symbol.
7130 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
7131 Adjust for the change of font_intern_prop.
7132
7133 * ftfont.c (ftfont_pattern_entity):
7134 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
7135 (w32_registry):
7136 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
7137 the change of font_intern_prop.
7138
71392008-06-09 Juanma Barranquero <lekktu@gmail.com>
7140
7141 * w32menu.c (digest_single_submenu): Declare extern.
7142
71432008-06-09 Jason Rumney <jasonr@gnu.org>
7144
7145 * w32term.c (x_make_frame_visible): Use alternate restore flags.
7146
7147 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
7148 (parse_single_submenu): Remove.
7149 (digest_single_submenu): Remove.
7150 (syms_of_w32menu): Don't initialise variables that have moved
7151 to menu.c.
7152 (set_frame_menubar): Sync with version in xmenu.c.
7153 (w32_menu_show): Sync with xmenu_show in xmenu.c.
7154
7155 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
7156 Make static again.
7157
71582008-06-09 Jason Rumney <jasonr@gnu.org>
7159
7160 Changes to w32 files related to the move of common menu code
7161 to menu.c on 2008-06-08 by Chong Yidong.
7162
7163 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
7164 defs to w32gui.h.
7165 (single_keymap_panes, push_menu_item, push_menu_pane):
7166 Make globally visible.
7167
7168 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
7169 (local_free, malloc_widget_value, free_widget_value)
7170 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
7171 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
7172 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
7173 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
7174 (menu_items, menu_items_allocated, menu_items_used)
7175 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
7176 (init_menu_items, finish_menu_items, discard_menu_items)
7177 (grow_menu_items, push_submenu_start, push_submenu_end)
7178 (push_left_right_boundary, push_menu_pane, push_menu_item)
7179 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
7180 (free_menubar_widget_tree_value, parse_single_submenu)
7181 (update_submenu_strings): Remove functions.
7182 (xmalloc_widget_value): Remove and declare extern.
7183
7184 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
7185 (OBJ1): Build it.
7186
7187 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
7188 (local_heap, local_alloc, local_free, malloc_widget_value)
7189 (free_widget_value): Define here.
7190
71912008-06-09 Kenichi Handa <handa@m17n.org>
7192
7193 * font.h (Qascii_0): Extern it.
7194
7195 * font.c (Qascii_0): New variable.
7196 (syms_of_font): DEFSYM it.
7197 (font_open_by_name): If the registry "iso8859-1" fails, try also
7198 "ascii-0".
7199
7200 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
7201
72022008-06-08 Kenichi Handa <handa@m17n.org>
7203
7204 * .gdbinit (xfont): New command.
7205
72062008-06-08 Andreas Schwab <schwab@suse.de>
7207
7208 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
7209 * Makefile.in (menu.o): Update dependencies.
7210
7211 * Makefile.in (obj): Always add menu.o.
7212 * emacs.c (main): Always call syms_of_menu.
7213 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
7214
72152008-06-08 Chong Yidong <cyd@stupidchicken.com>
7216
7217 * Makefile.in: Compile menu.c.
7218
7219 * lisp.h: Declare syms_of_menu.
7220
7221 * emacs.c (main): Call syms_of_menu.
7222
7223 * keyboard.h: Relocate platform-independent menu definitions from
7224 xmenu.c.
7225
7226 * menu.c: New file. Relocate platform-independent menu
7227 definitions from xmenu.c. Suggested by Adrian Robert.
7228
7229 * xmenu.c: Remove platform-independent menu definitions.
7230 (menu_items menu_items_inuse, menu_items_allocated)
7231 (menu_items_used, menu_items_n_panes)
7232 (menu_items_submenu_depth): Move to keyboard.h.
7233 (init_menu_items, finish_menu_items, unuse_menu_items)
7234 (discard_menu_items, restore_menu_items, save_menu_items)
7235 (grow_menu_items, push_submenu_start, push_submenu_end)
7236 (push_left_right_boundary, push_menu_pane, push_menu_item)
7237 (keymap_panes, single_keymap_panes, single_menu_item)
7238 (list_of_panes, list_of_items, find_and_call_menu_selection)
7239 (xmalloc_widget_value, free_menubar_widget_value_tree)
7240 (parse_single_submenu, digest_single_submenu)
7241 (update_submenu_strings): Move to menu.c.
7242
72432008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
7244
7245 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
7246
72472008-06-06 Miles Bader <miles@gnu.org>
7248
7249 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
7250 face, not frame default.
7251
72522008-06-05 Martin Rudalics <rudalics@gmx.at>
7253
7254 * window.c (pop_up_windows, pop_up_frames)
7255 (display_buffer_reuse_frames, Vpop_up_frame_function)
7256 (Vdisplay_buffer_function, Veven_window_heights)
7257 (Vspecial_display_buffer_names, Vspecial_display_regexps)
7258 (Vspecial_display_function, Vsame_window_buffer_names)
7259 (Vsame_window_regexps, split_height_threshold)
7260 (Vsplit_window_preferred_function): Move those vars to window.el.
7261 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
7262 (Fdisplay_buffer): Move those functions to window.el.
7263 (syms_of_window): Remove corresponding declarations.
7264 (display_buffer): New function.
7265 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
7266 * dispnew.c (Flast_nonminibuf_frame): New function.
7267 * buffer.c (Fpop_to_buffer): Move to window.el.
7268
72692008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7270
7271 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
7272
72732008-06-05 Kenichi Handa <handa@m17n.org>
7274
7275 * coding.c (detect_coding): Fix previous change.
7276 (detect_coding_system): Likewise.
7277
72782008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7279
7280 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
7281
7282 * keymap.c (Vminibuffer_local_filename_must_match_map):
7283 Rename from Vminibuffer_local_must_match_filename_map.
7284 (syms_of_keymap):
7285 * minibuf.c (Fcompleting_read): Adjust accordingly.
7286 * commands.h: Rename declaration as well.
7287
72882008-06-05 Kenichi Handa <handa@m17n.org>
7289
7290 * font.c (Ffont_spec): Don't use font_parse_family_registry for
7291 family name.
7292 (Ffont_put): Likewise.
7293
7294 * fontset.c (fontset_find_font): Call font_open_for_lface with the
7295 current font-spec.
7296
7297 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
7298 is unspecified.
7299
7300 * xfaces.c (realize_x_face): If the font-related face attributes
7301 are the same as those of default face, realize a new fontset from
7302 default->fontset.
7303 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
7304
73052008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7306
7307 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
7308 (move_it_in_display_line): New wrapper.
7309
7310 * window.c (window_scroll_pixel_based_preserve_x)
7311 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
7312 (window_scroll_pixel_based, window_scroll_line_based):
7313 Use them to preserve column positions.
7314 (syms_of_window): Initialize them.
7315
7316 * indent.c (Fvertical_motion): Extend first arg to allow passing an
7317 (HPOS . VPOS) pair.
7318
7319 * dispextern.h (move_it_in_display_line): Declare.
7320
73212008-06-05 Juanma Barranquero <lekktu@gmail.com>
7322
7323 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
7324 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
7325 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
7326
73272008-06-04 Juanma Barranquero <lekktu@gmail.com>
7328
7329 * window.c (Fset_window_parameter): Doc fix.
7330 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
7331
73322008-06-04 Joakim Verona <joakim@verona.se>
7333
7334 * window.h (struct window): Add new member window_parameters.
7335
7336 * window.c (Fwindow_parameters, Fwindow_parameter)
7337 (Fset_window_parameter): New defuns.
7338 (syms_of_window): Defsubr the new defuns.
7339 (make_window): Initialize window_parameters to nil.
7340
73412008-06-04 John Paul Wallington <jpw@pobox.com>
7342
7343 * eval.c (Fdefmacro): Doc fix.
7344
73452008-06-04 Kenichi Handa <handa@m17n.org>
7346
7347 * coding.c (detect_coding): Fix handling of coding->head_ascii.
7348 Be sure to call setup_coding_system when we find a proper coding system.
7349 (detect_coding_system): Fix handling of coding->head_ascii.
7350
73512008-06-03 Andreas Schwab <schwab@suse.de>
7352
7353 * font.c (font_prop_validate_spacing): Fix last change.
7354
73552008-06-03 Kenichi Handa <handa@m17n.org>
7356
7357 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
7358 (font_parse_fcname): Fix handling of unknown key.
7359
7360 * xfont.c (xfont_list): Try an alias.
7361
7362 * charset.c (char_charset): Return NULL if the arg charset_list is
7363 specified and C doesn't belong to any of them.
7364
73652008-06-02 Chip Coldwell <coldwell@redhat.com>
7366
7367 * font.c (font_pixel_size): Don't take cdr of an integer.
7368
73692008-06-02 Jim Meyering <meyering@redhat.com>
7370
7371 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
7372 * alloc.c (xfree): Return right away for a NULL arg.
7373 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
7374 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
7375 * mac.c (create_apple_event_from_event_ref): Likewise.
7376 (create_apple_event_from_drag_ref, cfstring_create_normalized):
7377 Likewise.
7378 * doprnt.c (doprnt1): Likewise.
7379 * frame.c (frame): Likewise.
7380 * keyboard.c (wipe_kboard): Likewise.
7381 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
7382 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
7383 * term.c (tty_default_color_capabilities, maybe_fatal)
7384 (delete_tty): Likewise.
7385 * w16select.c (string): Likewise.
7386 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
7387 * w32bdf.c (w32_free_bdf_font): Likewise.
7388 * w32fns.c (w32_unload_font): Likewise.
7389 * w32font.c (w32font_close): Likewise.
7390 * window.c (size_window): Likewise.
7391 * xselect.c (receive_incremental_selection): Likewise.
7392 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
7393 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
7394 * w32.c (stat): Likewise.
7395
7396 Remove useless if-before-free tests.
7397 * editfns.c (Fset_time_zone_rule): Likewise.
7398 * lread.c (nosuffix): Likewise.
7399 * ralloc.c (get_bloc): Likewise.
7400 * regex.c (reg_free): Likewise.
7401 * xftfont.c (xftfont_open, xftfont_close): Likewise.
7402 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
7403 * xsmfns.c (smc_save_yourself_CB): Likewise.
7404
74052008-06-02 Kenichi Handa <handa@m17n.org>
7406
7407 * font.c (font_find_for_lface): Handle float font size.
7408 (font_open_for_lface): Likewise.
7409
7410 * xfaces.c (x_supports_face_attributes_p): Check face->font before
7411 comparing the properties.
7412
74132008-06-01 Jason Rumney <jasonr@gnu.org>
7414
7415 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
7416 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
7417 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
7418 Don't add empty script list.
7419 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
7420
74212008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
7422
7423 * Makefile.in (dot, dotdot): Remove, update users.
7424 ".." has been used elsewhere in the file for a long time.
7425 (LIBXT_STATIC): Remove conditional based on unused variable.
7426
74272008-06-01 Miles Bader <miles@gnu.org>
7428
7429 * xfaces.c (Vface_remapping_alist): New variable.
7430 (syms_of_xfaces): Initialize it.
7431 (enum named_merge_point_kind): New type.
7432 (struct named_merge_point): Add `named_merge_point_kind' field.
7433 (push_named_merge_point): Make cycle detection respect different
7434 named-merge-point kinds.
7435 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
7436 Remove face-name alias resolution.
7437 (lface_from_face_name): New definition using
7438 `lface_from_face_name_no_resolve'.
7439 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
7440 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
7441 (get_lface_attributes): New definition that layers face-remapping on
7442 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
7443 (lookup_basic_face): New function.
7444 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
7445 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
7446 `get_lface_attributes'.
7447 (face_at_buffer_position): Use `lookup_basic_face' to lookup
7448 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
7449 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
7450
7451 * xdisp.c (init_iterator): Pass base_face_id through
7452 `lookup_basic_face' when we actually use it as a face-id.
7453 (handle_single_display_prop): Use `lookup_basic_face' to lookup
7454 DEFAULT_FACE_ID.
7455
7456 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
7457 lookup the initial face-id.
7458
7459 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
7460
74612008-06-01 Juanma Barranquero <lekktu@gmail.com>
7462
7463 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
7464 (Fremove_text_properties): Fix typos in docstrings.
7465
74662008-05-31 Kenichi Handa <handa@m17n.org>
7467
7468 * font.c (font_list_entities): Fix the car part of data to be
7469 stored in the cache.
7470
7471 * ftfont.c (ftfont_font_format): Don't use strcasestr.
7472
74732008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
7474
7475 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
7476 Add a `test' argument so another predicate than `equal' can be used.
7477 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
7478 (map_char_table): Remove unused vars `c' and `i'.
7479 * lisp.h (Foptimize_char_table): Adjust declaration.
7480 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
7481
74822008-05-30 Kenichi Handa <handa@m17n.org>
7483
7484 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
7485 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
7486 defined.
7487
74882008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
7489
7490 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
7491 (Fmake_variable_frame_local): Disallow mixing buffer-local and
7492 frame-local settings for the same variable.
7493
74942008-05-30 Kenichi Handa <handa@m17n.org>
7495
7496 * fontset.c (Ffont_info): Move to font.c.
7497 (syms_of_fontset): Delete defsubr of Sfont_info.
7498
7499 * font.c (font_style_to_value, font_score): Delete casting of the
7500 args to xstcasecmp.
7501 (register_font_driver): Increment num_font_drivers only when
7502 registering the driver globally.
7503 (Ffont_info): Move from fontset.c. Handle a font object too.
7504 (syms_of_font): Defsubr Sfont_info.
7505
75062008-05-29 Kenichi Handa <handa@m17n.org>
7507
7508 * coding.h (enum define_coding_utf8_arg_index): New enum.
7509 (enum coding_attr_index): Change coding_attr_utf_16_bom to
7510 coding_attr_utf_bom.
7511 (enum utf_bom_type): Rename from utf_16_bom_type.
7512 (struct utf_16_spec): Adjust for the above change.
7513 (struct coding_system): Add utf_8_bom in `spec' union.
7514
7515 * coding.c (CODING_UTF_8_BOM): New macro.
7516 (enum coding_category): Delete coding_category_utf_8, add
7517 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
7518 coding_category_utf_8_sig.
7519 (CATEGORY_MASK_UTF_8): Delete it.
7520 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
7521 (CATEGORY_MASK_UTF_8_SIG): New macros.
7522 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
7523 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
7524 CATEGORY_MASK_UTF_8_SIG.
7525 (CATEGORY_MASK_UTF_8): New macro.
7526 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
7527 (detect_coding_utf_8): Check BOM.
7528 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
7529 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
7530 (encode_coding_utf_16): Likewise.
7531 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
7532 (detect_coding, detect_coding_system): Handle utf-8-auto.
7533 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
7534 (syms_of_coding): Fix setting up of Vcoding_category_table.
7535
75362008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
7537
7538 * process.c (Faccept_process_output): If `millisec' is non-nil,
7539 `seconds' default to 0.
7540 (wait_reading_process_output): Also return non-nil if we read output
7541 from a non-running process.
7542
75432008-05-29 Jason Rumney <jasonr@gnu.org>
7544
7545 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
7546 `raster' specified.
7547 (add_font_entity_to_list): Allow non-opentype truetype fonts back
7548 in the uniscribe backend, but disallow any font that has no
7549 unicode subrange support.
7550
75512008-05-29 Juanma Barranquero <lekktu@gmail.com>
7552
7553 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
7554 Fix typos in docstrings.
7555
75562008-05-29 Kenichi Handa <handa@m17n.org>
7557
7558 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
7559 (Fx_family_fonts): Set frame correctly.
7560
75612008-05-28 Jason Rumney <jasonr@gnu.org>
7562
7563 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
7564
75652008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7566
7567 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
7568 calling build_annotations.
7569
75702008-05-28 Juanma Barranquero <lekktu@gmail.com>
7571
7572 * coding.c (Fdecode_coding_region, Fencode_coding_region)
7573 (Fencode_coding_string):
7574 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
7575 <latin-extra-code-table>: Fix typos in docstrings.
7576 (syms_of_coding) <coding-system-alist>: Doc fix.
7577 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
7578
75792008-05-28 Kenichi Handa <handa@m17n.org>
7580
7581 * fontset.c (Ffont_info): Don't call font_close_object.
7582
7583 * font.c (font_parse_family_registry): Use Ffont_put to validate
7584 foundry and family.
7585 (font_delete_unmatched): Don't check spacing.
7586 (font_list_entities): Add spacing to the spec to list fonts.
7587
7588 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
7589 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
7590
7591 * coding.c (encode_coding_raw_text): Fix previous change.
7592 (encode_coding_object): When the dst_object is a buffer and is
7593 different from src_object, move gap to PT.
7594
75952008-05-27 Chong Yidong <cyd@stupidchicken.com>
7596
7597 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
7598
75992008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
7600
7601 * coding.c (encode_coding_raw_text): Set coding->produced_char for
7602 all branches. Compute it differently.
7603
7604 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
7605
76062008-05-27 Juanma Barranquero <lekktu@gmail.com>
7607
7608 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
7609 into "else if () ... else ...".
7610
76112008-05-27 Jason Rumney <jasonr@gnu.org>
7612
7613 * w32font.c (w32font_open_internal): Determine if glyph indices
7614 are likely to work here.
7615
76162008-05-27 Chong Yidong <cyd@stupidchicken.com>
7617
7618 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
7619 draw overlap glyphs with appropriate highlighting.
7620
76212008-05-27 Kenichi Handa <handa@m17n.org>
7622
7623 * xfont.c (xfont_open): Fix calculation of font->average_width.
7624
76252008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
7626
7627 * casefiddle.c (casify_object): Try to guess better whether the
7628 argument is a byte or a char.
7629
76302008-05-26 Andreas Schwab <schwab@suse.de>
7631
7632 * xselect.c (x_reply_selection_request): Properly handle format == 32.
7633 Always send multiples of format size.
7634
7635 * xterm.c (x_set_frame_alpha): Fix type mismatch.
7636
76372008-05-26 Jason Rumney <jasonr@gnu.org>
7638
7639 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
7640 (compute_metrics): Don't set failure if we just cleared the cache.
7641 (w32_weight_table): Remove unused variable.
7642 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
7643 backwards compatibility.
7644
76452008-05-25 Kenichi Handa <handa@m17n.org>
7646
7647 * w32term.c (x_draw_glyph_string):
7648 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
7649
7650 * xfaces.c: Delete unused function prototypes.
7651 (xstrlwr, font_frame): Delete them.
7652 (clear_face_cache): Delete unused variable.
7653
7654 * xftfont.c (xftfont_open): Delete unused variable.
7655 If underline_thickness is not 1, adjust underline_position.
7656
7657 * ftxfont.c (ftxfont_open): Delete unused variable.
7658
7659 * fontset.c (face_for_char): Optimize for the case of no charset
7660 property.
7661
7662 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
7663 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
7664 (otf_open, font_otf_capability, generate_otf_features)
7665 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
7666 Comment out by surrounding "#if 0" and "#endif" for the moment.
7667 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
7668 (syms_of_font): Codes for accessing above commented out.
7669
76702008-05-24 Eli Zaretskii <eliz@gnu.org>
7671
7672 * w32proc.c: Include dispextern.h.
7673
7674 * w32.c: Include dispextern.h.
7675
76762008-05-23 Juanma Barranquero <lekktu@gmail.com>
7677
7678 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
7679 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
7680 Fix typos in docstrings.
7681
76822008-05-23 Jason Rumney <jasonr@gnu.org>
7683
7684 * xsmfns.c: Remove includes that are already included by config.h.
7685
76862008-05-23 Kenichi Handa <handa@m17n.org>
7687
7688 * charset.c (Qemacs, charset_emacs): New variables.
7689 (char_charset): Fix for non-Unicode characters.
7690 (syms_of_charset): Define charset_emacs.
7691
7692 * w32term.c (x_draw_glyph_string): Be sure to update
7693 s->underline_thickness and s->underline_position. Be sure to draw
7694 underline within the current line area.
7695
7696 * xterm.c (x_draw_glyph_string): Be sure to update
7697 s->underline_thickness and s->underline_position. Be sure to draw
7698 underline within the current line area.
7699
7700 * fontset.c: Delete unused variables and add casting for char *
7701 throughout the file.
7702 (fontset_font): Try the fallback fonts of the current fontset
7703 before consulting the default fontset.
7704
7705 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
7706
7707 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
7708
77092008-05-22 Jason Rumney <jasonr@gnu.org>
7710
7711 * font.c: Don't include strings.h.
7712
7713 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
7714
7715 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
7716 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
7717 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
7718 to call xstrcasecmp.
7719
7720 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
7721
7722 * fontset.c (fs_query_fontset): Use xstrcasecmp.
7723
7724 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
7725
7726 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
7727
77282008-05-22 Kenichi Handa <handa@m17n.org>
7729
7730 * puresize.h (BASE_PURESIZE): Increase to 1220000.
7731
7732 * font.c (font_prop_validate_style): Adjust for the format
7733 change of font_style_table.
7734
7735 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
7736 two args.
7737
7738 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
7739 two args.
7740
77412008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
7742
7743 * minibuf.c (keys_of_minibuf): Delete.
7744 * lisp.h (keys_of_minibuf): Delete.
7745 * emacs.c (main): Don't call keys_of_minibuf.
7746
77472008-05-22 Kenichi Handa <handa@m17n.org>
7748
7749 * ftfont.c (ftfont_resolve_generic_family): Rename from
7750 ftfont_list_generic_family. Return a single family for each
7751 generic family.
7752 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
7753 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
7754 Call font_add_log.
7755 (ftfont_match): Call font_add_log.
7756
7757 * font.h (Ffont_xlfd_name): EXFUN adjusted.
7758 (FONT_DEBUG): Define it.
7759 (font_add_log): Extern it.
7760 (font_assert): Rename from xassert.
7761
7762 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
7763 (xfont_list_family): Call font_add_log.
7764 (xfont_match): Likewise.
7765 (memq_no_quit): Delete.
7766
7767 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
7768 call of Ffont_xlfd_name.
7769
7770 * xfaces.c (struct table_entry, slant_table, weight_table)
7771 (swidth_table): Move to font.c.
7772
7773 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
7774 xassert are changed to font_assert. Delete many unused variables.
7775 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
7776 New variables.
7777 (struct table_entry): Move from xfaces.c and modified.
7778 (weight_table, slant_table, width_table): Move from xfaces.c and
7779 contents adjusted for the change of struct table_entry.
7780 (font_style_to_value, font_style_symbolic): Adjust for the
7781 format change of font_style_table.
7782 (font_parse_family_registry): Don't overwrite existing foundry and
7783 family of font_spec.
7784 (font_score): Fix calculation of diff for sizes.
7785 (font_sort_entites): Call font_add_log.
7786 (font_delete_unmatched): Return a newly created list.
7787 (font_list_entities): Fix previous change. Call font_add_log.
7788 (font_matching_entity, font_open_entity, font_close_entity):
7789 Call font_add_log.
7790 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
7791 (Finternal_set_font_style_table): Delete.
7792 (BUILD_STYLE_TABLE): New macro.
7793 (build_style_table): New function.
7794 (Vfont_log, font_log_env_checked): New variables.
7795 (font_add_log): New function.
7796 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
7797 Declare Lisp variables "font-weight-table", "font-slant-table",
7798 "font-width-table", and "font-log". Initialize font_style_table.
7799
78002008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
7801
7802 * xterm.c (x_set_frame_alpha): Move declarations before statements.
7803
78042008-05-21 Seiji Zenitani <zenitani@mac.com>
7805 Ryo Yoshitake <ryo@shiftmode.net>
7806
7807 * frame.c (Qalpha): Add a new frame parameter `alpha'.
7808 (Vframe_alpha_lower_limit): New variable.
7809 (x_set_alpha): New function.
7810
7811 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
7812
7813 * xfns.c (x-create-frame, Qalpha):
7814 Initialize the frame parameter `alpha'.
7815 * xterm.c (OPAQUE, OPACITY): New.
7816 (x_set_frame_alpha): New function.
7817 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
7818
7819 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
7820 * w32fns.c (w32_frame_parm_handlers): Likewise.
7821
78222008-05-20 Jason Rumney <jasonr@gnu.org>
7823
7824 * w32font.c (add_font_entity_to_list): Don't add non-opentype
7825 truetype fonts to opentype list.
7826
78272008-05-20 Juanma Barranquero <lekktu@gmail.com>
7828
7829 * fontset.c (Ffontset_info): Doc fix.
7830 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
7831 <ignore-relative-composition>: Fix typos in docstrings.
7832
7833 * font.c (syms-of-font) <font-encoding-alist>:
7834 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
7835 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
7836 (Ffont_otf_alternates): Doc fixes.
7837
78382008-05-20 Kenichi Handa <handa@m17n.org>
7839
7840 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
7841 font.h through out the file.
7842 (FONT_DRIVERS): Rename from FONTOBJ.
7843 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
7844 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
7845
7846 * emacs.c (main): Call syms_of_font unconditionally.
7847
7848 * font.h (find_font_encoding): Extern it.
7849
7850 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
7851 fontset.c.
7852 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
7853 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
7854 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
7855 only when HAVE_WINDOW_SYSTEM is defined.
7856 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
7857 when HAVE_WINDOW_SYSTEM is defined.
7858
7859 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
7860 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
7861
7862 * xfaces.c: Include font.h unconditionally.
7863 (merge_face_ref, merge_face_vectors)
7864 (Finternal_set_lisp_face_attribute): Cancel the previous change.
7865
78662008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
7867
7868 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
7869 indirect_variable.
7870 * eval.c (lisp_indirect_variable): New fun.
7871 (Fuser_variable_p): Use it.
7872
78732008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
7874
7875 * lisp.h (indirect_variable):
7876 * data.c (indirect_variable, let_shadows_buffer_binding_p):
7877 Use Lisp_Symbol pointers rather than Lisp_Object.
7878 Adjust callers.
7879 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
7880 To this end, change calling-convention.
7881
7882 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
7883 if some non-hidden buffers are selected by string&pred.
7884
78852008-05-19 Chong Yidong <cyd@stupidchicken.com>
7886
7887 * process.c (wait_reading_process_output): Always check status
7888 when in batch mode.
7889
78902008-05-19 Kenichi Handa <handa@m17n.org>
7891
7892 * font.c (font_list_entities): Fix handling of cache.
7893 (font_matching_entity): Likewise.
7894
7895 * ftfont.c (cs_iso8859_1): Delete.
7896 (ft_face_cache): New variable.
7897 (struct ftfont_info): New member fc_charset_idx.
7898 (ftfont_build_basic_charsets): Delete.
7899 (fc_charset_table): New variable.
7900 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
7901 . FC_CHARSET_IDX) as :font-entity property in the font entity.
7902 Callers changed.
7903 (ftfont_lookup_cache, ftfont_get_charset): New functions.
7904 (ftfont_spec_pattern): New argument fc_charset_idx.
7905 Check registry more rigidly. Change callers.
7906 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
7907 change of :font-entity property of the font.
7908
7909 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
7910 property of the font.
7911
79122008-05-18 Juanma Barranquero <lekktu@gmail.com>
7913
7914 * coding.c (Fcoding_system_p): Rename argument to match docstring.
7915 (Funencodable_char_position, Fcheck_coding_systems_region)
7916 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
7917 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
7918 (Ffind_operation_coding_system, Fset_coding_system_priority)
7919 (Fcoding_system_eol_type): Doc fixes.
7920
79212008-05-17 Glenn Morris <rgm@gnu.org>
7922
7923 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
7924
79252008-05-16 Eli Zaretskii <eliz@gnu.org>
7926
7927 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
7928 and st_gid.
7929
7930 * frame.c (Fdelete_frame): Don't call font_update_drivers if
7931 HAVE_WINDOW_SYSTEM is not defined.
7932
7933 * xfaces.c (merge_face_ref, merge_face_vectors)
7934 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
7935 HAVE_WINDOW_SYSTEM is defined.
7936 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
7937
79382008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
7939
7940 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
7941
79422008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7943
7944 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
7945
79462008-05-15 Kenichi Handa <handa@m17n.org>
7947
7948 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
7949 preference.
7950
79512008-05-15 Glenn Morris <rgm@gnu.org>
7952
7953 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
7954
79552008-05-15 Chong Yidong <cyd@stupidchicken.com>
7956
7957 * fns.c (init_fns): Don't initialize weak_hash_tables here.
7958 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
7959
7960 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
7961
79622008-05-15 Kenichi Handa <handa@m17n.org>
7963
7964 * ftfont.c (ftfont_list): Downcase family name to check generic
7965 families.
7966
7967 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
7968 font-spec for QCfont value.
7969
7970 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
7971 buffer. Check the return value of it.
7972
79732008-05-14 Jason Rumney <jasonr@gnu.org>
7974
7975 * w32term.c (w32_get_glyph_overhangs): Remove.
7976 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
7977
79782008-05-14 Kenichi Handa <handa@m17n.org>
7979
7980 * font.c (font_prop_validate): Make nil a valid value.
7981 (font_clear_cache): Check if the cached vector of entities is nil
7982 or not.
7983
79842008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7985
7986 * emacs.c (main_thread): Conditionalize on
7987 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
7988 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
7989
7990 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
7991 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
7992 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
7993
79942008-05-14 Kenichi Handa <handa@m17n.org>
7995
7996 * coding.c (detect_coding_iso_2022): Ignore a coding category that
7997 has no corresponding coding system.
7998
79992008-05-14 Jason Rumney <jasonr@gnu.org>
8000
8001 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
8002
8003 * w32font.h (w32font_open_internal): Update declaration.
8004
8005 * w32font.c (w32font_open_internal): Change last argument from
8006 w32font_info struct to font object. Fill in font object from
8007 font_entity. Get Outline metrics if possible. Use them to
8008 calculate underline position and thickness. Use xlfd name as name
8009 property. Don't set codepage.
8010 (w32font_open): Pass font_object to w32font_open_internal. Don't
8011 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
8012 (w32font_draw): Use s->font.
8013 (clear_cached_metrics): Don't clear non-existent blocks.
8014
8015 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
8016 font was not found.
8017 (x_draw_glyph_string): Use underline position and thickness from font.
8018
8019 * w32uniscribe.c (uniscribe_open): Pass font_object to
8020 w32font_open_internal.
8021
80222008-05-14 Kenichi Handa <handa@m17n.org>
8023
8024 These changes are to delete all legacy font-handling codes, and
8025 make Emacs use only font-backends.
8026
8027 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
8028 (frame.o, image.o, print.o): Depend on $(FONTSRC).
8029
8030 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
8031
8032 * charset.h (Vcharset_non_preferred_head)
8033 (Vcurrent_iso639_language): Extern them.
8034
8035 * charset.c (Vcharset_non_preferred_head): New variable.
8036 (Vcurrent_iso639_language): New variable.
8037 (syms_of_charset): Declare it as a Lisp variable.
8038 (char_charset): Don't check non preferred charsets. As a last
8039 resort, return charset_unicode.
8040 (Fset_charset_priority): Update Vcharset_non_preferred_head.
8041
8042 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
8043 conditionals. Don't check enable_font_backend. Delete all codes
8044 used only when USE_FONT_BACKEND is not defined.
8045
8046 * dispextern.h (struct glyph_string): Change type of `font' to
8047 `struct font *'.
8048 (struct glyph_string): New member underline_position and
8049 underline_thickness.
8050 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
8051 (struct face): Change type of `font' to `struct font *'. Remove
8052 members `font_name', `font_info_id'.
8053 (per_char_metric, encode_char): Delete externs.
8054 (calc_pixel_width_or_height): Adjust the prototype.
8055
8056 * emacs.c (enable_font_backend): Delete extern.
8057 (main): Don't set enable_font_backend. Don't check the command
8058 line argument "-disable-font-backend".
8059
8060 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
8061 (enum font_property_index): New members FONT_DPI_INDEX,
8062 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
8063 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
8064 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
8065 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
8066 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
8067 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
8068 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
8069 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
8070 (struct font_spec, struct font_entity): New structs.
8071 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
8072 (struct font): Many members from old "struct font_info" moved to
8073 here. Members font and entity deleted.
8074 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
8075 the new font-related objects.
8076 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
8077 (CHECK_FONT_GET_OBJECT): Likewise.
8078 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
8079 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
8080 (struct font_driver): New members case_sensitive anc check. Type
8081 of the member list and open changed.
8082 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
8083 (font_symbolic_width, font_find_object, font_get_spec)
8084 (font_set_lface_from_name): Delete extern.
8085 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
8086
8087 * font.c: Include <strings.h>.
8088 (enable_font_backend): Delete it.
8089 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
8090 (CHECK_VALIDATE_FONT_SPEC): Delete it.
8091 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
8092 (null_string): Delete it.
8093 (null_vector): Make it static.
8094 (font_family_alist): Delete it.
8095 (Qnormal): Extern it.
8096 (QCextra, QClanguage): Delete it.
8097 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
8098 (font_make_spec, font_make_entity, font_make_object)
8099 (font_intern_prop): Renamed from intern_downcase. Don't downcase
8100 the string. Callers changed.
8101 (font_pixel_size): Adjusted for the format change of font-related
8102 objects.
8103 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
8104 (font_style_to_value, font_style_symbolic): New function.
8105 (build_font_family_alist): Delete it.
8106 (font_registry_charsets): Use Fassoc_string instead of
8107 assq_no_quit.
8108 (font_prop_validate_symbol): Don't return null_string.
8109 (font_prop_validate_style): Adjusted for the change of
8110 style-related values in a font vector.
8111 (font_property_table): Delete entries for QClanguage and
8112 QCantialias, add entries for QCavgwidth.
8113 (get_font_prop_index): Delete the 2nd argument FROM.
8114 (font_prop_validate): Arguments changed.
8115 (font_put_extra): Adjusted for the change of font-related objects.
8116 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
8117 (font_parse_fcname, font_unparse_fcname)
8118 (font_prepare_composition): Likewise.
8119 (font_parse_family_registry): Renamed from font_merge_old_spec.
8120 (otf_open): Delete the 1st arg entity.
8121 (font_otf_capability): Adjusted for the above change.
8122 (font_score): New arg alternate_families. Adjusted for the change
8123 of font-related objects.
8124 (font_sort_entites): New arg best_only.
8125 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
8126 Delete them.
8127 (font_match_p): Check alternate families.
8128 (font_find_object): Delete it.
8129 (font_check_object): New function.
8130 (font_clear_cache): Adjusted for the change of font-related objects.
8131 (font_delete_unmatched): New arg.
8132 (font_list_entities): Call font_driver->list with a spec that
8133 doesn't specify style-related properties.
8134 (font_matching_entity): Arguments changed. Caller changed.
8135 (font_open_entity): Adjusted for the change of font-related objects.
8136 (font_close_object, font_has_char, font_encode_char)
8137 (font_get_name, font_get_spec): Likewise.
8138 (font_spec_from_name, font_clear_prop, font_update_lface):
8139 New functions.
8140 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
8141 (font_prepare_for_face, font_done_for_face, font_open_by_name)
8142 (font_at): Adjusted for the change of font-related objects.
8143 (font_range): New function.
8144 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
8145 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
8146 (Fcopy_font_spec, Fmerge_font_spec): New function.
8147 (Ffont_family_list): Renamed from list-families.
8148 (Finternal_set_font_style_table): Arguments changed.
8149 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
8150 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
8151 change of font-related objects.
8152 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
8153
8154 * fontset.h (struct font_info): Delete it. Most members go to
8155 struct font.
8156 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
8157 (enum FONT_SPEC_INDEX): Delete it.
8158 (font_info, list_fonts_func, load_font_func, query_font_func)
8159 (set_frame_fontset_func, find_ccl_program_func)
8160 (get_font_repertory_func, new_fontset_from_font_name): Delete
8161 externs.
8162 (fontset_from_font_name): Extern it.
8163 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
8164 (FONT_INFO_FROM_FACE): Deleted.
8165 (face_for_font): Adjust prototype.
8166
8167 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
8168 conditionals. Don't check enable_font_backend. Delete all codes
8169 used only when USE_FONT_BACKEND is not defined.
8170 (get_font_info_func, list_font_func, load_font_func)
8171 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
8172 (get_font_repertory_func): Delete them.
8173 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
8174 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
8175 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
8176 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
8177 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
8178 (fontset_compare_rfontdef): New function.
8179 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
8180 rfont-defs by qsort. Adjusted for the change of font-group vector.
8181 (load_font_get_repertory): Deleted.
8182 (fontset_find_font): Use new macros to ref/set elements of
8183 font-def and rfont-def.
8184 (fontset_font): Fix the timing of remembering that no font for C.
8185 (free_face_fontset): Do nothing if the face has no fontset.
8186 (face_suitable_for_char_p): Use new macros to ref/set elements of
8187 rfont-def.
8188 (face_for_char): Likewise. Call face_for_char with font_object.
8189 (fs_load_font): Delete. Delete #pragma surrounding it.
8190 (fs_query_fontset): Use strcasecmp instead of strcmp.
8191 (generate_ascii_font_name): Adjusted for the format change of
8192 font-spec.
8193 (Fset_fontset_font): Likewise. Use new macros to set elements of
8194 font-def.
8195 (Fnew_fontset): Use font_unparse_xlfd to generate
8196 FONTSET_ASCII (fontset).
8197 (new_fontset_from_font_name): Deleted.
8198 (fontset_from_font): Renamed from new_fontset_from_font. Check if
8199 a fontset is already created for the font. FIx updating of
8200 Vfontset_alias_alist.
8201 (fontset_ascii_font): Deleted.
8202 (Ffont_info): Adjusted for the format change of font-spec.
8203 (Finternal_char_font): Likewise.
8204 (Ffontset_info): Likewise.
8205 (syms_of_fontset): Don't check load_font_func.
8206
8207 * fns.c (internal_equal): Handle PREV_FONT.
8208
8209 * frame.h: Delete USE_FONT_BACKEND conditional.
8210
8211 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
8212 conditionals. Don't check enable_font_backend. Delete all codes
8213 used only when USE_FONT_BACKEND is not defined.
8214 (x_set_font): Call x_new_font, not x_new_fontset2.
8215 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
8216 already set for the frame.
8217
8218 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
8219 a font-entity by font_make_entity. Use font_intern_prop instead
8220 of intern_downcase. Use FONT_SET_STYLE to set a style-related
8221 font property. If a font is scalable, set avgwidth property to 0.
8222 Set font-entity property by font_put_extra.
8223 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
8224 (ffont_driver): Adjusted for the change of struct font_driver.
8225 (ftfont_spec_pattern): New function.
8226 (ftfont_list): Return a list, not vector.
8227 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
8228 (ftfont_list_family): Don't downcase names.
8229 (ftfont_free_entity): Deleted.
8230 (ftfont_open): Return a font-object. Adjusted for the change of
8231 struct font. Get underline_thickness and underline_position from
8232 font property. Don't update dpyinfo->smallest_font_height and
8233 dpyinfo->smallest_char_width.
8234 (ftfont_close): Don't free `struct font'.
8235 (ftfont_has_char): Adjusted for the format change of font-entity.
8236 (ftfont_encode_char, ftfont_text_extents): Likewise.
8237
8238 * ftxfont.c (ftxfont_list): Return a list, not vector.
8239 (ftxfont_open): Return a font-object. Adjusted for the change of
8240 struct font. Get underline_thickness and underline_position from
8241 font property. Don't update dpyinfo->smallest_font_height and
8242 dpyinfo->smallest_char_width.
8243 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
8244 (ftxfont_draw): Adjusted for the change of struct font.
8245
8246 * image.c (image_ascent): Don't include "charset.h". Include
8247 "character.h" and "font.h".
8248
8249 * lisp.h (enum pvec_type): New member PREV_FONT.
8250 (Fassoc_string): EXFUN it.
8251
8252 * print.c: Include font.h.
8253 (print_object): Handle font-related objects.
8254
8255 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
8256 conditionals. Don't check enable_font_backend. Delete all codes
8257 used only when USE_FONT_BACKEND is not defined.
8258 (handle_auto_composed_prop): Do nothing if it->f is not on a
8259 window system. Check how many following characters can be
8260 displayed by the same font.
8261 (calc_pixel_width_or_height): Type of the 4th arg is changed to
8262 'struct font *'.
8263 (get_char_face_and_encoding): Assign the whole encoding task to
8264 the `encode-char' method of a font driver.
8265 (fill_composite_glyph_string): Adjusted for the change of `struct
8266 face' and `struct glyph_string'.
8267 (fill_glyph_string): Likewise.
8268 (get_per_char_metric): Arguments changed.
8269 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
8270 and `struct glyph_string'.
8271 (produce_stretch_glyph, calc_line_height_property)
8272 (x_produce_glyphs): Likewise.
8273
8274 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
8275 conditionals. Don't check enable_font_backend. Delete all codes
8276 used only when USE_FONT_BACKEND is not defined. Use
8277 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
8278 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
8279 (Qp): Extern them.
8280 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
8281 Deleted.
8282 (struct font_name): Deleted.
8283 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
8284 (compare_fonts_by_sort_order): New function.
8285 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
8286 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
8287 Deleted.
8288 (Fx_family_fonts): Use font_list_entities, and sort fonts by
8289 compare_fonts_by_sort_order.
8290 (Fx_font_family_list): Call Ffont_family_list.
8291 (face_numeric_value, face_numeric_weight, face_numeric_slant)
8292 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
8293 (face_symbolic_slant, face_symbolic_swidth)
8294 (split_font_name_into_vector, build_font_name_from_vector)
8295 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
8296 (font_rescale_ratio, split_font_name, build_font_name)
8297 (free_font_names, sort_fonts, x_face_list_fonts)
8298 (face_font_available_p, sorted_font_list, cmp_font_names)
8299 (font_list_1, concat_font_list, font_list, remove_duplicates):
8300 Deleted.
8301 (Fx_list_fonts): Use Ffont_list.
8302 (LFACE_AVGWIDTH): Deleted.
8303 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
8304 by FONTP.
8305 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
8306 (set_lface_from_font_name): Delete it.
8307 (set_lface_from_font): Renamed from
8308 set_lface_from_font_and_fontset. Caller changed. Don't set
8309 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
8310 for face.
8311 (merge_face_vectors): Copy font-spec if necessary.
8312 Clear properties of the font-spec if necessary.
8313 (merge_face_ref): Clear properties of the font-spec if necessary.
8314 (Finternal_set_lisp_face_attribute): Likewise.
8315 (set_font_frame_param): Use font_load_for_lface to load a
8316 font-object, and call Fmodify_frame_parameters with it.
8317 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
8318 font name by Ffont_xlfd_name.
8319 (Finternal_lisp_face_attribute_values): Don't check QCweight,
8320 QCslant, and QCwidth.
8321 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
8322 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
8323 Compare fonts by EQ.
8324 (lookup_non_ascii_face): Deleted.
8325 (face_for_font): The 2nd argument changed.
8326 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
8327 Check atomic font properties by case insensitive.
8328 (realize_non_ascii_face): Set face->overstrike correctly.
8329 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
8330 (dump_realized_face): Get font name from
8331 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
8332
8333 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
8334 conditionals. Don't check enable_font_backend. Delete all codes
8335 used only when USE_FONT_BACKEND is not defined.
8336 (xic_create_xfontset): Original code deleted and renamed from
8337 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
8338 (x_make_gc): Don't set GCFont in GCs.
8339 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
8340 opened by "fixed".
8341 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
8342 find_ccl_program_func, query_font_func, set_frame_fontset_func,
8343 get_font_repertory_func.
8344
8345 * xfont.c: Include <stdlib.h> and "ccl.h".
8346 (struct xfont_info): New structure.
8347 (xfont_query_font): Deleted.
8348 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
8349 moved from xterm.c.
8350 (xfont_driver): Adjusted for the change of struct font_driver.
8351 (compare_font_names): New function.
8352 (xfont_list_pattern): Sort font names case insensitively. Make
8353 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
8354 (xfont_list): Return a list, not vector.
8355 (xfont_match): If the font doesn't have QCname property, generate
8356 a name from the other font properties.
8357 (xfont_open): Return a font-object. Adjusted for the change of
8358 struct font. Get underline_thickness and underline_position from
8359 font property. Don't update dpyinfo->smallest_font_height and
8360 dpyinfo->smallest_char_width.
8361 (xfont_close): Don't free struct font.
8362 (xfont_prepare_face): Adjusted for the change of struct font.
8363 (xfont_done_face): Deleted.
8364 (xfont_has_char): Adjusted for the change of struct font.
8365 (xfont_encode_char, xfont_draw): Likewise.
8366 (xfont_check): New function.
8367
8368 * xftfont.c (xftfont_list): Adjusted for the change of `list'
8369 callback function.
8370 (xftfont_match): Adjusted for the format change of font-entity.
8371 (xftfont_open): Adjusted for the format change of font-entity and
8372 font-object. Adjusted for the change of struct font. Return a
8373 font-object. Don't update dpyinfo->smallest_font_height and
8374 dpyinfo->smallest_char_width.
8375 (xftfont_close): Block input while calling XftFontClose.
8376 (xftfont_prepare_face): Don't block input while calling
8377 xftfont_get_colors. Adjusted for the change of struct font.
8378 (xftfont_shape): Return value of error case fixed.
8379
8380 * xrdb.c (x_load_resources): Don't setup a fontset resource.
8381
8382 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
8383 conditionals.
8384 (FONT_WIDTH): Return (f)->max_width.
8385 (struct x_display_info): Delete member `font'.
8386 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
8387 (x_find_ccl_program, x_get_font_repertory): Delete externs.
8388 (struct x_output): Change type of `font' to `struct font *'.
8389
8390 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
8391 conditionals. Don't check enable_font_backend. Delete all codes
8392 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
8393 (x_per_char_metric, x_encode_char): Deleted.
8394 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
8395 (x_compute_glyph_string_overhangs): Adjusted for the change of
8396 `struct face'.
8397 (x_draw_glyph_string_foreground)
8398 (x_draw_composite_glyph_string_foreground): Likewise.
8399 (x_draw_glyph_string): Likewise. Use font->underline_position and
8400 font->underline_thickness.
8401 (x_new_font): Renamed from x_new_fontset2.
8402 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
8403 (x_check_font): Call `check' method of a font driver.
8404 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
8405 (x_query_font, x_get_font_repertory): Deleted.
8406 (x_find_ccl_program): Renamed and moved to xfont.c.
8407 (x_redisplay_interface): Adjusted for the change of `struct
8408 redisplay_interface'.
8409
8410 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
8411 conditionals. Don't check enable_font_backend. Delete all codes
8412 used only when USE_FONT_BACKEND is not defined. Surround non-used
8413 code by "#ifdef OLD_FONT" and "endif".
8414 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
8415
8416 * w32font.h (struct w32font_info): New member.
8417 (FONT_COMPAT): New macro.
8418 (w32font_open_internal): Prototype adjusted.
8419
8420 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
8421 OLD_FONT" and "endif".
8422
8423 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
8424 conditionals. Don't check enable_font_backend. Delete all codes
8425 used only when USE_FONT_BACKEND is not defined.
8426 (w32font_open): Return a font-object. Make a font-object by
8427 font_make_object. Adjusted for the change of struct w32font_info.
8428 (w32font_close): Don't free struct font. Adjusted for the change
8429 of struct w32font_info.
8430 (w32font_encode_char, w32font_text_extents, w32font_draw):
8431 Adjusted for the change of struct w32font_info.
8432 (w32font_draw): Likewise.
8433 (w32font_list_internal): Return a list, not vector.
8434 (w32font_open_internal): Change the 4th arg to font-object.
8435 Adjusted for the change of struct w32font_info and font-object format.
8436 (add_font_name_to_list): Don't downcase names.
8437 (w32_enumfont_pattern_entity): Make a font-entity by
8438 font_make_entity. Adjusted for the format change of font-entity.
8439 Use FONT_SET_STYLE to set a style-related font property. If a
8440 font is scalable, set avgwidth property to 0. Set font-entity
8441 property by font_put_extra.
8442 (font_matches_spec): Adjusted for the format change of font-entity.
8443 (w32_weight_table, w32_decode_weight): New variables.
8444 (w32_encode_weight): New function.
8445 (fill_in_logfont): Adjusted for the format change of font-spec.
8446 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
8447 weight value.
8448 (w32font_driver): Adjusted for the change of struct font_driver.
8449
8450 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
8451 conditionals. Don't check enable_font_backend. Surround non-used
8452 code by "#ifdef OLD_FONT" and "endif".
8453 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
8454 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
8455
8456 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
8457 conditionals. Don't check enable_font_backend. Delete all codes
8458 used only when USE_FONT_BACKEND is not defined. Surround non-used
8459 code by "#ifdef OLD_FONT" and "endif".
8460
8461 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
8462 (uniscribe_open): Return value changed to font-object.
8463 Adjusted for the format change of font-object.
8464 (uniscribe_otf_capability): Adjusted for the change of struct font.
8465 (add_opentype_font_name_to_list): Don't downcase names.
8466 (uniscribe_font_driver): Adjusted for the change of struct
8467 font_driver.
8468
84692008-05-13 Chong Yidong <cyd@stupidchicken.com>
8470
8471 * dispnew.c (update_frame_1): Check if tty output is still valid
8472 before flushing it.
8473
84742008-05-13 Jan Djärv <jan.h.d@swipnet.se>
8475
8476 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
8477 to Gtk+ menus.
8478
84792008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
8480
8481 * dired.c (file_name_completion): Tweak the code so as to always do it
8482 in a single pass. Tighten the scope of some variables.
8483
8484 * dired.c (Qdefault_directory): New var.
8485 (file_name_completion): Use it instead of Fexpand_file_name.
8486 (syms_of_dired): Initialize it.
8487
84882008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
8489
8490 * fileio.c (double_dollars): Remove dead code.
8491
84922008-05-10 Eli Zaretskii <eliz@gnu.org>
8493
8494 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
8495 Mention w32-get-true-file-attributes in doc string.
8496
8497 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
8498
84992008-05-09 Glenn Morris <rgm@gnu.org>
8500
8501 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
8502 2008-04-23.
8503
85042008-05-09 Eli Zaretskii <eliz@gnu.org>
8505
8506 Support for reporting owner and group of each file on MS-Windows:
8507 * dired.c (stat_uname, stat_gname): New functions, with special
8508 implementation for w32.
8509 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
8510
8511 * w32.c: Rename the_passwd_* to dflt_passwd_*.
8512 (dflt_group_name): New static variable.
8513 (dflt_group): Rename from the_group.
8514 (init_user_info): Init dflt_group fields. Get user's group name
8515 from LookupAccountSid.
8516 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
8517 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
8518 New initialization states.
8519 (globals_of_w32): Initialize them to zero. Initialize the default
8520 group name to "None".
8521 (GetFileSecurity_Name): New global var, the name of the function
8522 to call for GetFileSecurity.
8523 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
8524 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
8525 (get_file_security, get_security_descriptor_owner)
8526 (get_security_descriptor_group, is_valid_sid)
8527 (get_file_security_desc, get_rid, get_name_and_id)
8528 (get_file_owner_and_group): New functions.
8529 (stat): Use get_file_security_desc and get_file_owner_and_group to
8530 report the owner and primary group of each file. Don't ignore the
8531 high 32 bits of file's size, now that st_size is 64-bit wide.
8532 Fix test when to get true file attributes.
8533 (init_user_info): Use get_rid instead of equivalent inline code.
8534 (fstat): Don't ignore the high 32 bits of file's size.
8535
85362008-05-09 Chong Yidong <cyd@stupidchicken.com>
8537
8538 * image.c (png_load): Use correct bit-depth for setting background
8539 color.
8540
85412008-05-08 Eli Zaretskii <eliz@gnu.org>
8542
8543 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
8544 epa-hook.elc.
8545
85462008-05-08 Juanma Barranquero <lekktu@gmail.com>
8547
8548 * font.c (Ffont_match_p): Don't use `iff' in docstring.
8549
85502008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
8551
8552 * macfns.c (Fx_create_frame): Make a copy of frame parameters
8553 because the original parameters are in pure storage now.
8554 (mac_window): Remove unused params. Update callers.
8555
85562008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
8557
8558 * lread.c (substitute_object_recurse): Use lower-level primitives.
8559 Don't signal errors when traversing sub-char-tables.
8560 Don't loop over all the possible characters when traversing char-tables.
8561
8562 * print.c (print_preprocess): Add sub-char-tables to the print-table,
8563 just like we do in print.c.
8564
85652008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
8566
8567 * minibuf.c (Ftry_completion): Remove code left over from when we used
8568 scmp instead of Fcompare_strings.
8569
85702008-05-04 Juanma Barranquero <lekktu@gmail.com>
8571
8572 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
8573
85742008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8575
8576 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
8577 Create bitmap context in native byte order.
8578
8579 * macterm.c (XDrawLine)
8580 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
8581 context in native byte order.
8582
85832008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8584
8585 * config.in: Regenerate.
8586
8587 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
8588 New definitions for Image I/O support.
8589 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8590 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
8591 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
8592 (mac_data_provider_release_data, image_load_image_io)
8593 [USE_MAC_IMAGE_IO]: New functions.
8594 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
8595 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
8596 (init_image_func_pointer) [MAC_OSX]: Remove function.
8597 (image_load_quartz2d) [MAC_OSX]: Check availability of
8598 CGImageCreateWithPNGDataProvider at compile time.
8599 Use lowercase `false' for boolean constant.
8600 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
8601 Use image_load_image_io.
8602 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
8603 Don't check MyCGImageCreateWithPNGDataProvider.
8604 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
8605 Don't call init_image_func_pointer.
8606
8607 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
8608
8609 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
8610 Make variable non-static.
8611 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
8612 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
8613
8614 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
8615 (RED_FROM_ULONG): Mask off higher bits.
8616 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
8617
8618 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
8619 Include AvailabilityMacros.h.
8620 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
8621 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
8622
86232008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
8624
8625 * chartab.c (Fset_char_table_range): If range is t, really set all
8626 chars to that value.
8627
86282008-05-03 Eli Zaretskii <eliz@gnu.org>
8629
8630 * dired.c (Ffile_attributes): Don't allow the device number become
8631 negative.
8632
86332008-05-02 Daiki Ueno <ueno@unixuser.org>
8634
8635 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
8636
86372008-05-02 Juri Linkov <juri@jurta.org>
8638
8639 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
8640 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
8641 DEFAULT argument as a list of default values in docstrings.
8642
86432008-05-01 Chong Yidong <cyd@stupidchicken.com>
8644
8645 * puresize.h (BASE_PURESIZE): Increase to 1210000.
8646
86472008-05-01 Martin Rudalics <rudalics@gmx.at>
8648
8649 * dispnew.c (change_frame_size_1): Preserve small windows when
8650 shrinking frames by calling set_window_height|width with third
8651 arg 2.
8652
8653 * window.h (struct window): Replace field too_small_ok by field
8654 resize_proportionally.
8655
8656 * window.c (make_window): Initialize resize_proportionally.
8657 (enlarge_window): Temporarily set resize_proportionally to make
8658 sure that shrink_windows does scale the window proportionally.
8659 (shrink_windows): When window has resize_proportionally set try
8660 to shrink it proportionally by stealing from other windows.
8661 (struct saved_window, Fset_window_configuration)
8662 (compare_window_configurations): Handle resize_proportionally.
8663 (WINDOW_TOTAL_SIZE): New macro.
8664 (window_min_size, shrink_windows, size_window): Use it.
8665 (check_min_window_sizes): Remove. Invalid values of
8666 window-min-height|width are handled by window_min_size_2 now.
8667 (size_window, Fsplit_window, enlarge_window)
8668 (adjust_window_trailing_edge, grow_mini_window): Don't call
8669 check_min_window_sizes.
8670 (window_min_size_2, window_min_size_1, window_min_size):
8671 New argument safe_p for retrieving "safe" minimum sizes.
8672 (Fdisplay_buffer, Fsplit_window, enlarge_window)
8673 (adjust_window_trailing_edge, grow_mini_window):
8674 Adjust arguments of window_min_size... functions.
8675 (shrink_windows): Argument min_size removed. New argument
8676 safe_p allows shrinking windows to their safe minimum sizes.
8677 Calculate minimum size and decide whether a window shall be
8678 deleted for each window individually.
8679 (size_window): When nodelete_p equals 2, tell shrink_windows to
8680 delete windows only if their new minimum size is no more safe.
8681 (shrink_window_lowest_first): Call window_min_size_1 to make
8682 sure to preserve modeline of bottom-most window when resizing
8683 the minibuffer.
8684 (Fset_window_configuration, Fcurrent_window_configuration)
8685 (compare_window_configurations): Do not handle
8686 window-min-height|width any more.
8687 (syms_of_window): Clarify window-min-height|width doc-strings.
8688
86892008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
8690
8691 * dired.c (file_name_completion): Fix up the encoding/decoding issue
8692 some more. Copy some of the code from Ftry_completions.
8693 Remove special case code that dates back to initial revision when the
8694 slash was only added when necessary and that can't trigger nowadays.
8695
86962008-04-27 Kenichi Handa <handa@m17n.org>
8697
8698 * font.c (font_prop_validate): Signal `error' instead of `font'.
8699
87002008-04-29 Jason Rumney <jasonr@gnu.org>
8701
8702 * w32fns.c (Fw32_battery_status): New defun.
8703 (syms_of_w32fns): Defsubr it.
8704
87052008-04-28 Andreas Schwab <schwab@suse.de>
8706
8707 * dired.c (file_name_completion): Fix another mixing of encoded
8708 and decoded names.
8709
87102008-04-28 Juanma Barranquero <lekktu@gmail.com>
8711
8712 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
8713
87142008-04-27 Juanma Barranquero <lekktu@gmail.com>
8715
8716 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
8717
87182008-04-27 Andreas Schwab <schwab@suse.de>
8719
8720 * dired.c (file_name_completion): Fix inappropriate mixing of
8721 encoded and decoded names.
8722
8723 * xterm.c (XTread_socket): Fix use of uninitialized variable.
8724
8725 * puresize.h (BASE_PURESIZE): Increase to 1200000.
8726
87272008-04-26 Eli Zaretskii <eliz@gnu.org>
8728
8729 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
8730 2008-03-31, it's not needed anymore with `struct stat' definition
8731 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
8732 for the same reasons.
8733
87342008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
8735
8736 * m/sparc.h: Additional redefinitions for GNU/Linux.
8737
87382008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8739
8740 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
8741 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
8742 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
8743 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
8744 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
8745 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
8746 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
8747 Likewise.
8748
8749 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
8750 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
8751 (mac_ax_number_of_characters): Add externs.
8752 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
8753 [USE_MAC_TSM]: Likewise.
8754 (mac_handle_text_input_event) [MAC_OSX]:
8755 Handle kEventTextInputOffsetToPos for no active input area case.
8756 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
8757 (mac_handle_document_access_event)
8758 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
8759 (install_application_handler) [MAC_OSX]: Register handlers for
8760 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
8761 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
8762 Register mac_handle_document_access_event.
8763
8764 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
8765 Make functions non-static.
8766
87672008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
8768
8769 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
8770 (read_file_name_completion_ignore_case, insert_default_directory)
8771 (Qdefault_directory): Move to minibuffer.el.
8772 (Fread_file_name): Call the new `read-file-name' instead.
8773
87742008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8775
8776 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
8777 Make function non-static.
8778 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
8779 Remove function.
8780 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
8781 Move to mactoolbox.c.
8782 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
8783
8784 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
8785 (mac_rect_make): New macro.
8786
8787 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
8788 instead of float.
8789 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
8790 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
8791 (XSetBackground) [USE_CG_DRAWING]: Likewise.
8792 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
8793 CGRectMake.
8794 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
8795 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
8796 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
8797 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
8798 instead of WindowRef in argument type.
8799 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
8800 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
8801 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
8802 instead of DISPLAY. All uses changed.
8803 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
8804 (x_calc_absolute_position): Simplify so as not to use
8805 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
8806
8807 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
8808 instead of WindowRef in argument type.
8809 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
8810 [TARGET_API_MAC_CARBON]: Remove externs.
8811 (create_apple_event, mac_event_parameters_to_lisp)
8812 [TARGET_API_MAC_CARBON]: Add externs.
8813
8814 * mactoolbox.c (Vmac_ts_script_language_on_focus)
8815 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
8816 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
8817 is clicked.
8818 (x_activate_menubar): Remove extern for saved_menu_event_location.
8819 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
8820 Move from mac.c.
8821
88222008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8823
8824 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
8825 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
8826
88272008-04-23 Jason Rumney <jasonr@gnu.org>
8828
8829 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
8830 attributes only for local files.
8831
8832 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
8833 default to Qlocal.
8834
88352008-04-22 Juri Linkov <juri@jurta.org>
8836
8837 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
8838 read-buffer-to-switch instead of using the letter "B".
8839
88402008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
8841
8842 * fileio.c (Qdefault_directory): New variable.
8843 (Fread_file_name): Use it to pass `dir' to the completion functions.
8844
88452008-04-20 Chong Yidong <cyd@stupidchicken.com>
8846
8847 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
8848
88492008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
8850
8851 * keyboard.c (Vpre_help_message): Remove.
8852 (show_help_echo): Remove default C code.
8853
8854 * dired.c (directory_files_internal, file_name_completion):
8855 Only call ENCODE_FILE if the string is indeed decoded.
8856
88572008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
8858
8859 * Makefile.in (TOOLKIT_DEFINES): Remove.
8860 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
8861
88622008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8863
8864 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
8865 (mactoolbox.o): New target.
8866
8867 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
8868 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
8869
8870 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
8871 Use mac_set_frame_window_background instead of XSetWindowBackground.
8872 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
8873 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
8874 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
8875 instead of SetWindowTitleWithCFString.
8876 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
8877 Move function to mactoolbox.c.
8878 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
8879 Use mac_set_window_modified instead of SetWindowModified.
8880 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
8881 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
8882 (Fx_focus_frame): Use mac_front_non_floating_window instead of
8883 FrontNonFloatingWindow. Use mac_activate_window instead of
8884 ActivateWindow. Use mac_active_non_floating_window instead of
8885 ActiveNonFloatingWindow.
8886 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
8887 Use mac_show_hourglass and mac_hide_hourglass.
8888 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
8889 instead of GetGlobalMouse.
8890 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
8891 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
8892 Use mac_bring_window_to_front instead of BringToFront.
8893 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
8894 mactoolbox.c.
8895 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
8896 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
8897 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
8898 mactoolbox.c.
8899
8900 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
8901 (XtPointer): Move typedef from macmenu.c.
8902 (enum button_type): Move enum from macmenu.c.
8903 (widget_value): Move typedef from macmenu.c.
8904 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
8905 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
8906 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
8907 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
8908 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
8909 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
8910 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
8911 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
8912 (Selection): Move typedef from macselect.c.
8913 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
8914 macterm.c.
8915 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
8916 (mac_is_window_collapsed, mac_bring_window_to_front)
8917 (mac_send_window_behind, mac_hide_window, mac_show_window)
8918 (mac_collapse_window, mac_front_non_floating_window)
8919 (mac_active_non_floating_window, mac_activate_window)
8920 (mac_move_window_structure, mac_move_window, mac_size_window)
8921 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
8922
8923 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
8924 (enum mac_menu_kind): Move enum to mactoolbox.c.
8925 (min_menu_id): Move variable to mactoolbox.c.
8926 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
8927 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
8928 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
8929 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
8930 [TARGET_API_MAC_CARBON]: Likewise.
8931 (XtPointer): Move typedef to macgui.h.
8932 (enum button_type): Move enum to macgui.h.
8933 (widget_value): Move typedef to macgui.h.
8934 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
8935 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
8936 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
8937 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
8938 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
8939 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
8940 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
8941 (popup_activated_flag): Make variable non-static.
8942 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
8943 (add_menu_item, fill_menu, dispose_menus):
8944 Move functions to mactoolbox.c.
8945 (restore_show_help_function, menu_target_item_handler)
8946 (install_menu_target_item_handler, mac_handle_dialog_event)
8947 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
8948 [TARGET_API_MAC_CARBON]: Likewise.
8949 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
8950 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
8951 (find_and_call_menu_selection, name_is_separator): Make function
8952 non-static.
8953 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
8954 to mactoolbox.c.
8955 (set_frame_menubar): Don't call install_menu_quit_handler.
8956 (menu_item_selection): New variable.
8957 (mac_menu_show): Use create_and_show_popup_menu.
8958 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
8959 selection but set variable menu_item_selection. All uses changed.
8960 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
8961 Call install_menu_quit_handler. Move to mactoolbox.c.
8962
8963 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
8964 (Selection): Move typedef to macgui.h.
8965 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
8966 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
8967 Make variables non-static.
8968 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
8969 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
8970 Make functions non-static.
8971 (Vmac_service_selection) [MAC_OSX]: Likewise.
8972 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
8973 (mac_valid_selection_target_p, mac_clear_selection)
8974 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
8975 (mac_put_selection_value, mac_selection_has_target_p)
8976 (mac_get_selection_value, mac_get_selection_target_list)
8977 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
8978 Move functions to mactoolbox.c.
8979 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
8980 Likewise.
8981 (copy_scrap_flavor_data, mac_handle_service_event)
8982 (install_service_handler) [MAC_OSX]: Likewise.
8983 (syms_of_macselect) <Vmac_dnd_known_types>:
8984 Use mac_dnd_default_known_types.
8985
8986 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
8987 Move to mactoolbox.c.
8988 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
8989 (Fx_selection_owner_p): Add EXFUN.
8990 (install_window_handler, remove_window_handler, XSetWindowBackground):
8991 Remove externs.
8992 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
8993 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
8994 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
8995 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
8996 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
8997 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
8998 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
8999 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
9000 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
9001 (create_and_show_popup_menu, mac_get_selection_from_symbol)
9002 (mac_valid_selection_target_p, mac_clear_selection)
9003 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9004 (mac_put_selection_value, mac_selection_has_target_p)
9005 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
9006 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
9007 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
9008 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9009 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
9010 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9011 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
9012 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9013 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9014
9015 * mactoolbox.c: New file.
9016
90172008-04-18 Jason Rumney <jasonr@gnu.org>
9018
9019 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
9020
90212008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9022
9023 * character.c (Fmultibyte_char_to_unibyte):
9024 Return latin1 chars unchanged.
9025
9026 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
9027 relocated if it points to `name'.
9028
90292008-04-17 Kenichi Handa <handa@m17n.org>
9030
9031 * data.c (Faset): Allow setting a multibyte character in an
9032 ASCII-only unibyte string.
9033
9034 * lisp.h (STRING_SET_MULTIBYTE): New macro.
9035
90362008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
9037
9038 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
9039 done in config.h.
9040
90412008-04-16 Juanma Barranquero <lekktu@gmail.com>
9042
9043 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
9044 (Fchar_direction): Add usage in the docstring.
9045
90462008-04-15 Chong Yidong <cyd@stupidchicken.com>
9047
9048 * keyboard.c (read_key_sequence): Remove always-true checks.
9049
90502008-04-14 Jason Rumney <jasonr@gnu.org>
9051
9052 * w32font.c (w32font_open_internal): Set max_bounds.descent in
9053 compatibility struct, for better underline positioning.
9054
90552008-04-13 David Hansen <david.hansen@gmx.net>
9056
9057 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
9058 string.
9059
90602008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
9061
9062 * m/hp800.h (XUINT, XSET): Remove.
9063
90642008-04-12 Juanma Barranquero <lekktu@gmail.com>
9065
9066 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
9067 previous change.
9068
90692008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
9070
9071 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
9072 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
9073
90742008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9075
9076 * keymap.h (map_keymap_canonical): Declare.
9077 * xmenu.c (single_keymap_panes): Use it.
9078
90792008-04-11 Glenn Morris <rgm@gnu.org>
9080
9081 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
9082 set the target's value to that of the alias.
9083
90842008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9085
9086 * term.c (set_tty_color_mode): Left over typo.
9087
90882008-04-10 Michael Albinus <michael.albinus@gmx.de>
9089
9090 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
9091 only after check for file name handler functions. Signal, when
9092 native functionality is not supported.
9093 (syms_of_fileio): Declare it unconditionally.
9094
90952008-04-10 Jason Rumney <jasonr@gnu.org>
9096
9097 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
9098 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
9099
9100 * w32.c (logon_network_drive): Also logon to remote drives that
9101 are mapped to drive letters.
9102
91032008-04-10 Glenn Morris <rgm@gnu.org>
9104
9105 * xdisp.c (truncate-partial-width-windows): Doc fix.
9106
91072008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
9108
9109 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
9110 Move functions to minibuffer.el.
9111 (syms_of_fileio): Don't declare them.
9112
91132008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9114
9115 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
9116 (syms_of_minibuf): Remove its initialization.
9117
9118 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
9119
91202008-04-09 Juanma Barranquero <lekktu@gmail.com>
9121
9122 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
9123
91242008-04-09 Jason Rumney <jasonr@gnu.org>
9125
9126 * makefile.w32-in (distclean): Delete makefile too.
9127 (maintainer-clean): New target.
9128
9129 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
9130
9131 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
9132 for new font backend and composite cases.
9133
91342008-04-09 Jan Djärv <jan.h.d@swipnet.se>
9135
9136 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
9137 Most of the code moved to run_timers.
9138 (do_pending_atimers): Call run_timers.
9139 (run_timers): New function.
9140
9141 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
9142 run atimers.
9143
9144 * process.c (wait_reading_process_output): The same as above.
9145
91462008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9147
9148 * minibuf.c (last_exact_completion): Remove variable.
9149 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
9150 (complete_and_exit_1, complete_and_exit_2)
9151 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
9152 (Fdisplay_completion_list, display_completion_list_1)
9153 (Fminibuffer_completion_help, Fself_insert_and_exit)
9154 (Fexit_minibuffer, Fminibuffer_message): Move functions to
9155 minibuffer.el.
9156 (syms_of_minibuf): Remove corresponding initializations.
9157
9158 * keyboard.c (Qdeactivate_mark): New var.
9159 (command_loop_1): Use it to call `deactivate-mark'.
9160 (syms_of_keyboard): Initialize it.
9161
9162 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
9163 to another frame.
9164 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
9165 Don't call set_tty_color_mode.
9166 (store_frame_param): Reset previous_frame rather than call
9167 set_tty_color_mode.
9168 * term.c (set_tty_color_mode): Rewrite.
9169 * dispextern.h (set_tty_color_mode): New type.
9170 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
9171
91722008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
9173
9174 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
9175 for generic chars, which do not exist any more in emacs-unicode.
9176
91772008-04-08 Michael Albinus <michael.albinus@gmx.de>
9178
9179 * coding.c (detect_coding_emacs_mule)
9180 (Ffind_operation_coding_system): Fix typo.
9181
91822008-04-08 Jason Rumney <jasonr@gnu.org>
9183
9184 * w32uniscribe.c (SNAME): Extract only symbol name.
9185
9186 * w32font.h (struct w32_metric_cache): New struct.
9187 (w32font_info): Use it.
9188 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
9189 (CACHE_BLOCKSIZE): New constants.
9190
9191 * w32font.c (Qja, Qko, Qzh): New symbols.
9192 (syms_of_w32font): Initialise them.
9193 (font_matches_spec): Use them to filter by language.
9194 (recompute_cached_metrics): Remove function.
9195 (compute_metrics, clear_cached_metrics): New functions.
9196 (w32font_encode_char): Use them to manage metric cache.
9197 (w32font_text_extents): Cache metrics for all glyphs on demand.
9198 Delay converting glyph indices to WORD until needed.
9199 (w32font_open_internal): Initialize metric cache to empty.
9200 (registry_to_w32_charset): Charset should always be a symbol.
9201 (fill_in_logfont, list_all_matching_fonts): Family should
9202 always be a symbol.
9203
92042008-04-06 Jason Rumney <jasonr@gnu.org>
9205
9206 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
9207 Give up if glyph indices not supported. Use uniscribe obtained
9208 ABC widths for individual metrics. Map glyph clusters back to
9209 characters using fClusterStart flag. Return number of glyphs
9210 produced, not chars processed.
9211 (uniscribe_shape): Map char at FROM to current glyph.
9212
92132008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9214
9215 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
9216 Use SetMenuItemHierarchicalMenu.
9217
92182008-04-05 Jason Rumney <jasonr@gnu.org>
9219
9220 * image.c (pbm_load): Allow color values up to 65535.
9221 Throw an error if max_color_idx is outside the supported range.
9222 Report an error when image size is invalid.
9223 Read two bytes at a time when raw images have max_color_idx above 255.
9224
92252008-04-05 Eli Zaretskii <eliz@gnu.org>
9226
9227 * w32.c (readdir): If FindFirstFile/FindNextFile return in
9228 cFileName a file name that includes `?' characters, use the 8+3
9229 alias in cAlternateFileName instead.
9230
92312008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
9232
9233 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
9234 append "CCL: Quitted" when the CCL program is quitted.
9235 (setup_ccl_program): Initialize ccl->quit_silently to zero.
9236
9237 * ccl.h (struct ccl_program): New member quit_silently.
9238
92392008-04-05 Chong Yidong <cyd@stupidchicken.com>
9240
9241 * search.c (compile_pattern_1): Treat non-nil and non-string of
9242 search-spaces-regexp as nil.
9243
9244 * minibuf.c (Fassoc_string): Tweak docstring.
9245
92462008-04-05 Eli Zaretskii <eliz@gnu.org>
9247
9248 * dired.c (Ffile_attributes): Support inode numbers wider than 32
9249 bits. Remove ugly WINDOWSNT-specific kludge introduced on
9250 2008-03-14 to force inode be positive.
9251
9252 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
9253 _S_* ones, since we now use our own sys/stat.h.
9254 (stat, fstat): Don't mangle the inode number.
9255 (init_user_info): Don't restrict UID and GID to 0-60000 range.
9256
92572008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
9258
9259 * frame.h (struct frame): Give one more bit to `visible' since we use
9260 values larger than 1 to indicate obscured frames on ttys.
9261
9262 * keymap.c (Qkeymap_canonicalize): New var.
9263 (Fmap_keymap_internal): New fun.
9264 (describe_map): Use keymap-canonicalize.
9265
9266 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
9267 (Fundo_boundary): Set them.
9268 (syms_of_undo): Initialize them.
9269 (record_point): Use them instead of last_point_position*.
9270 (last_undo_buffer): Change type.
9271
92722008-04-04 Jason Rumney <jasonr@gnu.org>
9273
9274 * w32font.c (w32font_text_extents): Use font's ascent and descent.
9275 (recompute_cached_metrics): Don't set ascent and descent per char.
9276
9277 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
9278 (uniscribe_check_otf): Add GC protection before consing.
9279 Rearrange loop for counting features.
9280
92812008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
9282
9283 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
9284 buffer with byte-size of source buffer.
9285
92862008-04-03 Chong Yidong <cyd@stupidchicken.com>
9287
9288 * callint.c (Fcall_interactively): Handle temporary region even
9289 when shift-select-mode is off.
9290
92912008-04-03 Jason Rumney <jasonr@gnu.org>
9292
9293 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
9294
92952008-04-03 Kenichi Handa <handa@m17n.org>
9296
9297 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
9298 (CATEGORY_MASK_UTF_16): Likewise.
9299 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
9300 binary file.
9301 (detect_coding): Add null-byte detection for a binary file.
9302 (detect_coding_system): Likewise.
9303
93042008-04-03 Jason Rumney <jasonr@gnu.org>
9305
9306 * w32uniscribe.c: New file.
9307
9308 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
9309
9310 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
9311
9312 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
9313 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
9314 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
9315 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
9316 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
9317 (Qphonetic): New symbols.
9318 (syms_of_w32font): Initialize them.
9319 (font_supported_scripts): Use them.
9320 (w32font_list_family): List all charsets.
9321 (w32font_text_extents, recompute_cached_metrics): Fix metric
9322 calculations.
9323 (w32_enumfont_pattern_entity): Make full_type a DWORD.
9324 Give opentype fonts their own format.
9325 (font_matches_spec): New arguments backend and logfont.
9326 Handle :otf spec for uniscribe backend.
9327 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
9328 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
9329
9330 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
9331 font backend.
9332 (globals_of_w32fns): Initialize uniscribe font backend.
9333
9334 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
9335 dependencies.
9336 (w32uniscribe.$(O)): New file to build.
9337 (FONT_OBJ): Include w32uniscribe.$(O).
9338 (LIBS): Add uniscribe libraries.
9339
9340 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
9341
93422008-04-02 Chong Yidong <cyd@stupidchicken.com>
9343
9344 * callint.c (Vshift_select_mode): New var.
9345 (Finteractive): Document new ^ spec.
9346 (Fcall_interactively): Call handle-shift-selection if the ^ spec
9347 is present.
9348
9349 * keyboard.c (Vthis_command_keys_shift_translated): New var.
9350 (command_loop_1): Avoid running the direct display versions of
9351 forward-char and backward-char if shift-selection may occur.
9352 (read_key_sequence): Set Vthis_command_keys_shift_translated if
9353 shift-translation takes place.
9354
9355 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
9356 avoid clobbering by define-minor-mode.
9357
9358 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
9359 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
9360
9361 * syntax.c (Fforward_word): Add ^ interactive spec.
9362
9363 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
9364 (Fscroll_right): Add ^ interactive spec.
9365
93662008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
9367
9368 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
9369
9370 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
9371
9372 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
9373
93742008-03-31 Juri Linkov <juri@jurta.org>
9375
9376 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
9377
93782008-03-30 Jan Djärv <jan.h.d@swipnet.se>
9379
9380 * gtkutil.c (xg_set_geometry): Fix indentation.
9381 (xg_resize_outer_widget): Remove.
9382 (x_wm_size_hint_off): Fix indentation.
9383 (xg_frame_set_char_size): Call flush_and_sync after
9384 gtk_window_resize.
9385 (x_wm_set_size_hint): Pass NULL as geometry window to
9386 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
9387 Add menu bar and tool bar height to base height.
9388 (xg_update_frame_menubar, free_frame_menubar)
9389 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
9390 (update_frame_tool_bar, free_frame_tool_bar):
9391 Change xg_resize_outer_widget to xg_frame_set_char_size.
9392
93932008-03-30 Michael Albinus <michael.albinus@gmx.de>
9394
9395 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
9396 (Fdbus_call_method): New parameter TIMEOUT.
9397 (dbus-send-signal): Optimize UNGCPRO call.
9398
93992008-03-29 Juri Linkov <juri@jurta.org>
9400
9401 * window.c (Fdisplay_buffer): Move call to
9402 Vsplit_window_preferred_function out of conditions that check
9403 if window is eligible for vertical splitting.
9404 When Vsplit_window_preferred_function is non-nil, call it and use
9405 its non-nil return value as window. Otherwise, continue doing
9406 vertical splitting using Fsplit_window with arg horflag=nil.
9407 (syms_of_window) <Vsplit_window_preferred_function>: Change the
9408 default value from `split-window' to nil.
9409
94102008-03-29 Juri Linkov <juri@jurta.org>
9411
9412 * callint.c (Fcall_interactively): Revert 2008-03-16 change
9413 for interactive code letters 'b' and 'B'.
9414
94152008-03-29 Eli Zaretskii <eliz@gnu.org>
9416
9417 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
9418 multibyte string.
9419
94202008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
9421
9422 * keyboard.c (pending_funcalls): New var.
9423 (timer_check): Run it.
9424 (syms_of_keyboard): Initialize it.
9425 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
9426 (Vdelete_terminal_functions): New vars.
9427 (syms_of_terminal): Initialize them.
9428 (Fdelete_terminal): Run delete-terminal-functions.
9429 * xdisp.c (safe_eval): Rewrite.
9430 (safe_call2): New fun.
9431 * frame.c (Qdelete_frame_functions): New var.
9432 (syms_of_frame): Initialize it.
9433 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
9434 * lisp.h (safe_call2, pending_funcalls): Declare.
9435
94362008-03-28 Andreas Schwab <schwab@suse.de>
9437
9438 * indent.c (Fmove_to_column): Move declaration before statements.
9439
94402008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
9441
9442 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
9443 (struct frame): Use bit fields for boolean vars.
9444
9445 * process.c (server_accept_connection): Simplify naming.
9446 (emacs_get_tty_pgrp): Use SDATA.
9447
9448 * coding.c (decode_coding_object): Fix last change.
9449
94502008-03-27 Jason Rumney <jasonr@gnu.org>
9451
9452 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
9453
94542008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
9455
9456 * charset.c (Fdefine_charset_internal): Change the way of
9457 registering charsets in Vcharset_order_list.
9458 (syms_of_charset): Make the charset `eight-bit' supplementary.
9459
94602008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
9461
9462 * regex.c (EXTEND_BUFFER): Change order of pointer addition
9463 operations, to avoid having the difference between pointers
9464 overflow.
9465
94662008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
9467
9468 * indent.c (check_display_width): New fun.
9469 (scan_for_column): Use it.
9470
9471 * data.c (syms_of_data): Mark most-positive-fixnum and
9472 most-negative-fixnum as constants.
9473
9474 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
9475
9476 * indent.c (scan_for_column): Extract from current_column_1.
9477 Merge with the same code from Fmove_to_column.
9478 (current_column_1, Fmove_to_column): Use it.
9479
94802008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
9481
9482 * keymap.c (map_keymap_internal): New fun.
9483 (map_keymap): Use it.
9484 (Fmap_keymap_internal): New fun.
9485 (Fmap_keymap): Remove left-out test from before make_save_value.
9486
9487 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
9488
9489 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
9490 Use XCAR/XCDR.
9491
9492 * process.h (struct Lisp_Process): Remove filter_multibyte.
9493 * process.c (QCfilter_multibyte): Remove.
9494 (setup_process_coding_systems): Don't use filter_multibyte.
9495 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
9496 (read_process_output): Don't adjust multibyteness to filter_multibyte.
9497 (Fset_process_filter_multibyte): Change the coding-system to
9498 approximate the previous behavior.
9499 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
9500 coding-system.
9501
9502 * coding.c (decode_coding_object): When not decoding into a buffer,
9503 obey the coding system's preference of (uni|multi)byte.
9504
95052008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
9506
9507 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
9508 every char is changed and has a different byte-length.
9509 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
9510 Fix int -> EMACS_INT.
9511
95122008-03-23 David Hansen <david.hansen@gmx.net>
9513
9514 * dbusbind.c (xd_read_message): Remove extra copying of message
9515 strings. Check for NULL `interface' or `member'.
9516
95172008-03-22 Eli Zaretskii <eliz@gnu.org>
9518
9519 * w32.c (readdir): If FindFirstFile/FindNextFile return in
9520 cFileName a file name that includes `?' characters, use the 8+3
9521 alias in cAlternateFileName instead.
9522
95232008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
9524
9525 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
9526
95272008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
9528
9529 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
9530 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
9531 work on current_buffer only instead (that was already the case
9532 for some of the code anyway).
9533 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
9534 (temp_set_point, temp_set_point_both): Use EMACS_INT.
9535 (SET_PT, SET_PT_BOTH): Adjust.
9536 * intervals.h (set_point, temp_set_point, set_point_both)
9537 (temp_set_point_both): Remove redundant declarations.
9538
95392008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
9540
9541 * fileio.c (Finsert_file_contents):
9542 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
9543 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
9544 when buffer != current_buffer anyway.
9545
95462008-03-20 Andreas Schwab <schwab@suse.de>
9547
9548 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
9549 as default.
9550
95512008-03-19 Jason Rumney <jasonr@gnu.org>
9552
9553 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
9554 (syms_of_w32fns): Initialize them.
9555 (HOURGLASS_ID): New constant.
9556 (x_window_to_frame): Don't check hourglass_window.
9557 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
9558 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
9559 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
9560 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
9561 Only change the cursor if hourglass is not active.
9562 (Fx_create_frame): Initialize frame's current_cursor.
9563 (hourglass_atimer): Remove.
9564 (hourglass_started): New function.
9565 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
9566 (show_hourglass): Adapt to w32, changing argument to frame.
9567
9568 * w32term.h (struct w32_output): Remove hourglass_window.
9569 Add current_cursor.
9570
9571 * eval.c (call_debugger, Fsignal):
9572 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
9573 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
9574 (Fexecute_extended_command, cancel_hourglass_unwind):
9575 * minibuf.c (read_minibuf):
9576 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
9577
95782008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
9579
9580 * window.c (run_funs): New fun.
9581 (run_window_configuration_change_hook): Use it to run the buffer-local
9582 and the global part of the hook.
9583
9584 * xdisp.c (format_mode_line_unwind_data): Add window argument.
9585 (unwind_format_mode_line): Restore selected window.
9586 (x_consider_frame_title, Fformat_mode_line): Set selected window.
9587
95882008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
9589
9590 * editfns.c (Fchar_equal): Check they are valid characters.
9591
9592 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
9593
95942008-03-17 Andreas Schwab <schwab@suse.de>
9595
9596 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
9597 against a charset.
9598
9599 * lisp.h (Fbuffer_list): Declare.
9600
96012008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 9602
aac0c6e3
MR
9603 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
9604 handlebox_widget is != 0.
9605
96062008-03-16 Juri Linkov <juri@jurta.org>
9607
9608 * callint.c (Fcall_interactively): For interactive code letters
9609 'b' and 'B' put the buffer list into the list of default "future"
9610 values of the minibuffer.
9611
96122008-03-16 Andreas Schwab <schwab@suse.de>
9613
9614 * keyboard.c (read_key_sequence): Fix downcasing of letters with
9615 modifiers.
9616
9617 * regex.c (re_match_2_internal): Correct matching of a charset
9618 against latin-1 characters.
9619
96202008-03-16 Kenichi Handa <handa@m17n.org>
9621
9622 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
9623 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
9624 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
9625 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
9626 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
9627 CHAR_STRING_ADVANCE.
9628 (produce_chars): Fix for the case that the source and the
9629 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
9630 instead of CHAR_STRING_ADVANCE.
9631 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
9632 STRING_CHAR_ADVANCE.
9633
96342008-03-15 Andreas Schwab <schwab@suse.de>
9635
9636 * regex.c (re_match_2_internal): Correct matching of eight bit
9637 characters in unibyte strings.
9638
96392008-03-15 Martin Rudalics <rudalics@gmx.at>
9640
9641 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
9642 at end of range when it coincides with the end of the buffer.
9643
96442008-03-14 Eli Zaretskii <eliz@gnu.org>
9645
9646 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
9647
9648 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
9649
96502008-03-14 Jason Rumney <jasonr@gnu.org>
9651
9652 * editfns.c (initial_tz): New variable.
9653 (syms_of_editfns): Initialize it.
9654 (Fset_time_zone_rule): Set it when first called.
9655 Use it when TZSTRING is nil.
9656
9657 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
9658 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
9659 (monitor_from_point_fn, get_monitor_info_fn): New globals.
9660 (globals_of_w32fns): Initialize them.
9661 (compute_tip_xy): Use them to position tooltips.
9662
96632008-03-14 Glenn Morris <rgm@gnu.org>
9664
9665 * emacs.c (main): Revert previous change.
9666 (standard_args): Revert -internal-script back to -scriptload,
9667 and remove the long-option form.
9668
96692008-03-13 Glenn Morris <rgm@gnu.org>
9670
9671 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
9672 Remove option -enable-font-backend.
9673
96742008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
9675
9676 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
9677
96782008-03-11 Jan Djärv <jan.h.d@swipnet.se>
9679
9680 * xterm.c (x_connection_closed): For GTK: If this is the last
9681 terminal just exit without closing the display.
9682
96832008-03-11 Jason Rumney <jasonr@gnu.org>
9684
9685 * w32font.c (w32font_full_name): Use floor to round.
9686
f0131492 96872008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
9688
9689 * sound.c (alsa_configure): Declare vol at beginning of block.
9690
9691 * fontset.c (Ffontset_info): Remove extra semicolon.
9692
96932008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
9694
9695 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
9696 size of resulting string.
9697
96982008-03-10 Jason Rumney <jasonr@gnu.org>
9699
9700 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
9701
97022008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9703
9704 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
9705 Don't pretend as if characters with display property haven't been
9706 consumed for string-replacing-string case.
9707
97082008-03-08 Kim F. Storm <storm@cua.dk>
9709
9710 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
9711 (get_next_display_element, next_element_from_string)
9712 (next_element_from_ellipsis, next_element_from_buffer): Use it.
9713
97142008-03-08 Andreas Schwab <schwab@suse.de>
9715
9716 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
9717
97182008-03-06 Jason Rumney <jasonr@gnu.org>
9719
9720 * w32font.c (w32_registry): Take font_type argument. Use ANSI
9721 when charset not specified. Only translate ANSI to unicode when
9722 font_type is truetype.
9723 (w32font_coverage_ok): New function.
9724 (add_font_entity_to_list): Use it to filter unsuitable fonts.
9725
97262008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
9727
9728 * lread.c (Fread_char): Resolve modifiers.
9729 (Fread_char_exclusive): Likewise.
9730
9731 * character.c (char_resolve_modifier_mask): New function.
9732 (char_string): Use char_resolve_modifier_mask.
9733 (Fchar_resolve_modifiers): New function.
9734 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
9735 function.
9736
97372008-03-04 Jason Rumney <jasonr@gnu.org>
9738
9739 * makefile.w32-in: Always include w32font.c in the build.
9740 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
9741
97422008-03-04 Andreas Schwab <schwab@suse.de>
9743
9744 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
9745 (versionclean): Likewise.
9746
97472008-03-04 Juanma Barranquero <lekktu@gmail.com>
9748
9749 * .cvsignore: Add oo.
9750
97512008-03-03 Andreas Schwab <schwab@suse.de>
9752
9753 * coding.c (decode_coding_object): Inhibit gap shrinking while
9754 decoding in place.
9755
97562008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
9757
9758 * w32term.c: Remove unused include "gnu.h".
9759 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
9760
9761 * gnu.h: Rename to ...
9762 * emacs-icon.h: ... this.
9763 * xterm.c: Use emacs-icon.h instead of gnu.h.
9764 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
9765
97662008-03-03 Juanma Barranquero <lekktu@gmail.com>
9767
9768 * w32font.c: Include math.h.
9769
97702008-03-03 Jason Rumney <jasonr@gnu.org>
9771
9772 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
9773 Compute options separately.
9774 (w32font_open_internal): Set glyph_idx before caching metrics.
9775
9776 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
9777 Define if system headers don't.
9778 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
9779 (w32font_encode_char): Don't declare here.
9780
9781 * w32font.c (Quniscribe, QCformat): New symbols.
9782 (syms_of_w32font): Define them.
9783 (w32font_has_char): Indicate uncertainty.
9784 (w32font_encode_char): Encode as glyph point. Make static.
9785 (recompute_cached_metrics): New function.
9786 (w32font_open_internal): Use it. Set font to use glyph points
9787 initially. Set format based on type of font.
9788 (w32font_text_extents, w32font_draw): Optionally use glyph points.
9789 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
9790 on it. Set format based on information available here.
9791 (add_font_entity_to_list): Identify backend based on opentype_only.
9792
97932008-03-02 Andreas Schwab <schwab@suse.de>
9794
9795 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
9796
9797 * coding.c (decode_coding_big5, produce_chars):
9798 Fix typos in last change.
9799
98002008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
9801
9802 * gnu.h: New icon.
9803
98042008-03-02 Kenichi Handa <handa@m17n.org>
9805
9806 * coding.c (decode_coding_utf_8): When eol-type of CODING is
9807 `dos', don't decode '\r' if that is the last in the source.
9808 (decode_coding_utf_16, decode_coding_emacs_mule)
9809 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
9810 (decode_coding_raw_text, decode_coding_charset): Likewise.
9811 (produce_chars): Don't decode EOL here. Use EMACS_INT.
9812
98132008-03-01 Jason Rumney <jasonr@gnu.org>
9814
9815 * w32font.c (w32font_full_name): Report point size for scalable fonts.
9816
98172008-03-01 Kim F. Storm <storm@cua.dk>
9818
9819 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
9820
98212008-03-01 Jason Rumney <jasonr@gnu.org>
9822
9823 * w32font.c (w32font_full_name): New function.
9824 (w32font_open_internal): Use it.
9825
98262008-03-01 Kim F. Storm <storm@cua.dk>
9827
9828 * dispnew.c (line_draw_cost): Fix invalid glyph check.
9829
98302008-03-01 Jason Rumney <jasonr@gnu.org>
9831
9832 * font.c (font_unparse_fcname): Increase len when style is a symbol.
9833
98342008-03-01 Jan Djärv <jan.h.d@swipnet.se>
9835
9836 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
9837 xg_frame_resized when the event is for the edit widget.
9838
9839 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
9840
9841 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
9842 set_char_size.
9843 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
9844 operations on widgets here. Just set frame size if needed.
9845 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
9846 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
9847 (x_wm_set_size_hint): Set size hints on the edit widget only, not
9848 the whole frame.
9849 (xg_create_tool_bar): Move attachment of the tool bar to
9850 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
9851 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
9852
98532008-03-01 Jason Rumney <jasonr@gnu.org>
9854
9855 * w32fns.c (w32_msg_pump): Disable debug code.
9856
98572008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9858
9859 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
9860
98612008-02-29 Chong Yidong <cyd@stupidchicken.com>
9862
9863 * xdisp.c (next_overlay_string): Don't set
9864 overlay_strings_at_end_processed_p if we're currently reading from
9865 a display string.
9866
98672008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
9868
9869 * xdisp.c (get_overlay_strings_1): Fix typo.
9870
98712008-02-29 Chong Yidong <cyd@stupidchicken.com>
9872
9873 * xdisp.c (get_overlay_strings_1): Add missing argument type.
9874
98752008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
9876
9877 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
9878
9879 * xdisp.c (display_mode_element): Cancel the previous change.
9880 (decode_mode_spec): Likewise.
9881 (handle_auto_composed_prop): Don't make composition if it->string
9882 is a string.
9883
98842008-02-27 Kim F. Storm <storm@cua.dk>
9885
9886 * lisp.h (GLYPH): Change type from int to struct with separate char
9887 and face_id members.
9888 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
9889 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
9890 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
9891 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
9892 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
9893 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
9894 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
9895 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
9896 handle new Lisp glyph code encoding, either an integer or a cons.
9897
9898 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
9899 (GLYPH_ALIAS): Delete.
9900 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
9901 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
9902 (GLYPH_FROM_CHAR): Replace macro by ...
9903 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
9904
9905 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
9906 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
9907 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
9908 (GLYPH_INVALID_P): New macro.
9909 (spec_glyph_lookup_face): Update prototype.
9910
9911 * dispnew.c (line_draw_cost): Adapt to new glyph type.
9912 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
9913 new glyph code encoding.
9914 (spec_glyph_lookup_face): No return value; update passed glyph instead.
9915 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
9916
9917 * xdisp.c (get_next_display_element, next_element_from_display_vector):
9918 Adapt to new glyph type and new glyph code encoding.
9919
9920 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
9921
9922 * indent.c (current_column, current_column_1, Fmove_to_column)
9923 (compute_motion): Adapt to new glyph code encoding.
9924
9925 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
9926
99272008-02-27 Chong Yidong <cyd@stupidchicken.com>
9928
9929 * process.c (wait_reading_process_output): Check for window
9930 changes caused by timers.
9931 Suggested by Johan Bockgård.
9932
99332008-02-27 Glenn Morris <rgm@gnu.org>
9934
9935 * emacs.c (USAGE1): Add `--disable-font-backend'.
9936
99372008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
9938
9939 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
9940 is made to the buffer.
9941
99422008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
9943
9944 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
9945 (face_at_string_position):
9946 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
9947 (face_at_string_position):
9948 * xdisp.c (display_string, next_overlay_change):
9949 * buffer.h (overlays_at):
9950 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
9951 Update callers.
9952
99532008-02-26 Chong Yidong <cyd@stupidchicken.com>
9954
9955 * editfns.c (Fformat): Doc fix.
9956
99572008-02-26 Juanma Barranquero <lekktu@gmail.com>
9958
9959 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
9960 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
9961 (Ffont_otf_alternates, Fquery_font): Doc fixes.
9962
99632008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
9964
9965 * buffer.c (Fbuffer_swap_text): New function.
9966 (syms_of_buffer): Defsubr it.
9967
99682008-02-25 Chong Yidong <cyd@stupidchicken.com>
9969
9970 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
9971
99722008-02-25 Jason Rumney <jasonr@gnu.org>
9973
9974 * w32font.c (w32font_draw): Draw one character at a time when padding.
9975
99762008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
9977
9978 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
9979 Handle a nil arg. Use run_window_configuration_change_hook.
9980 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
9981 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
9982 Use run_window_configuration_change_hook.
9983
99842008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
9985
9986 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
9987 1-pixel width.
9988
99892008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
9990
9991 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
9992 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
9993 if the glyph in the font is zero pixel with.
9994
9995 * dispextern.h (struct glyph_string): New member padding_p.
9996
9997 * w32font.c (w32font_draw): Pay attention to s->padding_p.
9998
9999 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
10000
10001 * xfont.c (xfont_draw): Pay attention to s->padding_p.
10002
10003 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
10004
10005 * font.c: If the font driver doesn't have `shape' function, return Qnil.
10006
100072008-02-25 Jason Rumney <jasonr@gnu.org>
10008
10009 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
10010
100112008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
10012
10013 Allow fine-grained image-cache flushing.
10014 * dispextern.h (struct image): Add `dependencies' field.
10015 (clear_image_caches): Change arg to Lisp_Object.
10016 * image.c (make_image): Initialize `dependencies' field.
10017 (clear_image_cache): Change arg to allow fine-grained flushing.
10018 Perform the flush even if image-cache-eviction-delay is nil.
10019 (clear_image_caches): Change arg to Lisp_Object.
10020 (Fclear_image_cache): Expand meaning of the argument.
10021 (mark_image): Mark `dependencies' field.
10022 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
10023 (lface_hash): Use XHASH rather than XFASTINT.
10024 (face_at_buffer_position): Fix int -> EMACS_INT position.
10025 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
10026 (select_frame_for_redisplay): Remove code duplication.
10027 (redisplay_internal): Adapt arg to call to clear_image_caches.
10028
100292008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
10030
10031 * s/vms4-0.h:
10032 * s/vms4-2.h:
10033 * s/vms4-4.h:
10034 * s/vms5-5.h: Remove, unused.
10035
10036 * s/irix5-2.h:
10037 * s/irix6-0.h:
10038 * s/riscos5.h:
10039 * s/mach-bsd4-3.h:
10040 * m/mips4.h: Remove files for obsolete systems.
10041
10042 * Makefile.in:
10043 * filelock.c:
10044 * unexmips.c:
10045 * m/hp9000s300.h:
10046 * m/iris4d.h:
10047 * s/aix3-1.h:
10048 * s/hpux.h:
10049 * s/msdos.h:
10050 * s/usg5-0.h:
10051 * s/usg5-2-2.h:
10052 * s/usg5-2.h:
10053 * s/usg5-3.h: Remove references to obsolete variables.
10054
10055 * s/irix5-0.h: Remove, move all the contents ...
10056 * s/irix6-5.h: ... here. Simplify.
10057 * config.in: Regenerate.
10058
100592008-02-24 Jason Rumney <jasonr@gnu.org>
10060
10061 * w32term.c (x_draw_glyph_string_background): Clear the background
10062 manually when cleartype is in use.
10063 (x_draw_glyph_string_foreground): Draw text transparently when
10064 cleartype is in use.
10065
10066 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
10067 a font into it unless we have to.
10068
100692008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10070
10071 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
10072 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 10073
aac0c6e3
MR
100742008-02-18 Jason Rumney <jasonr@gnu.org>
10075
10076 * w32fns.c (Fw32_shell_execute): Encode parameters.
10077
100782008-02-09 Eli Zaretskii <eliz@gnu.org>
10079
10080 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
10081
100822008-02-05 Juanma Barranquero <lekktu@gmail.com>
10083
10084 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
10085
100862008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
10087
10088 * xterm.c (x_set_offset): Don't change the gravity if
10089 CHANGE_GRAVITY is -1.
10090
100912008-02-23 Chong Yidong <cyd@stupidchicken.com>
10092
10093 * fileio.c (auto_save_error_occurred): New var.
10094 (auto_save_error): Set it.
10095 (Fdo_auto_save): Don't overwrite the error message if an auto-save
10096 error occurred.
10097
100982008-02-23 Eli Zaretskii <eliz@gnu.org>
10099
10100 * w32.c (globals_of_w32): Add initializations for
10101 g_b_init_get_sid_sub_authority and
10102 g_b_init_get_sid_sub_authority_count.
10103
101042008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
10105
10106 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
10107 (font_parse_xlfd): Use them for sanity check.
10108 (Finternal_set_font_style_table): Make sure the table is bijective.
10109
10110 Consolidate the image_cache to the terminal struct.
10111 * termhooks.h (P_): Remove redundant def.
10112 (struct terminal): New field `image_cache'.
10113 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
10114 of FRAME_X_IMAGE_CACHE.
10115 * xterm.h (struct x_display_info): Remove image_cache field.
10116 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10117 * w32term.h (struct w32_display_info): Remove image_cache field.
10118 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10119 * macterm.h (struct mac_display_info): Remove image_cache field.
10120 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10121 * xterm.c (x_term_init):
10122 * w32term.c (w32_term_init):
10123 * macterm.c (mac_term_init): Set the image_cache in the terminal.
10124 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
10125 Remove declarations.
10126 (clear_image_caches, mark_image_cache): New declarations.
10127 * xfaces.c (clear_face_cache):
10128 * xdisp.c (redisplay_internal): Use clear_image_caches.
10129 * image.c (clear_image_cache): Don't check that a frame is on
10130 a window-system before checking if it shares the same cache.
10131 (clear_image_caches): New function.
10132 (Fclear_image_cache): Use it.
10133 (mark_image): Move from allo.c.
10134 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
10135 * alloc.c (mark_image, mark_image_cache): Move to image.c.
10136 (mark_object): Don't call mark_image_cache for frames.
10137 (mark_terminals): Call mark_image_cache.
10138
10139 * lisp.h (Fdelete_terminal): Declare.
10140
10141 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
10142 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
10143 wrong_type_argument.
10144
101452008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
10146
10147 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
10148 malayalam.el, and tamil.el. Add sinhala.el.
10149
101502008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
10151
10152 * xterm.c (x_connection_closed): Consolidate identical tests.
10153 (x_delete_terminal): Don't crash if called via x_connection_closed.
10154
101552008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
10156
10157 * xdisp.c (decode_mode_spec): New arg string.
10158 (display_mode_element): Adjust for the above change.
10159
101602008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10161
10162 * callint.c (Fcall_interactively): Use AREF.
10163
101642008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
10165
10166 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
10167
101682008-02-18 Jan Djärv <jan.h.d@swipnet.se>
10169
10170 * xfns.c (Fx_show_tip): Set string to " " if empty.
10171
101722008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
10173
10174 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
10175 with Qt.
10176
101772008-02-17 Kenichi Handa <handa@m17n.org>
10178
10179 * ftfont.c (ftfont_shape): Return Lispy number.
10180
10181 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
10182 for GCs.
10183 (Finternal_set_font_selection_order): Call font_update_sort_order
10184 only when enable_font_backend is set.
10185 (realize_x_face): Set face->font_info to that of default face only
10186 when enable_font_backend is set.
10187
10188 * xdisp.c (handle_composition_prop): Set it->c to the fist
10189 character of the composed region.
10190 (fill_composite_glyph_string): Set base_face->font_info to
10191 s->font_info. Get a face for ascii from base_face->ascii_face.
10192 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
10193 with a face already decided.
10194 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
10195 non-negative.
10196 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
10197 call font_prepare_composition unconditionally.
10198
10199 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
10200
10201 * xterm.h (struct x_display_info): New member font.
10202
10203 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
10204 (x_set_mouse_face_gc, x_new_font): Likewise.
10205 (x_term_init): Setup display_info->font.
10206 (x_delete_terminal): Free display_info->font.
10207
10208 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
10209
10210 * ftxfont.c (ftxfont_default_fid): Delete it.
10211 (ftxfont_open): Set xfont->fid to 0.
10212 (ftxfont_end_for_frame): Clear data specific to the frame and the
10213 font-driver.
10214
10215 * xftfont.c (xftfont_default_fid): Delete it.
10216 (xftfont_open): Set xfont->fid to 0.
10217
10218 * fontset.c (FONTSET_OBJLIST): New macro.
10219 (fontset_find_font): Update font-object list of the fontset.
10220 (free_realized_fontset): New function.
10221 (free_face_fontset): Call free_realized_fontset.
10222 (Ffont_info): Call font_close_object only when enable_font_backend
10223 is set.
10224
10225 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
10226 [HAVE_NTGUI]: Include w32term.h.
10227 [MAC_OS]: Include macterm.ch.
10228 (font_otf_ValueRecord): Use make_number.
10229 (font_finish_cache): Fix handling of reference count.
10230 (font_clear_cache): Update num_fonts.
10231 (font_open_entity): Update smallest_char_width and
10232 smallest_font_height of the frame.
10233 (font_close_object): Update num_fonts.
10234 (Fclear_font_cache): Fix finding the target cache data.
10235
102362008-02-16 Glenn Morris <rgm@gnu.org>
10237
10238 * fontset.c (Finternal_char_font): Fix compilation warning.
10239
102402008-02-16 Eli Zaretskii <eliz@gnu.org>
10241
10242 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
10243 instead of char arrays. Enlarge the size of array passed to
10244 get_token_information.
10245
10246 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
10247 warnings.
10248
102492008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
10250
10251 * .gdbinit: Don't set `args', it breaks gdb --args.
10252
102532008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
10254
10255 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
10256 within a narrowed buffer.
10257
102582008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
10259
10260 * coding.c (decode_coding_object, encode_coding_object):
10261 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
10262
102632008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
10264
10265 * coding.c (coding_set_destination): Use BEG_BYTE rather than
10266 hardcoding 1.
10267 (detect_coding_system):
10268 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
10269 (string_char_to_byte, string_byte_to_char, insert_from_gap):
10270 * insdel.c (insert_from_gap):
10271 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
10272 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
10273 (string_to_multibyte):
10274 * character.c (chars_in_text, multibyte_chars_in_text):
10275 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
10276
10277 * character.h (FETCH_STRING_CHAR_ADVANCE)
10278 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
10279 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
10280 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
10281
10282 * casefiddle.c (casify_region): Only call after-change and composition
10283 functions on the part of the region that was changed.
10284
10285 * keyboard.c (read_avail_input):
10286 * frame.c (Fdelete_frame): Call Fdelete_terminal.
10287
102882008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
10289
10290 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
10291 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
10292
102932008-02-11 Juanma Barranquero <lekktu@gmail.com>
10294
10295 * w32menu.c (push_submenu_start, push_submenu_end)
10296 (push_left_right_boundary, push_menu_pane, push_menu_item):
10297 * keyboard.c (read_key_sequence): Don't pass args with side effects
10298 to AREF, it fails when compiling with -DENABLE_CHECKING.
10299
103002008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
10301
10302 * Makefile.in (${lispsource}international/charprop.el):
10303 Delete this target.
10304
10305 * search.c (boyer_moore): Fix incorrect synching of the trunk and
10306 emacs-unicode-2.
10307
103082008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
10309
10310 * terminal.c (Fdelete_terminal): Clean up the `force' path.
10311
103122008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
10313
10314 * frame.c (Qnoelisp): New symbol.
10315 (syms_of_frame): Initialize it.
10316 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
10317 harmless Elisp code, from a strong `force' from x_connection_closed.
10318 * frame.h (Qnoelisp): Declare.
10319 * xterm.c (x_connection_closed): Pass `noelisp'.
10320
10321 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
10322 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
10323 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
10324 rather than `int' for the type of `type'.
10325
103262008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
10327
10328 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
10329
10330 * Makefile.in (GNUC): Remove support for gcc-1.x.
10331
103322008-02-10 Richard Stallman <rms@gnu.org>
10333
10334 * lisp.h (ASET): Use AREF, not ASLOT.
10335
103362008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
10337
10338 * lisp.h (ASET): Check bounds.
10339
103402008-02-10 Glenn Morris <rgm@gnu.org>
10341
10342 * buffer.c (mode-name): Doc fix.
10343
103442008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
10345
10346 * Makefile.in:
10347 * emacs.c:
10348 * gmalloc.c:
10349 * keyboard.c:
10350 * lisp.h:
10351 * m/ibm370aix.h:
10352 * process.c:
10353 * regex.c:
10354 * s/hpux.h:
10355 * sysdep.c:
10356 * sysselect.h:
10357 * systty.h:
10358 * unexec.c:
10359 * w32term.c:
10360 * xsmfns.c:
10361 * xterm.c: Remove code that deals with obsolete variables.
10362
10363 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
10364
10365 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
10366 nothing else needs it anymore.
10367
103682008-02-09 Eli Zaretskii <eliz@gnu.org>
10369
10370 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
10371 instead of unibyte_char_to_multibyte.
10372
103732008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
10374
10375 * s/gnu-linux.h: Remove commented out code.
10376
10377 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
10378
10379 * Makefile.in: Update what RMS says about using autoconf.
10380 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
10381 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
10382 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
10383 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
10384
103852008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
10386
10387 * keymap.c (Fkey_description): Move side effect outside of macro call.
10388
10389 * xfaces.c (Finternal_make_lisp_face):
10390 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
10391
10392 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
10393 (syms_of_fontset): Use ASET.
10394
10395 * fns.c (concat): Move side effect outside of macro call.
10396 (hash_clear): Use ASET.
10397
103982008-02-08 Richard Stallman <rms@gnu.org>
10399
10400 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
10401 If FORCE, and frame has a surrogate minibuffer for another frame,
10402 delete the other frame first.
10403
104042008-02-07 Timo Savola <timo.savola@iki.fi>
10405
10406 * xterm.c (x_detect_focus_change): Handle embed client message.
10407 (handle_one_xevent): Ditto.
10408 (handle_one_xevent): If embedded and we get a button press/release,
10409 request focus.
10410 (xembed_set_info, xembed_send_message): New functions.
10411 (x_make_frame_visible): Call xembed_set_info if embedded.
10412 (x_make_frame_invisible): Call xembed_set_info if embedded.
10413 (x_term_init): Initialize Xatom_XEMBED.
10414 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
10415 (x_iconify_frame): Ditto.
10416
10417 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
10418 (enum xembed_info, enum xembed_message, enum xembed_focus)
10419 (enum xembed_modifier, enum xembed_accelerator): New.
10420 (xembed_set_info, xembed_send_message): Declare.
10421 (FRAME_X_EMBEDDED_P): New.
10422
10423 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
10424 gtk_plug_new.
10425
10426 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
10427 window ID of a frame.
10428 (x_window): Reparent frame if embedded.
10429 (Fx_create_frame): Don't set border width if embedded.
10430
10431 * emacs.c (USAGE3): Add --parent-id.
10432 (standard_args): Ditto.
10433
104342008-02-07 Jan Djärv <jan.h.d@swipnet.se>
10435
10436 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
10437
104382008-02-07 Jim Meyering <meyering@redhat.com>
10439
10440 Use "do...while (0)", not "if (1)...else" in macro definitions.
10441 The latter provokes a warning from gcc about the empty else, when
10442 followed by ";". Also, without that trailing semicolon, it would
10443 silently swallow up any following statement.
10444 * syntax.h (SETUP_SYNTAX_TABLE)
10445 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
10446 * buffer.h (DECODE_POSITION): Likewise.
10447 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
10448 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
10449 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
10450 (FETCH_CHAR_ADVANCE): Likewise.
10451 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
10452
104532008-02-07 Jim Meyering <meyering@redhat.com>
10454
10455 * lread.c [lint]: Don't include <sys/inode.h>.
10456
104572008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
10458
10459 * xselect.c (x_handle_dnd_message):
10460 * xmenu.c (digest_single_submenu, xmenu_show):
10461 * xdisp.c (with_echo_area_buffer_unwind_data)
10462 (format_mode_line_unwind_data, unwind_format_mode_line)
10463 (display_menu_bar):
10464 * eval.c (Ffetch_bytecode):
10465 * doc.c (store_function_docstring):
10466 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
10467 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
10468 * buffer.c (add_overlay_mod_hooklist): Use ASET.
10469
104702008-02-07 Kenichi Handa <handa@m17n.org>
10471
10472 * ftxfont.c (ftxfont_open): Don't set
10473 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
10474
10475 * ftfont.c (ftfont_open): Fix previous change.
10476
104772008-02-06 Jason Rumney <jasonr@gnu.org>
10478
10479 * w32font.c (w32font_text_extents): Fill in lbearing metric.
10480 Use cached metrics for ASCII characters.
10481 (w32font_open_internal): Don't set font's owning_frame.
10482 Cache metrics for ASCII characters.
10483
10484 * w32font.h (struct w32font_info): Add ascii_metrics.
10485 Remove owning_frame.
10486
104872008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
10488
10489 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
10490 to negative value.
10491
10492 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
10493
10494 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
10495
10496 * charset.c (syms_of_charset): Set QCtest and Qeq.
10497
104982008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
10499
10500 * process.c (Fstart_process):
10501 * callproc.c (Fcall_process): Handle the case where
10502 Funhandled_file_name_directory returns nil.
10503
10504 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
10505 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
10506 * font.c (check_gstring): Use them and AREF to access the vector before
10507 we know it's really a gstring.
10508 (Ffont_shape_text): Fix typo.
46e722a9 10509 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
10510
10511 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
10512 Declare.
10513
10514 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
10515
105162008-02-05 Jason Rumney <jasonr@gnu.org>
10517
10518 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
10519 Set smallest_font_height and smallest_char_width in display info.
10520
105212008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
10522
10523 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
10524
105252008-02-05 Miles Bader <miles@gnu.org>
10526
10527 * xfaces.c (get_lface_attributes, merge_named_face)
10528 (lookup_named_face, lookup_derived_face, realize_named_face):
10529 Revert 2008-02-01 change by cyd@stupidchicken.com.
10530
105312008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
10532
10533 * fontset.c (Ffontset_info): Handle the case of inhibitting the
10534 fallback fonts.
10535 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
10536
105372008-02-04 Jason Rumney <jasonr@gnu.org>
10538
10539 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
10540 set full_name.
10541 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
10542
105432008-02-03 Jason Rumney <jasonr@gnu.org>
10544
10545 * makefile.w32-in (OBJ1): Include font.o here.
10546 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
10547
105482008-02-02 Jason Rumney <jasonr@gnu.org>
10549
10550 * makefile.w32-in (temacs): Bump EMHEAP to 21.
10551
105522008-02-01 Jason Rumney <jasonr@gnu.org>
10553
10554 * s/cygwin.h: Define VIRT_ADDR_VARIES.
10555
10556 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
10557
105582008-02-01 Andreas Schwab <schwab@suse.de>
10559
10560 * Makefile.in (shortlisp, lisp): Update for rename of
10561 ../lisp/language/myanmar.el.
10562
105632008-02-01 Chong Yidong <cyd@stupidchicken.com>
10564
10565 * xfaces.c (get_lface_attributes): Delete function.
10566 (merge_named_face, lookup_named_face, lookup_derived_face)
10567 (realize_named_face): Call lface_from_face_name directly, and use
10568 the fact that merge_face_vectors does not alter its FROM argument.
10569
105702008-02-01 Jason Rumney <jasonr@gnu.org>
10571
10572 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
10573 input in the default locale. Handle non-Unicode multibyte input.
10574
105752008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10576
10577 * fontset.c (reorder_font_vector): Exclude nil elements from the
10578 font group. Don't try multiple fonts.
10579 (fontset_font): Adjust for the above change.
10580 (Finternal_char_font): Return nil if the found font doesn't
10581 contain the character ch.
10582
10583 * Makefile.in (lisp, shortlisp): Add cham.el.
10584
105852008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10586
10587 * font.h (FONTP): Make it return 1 also for a font-object.
10588
10589 * .gdbinit (xfontset): New function.
10590
10591 * font.c (font_find_for_lface): Check if the character C is
10592 supported or not only for the first font.
10593
10594 * fontset.c (reorder_font_vector): Fix typo.
10595 (fontset_find_font): Don't add a font-spec specifying a script.
10596 Use 0 (not Qt) for the indication of empty font-group. Change the
10597 format of RFONT-DEF. Return Qt if no font in the font-group
10598 support the character.
10599 (fontset_font): Adjust for the above change. If no font was
10600 found the character, remember that.
10601 (face_for_char): Adjust for the change of RFONT-DEF.
10602 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
10603 no font for the target.
10604 (Finternal_char_font): Adjust for the change of RFONT-DEF.
10605
106062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10607
10608 * font.c (font_load_for_face): Handle the case that the font in
10609 face->lface is a string.
10610
106112008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10612
10613 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
10614
106152008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10616
10617 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
10618 Fix previous change. If the frame is not on a window system,
10619 signal an error.
10620
106212008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10622
10623 * coding.c (decode_coding_object, encode_coding_object): Adjust
10624 marker positions after conversion.
10625
10626 * lisp.h (struct Lisp_Marker): New member need_adjustment.
10627
106282008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10629
10630 * font.c (font_find_for_lface): Fix the handling of the return
10631 value of font_has_char.
10632 (Ffont_shape_text): Fix previous change.
10633
10634 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
10635 (fontset_ref_and_range): Delete it.
10636 (fontset_find_font): Call char_table_ref_and_range instead of
10637 FONTSET_REF_AND_RANGE.
10638 (make_fontset): Don't setup font groups of Latin here.
10639 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
10640 (new_fontset_from_font): Make the specified font the default for
10641 all Latin characters.
10642
106432008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10644
10645 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
10646 is on a window system before accessing the fontset of the frame.
10647
106482008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10649
10650 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
10651
10652 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
10653 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
10654
10655 * font.c (Ffont_shape_text): If the font driver doesn't have a
10656 shaper function, make zero-width glyphs to have at least one-pixel
10657 width. Fix setting of `to' field of glyphs.
10658
106592008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10660
10661 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
10662 glyphs.
10663
10664 * font.h (struct font_driver): Improve docstring of member `shape'.
10665
106662008-02-01 Kenichi Handa <handa@m17n.org>
10667
10668 * composite.c (syms_of_composite): Fix docstring of
10669 auto-composition-function.
10670
10671 * font.h (LGLYPH_SIZE): New macro.
10672
10673 * font.c (Ffont_fill_gstring): Stop filling when a character not
10674 supported by the font is found.
10675 (Ffont_shape_text): When a shape callback function returns nil,
10676 try at most two more times with larger gstring.
10677 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
10678
10679 * xdisp.c (handle_auto_composed_prop): Change the argument to
10680 auto-composition-function.
10681
10682 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
10683 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
10684 Lispy glyph and store it in the lgstring.
10685
10686 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
10687
10688 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
10689
106902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10691
10692 * font.c (Ffont_shape_text): Avoid unnecessary composition.
10693
10694 * fontset.c (Vfont_encoding_charset_alist): New variable.
10695 (syms_of_fontset): DEFVAR it.
10696 (reorder_font_vector, fontset_find_font): Optimize for the case of
10697 no need of reordering.
10698 (face_for_char): Map the charset property by
10699 Vfont_encoding_charset_alist.
10700
107012008-02-01 Jason Rumney <jasonr@gnu.org>
10702
10703 * w32font.c (logfonts_match): Don't check adstyle here.
10704 (font_matches_spec): Check here against physical font instead.
10705 (add_font_entity_to_list): Avoid some substitutions.
10706
10707 * font.c (font_parse_fcname): Default weight and slant to normal.
10708 (font_score): Prefer normal fonts if weight or slant unspecified.
10709 (font_score) [WINDOWSNT]: Scale weight difference down to closer
10710 match freetype scores.
10711
107122008-02-01 Jason Rumney <jasonr@gnu.org>
10713
10714 * w32font.c (w32font_text_extents): Don't use the frame stored in the
10715 font, as it may have been deleted.
10716 (w32_enumfont_pattern_entity): Map generic family to adstyle using
10717 most common hyphenless variation.
10718 (logfonts_match): Check generic family.
10719 (font_matches_spec): Don't check generic family here.
10720 (fill_in_logfont): Set generic family based on adstyle.
10721
10722 * w32font.h (w32font_get_cache): Update declaration.
10723
107242008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10725
10726 * ftfont.c (ftfont_get_cache): Adjust the argument type.
10727
10728 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
10729 If none of the new drivers are available, call font_update_drivers
10730 with the old drivers.
10731
10732 * w32font.c (w32font_get_cache): Adjust the argument type.
10733
10734 * xfont.c (xfont_get_cache): Adjust the argument type.
10735
10736 * font.h (struct font_driver): Change argument type of get_cache.
10737
10738 * xftfont.c (xftfont_start_for_frame): Delete prototype.
10739
10740 * font.c (Ffont_get): Fix arguments to Fassoc.
10741 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
10742 (font_clear_cache): New function.
10743 (font_list_entities, font_matching_entity): Use font_get_cache.
10744 (font_update_drivers): Call font_clear_cache when finishing a driver.
10745
10746 * fontset.c (fontset_find_font): Fix previous change.
10747
107482008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10749
10750 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
10751 dpyinfo->font_table.
10752 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
10753 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
10754
10755 * font.c (font_at): Handle the case that the arg C is negative.
10756 Handle the unibyte case.
10757 (Ffont_at): Call font_at with the arg C -1.
10758
10759 * xdisp.c (handle_auto_composed_prop): Don't get a character at
10760 the position here, and call font_at with the arg C -1.
10761 Don't check the range of the existing composition at the point.
10762
107632008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10764
10765 * fontset.c (fontset_add): New args charset_id and family.
10766 Change caller.
10767 (load_font_get_repertory, fontset_find_font): Assume that
10768 font_spec is always a font-spec object.
10769 (Fset_fontset_font): Always store a font-spec object in a fontset.
10770
10771 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
10772 instead of get_property_and_range.
10773
107742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10775
10776 * xftfont.c (struct xftfont_info): Delete the member ft_face.
10777 (xftfont_open): Don't keep locking face.
10778 (xftfont_close): Don't unlock face.
10779 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
10780
10781 * fontset.c (fontset_find_font): Don't prefer a font of
10782 supplementary charset.
10783
107842008-02-01 Kenichi Handa <handa@m17n.org>
10785
10786 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
10787 script, langsys_tag to langsys, new member script.
10788 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 10789 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
10790 listing to the script specified in that property. Fix arg to
10791 OTF_check_features.
10792
107932008-02-01 Jason Rumney <jasonr@gnu.org>
10794
10795 * w32font.h: New file.
10796
10797 * w32font.c: Include it.
10798 (struct w32font_info): Add owning_frame field. Move to w32font.h.
10799 (w32font_open): Set owning_frame.
10800 (w32font_text_extents): Use owning_frame.
10801 (struct font_callback_data): Add opentype_only field.
10802 (add_font_entity_to_list): Use it to filter fonts.
10803 Don't check against full name.
10804 (w32font_list_internal): New function.
10805 (w32font_list): Use it.
10806 (w32font_match_internal): New function.
10807 (w32font_match): Use it.
10808 (w32font_open_internal): New function.
10809 (w32font_open): Use it.
10810 (w32font_get_cache, w32font_close, w32font_has_char)
10811 (w32font_encode_char, w32font_text_extents, w32font_draw):
10812 Make non-static.
10813
10814 * makefile.w32-in (w32font.o): Depend on w32font.h.
10815
108162008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10817
10818 * charset.c (Fdefine_charset_internal): Record a supplementary
10819 charset at the tail of Vcharset_order_list.
10820
10821 * font.c (Ffont_shape_text): Fix the return value.
10822
10823 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
10824
10825 * xdisp.c (handle_auto_composed_prop): Fix previous change.
10826
108272008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10828
10829 * ftfont.c (struct OpenTypeSpec): New struct.
10830 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
10831 (ftfont_get_open_type_spec): New function.
10832 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
10833
10834 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
10835
108362008-02-01 Jason Rumney <jasonr@gnu.org>
10837
10838 * w32font.c (add_font_entity_to_list): Compare only the beginning
10839 of full name.
10840
108412008-02-01 Kenichi Handa <handa@m17n.org>
10842
10843 * xdisp.c (handle_auto_composed_prop): Simplify the code.
10844 Never return HANDLED_RECOMPUTE_PROPS.
10845
108462008-02-01 Kenichi Handa <handa@m17n.org>
10847
10848 * font.c (font_gstring_produce): Delete it.
10849
10850 * composite.h (COMPOSITION_METHOD):
10851 Handle COMPOSITION_WITH_GLYPH_STRING.
10852
108532008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10854
10855 * xfont.c (Qx): Delete.
10856 (syms_of_xfont): Don't initialize Qx.
10857
10858 * composite.h (enum composition_method):
10859 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
10860
108612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10862
10863 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
10864 (choose_face_font): Accept new form of font-spec.
10865
10866 * frame.h (font_driver_list): Declare it unconditionally.
10867 (struct frame): Define members font_driver_list and font_data_list
10868 unconditionally.
10869
10870 * fontset.c: Include "font.h" unconditionally.
10871 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
10872 (Fset_fontset_font): Accept a font-spec object.
10873
10874 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
10875 PIXEL_SIZE part a wild card.
10876
10877 * dispextern.h (struct glyph_string): Define members clip and
10878 num_clips unconditionally.
10879 (struct face): Define members font_info and extra unconditionally.
10880
10881 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
10882 ftfont_info only when HAVE_LIBOTF is defined.
10883
108842008-02-01 Andreas Schwab <schwab@suse.de>
10885
10886 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
10887 and end.
10888
108892008-02-01 Jason Rumney <jasonr@gnu.org>
10890
10891 * w32font.c (w32font_driver): Add new fields.
10892
108932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10894
10895 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
10896 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
10897 (LIBES): Add @M17N_FLT_CFLAGS@.
10898
10899 * composite.c (compose_text): Don't treat the new style
10900 composition specially.
10901
10902 * emacs.c (main): Call syms_of_font unconditionally.
10903
10904 * font.h (FONT_ENTITY_NOT_LOADABLE)
10905 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
10906 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
10907 (struct font_driver): New member shape.
10908 (font_registry_charsets): Extern it.
10909 (font_find_for_lface, font_prepare_composition): Adjust prototype.
10910 (font_otf_capability, font_drive_otf): Delete their externs.
10911
10912 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
10913 (font_charset_alist, font_registry_charsets): Move from xfont.c
10914 and rename.
10915 (font_prop_validate_otf): New function.
10916 (font_property_table): Register it for QCotf.
10917 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
10918 (font_drive_otf): Delete.
10919 (font_prepare_composition): New arg F. Adjust for the change of
10920 lispy gstring.
10921 (font_find_for_lface): New arg C.
10922 (font_load_for_face): Adjust for the change of font_find_for_lface.
10923 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
10924 lispy gstring.
10925 (Ffont_shape_text): New function.
10926 (Fopen_font): If the font size is not given, use 12-pixel.
10927 (Ffont_at): New arg STRING.
10928 (syms_of_font): Initalize font_charset_alist.
10929 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
10930 conditionally.
10931
10932 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
10933 fonts of the same font-spec. Change the format of RFONT-DEF.
10934 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
10935 Adjust for the change of RFONT-DEF.
10936 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
10937
10938 * ftfont.h: New file.
10939
10940 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
10941 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
10942 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
10943 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
10944 font_otf_capability and font_drive_otf, set ftfont_shape.
10945 (ftfont_list): Adjust for the change of :otf property value.
10946 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
10947 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
10948 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
10949 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
10950 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
10951 (otf_gstring, gstring, m17n_flt_initialized): New variables.
10952
10953 * w32term.c (x_draw_composite_glyph_string_foreground):
10954 Adjust for the change of lispy gstring.
10955
10956 * xdisp.c (handle_composition_prop): Adjust for the change of
10957 lispy gstring. Call a function for auto-composition with the
10958 third arg it->window.
10959 (fill_composite_glyph_string): Adjust for the change of lispy string.
10960 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
10961
10962 * xfaces.c (set_font_frame_param): Adjust for the change of
10963 font_find_for_lface.
10964
10965 * xfont.c (x_font_charset_alist): Move to font.c and rename.
10966 (xfont_registry_charsets): Likewise. Change caller.
10967 (syms_of_xfont): Don't handle x_font_charset_alist.
10968
10969 * xftfont.c: Include "ftfont.h".
10970 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
10971 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
10972 (xftfont_close) [HAVE_LIBOTF]: Close otf.
10973 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
10974 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
10975 Set xftfont_driver.shape to xftfont_shape.
10976
10977 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
10978 the change of lispy gstring.
10979
109802008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10981
10982 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
10983
109842008-02-01 Jason Rumney <jasonr@gnu.org>
10985
10986 * w32font.c (w32font_draw): Fill background manually.
10987
109882008-02-01 Jason Rumney <jasonr@gnu.org>
10989
10990 * font.c (Qfontp): Remove unused symbol.
10991 (QCantialias): New symbol.
10992 (syms_of_font): Define it.
10993 (font_property_table): Set a validator for QCantialias.
10994
10995 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
10996 Define if not already.
10997 (QCfamily): Share with xfaces.c.
10998 (Qstandard, Qsubpixel, Qnatural): New symbols.
10999 (syms_of_w32font): Define them. Don't define QCfamily here.
11000 (w32_antialias_type, lispy_antialias_type): New functions.
11001 (w32_enumfont_pattern_entity): New arg requested_font.
11002 Set antialias parameter if non-default was requested.
11003 (fill_in_logfont): Fill in lfQuality if :antialias specified.
11004
110052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11006
11007 * lread.c (read1): Undo the previous change.
11008
110092008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
11010
11011 * frame.c (Fdelete_frame): Call font_update_drivers only when
11012 USE_FONT_BACKEND is defined.
11013
110142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11015
11016 * font.h (struct font_bitmap): New member bits_per_pixel.
11017 (struct font_driver): New members start_for_frame and end_for_frame.
11018 (struct font_data_list): New struct.
11019 (font_put_frame_data, font_get_frame_data): Extern them.
11020
11021 * frame.h (struct frame): New member font_data_list.
11022
11023 * font.c (font_update_drivers): Call driver->start_for_frame and
11024 driver->end_for_frame at proper timings.
11025 (font_put_frame_data, font_get_frame_data): New functions.
11026 (Ffont_spec): Add usage in the docstring.
11027
11028 * frame.c (make_frame): Initialize f->font_data_list to NULL.
11029 (Fdelete_frame): Call font_update_drivers.
11030
11031 * xftfont.c (struct xftface_info): Delete the member xft_draw.
11032 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
11033 (xftfont_get_xft_draw): New function.
11034 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
11035 (xftfont_end_for_frame): New function.
11036 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
11037
11038 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
11039 Change argument. Cache GCs in the per-frame data.
11040 (struct ftxfont_frame_data): New struct.
11041 (ftxfont_draw_bitmap): New arg gc_fore and flush.
11042 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
11043 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
11044 (ftxfont_end_for_frame): New function.
11045 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
11046
11047 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
11048
110492008-02-01 Kenichi Handa <handa@m17n.org>
11050
11051 * xselect.c (Vselection_coding_system)
11052 (Vnext_selection_coding_system): Delete them.
11053 (syms_of_xselect): Don't declare selection-coding-system and
11054 next-selection-coding-system. They are declared in select.el.
11055
110562008-02-01 Jason Rumney <jasonr@gnu.org>
11057
11058 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
11059
11060 * w32fns.c: Include imm.h.
11061 (get_composition_string_fn, get_ime_context_fn): New optional
11062 system functions.
11063 (globals_of_w32fns): Load them from imm32.dll.
11064 (ignore_ime_char): New flag.
11065 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
11066 WM_IME_ENDCOMPOSITION messages.
11067
11068 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
11069 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
11070
110712008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11072
11073 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
11074 (READCHAR_REPORT_MULTIBYTE): New macro.
11075 (readchar): New 2nd arg MULTIBYTE.
11076 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
11077 Make symbol's name multibyte according to the multibyteness of the
11078 source.
11079
110802008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11081
11082 * xfaces.c (face_for_overlay_string): Call lookup_face with
11083 correct arguments (fix of synching with the trunk).
11084
110852008-02-01 Kenichi Handa <handa@m17n.org>
11086
11087 * font.c (font_prop_validate_symbol, font_prop_validate_style)
11088 (font_prop_validate_non_neg, font_prop_validate_spacing):
11089 Delete argument prop_index.
11090 (font_property_table): Change arguments to validater. Change Callers.
11091 (font_lispy_object): Delete.
11092 (font_at): Use font_find_object instead fo font_lispy_object.
11093
110942008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11095
11096 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
11097 and file names.
11098
110992008-02-01 Jason Rumney <jasonr@gnu.org>
11100
11101 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
11102 (font_matches_spec): Remove debug output.
11103 (add_font_entity_to_list): Avoid using substituted fonts.
11104
111052008-02-01 Jason Rumney <jasonr@gnu.org>
11106
11107 * doc.c (Fsnarf_documentation):
11108 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
11109
111102008-02-01 Miles Bader <miles@gnu.org>
11111
11112 * dispextern.h (struct glyph_row): Only define "clip" field if
11113 HAVE_WINDOW_SYSTEM is defined.
11114
111152008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11116
11117 Fix up multi-tty merge.
11118
11119 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
11120 and indentation.
11121
11122 * xfaces.c (free_realized_face, clear_face_gcs):
11123 Include font_done_for_face in the input_blocked section, just in case.
11124
11125 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
11126 (get_char_face_and_encoding): Undo last change and remove the *other*
11127 duplicate definition (i.e. keep the one that's better scoped and that
11128 includes code for the font-backend).
11129
11130 * terminal.c (create_terminal): Default keyboard_coding to
11131 `no-conversion' and terminal_coding to `undecided'.
11132
11133 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
11134
11135 * fontset.c (free_realized_fontsets): Check that the table entry does
11136 contain a fontset before trying to compare it to `base'.
11137
11138 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
11139 syms_of_charset, and syms_of_coding earlier because init_window_once
11140 now needs Vcoding_system_hash_table to be setup.
11141
11142 * coding.h (default_buffer_file_coding): Remove.
11143
11144 * coding.c (default_buffer_file_coding): Remove.
11145 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
11146 than ->symbol, and use the terminal-local coding system.
11147 (syms_of_coding): Don't setup the coding-systems that are not
11148 terminal-local.
11149 (Fdefine_coding_system_internal): Use XCAR/XCDR.
11150
11151 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
11152 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
11153
11154 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
11155 in chartab.c and were re-added here by mistake.
11156 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
11157
11158 * doc.c (Fsnarf_documentation):
11159 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
11160 src to etc.
11161
11162 * ChangeLog.10: Add mistakenly removed entry.
11163
111642008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
11165
11166 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
11167
111682008-02-01 Miles Bader <miles@gnu.org>
11169
11170 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
11171 Add extra args to FACE_FOR_CHAR.
11172
111732008-02-01 Kenichi Handa <handa@m17n.org>
11174
11175 * keymap.c (where_is_internal_1): If key is a cons, store the copy
11176 in sequence.
11177
11178 * chartab.c (map_sub_char_table, map_char_table): If the range
11179 contains just one character, call the function with that character
11180 even if the depth is not 3.
11181
111822008-02-01 Jason Rumney <jasonr@gnu.org>
11183
11184 * w32font.c (w32font_text_extents): Calculate metrics for the
11185 whole string.
11186
111872008-02-01 Jason Rumney <jasonr@gnu.org>
11188
11189 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
11190
111912008-02-01 Jason Rumney <jasonr@gnu.org>
11192
11193 * w32term.c (x_set_glyph_string_clipping): Use
11194 get_glyph_string_clip_rects.
11195 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11196 Adjust for the change of struct glyph_string.
11197
11198 * w32font.c (w32font_draw): Do clipping here.
11199
112002008-02-01 Kenichi Handa <handa@m17n.org>
11201
11202 * xftfont.c (xftfont_draw): Adjust for the change of struct
11203 glyph_string.
11204
11205 * xterm.c (x_set_glyph_string_clipping): Use
11206 get_glyph_string_clip_rects.
11207 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11208 Adjust for the change of struct glyph_string.
11209
11210 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
11211 the resulting clip(s}.
11212 (expose_overlaps): Add arg r. Change callers. Set it to
11213 row->clip temporarily.
11214 (expose_window): Redraw rows overlapping the exposed area.
11215
11216 * dispextern.h (struct glyph_row): New member clip.
11217 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
11218 clip_height, new member clip, and num_clips.
11219
112202008-02-01 Kenichi Handa <handa@m17n.org>
11221
11222 * data.c (Fchar_or_string_p): Fix docstring.
11223
112242008-02-01 Kenichi Handa <handa@m17n.org>
11225
11226 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
11227 create a temporary XftDraw object.
11228
112292008-02-01 Kenichi Handa <handa@m17n.org>
11230
11231 * font.c (Ffontp): Fix docstring.
11232
11233 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
11234 strong evidence of ISO-2022.
11235
112362008-02-01 Kenichi Handa <handa@m17n.org>
11237
11238 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
11239 SYNTAX_ENTRY_FOLLOW_PARENT.
11240
112412008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11242
11243 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
11244 its type.
11245 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
11246 Update to the new type of weak_hash_tables and next_weak.
11247
11248 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
11249 a plain C pointer to Lisp_Hash_Table.
11250
11251 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
11252 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
11253 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
11254 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
11255 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
11256 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
11257 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
11258 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
11259 (GC_EQ): Remove since they've been identical to their non-GC_
11260 alter-egos ever since the markbit was eradicated.
11261
11262 * alloc.c:
11263 * buffer.c:
11264 * buffer.h:
11265 * data.c:
11266 * fileio.c:
11267 * filelock.c:
11268 * fns.c:
11269 * frame.h:
11270 * lisp.h:
11271 * macterm.c:
11272 * print.c:
11273 * process.c:
11274 * w32fns.c:
11275 * w32menu.c:
11276 * w32term.c:
11277 * xfns.c:
11278 * xmenu.c:
11279 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
11280
112812008-02-01 Kenichi Handa <handa@m17n.org>
11282
11283 * chartab.c (map_sub_char_table): Make it work for the top-level
11284 char-table. Fix handling of parent char-table.
11285 (map_char_table): Adjust for the above change.
11286
112872008-02-01 Jason Rumney <jasonr@gnu.org>
11288
11289 * w32font.c (Qgdi): Rename from Qw32.
11290
112912008-02-01 Jason Rumney <jasonr@gnu.org>
11292
11293 * w32bdf.c (get_quoted_string): Make function static.
11294
112952008-02-01 Kenichi Handa <handa@m17n.org>
11296
11297 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
11298 bigger ascent and descent than those of the font, use them as
11299 font's ascent and descent.
11300
113012008-02-01 Kenichi Handa <handa@m17n.org>
11302
11303 * Makefile.in (${lispsource}international/charprop.el): Move this
11304 target within "#ifdef HAVE_UNIDATA" and "#endif".
11305
113062008-02-01 Kenichi Handa <handa@m17n.org>
11307
11308 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
11309 (shortlisp): Add ../lisp/language/tai-viet.el.
11310
113112008-02-01 Ulrich Mueller <ulm@gentoo.org>
11312
11313 * Makefile.in (${lispsource}international/charprop.el): Depend on
11314 temacs${EXEEXT}.
11315
113162008-02-01 Jason Rumney <jasonr@gnu.org>
11317
11318 * w32font.c (w32font_close): Delete the GDI font object.
11319
11320 * w32menu.c: Include character.h.
11321
11322 * w32proc.c: Likewise.
11323
11324 * w32select.c: Likewise.
11325
11326 * makefile.w32-in (w32proc.o): Depend on character.h.
11327
113282008-02-01 Jason Rumney <jasonr@gnu.org>
11329
11330 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
11331
11332 * w32menu.c (syms_of_w32menu): Likewise.
11333
11334 * w32proc.c (syms_of_ntproc): Likewise.
11335
11336 * w32select.c (syms_of_w32select): Likewise.
11337
11338 * w32term.c (syms_of_w32term): Likewise.
11339
113402008-02-01 Jason Rumney <jasonr@gnu.org>
11341
11342 * w32font.c (w32font_draw): Delete brush after using it.
11343
113442008-02-01 Jason Rumney <jasonr@gnu.org>
11345
11346 * w32font.c (w32font_open): Don't set font_idx.
11347 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
11348 to font settings.
11349 (w32font_draw): Fill background explicitly.
11350
113512008-02-01 Jason Rumney <jasonr@gnu.org>
11352
11353 * w32term.c (w32_initialize): Don't call w32font_initialize.
11354
11355 * w32font.c (w32font_info): Remove subranges.
11356 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
11357 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
11358 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
11359 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
11360 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
11361 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
11362 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
11363 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
11364 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
11365 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
11366 New symbols.
11367 (font_callback_data): New struct.
11368 (w32font_list, w32font_match): Use it.
11369 (w32font_open): Don't populate subranges.
11370 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
11371 (w32font_encode_char): Always return unicode code-point as-is.
11372 (w32font_text_extents): Supply a transformation matrix to
11373 GetGlyphOutline. Never look up by glyph index. Avoid looping
11374 twice. Use unicode version of GetTexExtentPoint32 instead of
11375 glyph index version.
11376 (set_fonts_frame): Remove.
11377 (w32_enumfont_pattern_entity): Add frame parameter, use it to
11378 set frame parameter. Use backward compatible fake foundries.
11379 Save generic family in extra slot under QCfamily. Make width slot
11380 constant. Save QCspacing value. Save list of scripts instead of
11381 binary subranges.
11382 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
11383 (add_font_entity_to_list): Use font_callback_data struct. Filter
11384 unwanted fonts.
11385 (add_one_font_entity_to_list): Use font_callback_data struct.
11386 (w32_registry): Default to iso10646_1.
11387 (fill_in_logfont): Use dpi from extra slot. Don't bother with
11388 string font registries. Don't fill in font name if it is a generic
11389 family name, fill family instead. Use spacing, family and script
11390 extra info to fill pitch, family and charset fields.
11391 (list_all_matching_fonts): Use font_callback_data struct.
11392 (unicode_range_for_char): Remove.
11393 (font_supported_scripts): New function.
11394 (w32font_initialize): Remove.
11395 (syms_of_w32font): Update which symbols are defined.
11396
113972008-02-01 Jason Rumney <jasonr@gnu.org>
11398
11399 * font.c (font_pixel_size): Reverse assq_no_quit args.
11400
11401 * w32term.h (FONT_WIDTH): Report max width, not average.
11402 (FONT_MAX_WIDTH): Remove.
11403 (FONT_AVG_WIDTH): New macro.
11404
11405 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
11406 redefinition of FONT_WIDTH.
11407
11408 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
11409 (w32_cache_char_metrics): Use FONT_WIDTH.
11410
11411 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
11412
114132008-02-01 Jason Rumney <jasonr@gnu.org>
11414
11415 * w32font.c (w32font_open): Make lfHeight negative.
11416
11417 * w32fns.c (x_default_font_parameter): Use new style font name.
11418 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
11419
114202008-02-01 Jason Rumney <jasonr@gnu.org>
11421
11422 * w32font.c (QCsubranges): New symbol.
11423 (w32font_open, w32font_has_char): Get subranges from subproperty
11424 of extra.
11425 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
11426 (syms_of_w32font): Define :subranges symbol.
11427
11428 * font.c (font_put_extra): Expose externally.
11429
11430 * font.h (font_put_extra): Move declaration from font.c.
11431
11432 * font.c (Ffont_get): Use font driver to determine otf capability.
11433 (adjust_anchor): Check if driver defines anchor_point before using.
11434
11435 * w32font.c (w32font_open): Handle size, height and pixel_size better.
11436 (w32font_draw): Use options.
11437 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
11438 Fix detection of truetype fonts.
11439 (registry_to_w32_charset): Handle charsets other than iso8859-1
11440 expressed as lisp symbols.
11441 (w32_registry): Express charset as lisp symbol.
11442 (fill_in_logfont): Reverse pixel and point height logic.
11443 Don't set width here. Set quality to default.
11444
11445 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
11446 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
11447
11448 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
11449 Remove redundant loop and allocation.
11450
11451 * makefile.w32-in (font.o, w32font.o): New objects.
11452 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
11453 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
11454
11455 * xdisp.c (fill_composite_glyph_string): Make the first arg to
11456 STORE_XCHARB a valid l-value.
11457
11458 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
11459 calculations for non-Truetype fonts.
11460 (x_draw_glyph_string): Sync with xterm.c.
11461 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
11462 Remove redundant code.
11463 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
11464
11465 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
11466 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
11467
11468 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
11469 (x_to_w32_charset, w32_to_x_charset): Expose externally.
11470
11471 * w32font.c: New file for w32 font backend.
11472
114732008-02-01 Kenichi Handa <handa@m17n.org>
11474
11475 * term.c: Don't include "buffer.h" twice.
11476
114772008-02-01 Kenichi Handa <handa@m17n.org>
11478
11479 * character.c (Funibyte_string): New function.
11480 (syms_of_character): Defsubr it.
11481
114822008-02-01 Jason Rumney <jasonr@gnu.org>
11483
11484 * w32term.c [USE_FONT_BACKEND]:
11485 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
11486 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
11487 (x_draw_glyph_string, x_draw_glyph_string_foreground)
11488 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
11489 (x_free_frame_resources): Sync with xterm.c.
11490
114912008-02-01 Andreas Schwab <schwab@suse.de>
11492
11493 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
11494 char-table size.
11495
114962008-02-01 Kenichi Handa <handa@m17n.org>
11497
11498 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
11499
115002008-02-01 Kenichi Handa <handa@m17n.org>
11501
11502 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
11503 font_otf_gpos, add font_drive_otf.
11504
11505 * fontset.c (fontset_find_font): Pay attention to font size
11506 specified for a font.
11507 (reorder_font_vector): Check contents of font_def.
11508
11509 * font.c (struct otf_list): Delete it.
11510 (otf_list): Make it a lisp variable.
11511 (otf_open): Use lispy otf_list.
11512 (generate_otf_features): Rename from parse_gsub_gpos_spec.
11513 (check_otf_features): New function.
11514 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
11515 New functions.
11516 (font_drive_otf): New function merging font_otf_gsub and
11517 font_otf_gpos.
11518 (font_open_for_lface): New arg spec. Change argument order.
11519 (font_load_for_face): Adjust for the change of font_open_for_lface.
11520 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
11521 Ffont_otf_gpos.
11522 (syms_of_font): Staticpro otf_list. Delete defsubr of
11523 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
11524
11525 * xfaces.c (set_font_frame_param): Adjust for the change of
11526 font_open_for_lface.
11527
11528 * font.h (font_open_for_lface): Adjust prototype.
11529 (struct font_driver): Delete members otf_gsub and otf_gpos, add
11530 member otf_drive.
11531 (font_otf_gsub, font_otf_gpos): Delete externs.
11532 (font_drive_otf): Extern it.
11533
115342008-02-01 Kenichi Handa <handa@m17n.org>
11535
11536 * font.c (font_at): If the window W is not on a window system,
11537 return Qnil.
11538
11539 * coding.c (produce_chars, encode_coding): Don't call
11540 insert_from_gap if no characters to produce.
11541
115422008-02-01 Kenichi Handa <handa@m17n.org>
11543
11544 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
11545 Fclear_face_cache.
11546
11547 * xfaces.c (face_for_font): Check also face->font==font->font.font.
11548
115492008-02-01 Miles Bader <miles@gnu.org>
11550
11551 * emacs.c (main): Change default value of `enable_font_backend' to 1.
11552 Parse "--disable-font-backend" option.
11553 (standard_args): Add "--disable-font-backend" option.
11554
115552008-02-01 Kenichi Handa <handa@m17n.org>
11556
11557 * fontset.c (fontset_find_font): New function.
11558 (fontset_font): Use fontset_find_font.
11559 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
11560 Register the specified font for all Latin characters.
11561 (new_fontset_from_font): Register the specified font for all Latin
11562 characters.
11563 (dump_fontset): For a realized fontset, include the base fontset
11564 name in the returned vector.
11565
115662008-02-01 Kenichi Handa <handa@m17n.org>
11567
11568 * character.h (CHAR_STRING): Cast C to unsigned on calling
11569 char_string.
11570
11571 * character.c (char_string): Type of arg C changed to unsigned.
11572 Signal an error if C is an invalid character code.
11573
11574 * editfns.c (general_insert_function, Fchar_to_string):
11575 Use CHARACTERP, not INTEGERP.
11576
115772008-02-01 Kenichi Handa <handa@m17n.org>
11578
11579 * character.h (MIN_MULTIBYTE_LEADING_CODE)
11580 (MAX_MULTIBYTE_LEADING_CODE): New macros.
11581
11582 * regex.c (analyse_first): Fix for multibyte characters in "case
11583 charset:" and "case categoryspec:".
11584
115852008-02-01 Andreas Schwab <schwab@suse.de>
11586
11587 * Makefile.in (LIBES): Move standard libraries to the end.
11588
115892008-02-01 Kenichi Handa <handa@m17n.org>
11590
11591 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
11592 nonzero, don't shrink the buffer nextb.
11593
11594 * buffer.h (struct buffer_text): New member inhibit_shrinking.
11595
11596 * coding.c (coding_alloc_by_making_gap): New arg offset.
11597 (alloc_destination): Call coding_alloc_by_making_gap with the arg
11598 offset.
11599 (decode_coding_iso_2022): Update coding->safe_charsets.
11600 (decode_coding_gap): Temporarily set
11601 current_buffer->text->inhibit_shrinking to 1.
11602
116032008-02-01 Kenichi Handa <handa@m17n.org>
11604
11605 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
11606 indexing into elements of s->cmp and s->char2b.
11607
116082008-02-01 Juanma Barranquero <lekktu@gmail.com>
11609
11610 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
11611
116122008-02-01 Kenichi Handa <handa@m17n.org>
11613
11614 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
11615 target_multibyte instead of multibyte.
11616 (re_match_2_internal): Call bcmp_translate with target_multibyte.
11617 (bcmp_translate): Change the argument name from multibyte to
11618 target_multibyte.
11619
116202008-02-01 Kenichi Handa <handa@m17n.org>
11621
11622 These changes are to compile a regexp into a pattern that can be
11623 used both for multibyte and unibyte targets.
11624
11625 * Makefile.in (search.o): Depend on charset.h.
11626
11627 * character.c (multibyte_char_to_unibyte_safe): New function.
11628
11629 * search.c: Include "charset.h".
11630 (compile_pattern_1): Delete argument multibyte. Don't set
11631 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
11632 (compile_pattern): Don't compare cp->buf.target_multibyte.
11633 Compare cp->buf.charset_unibyte.
11634 (compile_pattern): Set cp->buf.target_multibyte.
11635
11636 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
11637
11638 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
11639
11640 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
11641 multibyte. Change callers.
11642 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
11643 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
11644 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
11645 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
11646 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
11647 (regex_compile): Make the compiled pattern usable both for
11648 multibyte and unibyte targets.
11649 (analyse_first): Make the fastmap usable both for multibyte and
11650 unibyte targets.
11651 (TRANSLATE_VIA_MULTIBYTE): Delete.
11652 (re_match_2_internal): Pay attention to the case that the
11653 multibyteness of bufp and target may be different.
11654
116552008-02-01 Kenichi Handa <handa@m17n.org>
11656
11657 * xdisp.c (x_produce_glyphs): When a font is not found, make the
11658 empty box occupy at least one column width.
11659
116602008-02-01 Miles Bader <miles@gnu.org>
11661
11662 * Makefile.in: Remove redundant HAVE_XFT clause.
11663
116642008-02-01 Kenichi Handa <handa@m17n.org>
11665
11666 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
11667
116682008-02-01 Kenichi Handa <handa@m17n.org>
11669
11670 * fontset.c (Finternal_char_font): Fix for the case of POSITION
11671 being nil.
11672
116732008-02-01 Kenichi Handa <handa@m17n.org>
11674
11675 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
11676
116772008-02-01 Kenichi Handa <handa@m17n.org>
11678
11679 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
11680
116812008-02-01 Kenichi Handa <handa@m17n.org>
11682
11683 * search.c (simple_search): Fix previous change.
11684
116852008-02-01 Kenichi Handa <handa@m17n.org>
11686
11687 * xftfont.c (ftfont_font_format): Extern declaration.
11688
11689 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
11690
11691 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
11692 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
11693
11694 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
11695 (ftfont_font_format): Fix previous change.
11696
11697 * font.h (Ffont_xlfd_name): EXFUN it.
11698
11699 * font.c (font_parse_xlfd): Fix the array size of `f'.
11700 (register_font_driver): Use EQ to compare driver->type.
11701
11702 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
11703 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
11704 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
11705
117062008-02-01 Kenichi Handa <handa@m17n.org>
11707
11708 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
11709 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
11710
117112008-02-01 Kenichi Handa <handa@m17n.org>
11712
11713 * xfont.c (xfont_open): Set font->format.
11714
11715 * xftfont.c (xftfont_open): Set font->format.
11716
11717 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
11718 (ftfont_list): Include FC_FONTFORMAT in FcObject.
11719 (ftfont_open): Set font->format.
11720 (ftfont_font_format): New function.
11721
11722 * font.h (struct font): New member format.
11723
11724 * font.c (Qopentype): New variable.
11725 (syms_of_font): Defsym it.
11726 (Fquery_font): Change the format of the last element of the return
11727 value.
11728
117292008-02-01 Kenichi Handa <handa@m17n.org>
11730
11731 * xfns.c (xic_create_xfontset): Try the default fontset name as a
11732 last resort.
11733
117342008-02-01 Kenichi Handa <handa@m17n.org>
11735
11736 * coding.c (detect_coding_charset): Fix detection of multi-byte
11737 charset.
11738
117392008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
11740
11741 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
11742
117432008-02-01 Kenichi Handa <handa@m17n.org>
11744
11745 * xdisp.c (get_next_display_element): Set it->face_id for the
11746 first component of a composition.
11747 (x_produce_glyphs): Check if the font is changed or not for composition.
11748
117492008-02-01 Kenichi Handa <handa@m17n.org>
11750
11751 * fontset.c (Qlatin): New variable.
11752 (syms_of_fontset): Define it as a lisp symbol.
11753 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
11754
117552008-02-01 Kenichi Handa <handa@m17n.org>
11756
11757 * font.c (font_unparse_fcname): Pay attention to the case that
11758 some of font property is a null string.
11759
117602008-02-01 Kenichi Handa <handa@m17n.org>
11761
11762 * term.c: Include "composite.h".
11763 (encode_terminal_code): Output all components of composition.
11764 Check the size of encode_terminal_src.
11765 (produce_glyphs): For composition, call produce_composite_glyph.
11766 (append_composite_glyph, produce_composite_glyph): New functions.
11767
11768 * xdisp.c (x_produce_glyphs): In handling composition, if a font
11769 is not found, get font_info from the current ascii face.
11770
117712008-02-01 Kenichi Handa <handa@m17n.org>
11772
11773 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
11774 buffer-file-name to Qnil before calling insert_from_buffer.
11775
11776 * font.c (font_unparse_fcname): Pay attention to the case that
11777 foundry is a null string.
11778
117792008-02-01 Kenichi Handa <handa@m17n.org>
11780
11781 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
11782
11783 * font.c (Qunicode_sip): New variable.
11784 (syms_of_font): Declare it as a Lisp symbol.
11785
11786 * font.h (Qunicode_sip): Extern it.
11787
117882008-02-01 Kenichi Handa <handa@m17n.org>
11789
11790 * composite.c (get_composition_id): Pay attention to TAB component.
11791
11792 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
11793 TAB. Adjust for the change of s->char2b which always points to
11794 the first element of allocated memory.
11795
11796 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
11797
11798 * xdisp.c (handle_composition_prop): Set it->c to the first
11799 non-TAB component.
11800 (fill_composite_glyph_string): Change argument.
11801 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
11802 (x_produce_glyphs): Fix handling of left/right padding.
11803
118042008-02-01 Kenichi Handa <handa@m17n.org>
11805
11806 * coding.c (detect_coding_system): Fix for handling off
11807 inhibit_iso_escape_detection. Fix for the case that no coding
11808 system is defined for a specific coding category.
11809
118102008-02-01 Kenichi Handa <handa@m17n.org>
11811
11812 * font.c (font_matching_entity): Delete unused local var.
11813
11814 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
11815 opening a font.
11816
11817 * fileio.c (Finsert_file_contents): On recovering a file, assume
11818 Unix-like eol.
11819 (choose_write_coding_system): On auto-saving a file, force
11820 Unix-like eol.
11821
11822 * coding.c (setup_coding_system): Fix setting of
11823 coding->common_flags based on eol_type.
11824 (coding_inherit_eol_type): If PARENT is not nil, be sure to
11825 inherit from it.
11826
118272008-02-01 Kenichi Handa <handa@m17n.org>
11828
11829 * alloc.c (NSTATICS): Increas to 0x600.
11830
118312008-02-01 Kenichi Handa <handa@m17n.org>
11832
11833 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
11834 (ftfont_list): Don't check :name property.
11835 (ftfont_match): New function.
11836 (ftfont_pattern_entity): If the pattern doesn't contain
11837 FC_SPACING, don't assume FC_MONO.
11838
11839 * font.h (struct font_driver): New member `match'.
11840 (font_update_drivers): Adjust prototype.
11841
11842 * font.c (font_parse_fcname, font_parse_name): Don't change :name
11843 property of FONT.
11844 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
11845 them unconditionally.
11846 (font_matching_entity): New function.
11847 (font_open_by_name): Try font_matching_entity if exact match is
11848 not found.
11849 (font_update_drivers): Delete the arg FONT. Return a list of
11850 actually used backends. Don't free faces, font caches here.
11851 Don't store data in frame parameters. Don't call x_set_font.
11852 (Ffont_spec): Store :name property as is.
11853 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
11854 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
11855 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
11856 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
11857 Call font->driver->otf_gsub instead of font_otf_gsub.
11858
11859 * frame.c (x_set_font_backend): Do more works that were done in
11860 font_update_drivers before.
11861
11862 * xfont.c (xfont_match): New function.
11863 (xfont_driver): Set xfont_driver.match to xfont_match.
11864 (xfont_draw): Set font in GC if necessary.
11865
11866 * ftxfont.c (ftxfont_match): New function.
11867 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
11868
11869 * xftfont.c (xftfont_match): New function.
11870 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
11871
118722008-02-01 Kenichi Handa <handa@m17n.org>
11873
11874 * font.h (struct font): New member scalable.
11875 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
11876 (font_otf_gsub): Adjust prototype.
11877
11878 * font.c (font_otf_capability): Fix handling of the default langsys.
11879 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
11880 Check the contents of SPEC.
11881 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
11882 (check_gstring): New function.
11883 (REPLACEMENT_CHARACTER): New macro.
11884 (font_otf_gsub): New arg alternate_subst. Be sure to set all
11885 glyph codes of GSTRING.
11886 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
11887 (font_prepare_composition): Set cmp->glyph_len.
11888 (font_open_entity): Set font->scalable.
11889 (Ffont_get): Handle :otf property.
11890 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
11891 functions.
11892 (Fquery_font): Use font->font.full_name.
11893 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
11894 Sfont_otf_alternates.
11895
11896 * ftfont.c (ftfont_open): Set font->font.full_name and
11897 font->font.name properly. Fix calculation of font->font.height
11898 and font->min_width.
11899
11900 * ftxfont.c (ftxfont_create_gcs): New function.
11901 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
11902 (ftxfont_draw_backgrond): Fix filling region.
11903 (ftxfont_default_fid): New function.
11904 (ftxfont_open): Set xfont->fid to the return value of
11905 ftxfont_default_fid.
11906 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
11907 (ftxfont_done_face): Free only GCs that are created by
11908 ftxfont_create_gcs.
11909 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
11910
11911 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
11912 Clip to src->width, etc (not src->clip_XXX).
11913
11914 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
11915 FontBackend frame parameter.
11916
119172008-02-01 Kenichi Handa <handa@m17n.org>
11918
11919 * font.h (struct font_driver_list): New member `on'.
11920 (Fclear_font_cache): EXFUN it.
11921 (font_update_drivers): Extern it.
11922
11923 * font.c (font_unparse_fcname): Fix typo (swidth->width).
11924 (font_list_entities): Check driver_list->on.
11925 (register_font_driver): Initalize `on' member to 0.
11926 (font_update_drivers): New function.
11927 (Fclear_font_cache): Check driver_list->on.
11928
11929 * frame.h (Qfont_backend): Extern it.
11930 (x_set_font_backend): Extern it.
11931
11932 * frame.c (Qfont_backend): New variable.
11933 (frame_parms): New element for font-backend.
11934 (x_set_font_backend): New function.
11935
11936 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
11937 FontBackend frame parameter.
11938 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
11939 x_set_font_backend.
11940
11941 * xfont.c (xfont_list): Don't try listing by :name property if the
11942 name is not for XLFD.
11943
119442008-02-01 Kenichi Handa <handa@m17n.org>
11945
11946 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
11947 (LGLYPH_SET_TO): New macros.
11948 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
11949 element of G is vector or not.
11950 (font_at): Extern it.
11951
11952 * font.c: Include window.h.
11953 (font_lispy_object): New function.
11954 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
11955 end of valid glyph.
11956 (font_close_object): Fix getting (struct font *).
11957 (font_at): New function.
11958 (Ffont_get): If FONT is a font-object, get entity from it.
11959 (Ffont_make_gstring): Initialize elements of glyphs with nil.
11960 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
11961 range check.
11962 (Ffont_at): New function.
11963 (syms_of_font): Defsubr Sfont_at.
11964
11965 * xdisp.c (it_props): Move the entry for Qauto_composed to just
11966 before the entry for Qcomposition.
11967 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
11968 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
11969 the font in gstring.
11970 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
11971 LGLYPH_FORM (g) to detect the end of valid glyph.
11972 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
11973 we are composing with gstring.
11974
11975 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
11976 Check if adjustment is vector or not.
11977
11978 * Makefile.in (font.o): Make it depends on window.h.
11979
119802008-02-01 Kenichi Handa <handa@m17n.org>
11981
11982 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
11983 adjustment is vector or not.
11984
119852008-02-01 Miles Bader <miles@gnu.org>
11986
11987 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
11988
119892008-02-01 Kenichi Handa <handa@m17n.org>
11990
11991 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
11992 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
11993 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
11994
11995 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
11996 (DEVICE_DELTA): Fix typo.
11997 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
11998 LGLYPH format.
11999
12000 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12001 the change of LGLYPH format.
12002
120032008-02-01 Kenichi Handa <handa@m17n.org>
12004
12005 * ftfont.c (ftfont_list): Fix typo.
12006 (ftfont_build_basic_charsets): Don't include letters with diacritics.
12007
120082008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12009
12010 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
12011
12012 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
12013 xftface_info is non-NULL.
12014
120152008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12016
12017 * ftfont.c (ftfont_list): Move misplaced #endif.
12018
120192008-02-01 Kenichi Handa <handa@m17n.org>
12020
12021 * ftfont.c (ftfont_list): Pay attention to the case that
12022 FC_CAPABILITY is not defined.
12023
120242008-02-01 Kenichi Handa <handa@m17n.org>
12025
12026 * xftfont.c (xftfont_open): Set charset related members to -1.
12027
12028 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
12029 QCname.
12030 (ftfont_open): Set charset related members to -1.
12031
12032 * fontset.c (Votf_script_alist): New variable.
12033 (syms_of_fontset): Initialize it.
12034 (fontset_font): Delete unused variable.
12035
12036 * fontset.h (Votf_script_alist): Extern it.
12037
12038 * font.c (font_find_for_lface): Optimize code.
12039
12040 * font.h (font_close_object, font_merge_old_spec): Extern them.
12041
120422008-02-01 Kenichi Handa <handa@m17n.org>
12043
12044 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
12045 (syms_of_font): Initialize them.
12046 (font_pixel_size): Allow float value in dpi.
12047 (font_prop_validate_type): Delete.
12048 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
12049 Change caller.
12050 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
12051 (font_prop_validate_extra): Delete.
12052 (font_prop_validate_spacing): New function.
12053 (font_property_table): Add elements for all known properties.
12054 (get_font_prop_index): Rename from check_font_prop_name. New
12055 argument FROM. Change caller.
12056 (font_prop_validate): Validate all known properties.
12057 (font_put_extra): Delete argument force. Change caller.
12058 (font_expand_wildcards): Make it static. Fix the way of shrinking
12059 the possible range.
12060 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
12061 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
12062 Change caller.
12063 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
12064 (font_parse_fcname): Delete argument merge. Fix parsing of point
12065 size. Don't validate properties values here. Change caller.
12066 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
12067 (font_open_by_name): Delete unused variable.
12068 (Ffont_spec): Likewise. Validate property values.
12069 (Ffont_match_p): New function.
12070
12071 * font.h (QCscalable): Extern it.
12072 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
12073
12074 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
12075
12076 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
12077 (xfont_list_pattern): New function.
12078 (xfont_list): Use xfont_list_pattern.
12079
120802008-02-01 Kenichi Handa <handa@m17n.org>
12081
12082 * font.h (Flist_fonts): EXFUN it.
12083
120842008-02-01 Jason Rumney <jasonr@gnu.org>
12085
12086 * w32term.c (w32_initialize): Add back smoothing_type and
12087 smoothing_enabled definitions.
12088
120892008-02-01 Kenichi Handa <handa@m17n.org>
12090
12091 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
12092 s->face->font on determining underline position.
12093
120942008-02-01 Kenichi Handa <handa@m17n.org>
12095
12096 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
12097 (font_has_char): Accept font-object too.
12098 (font_find_for_lface): Try at first with a size specified in face.
12099
121002008-02-01 Kenichi Handa <handa@m17n.org>
12101
12102 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
12103 font_open_by_name.
12104
121052008-02-01 Kenichi Handa <handa@m17n.org>
12106
12107 * font.h (QCspacing, QCdpi): Extern them.
12108 (enum font_spacing): New enum.
12109 (FONT_PIXEL_SIZE_QUANTUM): New macro.
12110
12111 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
12112 (QCspacing, QCdpi): New variables.
12113 (syms_of_font): Initialize them.
12114 (font_pixel_size): New function.
12115 (font_put_extra): New function.
12116 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
12117 in FONT_EXTRA.
12118 (font_parse_fcname): Handle enumerated values (e.g. bold).
12119 Fix handling font size. Add QCname property that contains only
12120 unknown properties.
12121 (font_score): Change argument. Change caller. Pay attention to
12122 FONT_PIXEL_SIZE_QUANTUM.
12123 (font_sort_entites, font_list_entities, font_find_for_lface)
12124 (font_open_for_lface, font_open_by_name): Fix handling of font size.
12125 (Ffont_spec): Add QCname property that contains only unknown properties.
12126
12127 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
12128 include weight in listing pattern, instead check weight of each
12129 listed font. Don't include scalable in pattern. Pay attention to
12130 FONT_PIXEL_SIZE_QUANTUM.
12131
121322008-02-01 Kenichi Handa <handa@m17n.org>
12133
12134 * font.c (font_parse_fcname): Fix parsing of point-size.
12135 (font_unparse_fcname): Produce symbolic names for style properties.
12136 (font_list_entities): Handle float size correctly.
12137 (font_open_by_name): Prefer `normal' property values if the name
12138 doesn't specify them.
12139
12140 * fontset.c (Finternal_char_font): Use font_get_name, not
12141 Ffont_xlfd_name.
12142
12143 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
12144 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
12145 pattern. Don't force scalable.
12146
12147 * xftfont.c (xftfont_open): For generating a name, start from
12148 96-byte buffer.
12149
121502008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12151
12152 * frame.h (x_new_fontset2): Fix prototype.
12153
121542008-02-01 Kenichi Handa <handa@m17n.org>
12155
12156 * font.h (struct font_driver): Delete member parse_name.
12157 (font_match_p, font_get_spec, font_parse_fcname)
12158 (font_unparse_fcname): Extern them.
12159 (font_get_name): Adjust prototype.
12160
12161 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
12162 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
12163 (font_expand_wildcards): Fix handling ENCODING field. Avoid
12164 unnecessary checks for weight, slant, and swidth.
12165 (font_parse_fcname): New function.
12166 (font_unparse_fcname): New function.
12167 (font_parse_name): New function.
12168 (font_match_p): New function.
12169 (font_get_name): Change return value to Lisp string.
12170 (font_get_spec): New function.
12171 (Qunspecified, Qignore_defface): Don't extern them.
12172 (font_find_for_lface): Assume that LFACE is fully specified.
12173 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
12174 object, use it for FACE.
12175 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
12176 driver->parse_name.
12177 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
12178
12179 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
12180 prototype.
12181
12182 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
12183 argument F. Don't call Fnew_fontset. Instead, directly call
12184 make_fontset.
12185
12186 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
12187
12188 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
12189 of x_new_fontset2.
12190
12191 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
12192 (Qsans__serif): New variables.
12193 (ftfont_generic_family_list): New variable.
12194 (syms_of_ftfont): Initialize the above variables.
12195 (ftfont_pattern_entity): Delete argument NAME.
12196 (ftfont_list_generic_family): New function.
12197 (ftfont_parse_name): Delete this function.
12198 (ftfont_list): Try generic family only when FcFontList found no font.
12199 (ftfont_list_family): Fix args to FcObjectSetBuild.
12200
12201 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
12202 object in attrs[LFACE_FONT_INDEX].
12203 (set_lface_from_font_name): Cancel all changes for font-backend.
12204 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
12205 function.
12206 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
12207 font object in QCfont attribute.
12208 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
12209 (realize_default_face) [USE_FONT_BACKEND]: Call
12210 set_lface_from_font_and_fontset.
12211
12212 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
12213 "fixed", and signal error here if no suitable font was found.
12214
12215 * xfont.c (xfont_parse_name): Delete this function.
12216
12217 * xftfont.c (xftfont_open): Change coding style of error
12218 handling. Generate fontconfig's fontname pattern.
12219
12220 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
12221 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
12222
12223 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
12224 Both args FONTSET and FONT_OBJECT must be existing ones.
12225
122262008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12227
12228 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
12229
122302008-02-01 Kenichi Handa <handa@m17n.org>
12231
12232 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
12233
12234 * font.h (struct font): Fix typo.
12235
12236 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
12237 XLFD_XXX_INDEX.
12238 (enum xlfd_field_mask): New enum.
12239 (intern_font_field): Changed argument. Change caller. If digits
12240 are followed by non-digits, return a symbol.
12241 (font_expand_wildcards): New function.
12242 (font_parse_xlfd): Fix wildcard handling.
12243 (Ffont_spec): If :name is specified, reflect the info in the other
12244 properties.
12245
12246 * ftfont.c (ftfont_pattern_entity): Fix typo.
12247 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
12248 locale.
12249
122502008-02-01 Kenichi Handa <handa@m17n.org>
12251
12252 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
12253
12254 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
12255 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
12256 registry doesn't specify encoding part.
12257 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
12258 (font_open_by_name): At first try parsing the name.
12259 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
12260 as Lisp symbols.
12261
12262 * fontset.c (reorder_font_vector): Pay attention to the case that
12263 the 3rd element of font_def is nil.
12264 (fontset_font): For the default fontset, append one more fontset
12265 elements for a script-based font specification. Don't add script
12266 attribute on finding a font.
12267 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
12268 font name.
12269 (fontset_ascii_font): If a font can't be opened, return nil.
12270
12271 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
12272 (ftfont_pattern_entity): New function.
12273 (ftfont_get_cache): Assume that freetype_font_cache is already
12274 initialized.
12275 (ftfont_list): Handle the case that a file is specified in font
12276 name. Use ftfont_pattern_entity to generate entities.
12277 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
12278 (syms_of_ftfont): Initialize freetype_font_cache.
12279
12280 * xftfont.c (xftfont_open): Make the font name fontconfig's
12281 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
12282 (xftfont_close): Free font->font.name if not NULL.
12283
12284 * xfont.c (xfont_list): If script is specified for a font, return
12285 null_vector.
12286 (xfont_list_family): Declare argument type.
12287
12288 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
12289 name, set LFACE_FONT (lface) to nil.
12290
12291 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
12292 return Qnil.
12293
122942008-02-01 Kenichi Handa <handa@m17n.org>
12295
12296 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
12297 (standard_args): Add "-enable-font-backend".
12298
122992008-02-01 Kenichi Handa <handa@m17n.org>
12300
12301 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
12302 (struct xftdraw_list, xftdraw_list): Delete them.
12303 (register_xftdraw, check_xftdraw): Delete them.
12304 (xftfont_prepare_face): Don't call register_xftdraw.
12305 (xftfont_done_face): Don't call check_xftdraw.
12306 (xftfont_draw): Get background color only when with_background is
12307 nonzero.
12308
12309 * xfont.c (xfont_encode_char): Fix calculation of char2b.
12310
123112008-02-01 Kenichi Handa <handa@m17n.org>
12312
12313 These changes are for the new font handling codes.
12314
12315 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
12316 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
12317 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
12318 (FONTSRC, FONTOBJ): New variables.
12319 (obj): Add $(FONTOBJ).
12320 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
12321 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
12322 @LIBOTF_LIBS@.
12323 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
12324 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
12325
12326 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
12327
12328 * character.h (Vscript_representative_chars): Extern it.
12329
12330 * character.c (Vscript_representative_chars): New variable.
12331 (syms_of_character): Declare it as a Lisp variable.
12332
12333 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
12334 enable_font_backend is nonzero, accept the composition method
12335 COMPOSITION_WITH_GLYPH_STRING.
12336
12337 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
12338 enumeration COMPOSITION_WITH_GLYPH_STRING.
12339
12340 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
12341 members clip_x, clip_y, clip_width, and clip_height.
12342 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
12343
12344 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
12345 --enable-font-backend. Call syms_of_font.
12346
12347 * fns.c (assoc_no_quit): New function.
12348
12349 * fontset.h (FONT_INFO_FROM_FACE): New macro.
12350 (face_for_font, new_fontset_from_font)
12351 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
12352
12353 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
12354 (fontset_font, fontset_ascii, face_for_char)
12355 (make_fontset_for_ascii_face, Ffont_info)
12356 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
12357 is nonzero, use font-backend mechanism.
12358 (find_font_encoding): Make it non-static.
12359 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
12360 New functions.
12361
12362 * frame.h (struct frame): New members resx and resy.
12363 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
12364 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
12365
12366 * frame.c [USE_FONT_BACKEND]: Include "font.h".
12367 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
12368
12369 * lisp.h (assoc_no_quit): Extern it.
12370
12371 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
12372 Through out the file, use FONT_INFO_FROM_FACE instead of
12373 FONT_INFO_FROM_ID, use get_per_char_metric instead of
12374 rif->per_char_metric.
12375 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
12376 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
12377 (get_glyph_face_and_encoding, fill_composite_glyph_string)
12378 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
12379 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
12380 nonzero, use font-backend mechanism.
12381 (get_per_char_metric): New function.
12382
12383 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
12384 (set_lface_from_font_name)
12385 (set_font_frame_param, free_realized_face)
12386 (prepare_face_for_display, clear_face_gcs)
12387 (Finternal_set_font_selection_order, realize_x_face)
12388 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
12389 font-backend mechanism.
12390 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
12391 (load_face_font) [USE_FONT_BACKEND]: Abort.
12392 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
12393 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
12394
12395 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
12396 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
12397 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
12398 nonzero, register all available font drivers. Call
12399 x_default_font_parameter for deciding a font.
12400 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
12401
12402 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
12403 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
12404 (x_set_glyph_string_clipping_exactly)
12405 (x_compute_glyph_string_overhangs)
12406 (x_draw_glyph_string_foreground)
12407 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
12408 (x_free_frame_resources) [USE_FONT_BACKEND]: If
12409 enable_font_backend is nonzero, use font-backend mechanism.
12410 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
12411
124122008-02-01 Kenichi Handa <handa@m17n.org>
12413
12414 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
12415 system_eol_type.
12416 (syms_of_coding): Initialize system_eol_type.
12417
12418 * process.c (Fset_process_coding_system): Inherit system's eol
12419 format if necessary.
12420
124212008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12422
12423 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
12424
124252008-02-01 Kenichi Handa <handa@m17n.org>
12426
12427 * coding.c (decode_eol): Pay attention to buffer relocation in
12428 del_range_2.
12429 (decode_coding): Call decode_eol before restoring undo_list.
12430
124312008-02-01 Kenichi Handa <handa@m17n.org>
12432
12433 * charset.c (Fdefine_charset_internal): Fix setting of
12434 emacs_mule_bytes.
12435
124362008-02-01 Kenichi Handa <handa@m17n.org>
12437
12438 * keyboard.c (read_char): Check if C is a character or not before
12439 looking up Vkeyboard_translate_table.
12440
124412008-02-01 Kenichi Handa <handa@m17n.org>
12442
12443 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
12444 condition to terminate the loop.
12445
124462008-02-01 Kenichi Handa <handa@m17n.org>
12447
12448 * coding.c (produce_composition): Compare charbuf[i] instead of
12449 args[i] against 0.
12450 (Fterminal_coding_system): Use EQ to compare Lisp objects.
12451
124522008-02-01 Kenichi Handa <handa@m17n.org>
12453
12454 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
12455 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
12456 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
12457 detect_coding.
12458 (emacs_mule_char): Handle old style (Emacs 20) component character
12459 of a composition.
12460 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
12461 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
12462 composition rule.
12463 (decode_coding_emacs_mule): Handle invalid bytes correctly.
12464
124652008-02-01 Kenichi Handa <handa@m17n.org>
12466
12467 * coding.c (encode_coding_ccl): Allocate destination dynamically
12468 when necessary.
12469
124702008-02-01 Kenichi Handa <handa@m17n.org>
12471
12472 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
12473 the loop. When quitted, show a proper error message.
12474
124752008-02-01 Kenichi Handa <handa@m17n.org>
12476
12477 * xterm.c (x_set_glyph_string_clipping_exactly): Set
12478 src->clip_head and src->clip_tail temporarily instead of src->hl.
12479
12480 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
12481 character sequence.
12482 (Fccl_execute_on_string): Use ASET, not XSET.
12483
124842008-02-01 Kenichi Handa <handa@m17n.org>
12485
12486 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
12487
124882008-02-01 Kenichi Handa <handa@m17n.org>
12489
12490 * coding.c (decode_coding): Fix the condition of terminating the
12491 decoding loop.
12492
124932008-02-01 Kenichi Handa <handa@m17n.org>
12494
12495 * data.c (Faset): On setting a character bigger than 255 in a
12496 unibyte string, signal an error instead of make the string multibyte.
12497
124982008-02-01 Kenichi Handa <handa@m17n.org>
12499
12500 * charset.c (map_charset_chars): Fix for ascii-compatible charset
12501 made by a mapping table.
12502
125032008-02-01 Kenichi Handa <handa@m17n.org>
12504
12505 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
12506 not.
12507 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
12508 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
12509
12510 * xterm.c (x_draw_composite_glyph_string_foreground): Check
12511 s->face is NULL or not.
12512
125132008-02-01 Kenichi Handa <handa@m17n.org>
12514
12515 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
12516 (x_draw_glyph_string): Fix drawing of right_overhang and
12517 left_overhang around/on cursor.
12518
12519 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
12520
125212008-02-01 Kenichi Handa <handa@m17n.org>
12522
12523 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
12524
125252008-02-01 Kenichi Handa <handa@m17n.org>
12526
12527 * coding.c (Fdefine_coding_system_internal)
12528 (Fdefine_coding_system_alias): Avoid a duplicated element in
12529 Vcoding_system_alist.
12530
125312008-02-01 Kenichi Handa <handa@m17n.org>
12532
12533 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
12534
12535 * coding.c (Qcoding_system_define_form): New variable.
12536 (syms_of_coding): Intern and staticpro it.
12537 (Fcoding_system_p): Check Qcoding_system_define_form.
12538 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
12539
12540 * coding.h (CODING_SYSTEM_P): If ID is not available, call
12541 Fcoding_system_p.
12542 (CHECK_CODING_SYSTEM): If ID is not available, call
12543 Fcheck_coding_system.
12544 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
12545 Try also Fcheck_coding_system.
12546
125472008-02-01 Kenichi Handa <handa@m17n.org>
12548
12549 * coding.c (code_conversion_restore): GCPRO arg.
12550
125512008-02-01 Kenichi Handa <handa@m17n.org>
12552
12553 * character.c (lisp_string_width): Check multibyteness of STRING.
12554
125552008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12556
12557 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
12558 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
12559 (decode_mac_font_name): Use decode_coding_c_string instead of
12560 decode_coding.
12561 (x_load_font): Initialize fontp->fontset to -1. Set
12562 fontp->encoding_type.
12563
125642008-02-01 Kenichi Handa <handa@m17n.org>
12565
12566 * search.c (search_buffer): Give up BM search on case-fold-search
12567 if one of a target character has a case-equivalence of different
12568 byte length even if that target charcter is an ASCII.
12569 (simple_search): Fix calculation of byte length of matched text.
12570 (boyer_moore): Fix handling of case-equivalent multibyte characters.
12571
125722008-02-01 Kenichi Handa <handa@m17n.org>
12573
12574 * coding.c (decode_coding): Fix handling of invalid bytes.
12575
125762008-02-01 Kenichi Handa <handa@m17n.org>
12577
12578 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
12579 Unicode characters.
12580
125812008-02-01 Kenichi Handa <handa@m17n.org>
12582
12583 * coding.c (encode_coding_object): If a pre-write-conversion
12584 function makes a new buffer, kill it.
12585
125862008-02-01 Kenichi Handa <handa@m17n.org>
12587
12588 * coding.c (QCascii_compatible_p): New variable.
12589 (syms_of_coding): Initialize it.
12590 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
12591 calling string_char.
12592 (record_conversion_result): Add `default:' case.
12593 (coding_charset_list): Delete unused variable `coding_type'.
12594 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
12595 property in the plist of the coding system.
12596 (Fcoding_system_put): Check QCascii_compatible_p.
12597
125982008-02-01 Miles Bader <miles@gnu.org>
12599
12600 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
12601 removed calculation of frame `f', as it's now used.
12602
126032008-02-01 Kenichi Handa <handa@m17n.org>
12604
12605 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
12606 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
12607 (UNIDATA): New variable.
12608 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
12609 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
12610 $(RUN_TEMACS) unconditionally.
12611
126122008-02-01 Kenichi Handa <handa@m17n.org>
12613
12614 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
12615 (admindir): New variable.
12616 ($(lispsource)international/charprop.el): New target.
12617
126182008-02-01 Miles Bader <miles@gnu.org>
12619
12620 * character.c (chars-in-region): Remove obsolete function.
12621 (syms_of_character): Remove its initialization.
12622
126232008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
12624
12625 * w32select.c (validate_coding_system)
12626 (setup_windows_coding_system): New functions.
12627 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
12628 setup_windows_coding_system.
12629 (setup_config, Fw32_get_clipboard_data): Use
12630 validate_coding_system.
12631 (Fx_selection_exists): Move call to setup_config to a place
12632 where signals are allowed.
12633
12634 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
12635 (Fcheck_coding_system): Add declarations.
12636
126372008-02-01 Kenichi Handa <handa@m17n.org>
12638
12639 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
12640
126412008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12642
12643 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
12644 string as the second argument for x_new_fontset.
12645
126462008-02-01 Kenichi Handa <handa@m17n.org>
12647
12648 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
12649 (encode_coding_object): Use safe_call instead of call2.
12650
126512008-02-01 Kenichi Handa <handa@m17n.org>
12652
12653 * fontset.c (Fset_fontset_font): Check family element of a given vector.
12654
12655 * Makefile.in (lisp): Include charprop.el.
12656
126572008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12658
12659 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
12660 Not sure if it's unnecessary.
12661
126622008-02-01 Steven Tamm <steventamm@mac.com>
12663
12664 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
12665 some possibly unnecessary fontset checking code that crashed
12666 when creating a new frame.
12667
126682008-02-01 Kenichi Handa <handa@m17n.org>
12669
12670 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
12671 lookup_face.
12672
12673 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
12674
12675 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
12676
126772008-02-01 Kenichi Handa <handa@m17n.org>
12678
12679 * coding.c: Cancel the change done in HEAD on 2008-02-01.
12680 (coding_charset_list): New function.
12681
12682 * coding.h (coding_charset_list): Extern it.
12683
126842008-02-01 Kenichi Handa <handa@m17n.org>
12685
12686 * fontset.c (Fset_fontset_font): Call find_font_encoding with
12687 concatenation of family and registry.
12688
126892008-02-01 Kenichi Handa <handa@m17n.org>
12690
12691 * character.h (BYTE8_STRING): Fix typo.
12692
12693 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
12694 string to multibyte (sync to HEAD).
12695
12696 * casefiddle.c (casify_region): Handle changes in byte-length
12697 using replace_range_2 (sync to HEAD).
12698
126992008-02-01 Andreas Schwab <schwab@suse.de>
12700
12701 * chartab.c (map_char_table): GCPRO table and arg.
12702
127032008-02-01 Kenichi Handa <handa@m17n.org>
12704
12705 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
12706 already at limit.
12707
127082008-02-01 Kenichi Handa <handa@m17n.org>
12709
12710 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
12711 instead of fast_c_string_match_ignore_case.
12712 (find_font_encoding): Change argument to Lisp_Object. Use
12713 fast_string_match_ignore_case instead of
12714 fast_c_string_match_ignore_case. Change caller.
12715
127162008-02-01 Kenichi Handa <handa@m17n.org>
12717
12718 * xdisp.c (get_next_display_element): In unibyte case, decide to
12719 display in octal form by checking a character by
12720 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
12721
12722 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
12723
12724 * character.c (unibyte_has_multibyte_table): New variable.
12725
12726 * character.h (unibyte_has_multibyte_table): Extern it.
12727 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
12728
127292008-02-01 Kenichi Handa <handa@m17n.org>
12730
12731 * coding.c (encode_coding_iso_2022): Fix handling of charset
12732 annotation.
12733
127342008-02-01 Kenichi Handa <handa@m17n.org>
12735
12736 * coding.c (setup_coding_system): If coding_system is nil, use
12737 Qundecided.
12738 (Fterminal_coding_system): Return nil if terminal coding system is
12739 `undecided'.
12740 (syms_of_coding): Define coding-system `undecided' here. Setup
12741 terminal_coding as `undecided'.
12742
127432008-02-01 Kenichi Handa <handa@m17n.org>
12744
12745 * xdisp.c (message_dolog, set_message_1): Call
12746 unibyte_char_to_multibyte with arg type int.
12747
12748 * lread.c (read1): Fix reading of a char-table.
12749
12750 * print.c (print_object): Include sub char-table in circularities
12751 detection.
12752
127532008-02-01 Kenichi Handa <handa@m17n.org>
12754
12755 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
12756 Append the found sequences in car of ARGS instead of prepending.
12757
127582008-02-01 Kenichi Handa <handa@m17n.org>
12759
12760 * fileio.c (report_file_error): Make a unibyte string from
12761 strerror (errorno).
12762 (Fsubstitute_in_file_name): Fix the arg to
12763 unibyte_char_to_multibyte. It is evaluated twice.
12764
127652008-02-01 Kenichi Handa <handa@m17n.org>
12766
12767 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
12768
127692008-02-01 Kenichi Handa <handa@m17n.org>
12770
12771 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
12772 BOM is not found.
12773 (detect_coding, detect_coding_system): Optimization for ISO-2022
12774 when no 8-bit data is found.
12775
127762008-02-01 Jason Rumney <jasonr@gnu.org>
12777
12778 * w32fns.c (x_to_w32_font): Update to use new coding struct.
12779
127802008-02-01 Kenichi Handa <handa@m17n.org>
12781
12782 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
12783 CHARS.
12784
127852008-02-01 Steven Tamm <steventamm@mac.com>
12786
12787 * macterm.c (mac_encode_char): Add charset argument and update
12788 to use encoding_type.
12789 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
12790 switch to pure fontset.
12791 (decode_mac_font_name): Temporarily remove decoding.
12792 (x_font_name_to_mac_font_name): Temporarily remove encoding.
12793 (x_load_font): Temporarily remove encoding.
12794
127952008-02-01 Kenichi Handa <handa@m17n.org>
12796
12797 * xfaces.c (Fface_font): If frame is not on a window system,
12798 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
12799 refer to face->font.
12800 (split_font_name_into_vector, build_font_name_from_vector)
12801 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
12802 when HAVE_WINDOW_SYSTEM is defined.
12803
128042008-02-01 Kenichi Handa <handa@m17n.org>
12805
12806 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
12807 (x_produce_glyphs): Fix setting of members of cmp in case
12808 cmp->glyph_len is zero.
12809
12810 * fontset.c (Fset_fontset_font): Fix docstring.
12811 (Ffontset_info): Make it backward compatible. New arg ALL.
12812
128132008-02-01 Kim F. Storm <storm@cua.dk>
12814
12815 * process.c (read_process_output): Grow decoding_buf when needed;
12816 this could cause a crash in allocate_string and compact_small_strings.
12817
128182008-02-01 Kenichi Handa <handa@m17n.org>
12819
12820 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
12821
128222008-02-01 Kenichi Handa <handa@m17n.org>
12823
12824 * coding.c (setup_coding_system): Set coding->common_flags
12825 correctly for raw-text.
12826 (consume_chars): On encoding unibyte text by raw-text, don't check
12827 multibyte form.
12828 (encode_coding): On encoding by raw-text, never use translation tables.
12829
12830 * fileio.c (e_write): Short cut for the case of no encoding.
12831
128322008-02-01 Kenichi Handa <handa@m17n.org>
12833
12834 * coding.c (detect_coding, detect_coding_system): Delete unused
12835 variables.
12836
128372008-02-01 Kenichi Handa <handa@m17n.org>
12838
12839 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
12840 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
12841
128422008-02-01 Kenichi Handa <handa@m17n.org>
12843
12844 * coding.c (Ffind_coding_systems_region_internal): Include
12845 raw-text and no-conversion in the result.
12846
128472008-02-01 Kenichi Handa <handa@m17n.org>
12848
12849 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
12850 (load_font_get_repertory): Delete unnecessary check of ENCODING of
12851 FONT_DEF.
12852 (font_def_arg, add_arg, from_arg, to_arg): New args.
12853 (set_fontset_font): Change argument.
12854 (Fset_fontset_font): Fix for the case that TARGET is a script
12855 name and charset name.
12856 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
12857
128582008-02-01 Kenichi Handa <handa@m17n.org>
12859
12860 * fontset.c (fontset_font): Rename from fontset_face. Change return
12861 value.
12862 (face_suitable_for_char_p, face_for_char): Adjust for the change
12863 of fontset_font.
12864 (make_fontset_for_ascii_face): Fix setting of the fontset element
12865 for ASCII.
12866 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
12867 to get a font name.
12868 (Ffontset_info): Adjust for the change of fontset_font.
12869
12870 * coding.c (emacs_mule_char): Check invalid code more rigidly.
12871
12872 * character.h (LEADING_CODE_LATIN_1_MIN)
12873 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
12874
128752008-02-01 Kenichi Handa <handa@m17n.org>
12876
12877 * editfns.c (check_translation): New function.
12878 (Ftranslate_region_internal): Handle M:N mapping.
12879
128802008-02-01 Kenichi Handa <handa@m17n.org>
12881
12882 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
12883
128842008-02-01 Kenichi Handa <handa@m17n.org>
12885
12886 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
12887 goto invalid_code.
12888 (decode_coding_iso_2022): Fix handling of invalid designation.
12889
12890 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
12891 after calling code_conversion_save.
12892
128932008-02-01 Kenichi Handa <handa@m17n.org>
12894
12895 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
12896
12897 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
12898
12899 * fontset.c: Include "intervals.h".
12900 (fontset_face): Fix comparing of Lisp_Objects.
12901 (free_face_fontset, new_fontset_from_font_name): Fix
12902 Lisp_Object/int mixup.
12903
12904 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
12905
12906 * coding.c: Add many prototypes for static functions.
12907 (get_translation_table): Allow max_lookup to be NULL.
12908 (decode_coding, Ffind_coding_systems_region_internal)
12909 (Funencodable_char_position, Fcheck_coding_systems_region): Call
12910 get_translation_table with max_lookup NULL.
12911
129122008-02-01 Kenichi Handa <handa@m17n.org>
12913
12914 * coding.c (get_translation_table): Declare it as Lisp_Object.
12915 (LOOKUP_TRANSLATION_TABLE): New macro.
12916 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
12917 instead of CHAR_TABLE_REF.
12918
129192008-02-01 Kenichi Handa <handa@m17n.org>
12920
12921 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
12922 annotation data format.
12923 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
12924 Change arguments FROM and TO to single argument NCHARS. Change caller.
12925 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
12926 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
12927 (decode_coding_ccl, decode_coding_charset): Pay attention to
12928 coding->charbuf_used.
12929 (get_translation): New function.
12930 (produce_chars): New arguments translation_table and last_block.
12931 Translate characters here. Return number of carryover chars.
12932 Change caller.
12933 (produce_composition): New argument pos. Change caller.
12934 Adjust for the change of annotation data format.
12935 (produce_charset, produce_annotation): Likewise.
12936 (decode_coding, encode_coding): Don't call translate_chars.
12937 (consume_chars): New arg translation_table. Change caller.
12938 (translate_chars): Delete.
12939 (syms_of_coding): Make translation-table's number of extra slots 2.
12940
129412008-02-01 Kenichi Handa <handa@m17n.org>
12942
12943 * search.c (simple_search): Fix setting this_pos_byte in backward
12944 search.
12945
12946 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
12947 byte sequence.
12948 (detect_coding_ccl): Fix setting of the variable valids.
12949
129502008-02-01 Kenichi Handa <handa@m17n.org>
12951
12952 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
12953
12954 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
12955
12956 * editfns.c (Ftranslate_region_internal): Rename from
12957 Ftranslate_region. Accept a char-table in TABLE.
12958 (syms_of_editfns): Defsubr Stranslate_region_internal.
12959
12960 * xfaces.c (set_lface_from_font_name): If a font is specified for
12961 a frame, generate a fontset from the font.
12962 (build_scalable_font_name): If the scalable font is requested for
12963 a specific size, don't change that size.
12964 (try_font_list): Try a scalable font also in the case that a
12965 pattern string is specified.
12966
129672008-02-01 Kenichi Handa <handa@m17n.org>
12968
12969 * xfaces.c (Fface_font): New optional arg CHARACTER.
12970
129712008-02-01 Kenichi Handa <handa@m17n.org>
12972
12973 * charset.h (CHARSET_OFFSET): New macro.
12974
129752008-02-01 Kenichi Handa <handa@m17n.org>
12976
12977 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
12978
12979 * fontset.c (fontset_face): Handle the case that repertory is a
12980 char-table.
12981 (find_font_encoding): Return nil for unknown encoding.
12982 (Fset_fontset_font): Ignore a font of unknown encoding.
12983
129842008-02-01 Kenichi Handa <handa@m17n.org>
12985
12986 * keymap.c (describe_vector): Handle default value of a char table.
12987
12988 * fontset.c (fontset_face): Handle fallback fonts correctly.
12989 (Ffontset_info): Return infomation about fallback fonts.
12990
129912008-02-01 Kenichi Handa <handa@m17n.org>
12992
12993 * fontset.c (FONTSET_DEFAULT): New macro.
12994 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
12995 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
12996 the case that it is nil.
12997 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
12998 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
12999
13000 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
13001 subset or superset.
13002
130032008-02-01 Kenichi Handa <handa@m17n.org>
13004
13005 * emacs.c (main): Call init_charset after syms_of_XXX.
13006
13007 * charset.c (Vcharset_map_directory): Delete.
13008 (Vcharset_map_path): New variable.
13009 (load_charset_map_from_file): Use Vcharset_map_path instead.
13010 (init_charset): Initialize Vcharset_map_path.
13011 (syms_of_charset): Delete declaration of "charset-map-directory",
13012 add declaration of "charset-map-path".
13013
130142008-02-01 Kenichi Handa <handa@m17n.org>
13015
13016 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
13017 ASCII only string.
13018
13019 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
13020
13021 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
13022 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
13023
130242008-02-01 Kenichi Handa <handa@m17n.org>
13025
13026 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
13027
13028 * coding.c (QCmnemonic, QCdefalut_char)
13029 (QCdecode_translation_table, QCencode_translation_table)
13030 (QCpost_read_conversion, QCpre_write_conversion): New variables.
13031 (get_translation_table): Return a list of translation tables if
13032 necessary.
13033 (decode_coding): Call get_translation_table with ENCODEP 0.
13034 (char_encodable_p): If translation_table is non-nil, always call
13035 translate_char.
13036 (Fdefine_coding_system_internal): Accept list of translation
13037 tables as :encode-translation-table and :decode-translation-table.
13038 (Fcoding_system_put): New function.
13039 (syms_of_coding): Declare new symbols. Defsubr
13040 Scoding_system_put.
13041 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
13042 typically JISX0212.
13043
13044 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
13045 when the charset is superset type.
13046
13047 * character.c (translate_char): Accept list of translation tables.
13048
130492008-02-01 Kenichi Handa <handa@m17n.org>
13050
13051 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
13052 (CODING_ATTR_TRANS_TBL): New macro.
13053
13054 * coding.c (get_translation_table): New function.
13055 (translate_chars): Fix the bug of skipping annotation data.
13056 (decode_coding, encode_coding): Utilize get_translation_table.
13057 (char_encodable_p, Funencodable_char_position): Translate char if
13058 necessary.
13059 (Ffind_coding_systems_region_internal)
13060 (Fcheck_coding_systems_region): Setup translation table for encode
13061 in a coding system attribute vector in advance.
13062 (Fdefine_coding_system_internal): Allow a symbol as translation
13063 table. For shift-jis type coding system, allow 4th charset.
13064
130652008-02-01 Kenichi Handa <handa@m17n.org>
13066
13067 * coding.c (decode_coding_sjis): Check the first byte rigidly.
13068
13069 * xdisp.c (get_next_display_element): Pass -1 as POS to
13070 FACE_FOR_CHAR if displaying a C-string.
13071
130722008-02-01 Kenichi Handa <handa@m17n.org>
13073
13074 * composite.c (get_composition_id): Handle xoff and yoff in a
13075 composition rule.
13076
13077 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
13078 (struct composition): New member lbearing and rbearing.
13079
13080 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
13081 (x_get_glyph_overhangs): Handle a composition glyph.
13082 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
13083
13084 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
13085 composition glyph.
13086
130872008-02-01 Kenichi Handa <handa@m17n.org>
13088
13089 * print.c: Include charset.h.
13090 (Vprint_charset_text_property): New variable.
13091 (Qdefault): Extern it.
13092 (PRINT_STRING_NON_CHARSET_FOUND)
13093 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
13094 (print_check_string_result): New variable.
13095 (print_check_string_charset_prop): New function.
13096 (print_prune_charset_plist): New variable.
13097 (print_prune_string_charset): New function.
13098 (print_object): Call print_prune_string_charset if
13099 Vprint_charset_text_property is not t.
13100 (print_interval): Print nothing if interval->plist is nil.
13101 (syms_of_print): Declare Vprint_charset_text_property as a lisp
13102 variable. Init and staticpro print_prune_charset_plist.
13103
131042008-02-01 Kenichi Handa <handa@m17n.org>
13105
13106 * fontset.c (new_fontset_from_font_name): Use the specified font
13107 for all characters in the new fontset.
13108
13109 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13110 OBJECT args.
13111
13112 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
13113 OBJECT args for composition too.
13114
13115 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13116 OBJECT args.
13117
131182008-02-01 Kenichi Handa <handa@m17n.org>
13119
13120 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
13121
13122 * fontset.c (reorder_font_vector): Adjust for the change of
13123 FONT_DEF format.
13124 (fontset_face): New arg id. Change caller.
13125 (face_for_char): New args pos and object.
13126 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
13127 (fs_query_fontset): Check NAME by Fassoc too.
13128 (Fset_fontset_font): Allow non-XLFD font name.
13129 (Ffontset_info): Adjust for the change of FONT_DEF format.
13130
13131 * fontset.h (face_for_char): Adjust prototype.
13132
13133 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
13134 (append_space, extend_face_to_end_of_line)
13135 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13136 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
13137
13138 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
13139 POS and OBJECT args.
13140
13141 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
13142 POS and OBJECT args.
13143
131442008-02-01 Jason Rumney <jasonr@gnu.org>
13145
13146 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
13147 of GlobalAlloc'ed memory.
13148
131492008-02-01 Kenichi Handa <handa@m17n.org>
13150
13151 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
13152
13153 * charset.h (charset_table_used): Delete extern.
13154
13155 * charset.c (charset_table_used): Make it static.
13156 (map_charset_chars): Fix args to c_function with.
13157
13158 * chartab.c (map_sub_char_table_for_charset): Fix args to
13159 c_function with.
13160
13161 * coding.h (enum coding_result_code): Delete
13162 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
13163
13164 * coding.c (Qinsufficient_source, Qinconsistent_eol)
13165 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
13166 (Vlast_code_conversion_error): New variables.
13167 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
13168 (ONE_MORE_BYTE): Record error if any instead of signaling an
13169 error. If non-ASCII multibyte char is found, return the negative
13170 value of the code. All callers changed to check it.
13171 (ONE_MORE_BYTE_NO_CHECK): Likewise.
13172 (record_conversion_result): New function. Change all codes setting
13173 coding->result to call this function.
13174 (detect_coding_utf_8, decode_coding_utf_8)
13175 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
13176 Don't use the local variable incomplete.
13177 (emacs_mule_char): Change the second arg to `const'.
13178 (decode_coding): Fix of flushing out unprocessed data.
13179 (make_conversion_work_buffer): Fix making of a work buffer.
13180 (decode_coding_object): Return coding->dst_object.
13181
13182 * fontset.c (set_fontset_font): Fix args.
13183
13184 * lisp.h (CHARACTERBITS): Define as 22.
13185
13186 * process.c (send_process): Be sure to set coding->src_multibyte.
13187
13188 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
13189
131902008-02-01 Kenichi Handa <handa@m17n.org>
13191
13192 * xdisp.c (handle_auto_composed_prop): Give limit to
13193 Fnext_single_char_property_change.
13194
131952008-02-01 Kenichi Handa <handa@m17n.org>
13196
13197 * composite.c (syms_of_composite): Don't make the composition hash
13198 table weak.
13199
13200 * fontset.c (Fset_fontset_font): Fix docstring.
13201
13202 * lisp.h (detect_coding_system): Adjust prototype.
13203
13204 * fileio.c (kill_workbuf_unwind): Delete this function.
13205 (Finsert_file_contents): Adjust the call of detect_coding_system.
13206 Get conversion_buffer by code_conversion_save. Use the macro
13207 CODING_MAY_REQUIRE_DECODING. After decoding, update
13208 coding_system.
13209
13210 * coding.h (make_conversion_work_buffer): Delete extern.
13211 (code_conversion_save): Extern it.
13212
13213 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
13214 (CODING_GET_INFO): Delete argument eol_type. Change callers.
13215 (decode_coding_utf_8): Don't do eol converion.
13216 (detect_coding_utf_16): Check coding->src_chars, not
13217 coding->src_bytes. Add heuristics for those that have no signature.
13218 (decode_coding_emacs_mule, decode_coding_iso_2022)
13219 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
13220 Don't do eol converion.
13221 (adjust_coding_eol_type): Return a new coding system.
13222 (detect_coding): Don't detect eol. Fix for utf-16 detection.
13223 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
13224 each change.
13225 (decode_coding): Pay attention to undo_list. Do eol conversion for
13226 all types of coding-systems (if necessary).
13227 (Vcode_conversion_work_buf_list): Delete it.
13228 (Vcode_conversion_reused_workbuf): Rename from
13229 Vcode_conversion_reused_work_buf.
13230 (Vcode_conversion_workbuf_name): New variable.
13231 (reused_workbuf_in_use): New variable.
13232 (make_conversion_work_buffer): Delete the arg DEPTH.
13233 (code_conversion_restore): Change argument to cons.
13234 (code_conversion_save): Delete the argument BUFFER. Change callers.
13235 (detect_coding_system): New argument src_chars. Change callers.
13236 Fix for utf-16 detection.
13237 (init_coding_once): Don't use ISO_carriage_return.
13238 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
13239 reused_workbuf_in_use.
13240
132412008-02-01 Kenichi Handa <handa@m17n.org>
13242
13243 * keymap.c (store_in_keymap): Pay attention to the case that idx
13244 is a cons specifying a character range.
13245
132462008-02-01 Kenichi Handa <handa@m17n.org>
13247
13248 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
13249 HANDLED_RECOMPUTE_PROPS.
13250
13251 * coding.c (Fdefine_coding_system_internal): Fix checking of
13252 ascii compatibility.
13253
132542008-02-01 Kenichi Handa <handa@m17n.org>
13255
13256 * charset.c (find_charsets_in_text): Delete unused locale variable.
13257 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
13258
13259 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
13260 Resync charset_list to Vemacs_mule_charset_list.
13261
13262 * keymap.c (store_in_keymap): Pay attention to the case that idx
13263 is a cons specifying a character range.
13264
132652008-02-01 Kenichi Handa <handa@m17n.org>
13266
13267 * composite.c (update_compositions): Bind inhibit-read-only, etc
13268 to t before calling remove-list-of-text-properties.
13269
13270 * print.c (print_object): Always print ASCII chars as is.
13271
132722008-02-01 Kenichi Handa <handa@m17n.org>
13273
13274 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
13275
13276 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
13277 is a char table.
13278
132792008-02-01 Kenichi Handa <handa@m17n.org>
13280
13281 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
13282
132832008-02-01 Kenichi Handa <handa@m17n.org>
13284
13285 * xfaces.c (set_lface_from_font_name): Fix for the case that
13286 FONTNAME is not fontset name.
13287
132882008-02-01 Kenichi Handa <handa@m17n.org>
13289
13290 * fns.c (base64_encode_1): Fix previous change.
13291
132922008-02-01 Kenichi Handa <handa@m17n.org>
13293
13294 * fontset.c (set_fontset_font): New function.
13295 (Fset_fontset_font): If a font is specified for a charset, use
13296 map_charset_chars to store the font spec in a fontset.
13297
132982008-02-01 Kenichi Handa <handa@m17n.org>
13299
13300 * fontset.c (fontset_face): Create a fallback fontset on demand.
13301 (make_fontset): Don't create a fallback fontset here.
13302 (free_face_fontset): Free a fallback fontset (if any) too.
13303 (n_auto_fontsets): Delete this variable.
13304 (auto_fontset_alist): New variable.
13305 (new_fontset_from_font_name): Check auto_fontset_alist.
13306 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
13307 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
13308 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
13309 Defsubr Sfontset_list_all.
13310
133112008-02-01 Kenichi Handa <handa@m17n.org>
13312
13313 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
13314
133152008-02-01 Kenichi Handa <handa@m17n.org>
13316
13317 * fontset.c (Fnew_fontset): Check NAME more rigidly.
13318
133192008-02-01 Kenichi Handa <handa@m17n.org>
13320
13321 * editfns.c (Fgoto_char): Fix docstring.
13322
133232008-02-01 Kenichi Handa <handa@m17n.org>
13324
13325 * insdel.c (insert_from_gap): Adjust intervals correctly.
13326
133272008-02-01 Jason Rumney <jasonr@gnu.org>
13328
13329 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
13330 (pfnGetFontUnicodeRanges): New dynamically loaded function.
13331 (w32_initialize): Try to load it.
13332 (x_get_font_repertory): Use it if available.
13333 (w32_encode_char): Add shortcut for unicode output.
13334
13335 * w32fns.c (w32_load_system_font): Default charset to -1.
13336 (x_to_w32_charset): Match all fonts for unicode.
13337 (w32_to_x_charset): New parameter matching. Don't return partial
13338 or wildcard charsets.
13339 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
13340 (w32_codepage_for_font): Return CP_UNICODE for unicode.
13341 (w32_to_x_font): Match charset to real charset.
13342 (enum_font_cb2): Always list unicode versions.
13343
13344 * makefile.w32-in (temacs): Increase EMHEAP.
13345
133462008-02-01 Jason Rumney <jasonr@gnu.org>
13347
13348 * w32term.c (w32_encode_char): New charset parameter.
13349 font_info.encoding becomes encoding_type.
13350 (x_get_font_repertory): New function. Warning: stub only!
13351 (x_new_font): Return quickly if font already set.
13352 (x_new_fontset): fontsetname parameter is Lisp_Object.
13353 Use new fs_query_fontset. Try new_fontset_from_font_name.
13354 Use fontset_name for return value.
13355
13356 * w32term.h: Declare x_get_font_repertory.
13357
13358 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
13359 place of find_charset_in_text. Use encode_coding_object in place
13360 of encode_coding.
13361 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
13362 decode_coding.
13363
13364 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
13365 of x_new_fontset.
13366 (w32_load_system_font): Initialize charset as unicode.
13367 font_info.encoding becomes encoding_type.
13368 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
13369 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
13370 (syms_of_w32fns): Set get_font_repertory_func.
13371
13372 * w32console.c: Include character.h. Use terminal_encode_buffer
13373 from term.c.
13374 (write_glyphs): Use new version of encode_terminal_code. Use
13375 encode_coding_object in place of encode_coding.
13376
13377 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
13378 encoding becomes encoding_type.
13379
13380 * term.c (terminal_encode_buffer): Make externally visible.
13381
13382 * makefile.w32-in: Add character.h dependancies.
13383 (character.o, chartab.o): New targets.
13384
133852008-02-01 Kenichi Handa <handa@m17n.org>
13386
13387 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
13388 CODING_ID_EOL_TYPE.
13389
133902008-02-01 Andreas Schwab <schwab@suse.de>
13391
13392 * coding.c (produce_chars): Revert last change.
13393
133942008-02-01 Kenichi Handa <handa@m17n.org>
13395
13396 * charset.h (charset_unicode): Extern it.
13397
13398 * charset.c (string_xstring_p): Check by (C >= 0x100).
13399 (find_charsets_in_text): Change format of the arc CHARSETS. New
13400 arg MULTIBYTE.
13401 (Ffind_charset_region, Ffind_charset_string): Adjust for the
13402 change of find_charsets_in_text.
13403 (Fsplit_char): Fix doc. Never return unknown.
13404
13405 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
13406
13407 * coding.c (Fdefine_coding_system_alias): Update
13408 Vcoding_system_list.
13409
13410 * fontset.c (load_font_get_repertory): Pay attention to the case
13411 that ENCODING of a font is specified by a char-table.
13412
13413 * xterm.c (x_get_font_repertory): Handle the case that the
13414 encoding of font is other than Unicode.
13415
134162008-02-01 Kenichi Handa <handa@m17n.org>
13417
13418 * term.c (encode_terminal_code): Don't handle glyph-table. Check
13419 if a character is encodable by the terminal coding system. If
13420 not, produces proper number of `?'s. Update
13421 terminal_encode_buffer and terminal_encode_buf_size if necessary.
13422 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
13423
134242008-02-01 Kenichi Handa <handa@m17n.org>
13425
13426 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
13427 variables.
13428 (encode_terminal_code): Change argument. Encode multiple
13429 characters at once. Store the result of encoding in
13430 terminal_encode_buffer.
13431 (write_glyphs, insert_glyphs): Adjust for the change of
13432 encode_terminal_code.
13433 (term_init): Initialize terminal_encode_buffer and
13434 terminal_encode_buf_size.
13435
13436 * coding.c (consume_chars): If coding->src_object is nil, don't
13437 check annotation.
13438
134392008-02-01 Kenichi Handa <handa@m17n.org>
13440
13441 * character.c (char_string): Use ASCII_CHAR_P instead of
13442 SINGLE_BYTE_CHAR_P.
13443
134442008-02-01 Kenichi Handa <handa@m17n.org>
13445
13446 * xdisp.c (handle_auto_composed_prop): Check if the last
13447 characters of auto-composed region is newly composed with the
13448 following characters.
13449 (handle_composition_prop): Fix checking of point being inside
13450 composition.
13451
134522008-02-01 Kenichi Handa <handa@m17n.org>
13453
13454 * fns.c (concat): Don't change multibyteness of the result by
13455 concatenating an 8-bit character.
13456
13457 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
13458 multibyteness of the result when newelt is an 8-bit character.
13459
134602008-02-01 Dave Love <fx@gnu.org>
13461
13462 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
13463 EMACS_INT.
13464
13465 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
13466
13467 * xfaces.c (face_numeric_value): Declare dim size_t.
13468 (Finternal_lisp_face_equal_p): Remove unused f.
13469
13470 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
13471 (MATRIX_ROW): Remove unused vars.
13472 (draw_glyphs, x_insert_glyphs, fast_find_position)
13473 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
13474 byte/char counts.
13475
13476 * regex.c (regex_compile): Remove unused var.
13477
13478 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
13479
13480 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
13481 (Faccessible_keymaps, where_is_internal): Remove unused vars.
13482
13483 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
13484
13485 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
13486
13487 * fileio.c (Fwrite_region): Remove unused var.
13488
13489 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
13490 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
13491
13492 * composite.c (Fremove_list_of_text_properties): Declare.
13493
13494 * coding.c (inhibit_pre_post_conversion): Remove (unused).
13495 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
13496 (coding_inherit_eol_type): Remove unused attrs.
13497 (detect_coding): Cast arg of detect_eol.
13498
13499 * charset.c (syms_of_charset): Remove unused var p.
13500 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
13501 byte/char counts.
13502
13503 * casetab.c (set_case_table): Remove unused var.
13504
13505 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
13506 unused vars.
13507
135082008-02-01 Dave Love <fx@gnu.org>
13509
13510 * xterm.c (x_bitmap_mask): Declare.
13511
135122008-02-01 Dave Love <fx@gnu.org>
13513
13514 * xterm.c (x_term_init): Fix type error.
13515
13516 * lisp.h: Add Funibyte_char_to_multibyte.
13517
13518 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
13519 (Fset_coding_system_priority): Doc fix.
13520
13521 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
13522
13523 * indent.c (check_composition): Make start and end EMACS_INT.
13524
13525 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
13526
13527 * xdisp.c (handle_composition_prop, check_point_in_composition):
13528 Make buffer positions EMACS_INT.
13529
13530 * composite.c (find_composition, run_composition_function)
13531 (update_compositions, Ffind_composition_internal): Make buffer
13532 positions EMACS_INT.
13533
13534 * composite.h (find_composition, update_compositions): Make
13535 position args EMACS_INT.
13536
13537 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
13538
13539 * intervals.c (get_property_and_range):
13540 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
13541
13542 * unexalpha.c: Don't include varargs.h.
13543
135442008-02-01 Dave Love <fx@gnu.org>
13545
13546 * coding.h (ENCODE_UTF_8): New.
13547
13548 * Makefile.in (gtkutil.o): Depend on coding.h.
13549
13550 * coding.c (Fset_coding_system_priority): Doc fix.
13551
135522008-02-01 Kenichi Handa <handa@m17n.org>
13553
13554 * fileio.c (Finsert_file_contents): Call setup_coding_system in
13555 the case of auto saving.
13556
135572008-02-01 Andreas Schwab <schwab@suse.de>
13558
13559 * chartab.c (map_char_table, map_char_table_for_charset): Protect
13560 `range' from GC.
13561
135622008-02-01 Kenichi Handa <handa@m17n.org>
13563
13564 * coding.c (decode_coding_sjis): Check bytes more rigidly.
13565
135662008-02-01 Kenichi Handa <handa@m17n.org>
13567
13568 * fileio.c (choose_write_coding_system): Return a decided coding system.
13569 (Fwrite_region): Set Vlast_coding_system_used to the return value
13570 of choose_write_coding_system.
13571
135722008-02-01 Kenichi Handa <handa@m17n.org>
13573
13574 * charset.c (Fset_charset_priority): Pay attention to duplicated
13575 arguments.
13576
13577 * coding.c (QCcategory): New variable.
13578 (syms_of_coding): Defsym it. Set all elements of
13579 Vcoding_category_table and their symbol values.
13580 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
13581 coding-category-XXX, and coding-category-list.
13582 (Fdefine_coding_system_internal): Add category in the plist.
13583
135842008-02-01 Kenichi Handa <handa@m17n.org>
13585
13586 * callproc.c (Fcall_process): Handle carryover correctly.
13587
13588 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
13589 (raw_text_coding_system): Check NILP (coding_system).
13590 (coding_inherit_eol_type): Check NILP (coding_system) and
13591 NILP (parent).
13592 (consume_chars): Fix for the case of raw-text.
13593
13594 * process.c (read_process_output): Handle carryover correctly.
13595
135962008-02-01 Dave Love <fx@gnu.org>
13597
13598 * regex.c (re_search_2): Fix last change.
13599
136002008-02-01 Kenichi Handa <handa@m17n.org>
13601
13602 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
13603 target_multibyte. Even in a unibyte case, return a converted
13604 multibyte char.
13605 (GET_CHAR_AFTER): New macro.
13606 (PATFETCH): Translate via multibyte char.
13607 (HANDLE_UNIBYTE_RANGE): Delete this macro.
13608 (SETUP_MULTIBYTE_RANGE): New macro.
13609 (regex_compile): Setup compiled code so that its multibyteness
13610 matches that of a target. Fix the handling of "[X-YZ]" using
13611 SETUP_MULTIBYTE_RANGE.
13612 (analyse_first) <charset>: For filling fastmap for all multibyte
13613 characters, don't check by BASE_LEADING_CODE_P.
13614 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
13615 the same as RE_MULTIBYTE_P (bufp) now.
13616 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
13617 (TARGET_CHAR_AND_LENGTH): Delete this macro.
13618 (TRANSLATE_VIA_MULTIBYTE): New macro.
13619 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
13620 It is the same as RE_MULTIBYTE_P (bufp) now.
13621 <exactn>: Translate via multibyte.
13622 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
13623 translate it.
13624 <charset, charset_not>: Fetch a character by
13625 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
13626 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
13627 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
13628 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
13629 by GET_CHAR_AFTER.
13630 (bcmp_translate): Likewise.
13631
13632 * search.c (compile_pattern): Check the member target_multibyte,
13633 not the member multibyte of buf.
13634
13635 * lread.c (read1): While reading a string, set force_singlebyte
13636 and force_multibyte correctly.
13637
13638 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
13639 up of unibyte_to_multibyte_table.
13640
136412008-02-01 Kenichi Handa <handa@m17n.org>
13642
13643 * coding.c (setup_coding_system): If coding has
13644 post-read-conversion or pre-write-conversion, set
13645 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
13646 respectively.
13647 (decode_coding_gap): Run post-read-conversion if any.
13648
13649 * fileio.c (Finsert_file_contents): Even if we read into a
13650 unibyte buffer, check if we must decode the result or not.
13651
136522008-02-01 Kenichi Handa <handa@m17n.org>
13653
13654 * coding.c (make_conversion_work_buffer): Change the work buffer
13655 name to the same one as that of Emacs 21.
13656
136572008-02-01 Kenichi Handa <handa@m17n.org>
13658
13659 * coding.h (make_conversion_work_buffer): Adjust prototype.
13660 (code_conversion_restore): Don't extern it.
13661
13662 * coding.c (detected_mask): Delete unused variable.
13663 (decode_coding_iso_2022): Pay attention to the byte sequence of
13664 CTEXT extended segment, and retain those bytes as is.
13665 (decode_coding_ccl): Delete unused variable `valids'.
13666 (setup_coding_system): Delete unused variable `category'.
13667 (consume_chars): Delete unused variable `category'. Make it work
13668 for non-multibyte case.
13669 (make_conversion_work_buffer): Change argument.
13670 (saved_coding): Delete unused variable.
13671 (code_conversion_restore): Don't check saved_coding->destination.
13672 (code_conversion_save): New function.
13673 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
13674 instead of record_unwind_protect.
13675 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
13676 (detect_coding_system): Delete unused variable `mask'.
13677 (Fdefine_coding_system_internal): Delete unused variable id.
13678
13679 * fileio.c (kill_workbuf_unwind): New function.
13680 (Finsert_file_contents): On replacing, call
13681 make_conversion_work_buffer with correct args, and call
13682 record_unwind_protect with the first arg kill_workbuf_unwind.
13683
13684 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
13685
136862008-02-01 Kenichi Handa <handa@m17n.org>
13687
13688 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
13689 (fontset_add): Fix for the case that TO is less than TO1.
13690 (Ffontset_info): Don't use fallback fontset on checking the
13691 default fontset.
13692 (dump_fontset): New function for debugging.
13693
13694 * coding.c (Fdefine_coding_system_internal): Fix for the case that
13695 coding_type is Qcharset.
13696
136972008-02-01 Kenichi Handa <handa@m17n.org>
13698
13699 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
13700 (map_char_table): Don't inherit the value from the parent on
13701 initializing VAL. Adjust for the above change.
13702
137032008-02-01 Kenichi Handa <handa@m17n.org>
13704
13705 * coding.c (Qsignature, Qendian): Delete these variables.
13706 (syms_of_coding): Don't initialize them.
13707 (CATEGORY_MASK_UTF_16_AUTO): New macro.
13708 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
13709 detect_info->found.
13710 (decode_coding_utf_16): Don't detect BOM here.
13711 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
13712 is NOT utf_16_without_bom.
13713 (setup_coding_system): For a coding system of type utf-16, check
13714 if the attribute :endian is Qbig or not (not nil or not), and set
13715 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
13716 (detect_coding): If coding type is utf-16 and BOM detection is
13717 required, detect it.
13718 (Fdefine_coding_system_internal): For a coding system of type
13719 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
13720
137212008-02-01 Kenichi Handa <handa@m17n.org>
13722
13723 * coding.c (coding_set_source): Fix for the case that the current
13724 buffer is different from coding->src_object.
13725 (decode_coding_object): Don't use the conversion work buffer if
13726 DST_OBJECT is a buffer.
13727
137282008-02-01 Dave Love <fx@gnu.org>
13729
13730 * lread.c (read_emacs_mule_char) [len==2]: Index
13731 emacs_mule_charset correctly.
13732
137332008-02-01 Dave Love <fx@gnu.org>
13734
13735 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
13736 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
13737 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
13738 treated specially.)
13739 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
13740 (detected_mask): Remove Big5 bits.
13741
137422008-02-01 Kenichi Handa <handa@m17n.org>
13743
13744 The following changes are to make the font rescaling facility
13745 compatible with Emacs 21.
13746
13747 * xfaces.c (Vface_font_rescale_alist): Rename from
13748 Vface_resizing_fonts.
13749 (struct font_name): Rename member resizing_ratio to rescale_ratio.
13750 (font_rescale_ratio): Rename from font_resizing_ratio.
13751 (split_font_name): Set font->rescale_ratio.
13752 (better_font_p): Pay attention to font->rescale_ratio.
13753 (build_scalable_font_name): Likewise. Change RESX, and RESY
13754 fields.
13755 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
13756
137572008-02-01 Kenichi Handa <handa@m17n.org>
13758
13759 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
13760 (Qutf_16_le): Remove these variables.
13761 (syms_of_coding): Don't DEFSYM them.
13762 (decode_coding_utf_16): Fix handling of BOM.
13763 (encode_coding_utf_16): Fix handling of BOM.
13764
137652008-02-01 Kenichi Handa <handa@m17n.org>
13766
13767 * fileio.c (Finsert_file_contents): On replacing, before decoding
13768 the file into the work buffer, set point of the work buffer to the end.
13769
137702008-02-01 Dave Love <fx@gnu.org>
13771
13772 * coding.c (Fcheck_coding_systems_region): Fix type errors.
13773
137742008-02-01 Dave Love <fx@gnu.org>
13775
13776 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
13777 and fix C types.
13778
137792008-02-01 Kenichi Handa <handa@m17n.org>
13780
13781 * xdisp.c (SKIP_GLYPHS): New macro.
13782 (set_cursor_from_row): Pay attention to string display properties.
13783
13784 * category.c (copy_category_entry): Fix for the case that RANGE
13785 is an integer.
13786
13787 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
13788
13789 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
13790
137912008-02-01 Kenichi Handa <handa@m17n.org>
13792
13793 * charset.c (Fcharset_id_internal): New function.
13794 (syms_of_charset): Defsubr it.
13795
13796 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
13797 with the last arg charset_list acquired from coding.
13798 (Fdefine_coding_system_internal): For ccl-based coding system, fix
13799 the attribute coding_attr_ccl_valids.
13800
13801 * coding.h (enum define_coding_ccl_arg_index): Set the first
13802 member coding_arg_ccl_decoder to coding_arg_max.
13803
13804 * ccl.h (ccl_driver): Adjust prototype.
13805
13806 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
13807 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 13808 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
13809 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
13810 last arg Qnil.
13811
138122008-02-01 Kenichi Handa <handa@m17n.org>
13813
13814 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
13815 call encode_char.
13816
13817 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
13818
138192008-02-01 Dave Love <fx@gnu.org>
13820
13821 * composite.c (syms_of_composite): Make composition_hash_table weak.
13822
138232008-02-01 Kenichi Handa <handa@m17n.org>
13824
13825 * dispextern.h (check_face_attributes, generate_ascii_font_name)
13826 (font_name_registry): Don't extern them.
13827 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
13828
13829 * fontset.h (Qfontset): Don't extern it.
13830 (new_fontset_from_font_name): Extern it.
13831
13832 * fontset.c: Give 8 extra slots to fontset objects.
13833 (Qfontset_info): New variable.
13834 (syms_of_fontset): Defsym it.
13835 (FONTSET_FALLBACK): New macro.
13836 (fontset_face): Try also the default fontset.
13837 (make_fontset): Realize a fallback fontset from the default fontset.
13838 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
13839 using split_font_name_into_vector and build_font_name_from_vector.
13840 (Fset_fontset_font): Access the elements of font_spec by enum
13841 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
13842 name by using split_font_name_into_vector.
13843 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
13844 generate a proper font name from the fontset name. Update
13845 Vfontset_alias_alist.
13846 (n_auto_fontsets): New variable.
13847 (new_fontset_from_font_name): New function.
13848 (Ffont_info): Store the information about fonts generated from the
13849 default fontset in the first extra slot of the returned char-table.
13850
13851 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
13852 (font_name_registry): Delete function.
13853 (split_font_name_into_vector): New function.
13854 (build_font_name_from_vector): New function.
13855 (font_list): The argument REGISTRY is now a list of registry names.
13856 (choose_face_font): If we are choosing an ASCII font, and ATTRS
13857 specifies an explicit font name, return the name as is. Make a
13858 list of registy names.
13859
13860 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
13861 of x_new_fontset.
13862 (Fx_create_frame): Don't call x_new_fontset here. Just use
13863 x_list_fonts to check the existence of fonts.
13864
13865 * xterm.h (x_new_fontset): Adjust prototype.
13866
13867 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
13868 string. Use new_fontset_from_font_name to create a fontset from a
13869 font name.
13870
138712008-02-01 Kenichi Handa <handa@m17n.org>
13872
13873 * syntax.c (Vfind_word_boundary_function_table): New name for
13874 Vnext_word_boundary_function_table.
13875 (find-word-boundary-function-table): New name for
13876 next-word-boundary-function-table.
13877
138782008-02-01 Dave Love <fx@gnu.org>
13879
13880 * Makefile.in: Fix some dependencies.
13881
13882 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
13883 set it to nil before returning.
13884
13885 * composite.c (update_compositions): Fix type error.
13886
13887 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
13888
138892008-02-01 Kenichi Handa <handa@m17n.org>
13890
13891 * xterm.c (x_new_font): Optimize for the case that the font is
13892 already set for the frame.
13893
138942008-02-01 Kenichi Handa <handa@m17n.org>
13895
13896 * chartab.c (char_table_ascii): Check if the char table contents
13897 is sub-char-table or not.
13898 (char_table_set, char_table_set_range): Fix argument to
13899 char_table_ascii.
13900
13901 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
13902 (detect_coding_utf_8, detect_coding_utf_16)
13903 (detect_coding_emacs_mule, detect_coding_iso_2022)
13904 (detect_coding_sjis, detect_coding_big5)
13905 (detect_coding_ccl, detect_coding_charset): Change argument MASK
13906 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
13907 sequence is valid in this coding system. Change callers.
13908 (MAX_ANNOTATION_LENGTH): New macro.
13909 (ADD_ANNOTATION_DATA): New macro.
13910 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
13911 ADD_ANNOTATION_DATA. Change the format of annotation data.
13912 (ADD_CHARSET_DATA): New macro.
13913 (emacs_mule_char): New argument ID. Change callers.
13914 (decode_coding_emacs_mule, decode_coding_iso_2022)
13915 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
13916 Produce charset annotation data in coding->charbuf.
13917 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
13918 to charset annotation data in coding->charbuf.
13919 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
13920 coding->common_flags if the coding system is iso-2022 based and
13921 uses designation.
13922 (produce_composition): Adjust for the new annotation data format.
13923 (produce_charset): New function.
13924 (produce_annotation): Handle charset annotation.
13925 (handle_composition_annotation, handle_charset_annotation): New
13926 functions.
13927 (consume_chars): Handle charset annotation. Utilize the above two
13928 functions.
13929 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
13930 buffer, get the deleted text as a string and set
13931 coding->src_object to that string.
13932 (detect_coding, detect_coding_system): Use the new struct
13933 coding_detection_info.
13934
13935 * coding.h (struct coding_detection_info): New structure.
13936 (struct coding_system): Adjust prototype of the member `detector'.
13937 (CODING_ANNOTATE_CHARSET_MASK): New macro.
13938
139392008-02-01 Kenichi Handa <handa@m17n.org>
13940
13941 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
13942
139432008-02-01 Dave Love <fx@gnu.org>
13944
13945 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
13946 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
13947 to new local and nullify apropos_accumulate before returning.
13948 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
13949
139502008-02-01 Kenichi Handa <handa@m17n.org>
13951
13952 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
13953 correctly.
e3eea1fc 13954
aac0c6e3
MR
139552008-02-01 Dave Love <fx@gnu.org>
13956
13957 * fns.c (Flanginfo): Call synchronize_system_time_locale.
13958
139592008-02-01 Kenichi Handa <handa@m17n.org>
13960
13961 The following changes are to make character composition happen
13962 automatically on displaying.
13963
13964 * Makefile.in (lisp, shortlisp): Add composite.elc.
13965
13966 * composite.h (Qauto_composed, Vauto_composition_function)
13967 (Qauto_composition_function): Extern them.
13968
13969 * composite.c (Vcomposition_function_table)
13970 (Qcomposition_function_table): Delete variables.
13971 (Qauto_composed, Vauto_composition_function)
13972 (Qauto_composition_function): New variables.
13973 (run_composition_function): Don't call
13974 compose-chars-after-function.
13975 (update_compositions): Clear `auto-composed' text property.
13976 (compose_chars_in_text): Delete this function.
13977 (syms_of_composite): Staticpro Qauto_composed and
13978 Qauto_composition_function. Declare Vauto_composition_function as
13979 a Lisp variable.
13980
13981 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
13982
13983 * xdisp.c (it_props): Add an entry for Qauto_composed.
13984 (handle_auto_composed_prop): New function.
13985
13986 * xselect.c (selection_data_to_lisp_data): Don't call
13987 compose_chars_in_text.
13988
139892008-02-01 Dave Love <fx@gnu.org>
13990
13991 * keyboard.c (read_char): Modify checking around use of
13992 Vkeyboard_translate_table.
13993
13994 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
13995 and fix C types.
13996
139972008-02-01 Kenichi Handa <handa@m17n.org>
13998
13999 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
14000 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14001 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
14002 the case that the last byte is '\r' correctly.
14003 (decode_coding): Flush out the unprocessed data correctly.
14004 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
14005
140062008-02-01 Dave Love <fx@gnu.org>
14007
14008 * xterm.c (XTread_socket): Fix changes for defined keysyms.
14009 Add XK_ISO... case.
14010 (xaw_scroll_callback): Revert last change.
14011
140122008-02-01 Kenichi Handa <handa@m17n.org>
14013
14014 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
14015
140162008-02-01 Kenichi Handa <handa@m17n.org>
14017
14018 * xfaces.c (Vface_resizing_fonts): New variable.
14019 (struct font_name): New member `resizing_ratio'.
14020 (font_resizing_ratio): New function.
14021 (split_font_name): Set font->resizing_ratio.
14022 (better_font_p): Pay attention to font->resizing_ratio.
14023 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
14024 RESX, and RESY fields.
14025 (try_alternative_families): Try scalable fonts if
14026 Vscalable_fonts_allowed is not Qt.
14027 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
14028
140292008-02-01 Dave Love <fx@gnu.org>
14030
14031 * xterm.c (xaw_scroll_callback): Cast correctly.
14032
140332008-02-01 Dave Love <fx@gnu.org>
14034
14035 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
14036 (lispy_kana_keys): Comment out.
14037 (make_lispy_event) [XK_kana_A]: Comment out.
14038
14039 * xterm.c (xaw_scroll_callback): Cast call_data.
14040 (XTread_socket): Deal with ASCII keysyms.
14041 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
14042
140432008-02-01 Dave Love <fx@gnu.org>
14044
14045 * xterm.c (Vx_keysym_table): New.
14046 (syms_of_xterm): Initialize it.
14047 (XTread_socket): Use it.
14048 From head: Eliminate incorrect optimization that tried to avoid
14049 decoding the output of X*LookupString.
14050 (x_get_font_repertory): Delete charset declaration.
14051
140522008-02-01 Kenichi Handa <handa@m17n.org>
14053
14054 * coding.c (detect_coding_charset): If only ASCII bytes are found,
14055 return 0.
14056 (Fdefine_coding_system_internal): Setup
14057 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
14058
140592008-02-01 Dave Love <fx@gnu.org>
14060
14061 * coding.c (Fcheck_coding_system): Doc fix.
14062
14063 * editfns.c (Finsert_byte): Return a proper value.
14064
140652008-02-01 Kenichi Handa <handa@m17n.org>
14066
14067 * coding.c (decode_coding): Fix args to translate_chars. Pay
14068 attention to Vstandard_translation_table_for_decode.
14069 (encode_coding): Fix args to translate_chars. Pay attention to
14070 Vstandard_translation_table_for_encode.
14071
14072 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
14073 SINGLE_BYTE_CHAR_P.
14074
14075 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
14076 not by SINGLE_BYTE_CHAR_P.
14077
14078 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
14079 SINGLE_BYTE_CHAR_P.
14080
14081 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
14082 SINGLE_BYTE_CHAR_P.
14083
14084 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
14085 by SINGLE_BYTE_CHAR_P.
14086
14087 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
14088 SINGLE_BYTE_CHAR_P.
14089
140902008-02-01 Dave Love <fx@gnu.org>
14091
14092 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
14093
140942008-02-01 Dave Love <fx@gnu.org>
14095
14096 * fns.c (Flanginfo): Fix typo.
14097
14098 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
14099
141002008-02-01 Kenichi Handa <handa@m17n.org>
14101
14102 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
14103 (detect_coding_emacs_mule, detect_coding_iso_2022)
14104 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
14105 incomplete byte sequence. Don't update *mask when correctly detected.
14106 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
14107 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
14108 (detect_coding, detect_coding_system): Adjust for the changes above.
14109
141102008-02-01 Kenichi Handa <handa@m17n.org>
14111
14112 * character.c (char_string): Rename from
14113 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
14114 (string_char): Rename from string_char.
14115
14116 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
14117 if C is greater than MAX_3_BYTE_CHAR.
14118 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
14119 string_char instead of string_char_with_unification.
14120
141212008-02-01 Dave Love <fx@gnu.org>
14122
14123 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
14124
141252008-02-01 Kenichi Handa <handa@m17n.org>
14126
14127 * keymap.c (push_key_description): Pay attention to force_multibyte.
14128
14129 * regex.c (re_search_2): Fix for the case of unibyte buffer.
14130
141312008-02-01 Dave Love <fx@gnu.org>
14132
14133 * charset.c (define_charset_internal): Rename `supprementary'.
14134
14135 * Makefile.in (lisp, shortlisp): Remove latin-N.
14136
141372008-02-01 Dave Love <fx@gnu.org>
14138
14139 * xfns.c (x_window, x_window): Use use_xim.
14140
14141 * xterm.c (use_xim): Initialize.
14142 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
14143 (x_term_init): Maybe set use_xim.
14144
14145 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
14146
141472008-02-01 Kenichi Handa <handa@m17n.org>
14148
14149 * search.c (search_buffer): Fix case-fold-search of multibyte
14150 characters.
14151 (boyer_moore): Rename the last argument to char_high_bits.
14152
141532008-02-01 Kenichi Handa <handa@m17n.org>
14154
14155 * xdisp.c (display_string): Fix for the case of zero width glyph.
14156
14157 * xfns.c (x_set_font): Change the error message of the case that
14158 x_new_fontset returns Qt.
14159
14160 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
14161 (Finternal_set_lisp_face_attribute): Use signal_error for the
14162 error of invalid fontset.
14163
14164 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
14165 fontset, return Qt.
14166
141672008-02-01 Dave Love <fx@gnu.org>
14168
14169 * unexelf.c (unexec): Make .got handling not SGI-specific.
14170
14171 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
14172
14173 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
14174
14175 * keyboard.c (read_key_sequence): Fix type error.
14176
14177 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
14178 type error.
14179
14180 * fontset.c (fontset_add): Return Lisp_Object.
14181
141822008-02-01 Dave Love <fx@gnu.org>
14183
14184 * charset.h (charset_ordered_list_tick): Declare extern.
14185
141862008-02-01 Kenichi Handa <handa@m17n.org>
14187
14188 The following changes (and some of 2008-02-01 changes of mine) are
14189 for handling syntax, category, and case conversion for unibyte
14190 characters by converting them to multibyte on the fly. With these
14191 changes, we don't have to setup syntax and case tables for unibyte
14192 characters in each language environment.
14193
14194 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
14195 multibyte if necessary.
14196
14197 * bytecode.c (Fbyte_code): Likewise.
14198
14199 * character.h (LEADING_CODE_LATIN_1_MIN)
14200 (LEADING_CODE_LATIN_1_MAX): New macros.
14201 (unibyte_to_multibyte_table): Extern it.
14202 (unibyte_char_to_multibyte): New macro.
14203 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
14204 (CHAR_LEADING_CODE): New macro.
14205 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
14206
14207 * character.c (unibyte_to_multibyte_table): New variable.
14208 (unibyte_char_to_multibyte): Move to character.h and define as macro.
14209 (multibyte_char_to_unibyte): If C is an eight-bit character,
14210 convert it to the corresponding byte value.
14211
14212 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
14213 not 1, signals an error. Update the elements of
14214 unibyte_to_multibyte_table.
14215 (init_charset_once): Initialize unibyte_to_multibyte_table.
14216 (syms_of_charset): Define the charset `iso-8859-1'.
14217
14218 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
14219 as is without converting it to unibyte. In a unibyte buffer,
14220 convert C to multibyte before checking the syntax.
14221
14222 * lisp.h (unibyte_char_to_multibyte): Delete extern.
14223
14224 * minibuf.c (Fminibuffer_complete_word): Use the macro
14225 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
14226
14227 * regex.h (struct re_pattern_buffer): New member target_multibyte.
14228
14229 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
14230 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
14231 that is zero, convert an eight-bit char to multibyte.
14232 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
14233 non-emacs case.
14234 (PATFETCH): Convert an eight-bit char to multibyte.
14235 (HANDLE_UNIBYTE_RANGE): New macro.
14236 (regex_compile): Setup the compiled pattern for multibyte chars
14237 even if the given regex string is unibyte. Use PATFETCH_RAW
14238 instead of PATFETCH in many places. To handle `charset'
14239 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
14240 only for ASCII chars.
14241 (analyse_first) <exactn>: Simplify because the compiled pattern
14242 is multibyte.
14243 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
14244 <charset>: Use CHAR_LEADING_CODE to get leading codes.
14245 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
14246 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
14247 multibyte always 1.
14248 (re_search_2): In emacs, set the locale variable multibyte to 1,
14249 otherwise to 0. New local variable target_multibyte. Check it
14250 to decide the multibyteness of STR1 and STR2. If
14251 target_multibyte is zero, convert unibyte chars to multibyte
14252 before translating and checking fastmap.
14253 (TARGET_CHAR_AND_LENGTH): New macro.
14254 (re_match_2_internal): In emacs, set the locale variable multibyte
14255 to 1, otherwise to 0. New local variable target_multibyte. Check
14256 it to decide the multibyteness of STR1 and STR2. Use
14257 TARGET_CHAR_AND_LENGTH to fetch a character from D.
14258 <charset, charset_not>: If multibyte is nonzero, check fastmap
14259 only for ASCII chars. Call bcmp_translate with
14260 target_multibyte, not with multibyte.
14261 <begline>: Declare the local variable C as `unsigned'.
14262 (bcmp_translate): Change the last arg name to target_multibyte.
14263
14264 * search.c (compile_pattern_1): Don't adjust the multibyteness of
14265 the regexp pattern and the matching target. Set cp->buf.multibyte
14266 to the multibyteness of the regexp pattern. Set
14267 cp->but.target_multibyte to the multibyteness of the matching target.
14268 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
14269 FETCH_STRING_CHAR_ADVANCE.
14270 (Freplace_match): Convert unibyte chars to multibyte.
14271
14272 * syntax.c (char_quoted, back_comment, scan_words)
14273 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
14274 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
14275 unibyte chars to multibyte.
14276 (skip_chars): Delete the arg syntaxp, and move the code for
14277 handling syntaxes to skip_syntaxes. Change callers.
14278 Fix the case that the multibyteness of STRING and the current
14279 buffer doesn't match.
14280 (skip_syntaxes): New function.
14281 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
14282 SINGLE_BYTE_CHAR_P.
14283
142842008-02-01 Kenichi Handa <handa@m17n.org>
14285
14286 * xfaces.c (QCfontset): New variable.
14287 (LFACE_FONTSET): New macro.
14288 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
14289 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
14290 (Finternal_set_lisp_face_attribute)
14291 (Finternal_get_lisp_face_attribute): Handle QCfontset.
14292 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
14293 check also LFACE_FONTSET_INDEX.
14294 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
14295 attrs[LFACE_FONT_INDEX].
14296 (syms_of_xfaces): Intern and staticpro QCfontset.
14297
14298 * dispextern.h (enum lface_attribute_index): New member
14299 LFACE_FONTSET_INDEX.
14300
14301 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
14302
143032008-02-01 Kenichi Handa <handa@m17n.org>
14304
14305 * coding.c (coding_set_destination): Fix coding->destination for
14306 the case converting a region.
14307 (encode_coding_utf_8): Encode eight-bit chars as single byte.
14308 (encode_coding_object): Fix coding->dst_pos and
14309 coding->dst_pos_byte for the case converting a region.
14310
14311 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
14312
14313 * character.h (BYTE8_STRING): New macro.
14314
14315 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
14316
143172008-02-01 Kenichi Handa <handa@m17n.org>
14318
14319 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
14320 characters by octal form.
14321
14322 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
14323
14324 * buffer.h (_fetch_multibyte_char_len): Delete extern.
14325 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
14326 _fetch_multibyte_char_len.
14327 (FETCH_CHAR_AS_MULTIBYTE): New macro.
14328
14329 * casetab.c (set_canon, set_identity, shuffle): Simplify.
14330
14331 * casefiddle.c (casify_object): Simplify. Handle the case that
14332 the case conversion change the byte length.
14333 (casify_region): Likewise.
14334
14335 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
14336
14337 * character.c (_fetch_multibyte_char_len): Delete this variable.
14338 (syms_of_character): Setup Vprintable_chars.
14339
14340 * editfns.c (Fchar_equal): Fix for the unibyte case.
14341 (Finsert_byte): New function.
14342 (syms_of_editfns): Defsubr it.
14343
14344 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
14345 of direct code 0x3ffff.
14346
14347 * search.c (Freplace_match): Fix for the unibyte case.
14348
143492008-02-01 Kenichi Handa <handa@m17n.org>
14350
14351 * lread.c (safe_to_load_p): Fix the logic.
14352
14353 * syntax.c (scan_words): Don't treat characters belonging to
14354 different scripts as constituting a word.
14355
14356 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14357
14358 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
14359
14360 * emacs.c (main): In the case of --unibyte, instead of aborting on
14361 finding non-empty buffer, make it unibyte.
14362
143632008-02-01 Kenichi Handa <handa@m17n.org>
14364
14365 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
14366 to create a fontset.
14367
143682008-02-01 Dave Love <fx@gnu.org>
14369
14370 * character.c (Funibyte_char_to_multibyte): Doc fix.
14371
14372 * xfns.c [HAVE_STDLIB_H]: Fix last change.
14373
143742008-02-01 Kenichi Handa <handa@m17n.org>
14375
14376 * fontset.c (fontset_add): Make the type `int'.
14377 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
14378
14379 * character.c (unibyte_char_to_multibyte)
14380 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
14381 charset_unibyte, not charset_primary.
14382
14383 * charset.h (charset_unibyte): Extern it instead of charset_primary.
14384
14385 * charset.c (charset_unibyte): Rename from charset_primary.
14386 (Funibyte_charset): Rename from Fprimary_charset.
14387 (Fset_unibyte_charset): Rename from Fset_primary_charset.
14388 (syms_of_charset): Adjust for the above changes.
14389
14390 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
14391 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
14392 it->multibyte_p is zero.
14393
14394 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
14395 Delete extern.
14396
143972008-02-01 Kenichi Handa <handa@m17n.org>
14398
14399 * coding.c (Fdefine_coding_system_internal): Fix category setting
14400 for a coding system of type iso-2022.
14401
144022008-02-01 Kenichi Handa <handa@m17n.org>
14403
14404 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
14405
144062008-02-01 Kenichi Handa <handa@m17n.org>
14407
14408 * syntax.c (Vnext_word_boundary_function_table): New variable.
14409 (next-word-boundary-function-table): Declare it as a Lisp variable
14410 in syms_of_syntax.
14411 (scan_words): Call functions in Vnext_word_boundary_function_table
14412 if any.
14413
14414 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
14415
14416 * fontset.c (fs_load_font): If fontp->charset is not negative,
14417 return fontp without setting its members.
14418
144192008-02-01 Dave Love <fx@gnu.org>
14420
14421 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
14422
14423 * m/sparc.h (HAVE_ALLOCA): Delete.
14424
14425 * s/irix6-5.h: Don't include strings.h.
14426 (bcopy, bzero, bcmp): Don't undef.
14427
14428 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
14429
14430 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
14431 (TIOCSIGSEND): Don't test IRIX6.
14432 (bcopy, bzero, bcmp): Define conditionally.
14433
144342008-02-01 Kenichi Handa <handa@m17n.org>
14435
14436 * buffer.c (Qas, Qmake, Qto): New variables.
14437 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
14438 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
14439
14440 * callproc.c (Fcall_process): Don't call insert_1_both directly if
14441 we are inserting a process output into a multibyte buffer.
14442
14443 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
14444 multibyte_char_to_unibyte.
14445
14446 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
14447 by the primary charset, make it eight-bit char.
14448 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
14449
14450 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
14451 (charset_8_bit__control, charset_8_bit_graphic)
14452 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
14453 (define_charset_internal): New function.
14454 (syms_of_charset): Call define_charset_internal for pre-defined
14455 charsets.
14456
14457 * charset.h (charset_8_bit): Extern it.
14458
14459 * coding.c (make_conversion_work_buffer): Adjust for the change
14460 of Fset_buffer_multibyte.
14461 (encode_coding_raw_text): Increment p0 in the loop.
14462
14463 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
14464
14465 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
14466 for the change of Fset_buffer_multibyte.
14467
14468 * fns.c (Fstring_to_multibyte): New function.
14469 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
14470
144712008-02-01 Dave Love <fx@gnu.org>
14472
14473 * xfns.c (x_put_x_image): Declare args.
14474
14475 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
14476 (try_font_list): Declare an arg.
14477
14478 * xdisp.c (message2_nolog, set_message): Declare an arg.
14479
14480 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
14481
14482 * syntax.c (scan_sexps_forward): Declare an arg.
14483
14484 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
14485 Declare an arg.
14486
14487 * lisp.h (Fnew_fontset): Declare.
14488
14489 * keymap.c (push_key_description): Call CHARACTERP correctly.
14490
14491 * fontset.c (fontset_add): Declare args. Call make_number correctly.
14492 (face_for_char): Delete unused vars.
14493 (Fset_fontset_font): Doc fix. Delete unused vars.
14494
14495 * doc.c (Fsubstitute_command_keys): Delete unused vars.
14496
14497 * composite.c (update_compositions): Declare arg.
14498
14499 * cm.c (calccost, cmgoto): Declare args.
14500
14501 * charset.c: Remove `emacs' conditional. Doc fixes.
14502 (map_char_table_for_charset): Declare.
14503
14504 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
14505
14506 * ccl.c: Remove `emacs' conditional.
14507
145082008-02-01 Kenichi Handa <handa@m17n.org>
14509
14510 The following changes are to allow specifying multiple font
14511 patterns for a character range (specified by script or charset).
14512
14513 * Makefile.in (abbrev.o): Depend on syntax.h.
14514 (xfaces.o): Depend on charset.h.
14515
14516 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
14517 SINGLE_BYTE_CHAR_P.
14518
14519 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
14520
14521 * character.h (Vchar_script_table): Extern it.
14522
14523 * character.c (Vscript_alist): Delete.
14524 (Vchar_script_table, Qchar_script_table): New variable.
14525 (syms_of_character): Declare Vchar_script_table as a lisp variable
14526 and initialize it.
14527
14528 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
14529 have property char-table-extra-slots, make no extra slot.
14530
14531 * dispextern.h (struct face): Delete member `charset'.
14532 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
14533 SINGLE_BYTE_CHAR_P.
14534 (choose_face_font, lookup_non_ascii_face, font_name_registry):
14535 Add prototypes.
14536 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
14537 (generate_ascii_font_name): Rename from generate_ascii_font.
14538
14539 * fontset.h (get_font_repertory_func): New prototype.
14540 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
14541 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
14542
14543 * fontset.c (Qprepend, Qappend): New variables.
14544 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
14545 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
14546 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
14547 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
14548 (fontset_ref_and_range, fontset_add, reorder_font_vector)
14549 (load_font_get_repertory): New functions.
14550 (fontset_set): Delete.
14551 (fontset_face): New arg FACE. Return face ID, not face.
14552 Complete re-write to handle new fontset structure. Change caller.
14553 (free_face_fontset): Use ASET istead of AREF (X) = Y.
14554 (face_for_char): Don't call lookup_face.
14555 (make_fontset_for_ascii_face): New arg FACE.
14556 (fs_load_font): New arg CHARSET_ID. Don't check
14557 Vfont_encoding_alist here.
14558 (find_font_encoding): New function.
14559 (list_fontsets): Use STRINGP, not ! NILP.
14560 (accumulate_script_ranges): New function.
14561 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
14562 re-written to handle new fontset structure.
14563 (Ffontset_font): Return a copy of element.
14564 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
14565 docstring of font-encoding-alist.
14566
14567 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
14568 (Fset_fotset_font): Fix arguments to 5.
14569
14570 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
14571
14572 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
14573 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14574 (highlight_trailing_whitespace): Adjust for the change of
14575 lookup_named_face.
14576
14577 * xfaces.c: Include charset.h.
14578 (load_face_font): Delete argument C. Change caller.
14579 (generate_ascii_font_name): Rename from generate_ascii_font.
14580 (font_name_registry): New function.
14581 (cache_face): Store ascii faces before non-ascii faces in buckets.
14582 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
14583 Lookup only ascii faces.
14584 (lookup_non_ascii_face): New function.
14585 (lookup_named_face): Delete argument C. Change caller.
14586 (lookup_derived_face): Delete argument C. Change caller.
14587 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
14588 a string, just call font_list with it.
14589 (choose_face_font): Delete arguments FACE and C. New arg
14590 FONT_SPEC. Change caller.
14591 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
14592 Change caller.
14593 (realize_non_ascii_face): New function.
14594 (realize_x_face): Call load_face_font here.
14595 (realize_tty_face): Delete argument C. Change caller.
14596 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
14597 get a face ID.
14598 (dump_realized_face): Don't print charset of FACE.
14599
14600 * xfns.c (x_set_font): Always call x_new_fontset and
14601 store_frame_parameter.
14602 (Fx_create_frame): Call x_new_fontset, not x_new_font.
14603 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
14604
14605 * xterm.h (x_get_font_repertory): Extern it.
14606
14607 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
14608 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
14609 it->multibyte_p is zero.
14610 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14611 (x_new_fontset): If FONTSETNAME doesn't match any existing
14612 fontsets, create a new one.
14613 (x_get_font_repertory): New function.
14614
146152008-02-01 Kenichi Handa <handa@m17n.org>
14616
14617 * coding.c (Ffind_coding_systems_region_internal): Detect an
14618 ASCII only string correctly.
14619
14620 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
14621 version is 0.
14622
146232008-02-01 Kenichi Handa <handa@m17n.org>
14624
14625 * lread.c: Include "coding.h".
14626 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
14627 (load_each_byte, unread_char): New variables.
14628 (readchar_backlog): Delete.
14629 (readchar): Return a character unless load_each_byte is nonzero.
14630 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
14631 cons. If unread_char is not -1, simply return it.
14632 (unreadchar): Handle the case that readcharfun is
14633 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
14634 (read_multibyte): Delete.
14635 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
14636 (read_emacs_mule_char): New functions.
14637 (Fload): Even if the file doesn't have the extension ".elc", if
14638 safe_to_load_p returns a positive version number, assume that the
14639 file contains bytecompiled code. If the version is less than 22,
14640 load the file while decoding multibyte sequences by emacs-mule.
14641 (readevalloop): Don't use readchar_backlog.
14642 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
14643 (Fread_from_string): Pay attention to the case that STREAM is a cons.
14644 (read_escape): Delete the arg BYTEREP.
14645 (read1): Set load_each_byte to 1 temporarily while handling
14646 #@NUMBER. Don't call read_multibyte.
14647 (read_vector): Call Fread with a cons. If readcharfun is
14648 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
14649 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
14650 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
14651 and Qload_force_doc_strings.
14652
146532008-02-01 Kenichi Handa <handa@m17n.org>
14654
14655 * xdisp.c (face_before_or_after_it_pos): Call
14656 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
14657
146582008-02-01 Kenichi Handa <handa@m17n.org>
14659
14660 * character.h (TRAILING_CODE_P): New macro.
14661 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
14662 (string_char_with_unification): Fix prototype.
14663 (Vscript_alist): Extern it.
14664
14665 * character.c (Vscript_alist): New variable.
14666 (string_char_with_unification, str_as_unibyte)
14667 (string_escape_byte8): Add `const' to local variables.
14668 (syms_of_character): Declare script-alist as a Lisp variable.
14669
14670 * charset.h (Vcharset_ordered_list): Extern it.
14671 (charset_ordered_list_tick): Extern it.
14672 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
14673 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
14674 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
14675 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
14676 (Funify_charset): Adjust for the change of Funify_charset.
14677
14678 * charset.c (charset_ordered_list_tick): New variable.
14679 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
14680 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
14681 deunify intead of unify a charset.
14682 (string_xstring_p): Add `const' to local variables.
14683 (find_charsets_in_text): Add `const' to arguments and local variables.
14684 (encode_char): Adjust for the change of Funify_charset. Fix
14685 detecting of invalid code.
14686 (Fset_charset_priority): Increment charset_ordered_list_tick.
14687 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
14688 and TO_CODE.
14689
14690 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
14691 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
14692 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
14693 (decode_coding_ccl, consume_chars)
14694 (Ffind_coding_systems_region_internal)
14695 (Fcheck_coding_systems_region): Add `const' to local variables.
14696
14697 * print.c (print_object): Use octal form for printing the
14698 contents of a bool vector.
14699
147002008-02-01 Dave Love <fx@gnu.org>
14701
14702 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
14703 <version == 20>: Refuse to load.
14704
147052008-02-01 Dave Love <fx@gnu.org>
14706
14707 * fns.c: Move coding.h.
14708 (Qcodeset, Qdays, Qmonths): New.
14709 (concat): Use CHARACTERP instead of INTEGERP.
14710 (Flocale_codeset): Delete.
14711 (Flanginfo): New function.
14712 (syms_of_fns): Change accordingly.
14713
14714 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
14715
147162008-02-01 Dave Love <fx@gnu.org>
14717
14718 * casetab.c (init_casetab_once, init_casetab_once): Fix
14719 CHAR_TABLE_SET call.
14720
14721 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
14722
14723 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
14724
14725 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
14726 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
14727 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
14728
14729 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
14730
14731 * coding.c (ENCODE_DESIGNATION, decode_eol)
14732 (make_conversion_work_buffer, code_conversion_restore)
14733 (Fdefine_coding_system_internal): Convert Lisp types.
14734 (code_conversion_restore): Use EQ, not ==.
14735 (Fencode_coding_string): Fix code_convert_string call.
14736
14737 * coding.h (code_convert_region): Fix prototype.
14738
14739 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
14740
14741 * fontset.c (fontset_ref, fontset_set, fs_load_font)
14742 (Ffontset_info): Convert Lisp types.
14743
14744 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
14745
14746 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
14747
14748 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
14749
14750 * chartab.c: Include "...h", not <...h> in some cases.
14751
14752 * callproc.c (Fcall_process): Remove unused variables.
14753
147542008-02-01 Dave Love <fx@gnu.org>
14755
14756 * coding.c (Fset_coding_system_priority): Allow null arg list.
14757
147582008-02-01 Dave Love <fx@gnu.org>
14759
14760 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
14761 (Fself_insert_and_exit): Use CHARACTERP.
14762
14763 * callproc.c (Fcall_process): Remove unused vars.
14764
14765 * xterm.c (XTread_socket): Add extra dead keysyms.
14766
14767 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
14768
14769 * dispextern.h: Remove prototypes for redraw_frame,
14770 redraw_garbaged_frames.
14771
14772 * cmds.c (Fself_insert_command): Use CHARACTERP.
14773
14774 * chartab.c (make_sub_char_table): Remove unused var.
14775 (Fset_char_table_default, Fmap_char_table): Doc fix.
14776
14777 * keymap.c (access_keymap): Remove generic char code.
14778 (push_key_description): Use CHARACTERP.
14779
147802008-02-01 Dave Love <fx@gnu.org>
14781
14782 * charset.c: Doc fixes.
14783 (Funify_charset): Extra checking.
14784
147852008-02-01 Dave Love <fx@gnu.org>
14786
14787 * lread.c: Remove some unused variables.
14788 (safe_to_load_p): If safe, return the magic number version byte.
14789 (Fload): Maybe use load-with-code-conversion.
14790
147912008-02-01 Kenichi Handa <handa@m17n.org>
14792
14793 * category.c (Fmodify_category_entry): Don't modify the contents
14794 of category_set for characters out of the range. Avoid
14795 unnecessary modification.
14796
14797 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
14798 Vchar_unify_table. The default value of the table is now nil.
14799
14800 * character.c (syms_of_character): Setup Vchar_width_table for
14801 eight-bit-control and raw-byte chars.
14802
14803 * charset.h (enum define_charset_arg_index): Delete
14804 charset_arg_parents and add charset_arg_subset and
14805 charset_arg_superset.
14806 (enum charset_attr_index): Delete charset_parents and add
14807 charset_subset and charset_superset.
14808 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
14809 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
14810 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
14811 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
14812 (CHARSET_SUPERSET): New macros.
14813 (charset_work): Extern it.
14814 (ENCODE_CHAR): Use charset_work.
14815 (CHAR_CHARSET_P): Adjust for the change of encoder format.
14816 (map_charset_chars): Extern it.
14817
14818 * charset.c (load_charset_map): Set the default value of encoder
14819 and deunifier char-tables to nil.
14820 (map_charset_chars): Change argument. Change callers. Use
14821 map_char_table_for_charset instead of map_char_table.
14822 (Fmap_charset_chars): New optional args from_code and to_code.
14823 (Fdefine_charset_internal): Adjust for the change of
14824 `define-charset' (:parents -> :subset or :superset).
14825 (charset_work): New variable.
14826 (encode_char, syms_of_charset): Adjust for the change of
14827 Fdefine_charset_internal.
14828 (Ffind_charset_string): Setup the vector `charsets' correctly.
14829
14830 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
14831 the previous change.
14832 (char_table_ref_and_range): Adjust for the above change.
14833 (map_sub_char_table_for_charset): New function.
14834 (map_char_table_for_charset): New function.
14835
14836 * keymap.c (describe_vector): Handle a char-table directly here.
14837 (describe_char_table): Delete.
14838
14839 * lisp.h (map_charset_chars): Delete.
14840
148412008-02-01 Dave Love <fx@gnu.org>
14842
14843 * fns.c (count_combining): Comment out (unused).
14844 (Flocale_codeset): New.
14845 (syms_of_fns): Defsubr it.
14846
14847 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
14848 (size_t): Remove.
14849
148502008-02-01 Dave Love <fx@gnu.org>
14851
14852 * Makefile.in (chartab.o): Depend on charset.h.
14853
148542008-02-01 Kenichi Handa <handa@m17n.org>
14855
14856 * character.c (syms_of_character): Set the default value of
14857 Vprintable_chars to Qnil.
14858
148592008-02-01 Dave Love <fx@gnu.org>
14860
14861 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
14862
148632008-02-01 Kenichi Handa <handa@m17n.org>
14864
14865 * charset.c (load_charset_map): Handle the case that from < to
14866 correctly.
14867
14868 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
14869 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
14870 Pay attention to raw-8-bit chars.
14871
148722008-02-01 Kenichi Handa <handa@m17n.org>
14873
14874 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
14875 It is not bytecompiled now.
14876
14877 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
14878 (charset_jisx0208): New variables.
14879 (Fdefine_charset_internal): Setup them if appropriate.
14880 (init_charset_once): Initialize them to -1.
14881
14882 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
14883 (charset_jisx0208): Extern them.
14884
14885 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
14886 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
14887 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
14888 (setup_iso_safe_charsets): Fix arguments to Fassq.
14889 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
14890 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
14891 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
14892 (encode_coding_iso_2022): Change the 1st arg to
14893 ENCODE_ISO_CHARACTER to a variable.
14894
148952008-02-01 Kenichi Handa <handa@m17n.org>
14896
14897 * charset.h (enum define_charset_arg_index): New enums
14898 charset_arg_min_code and charset_arg_max_code.
14899 (struct charset): New member char_index_offset.
14900
14901 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
14902 Take charset->char_index_offset into account.
14903 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
14904 args[charset_arg_max_code]. Setup charset.char_index_offset.
14905 (syms_of_charset): Fix args to Fdefine_charset_internal.
14906
149072008-02-01 Dave Love <fx@gnu.org>
14908
14909 * coding.c (decode_coding_utf_8): Reject overlong sequences.
14910
149112008-02-01 Dave Love <fx@gnu.org>
14912
14913 * coding.c: Doc fixes.
14914 (Fcoding_system_aliases): Fix return value.
14915 (Qmac): Remove (duplicated) definition.
14916
149172008-02-01 Dave Love <fx@gnu.org>
14918
14919 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
14920 functions.
14921
14922 * character.c (Fstring): Doc fix.
14923
14924 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
14925
14926 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
14927 ids.
14928 (font-encoding-alist): Doc fix.
14929
149302008-02-01 Dave Love <fx@gnu.org>
14931
14932 * term.c (costs_set): Declare static, non-initialized for pcc.
14933 (encode_terminal_code): Remove unused var.
14934
14935 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
14936 for K&R.
14937
14938 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
14939
14940 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
14941 (suffixes): Move out of make_subsidiaries for K&R.
14942
14943 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
14944
14945 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
14946
149472008-02-01 Dave Love <fx@gnu.org>
14948
14949 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
14950
14951 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
14952
149532008-02-01 Yong Lu <lyongu@asia-infonet.com>
14954
14955 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
14956
14957 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
14958
149592008-02-01 Kenichi Handa <handa@m17n.org>
14960
14961 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
14962 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
14963
149642008-02-01 Kenichi Handa <handa@m17n.org>
14965
14966 * coding.c (decode_coding_charset): Adjust for the change of
14967 Fdefine_coding_system_internal.
14968 (Fdefine_coding_system_internal): For a coding system of
14969 `charset' type, store a list of charset IDs in
14970 `charset_attr_charset_valids' element of coding attributes.
14971
149722008-02-01 Kenichi Handa <handa@m17n.org>
14973
14974 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
14975 (emacs_mule_char): New arg src. Delete arg `composition'. Change
14976 caller. Handle 2-byte and 3-byte charsets correctly.
14977 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
14978 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
14979 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
14980 (DECODE_EMACS_MULE_21_COMPOSITION): Call
14981 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
14982 sequence.
14983 (decode_coding_emacs_mule): Handle composition correctly. Rewind
14984 `src' and `consumed_chars' correctly before calling emacs_mule_char.
14985 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
14986 and alt&rule composition.
14987 (decode_coding_iso_2022): Handle composition correctly.
14988 (init_coding_once): Setup emacs_mule_bytes for private charsets.
14989
14990 * charset.c (Fdefine_charset_internal): Fix bug for the case of
14991 re-defining a charset. If the charset has :emacs-mule-id, setup
14992 emacs_mule_bytes.
14993 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
14994
149952008-02-01 Kenichi Handa <handa@m17n.org>
14996
14997 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
14998 (encode_coding_big5, encode_coding_charset): If coding requires safe
14999 encoding, produce a character specified by
15000 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
15001
150022008-02-01 Dave Love <fx@gnu.org>
15003
15004 * xterm.c (XSetIMValues): Declare.
15005
15006 * process.c: Conditionally include sys/wait.h, pty.h.
15007
15008 * print.c (print_object): Fix print format for 64-bit systems.
15009
15010 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
15011
15012 * buffer.c (emacs_strerror): Declare.
15013
15014 * fontset.c (Fclear_face_cache): Declare.
15015 (accumulate_font_info): Comment-out (unused).
15016 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
15017 variables.
15018
15019 * character.h (string_escape_byte8): Declare.
15020
15021 * charset.c (load_charset_map, load_charset_map_from_file): Remove
15022 unused vars.
15023 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
15024 (Fmap_charset_chars): Doc fix.
15025
15026 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
15027 (Fset_coding_system_priority, Fset_coding_system_priority)
15028 (Fdefine_coding_system_internal): Doc fix.
15029
150302008-02-01 Dave Love <fx@gnu.org>
15031
15032 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
15033
150342008-02-01 Kenichi Handa <handa@m17n.org>
15035
15036 * character.c (string_escape_byte8): Make multibyte string with
15037 correct size.
15038
15039 * charset.c (Fmake_char): Delete unnecessary code.
15040
150412008-02-01 Kenichi Handa <handa@m17n.org>
15042
15043 * xfns.c (x_encode_text): Allocate coding.destination here, and
15044 call encode_coding_object with dst_object Qnil.
15045
15046 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
15047 multibyte form correctly.
15048
15049 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
15050 against Vfont_encoding_alist.
15051
15052 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
15053 handling of charset list.
15054 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
15055 (decode_coding_object): Move point to coding->dst_pos before
15056 calling post-read-conversion function.
15057 (encode_coding_object): Give correct arguments to
15058 pre-write-conversion. Ignore the return value of
15059 pre-write-conversion function. Pay attention to the case that
15060 pre-write-conversion changes the current buffer. If dst_object is
15061 Qt, even if coding->src_bytes is zero, allocate at least one byte
15062 to coding->destination.
15063
15064 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
15065
15066 * charset.c (Fmake_char): Make it more backward compatible.
15067 (Fmap_charset_chars): Fix docstring.
15068
150692008-02-01 Dave Love <fx@gnu.org>
15070
15071 * coding.c: Doc fixes.
15072 (Fdefine_coding_system_alias): Use names, not symbols, in
15073 coding-system-alist.
15074
150752008-02-01 Kenichi Handa <handa@m17n.org>
15076
15077 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
15078 of calling free_realized_face.
15079
150802008-02-01 Yong Lu <lyongu@asia-infonet.com>
15081
15082 * charset.c (read_hex): Don't treat SPC as a comment starter.
15083 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
15084 (Fdecode_char): Fix typo.
15085
150862008-02-01 Kenichi Handa <handa@m17n.org>
15087
15088 * charset.h (struct charset): New member `code_space_mask'.
15089
15090 * coding.c (coding_set_source): Delete the local variable beg_byte.
15091 (encode_coding_charset, Fdefine_coding_system_internal):
15092 Delete the local variable charset.
15093 (Fdefine_coding_system_internal): Setup
15094 attrs[coding_attr_charset_valids] correctly.
15095
15096 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
15097 member to check if CODE is valid or not.
15098 (Fdefine_charset_internal): Initialize `code_space_mask' member.
15099 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
15100 is within the range of charset->min_code and carset->max_code.
15101
151022008-02-01 Dave Love <fx@gnu.org>
15103
15104 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
15105
15106 * dispextern.h (generate_ascii_font): Fix return type.
15107
15108 * xfaces.c (generate_ascii_font): Fix arg declaration.
15109
15110 * coding.c (coding_inherit_eol_type)
15111 (Fset_terminal_coding_system_internal)
15112 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
15113
151142008-02-01 Kenichi Handa <handa@m17n.org>
15115
15116 * coding.c (decode_coding_charset, encode_coding_charset): Handle
15117 multiple charsets correctly.
15118
151192008-02-01 Kenichi Handa <handa@m17n.org>
15120
15121 * search.c (boyer_moore): Fix handling of multibyte character
15122 translation.
15123
15124 * xdisp.c (display_mode_element): When the variable `elt' is
15125 changed, update `this' and `lisp_string'.
15126
151272008-02-01 Kenichi Handa <handa@m17n.org>
15128
15129 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
15130
15131 * callproc.c (Fcall_process): Be sure to give the current buffer
15132 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
15133
15134 * charset.c (struct charset_map_entries): New struct.
15135 (load_charset_map): Rename from parse_charset_map. New args
15136 entries and n_entries. Change caller.
15137 (load_charset_map_from_file): Rename from load_charset_map.
15138 Change caller. New arg control_flag. Call load_charset_map at
15139 the tail.
15140 (load_charset_map_from_vector): New function.
15141 (Fdefine_charset_internal): Setup charset.compact_codes_p.
15142 (encode_char): If the charset is compact, change a character index
15143 to a code point.
15144
15145 * coding.c (coding_alloc_by_making_gap): Check the case that the
15146 source and destination are the same correctly.
15147 (decode_coding_raw_text): Set coding->consumed_char and
15148 coding->consumed to 0.
15149 (produce_chars): If coding->chars_at_source is nonzero, update
15150 coding->consumed_char and coding->consumed before calling
15151 alloc_destination.
15152 (Fdefine_coding_system_alias): Register ALIAS in
15153 Vcoding_system_alist.
15154 (syms_of_coding): Define `no-conversion' coding system at the tail.
15155
15156 * fileio.c (Finsert_file_contents): Set coding_system instead of
15157 val. If the current buffer is multibyte, always call
15158 decode_coding_gap.
15159
15160 * xfaces.c (try_font_list): Give higher priority to fontset's
15161 family than face's family.
15162
151632008-02-01 Kenichi Handa <handa@m17n.org>
15164
15165 * callproc.c (Fcall_process): Be sure to give the current buffer
15166 to decode_coding_c_string.
15167
15168 * xfaces.c (try_font_list): Give a family specified in a fontset
15169 higher priority than a family specified in a face.
15170
151712008-02-01 Kenichi Handa <handa@m17n.org>
15172
15173 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
15174 Fix arguments to insert_from_buffer.
15175
15176 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
15177
151782008-02-01 Kenichi Handa <handa@m17n.org>
15179
15180 * coding.c (produce_chars): Set the variable `multibytep' correctly.
15181 (decode_coding_gap): Set coding->dst_multibyte correctly.
15182
151832008-02-01 Kenichi Handa <handa@m17n.org>
15184
15185 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
15186 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
15187 (encode_coding_utf_16): Substitute coding->default_char for
15188 non-Unicode characters.
15189 (decode_coding): Don't call record_insert here.
15190 (setup_coding_system): Initialize `surrogate' of
15191 coding->spec.utf_16 to 0.
15192 (EMIT_ONE_BYTE): Fix for multibyte case.
15193
15194 * insdel.c (insert_from_gap): Call record_insert.
15195
151962008-02-01 Kenichi Handa <handa@m17n.org>
15197
15198 * casefiddle.c (casify_region): Fix multibyte case.
15199
15200 * character.c (c_string_width): Add return type `int'.
15201 (char_string_with_unification): Delete arg ADVANCED.
15202
15203 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
15204 (CHAR_STRING): Adjust for the change of char_string_with_unification.
15205 (CHAR_STRING_ADVANCE): Make it do-while statement.
15206
15207 * chartab.c (sub_char_table_set_range): Optimize for the case
15208 DEPTH == 3. Add workaround code for a GCC optimization bug.
15209
15210 * charset.c (parse_charset_map): Remove an unused variable.
15211
15212 * coding.c: Delete unused variables.
15213
15214 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
15215 earlier. If inserted is zero and the coding system doesn't
15216 require flushing, don't call decode_coding_gap.
15217
15218 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
15219
152202008-02-01 Kenichi Handa <handa@m17n.org>
15221
15222 The following changes are for using Unicode as an internal
15223 character model, and use UTF-8 format for buffer/string
15224 representation.
15225
15226 * .gdbinit (xchartable): Adjust for the change of char table structure.
15227 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
15228
15229 * Makefile.in (obj): Add character.o and chartab.o.
15230 (lisp, shortlisp): Remove utf-8.elc.
15231 (*.o): For many files, change dependency on charset.h to
15232 character.h, and add dependency on character.h.
15233 (character.o, chartab.o): New targets.
15234
15235 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
15236 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
15237 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
15238 of "charset.h".
15239
15240 * dired.c, filelock.c: Include "character.h".
15241
15242 * alloc.c: Include "character.h" instead of "charset.h".
15243 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
15244 (syms_of_alloc): Remove defsubr for Smake_char_table.
15245
15246 * buffer.c: Include "character.h" instead of "charset.h", don't
15247 include "coding.h".
15248 (Fset_buffer_multibyte): Adjust for UTF-8.
15249
15250 * buffer.h: EXFUN Fbuffer_live_p.
15251
15252 * callproc.c: Include "character.h" instead of "charset.h".
15253 (Fcall_process): Big change for the new code-conversion APIs.
15254
15255 * casetab.c: Include "character.h" instead of "charset.h".
15256 (set_canon, set_identity, shuffle): Adjust for the new
15257 map_char_table spec.
15258 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
15259 accessing the char table structure.
15260
15261 * chartab.c: New file that implements char table.
15262
15263 * category.c: Include "character.h".
15264 (copy_category_entry): New function.
15265 (copy_category_table): Call map_char_table and copy_category_entry.
15266 (Fmake_category_table): Initialize all top-level slots.
15267 (char_category_set): New function.
15268 (modify_lower_category_set): Delete.
15269 (Fmodify_category_entry): Call char_table_ref_and_range.
15270
15271 * category.h (CATEGORY_SET): Just call char_category_set.
15272
15273 * ccl.c: Include "character.h".
15274 (Qccl, Qcclp): New variables.
15275 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
15276 it's less than 256.
15277 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
15278 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
15279 and DST type.
15280 (ccl_driver): Change types of argument, adjust code accordingly.
15281 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
15282 ccl_driver.
15283 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
15284
15285 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
15286 New members src_multibyte, dst_multibyte, consumed, and produced.
15287 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
15288 (CODING_SPEC_CCL_PROGRAM): New macro.
15289 (ccl_driver): Update prototype.
15290 (Qccl, Qcclp, Fccl_program_p): Extern them.
15291 (CHECK_CCL_PROGRAM): New macro.
15292
15293 * character.c, character.h, chartab.c: New files.
15294
15295 * charset.c: Mostly re-written. Move character and multibyte sequence
15296 handling codes to character.c.
15297
15298 * charset.h: Mostly re-written. Move character and multibyte sequence
15299 handling codes to character.h.
15300
15301 * coding.c, coding.h: Mostly re-written.
15302
15303 * composite.c: Include "character.h" instead of "charset.h".
15304 (CHAR_WIDTH): Move to character.h.
15305 (HASH_KEY, HASH_VALUE): Delete.
15306
15307 * composite.h (enum composition_method): Change order of enumeration
15308 symbols.
15309
15310 * data.c: Include "character.h" instead of "charset.h".
15311 (Faref): Call CHAR_TABLE_REF for a char table.
15312 (Faset): Call CHAR_TABLE_SET for a char table.
15313
15314 * dispextern.h (free_realized_face, check_face_attribytes)
15315 (generate_ascii_font): Extern them.
15316 (free_realized_multibyte_face): Delete extern.
15317
15318 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
15319 table structure.
15320
15321 * editfns.c: Include "character.h" instead of "charset.h".
15322 (Fchar_to_string): Always call CHAR_STRING.
15323
15324 * emacs.c (main): Call init_charset_once, init_charset,
15325 syms_of_chartab, and syms_of_character.
15326
15327 * fileio.c: Include "character.h" instead of "charset.h".
15328 (Finsert_file_contents): Big change for the new code-conversion API.
15329 (choose_write_coding_system, Fwrite_region): Likewise.
15330 (build_annotations_2): Delete.
15331 (e_write): Big change for the new code-conversion API.
15332
15333 * fns.c: Include "character.h" instead of "charset.h".
15334 (copy_sub_char_table): Move to chartab.c.
15335 (Fcopy_sequence): Call copy_char_table for a char table.
15336 (concat): Delete codes calling count_multibyte.
15337 (string_char_to_byte, string_byte_to_char): Adjust for the new
15338 multibyte form.
15339 (internal_equal): Adjust for the change of char table structure.
15340 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
15341 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
15342 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
15343 (char_table_translate, optimize_sub_char_table)
15344 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
15345 chartab.c.
15346 (char_table_ref_and_index): Delete.
15347 (HASH_KEY, HASH_VALUE): Move to lisp.h.
15348 (Fmd5): Call preferred_coding_system instead of accessing
15349 Vcoding_category_list. Adjust for the new code-conversion API.
15350 (syms_of_fns): Move defsubr for char table related functions to
15351 chartab.c.
15352
15353 * fontset.c: Mostly re-written.
15354
15355 * fontset.h (struct font_info): Change type of the member encoding_type.
15356 (enum FONT_SPEC_INDEX): New enum.
15357 (fontset_font_pattern, fs_load_font): Update prototype.
15358 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
15359
15360 * indent.c: Include "character.h" instead of "charset.h".
15361 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
15362
15363 * insdel.c: Include "character.h" instead of "charset.h".
15364 (copy_text): Don't refer to Vnonascii_translation_table.
15365 (insert_from_gap): New function.
15366
15367 * keyboard.c: Include "character.h" instead of "charset.h".
15368 (command_loop_1): Never call direct_output_forward_char before
15369 a non-ASCII character.
15370 (read_char): If Vkeyboard_translate_table is a char table, always
15371 translate a character.
15372
15373 * keymap.c: Include "character.h".
15374 (store_in_keymap): Handle the case that IDX is a cons.
15375 (Fdefine_key): Handle the case that KEY is a cons and the car part
15376 is also a cons (range).
15377 (push_key_description): Adjust for the new character code.
15378 (describe_vector): Call describe_char_table for a char table.
15379 (describe_char_table): New function.
15380
15381 * keymap.h (describe_char_table): Extern it.
15382
15383 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
15384 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
15385 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
15386 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
15387 Delete.
15388 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
15389 structure.
15390 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
15391 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
15392 (CHARTAB_SIZE_BITS_3): New macros.
15393 (chartab_size): Extern it.
15394 (struct Lisp_Char_Table): Re-design.
15395 (struct Lisp_Sub_Char_Table): New structure.
15396 (HASH_KEY, HASH_VALUE): Move from fns.c.
15397 (CHARACTERBITS): Define as 22.
15398 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
15399 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
15400 (GC_SUB_CHAR_TABLE_P): New macro.
15401 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
15402 (code_convert_string_norecord): Deleted extern.
15403 (init_character_once, syms_of_character, init_charset)
15404 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
15405
15406 * lread.c: Include "character.h".
15407 (read_multibyte): New arg NBYTES.
15408 (read_escape): Change the meaning of returned *BYTEREP.
15409 (to_multibyte): Delete.
15410 (read1): Adjust the handling of char table and string.
15411
15412 * print.c: Include "character.h" instead of "charset.h".
15413 (print_string): Convert 8-bit raw bytes to octal form by
15414 string_escape_byte8.
15415 (print_object): Adjust for the new multibyte form. Print 8-bit
15416 raw bytes always in octal form. Handle sub char table correctly.
15417
15418 * process.c: Include "character.h" instead of "charset.h".
15419 (read_process_output, send_process): Adjust for the new
15420 code-conversion API.
15421
15422 * puresize.h (BASE_PURESIZE): Increase.
15423
15424 * regex.c: Include "character.h" instead of "charset.h".
15425 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
15426 (regex_compile): Accept a range whose starting and ending
15427 character have different leading bytes.
15428 (analyse_first): Adjust for the above change.
15429
15430 * search.c: Include "character.h" instead of "charset.h".
15431 (search_buffer, boyer_moore): Adjust for the new multibyte form.
15432 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
15433
15434 * syntax.c: Include "character.h" instead of "charset.h".
15435 (syntax_parent_lookup): Delete.
15436 (Fmodify_syntax_entry): Accept a cons as CHAR.
15437 (skip_chars): Adjust for the new multibyte form.
15438 (init_syntax_once): Call char_table_set_range instead of directly
15439 accessing the structure of a char table.
15440
15441 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
15442 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
15443 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
15444 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
15445
15446 * term.c: Include "buffer.h" and "character.h".
15447 (encode_terminal_code, write_glyphs): Adjust for the new
15448 code-conversion API.
15449 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
15450
15451 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
15452
15453 * xdisp.c: Include "character.h".
15454 (get_next_display_element): Adjust for the new multibyte form.
15455 (disp_char_vector): Adjust for the new char table structure.
15456 (decode_mode_spec_coding): Adjust for the new structure of
15457 coding system.
15458 (decode_mode_spec): Adjust for the new code-conversion API.
15459
15460 * xfaces.c: Include "character.h" instead of "charset.h".
15461 (load_face_font): Adjust for the change of choose_face_font and
15462 FS_LOAD_FONT.
15463 (generate_ascii_font): New function.
15464 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
15465 (set_font_frame_param): Adjust for the change of choose_face_font.
15466 (free_realized_face): Make it public.
15467 (free_realized_faces_for_fontset): Rename from
15468 free_realized_multibyte_face. Free also faces realized for ASCII.
15469 (choose_face_font): Change arguments. Adjust for the change of
15470 fontset_font_pattern and FS_LOAD_FONT.
15471
15472 * xfns.c: Include "character.h".
15473 (x_encode_text): Adjust for the new code-conversion API.
15474
15475 * xselect.c: Don't include "charset.h".
15476 (selection_data_to_lisp_data): Adjust for the new code conversion API.
15477
15478 * xterm.c: Include "character.h".
15479 (x_encode_char): New argument CHARSET. Change caller.
15480 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
15481 Call ENCODE_CHAR instead of SPLIT_CHAR.
15482 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
15483 CHAR_WIDTH instead of CHARSET_WIDTH.
15484 (XTread_socket): Adjust for the new code-conversion API.
15485 (x_new_font): Adjust for the change of FS_LOAD_FONT.
15486 (x_load_font): Adjust for the change of struct font.
15487
154882008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15489
15490 * xfaces.c (face_at_buffer_position): Remove unused vars.
15491
154922008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15493
15494 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
15495 Fix overflow checking.
15496
154972008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15498
15499 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
15500 Cancel previous change.
15501
155022008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
15503
15504 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
15505 ccl->eight_bit_control. Fix check for buffer overflow.
15506 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
15507 (ccl_driver): Initialize extra_bytes to 0.
15508
155092008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
15510
15511 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
15512 return it ORed with ctrl_modifier.
15513
155142008-01-29 Miles Bader <miles@gnu.org>
15515
15516 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
15517
155182008-01-28 Jason Rumney <jasonr@gnu.org>
15519
15520 * w32.c (stat): Don't double check for networked drive.
15521
155222008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
15523
15524 * window.c (run_window_configuration_change_hook): New function.
15525 Code extracted from set_window_buffer. Set the selected frame.
15526 (set_window_buffer): Use it.
15527 * window.h (run_window_configuration_change_hook): Declare.
15528 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
15529
15530 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
15531
155322008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
15533
15534 * Makefile.in: Remove references to unused macros.
15535
155362008-01-26 Eli Zaretskii <eliz@gnu.org>
15537
15538 * w32.c (g_b_init_get_sid_sub_authority)
15539 (g_b_init_get_sid_sub_authority_count): New static variables.
15540 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
15541 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
15542 (init_user_info): Use them to retrieve uid and gid.
15543 Use 500/513, the Windows defaults, as Administrator's uid/gid.
15544 (fstat): Use pw_uid and pw_gid from the_passwd structure for
15545 st_uid and st_gid of the file.
15546
155472008-01-26 Jason Rumney <jasonr@gnu.org>
15548
15549 * w32.c (logon_network_drive): New function.
15550 (stat): Use it.
15551
155522008-01-26 Chong Yidong <cyd@stupidchicken.com>
15553
15554 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
15555 invisible text covered with an ellipsis.
15556
155572008-01-25 Richard Stallman <rms@gnu.org>
15558
15559 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
15560 jump back to beginning. Move some other initializations after that.
15561 (Qwindow_text_change_functions, Vwindow_text_change_functions):
15562 New variables.
15563 (syms_of_xdisp): Init them.
15564
15565 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
15566
15567 * buffer.c (reset_buffer_local_variables):
15568 Implement `permanent-local-hook'.
15569 (Qpermanent_local_hook): New variable.
15570 (syms_of_buffer): Init and staticpro it.
15571
155722008-01-25 Michael Albinus <michael.albinus@gmx.de>
15573
15574 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
15575
155762008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
15577
15578 * fns.c (Fclrhash): Return TABLE.
15579
155802008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15581
15582 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
15583 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
15584 is set even without positional changes.
15585 (x_scroll_bar_clear): Set bar->redraw_needed_p.
15586
15587 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
15588
155892008-01-23 Jason Rumney <jasonr@gnu.org>
15590
15591 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
15592
15593 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
15594 the unicode range available in MULE by locale-coding-system.
15595 Improve dbcs lead byte detection. Set event timestamp and modifiers
15596 earlier.
15597
155982008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15599
15600 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
15601 [MAC_OSX] (init_mac_osx_environment): Initialize it.
15602 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
15603 when used on child processes.
15604
156052008-01-21 Michael Albinus <michael.albinus@gmx.de>
15606
15607 * dbusbind.c (Fdbus_method_return_internal): Rename from
15608 Fdbus_method_return.
15609 (Fdbus_unregister_object): Move to dbus.el.
15610 (Fdbus_call_method, Fdbus_method_return_internal)
15611 (Fdbus_send_signal): Improve debug messages.
15612
156132008-01-20 Martin Rudalics <rudalics@gmx.at>
15614
15615 * undo.c (undo_inhibit_record_point): New variable.
15616 (syms_of_undo): Initialize it.
15617 (record_point): Don't record point when undo_inhibit_record_point
15618 is set.
15619
156202008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
15621
15622 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
15623
15624 * xdisp.c (Qauto_hscroll_mode): New var.
15625 (syms_of_xdisp): Initialize it.
15626 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
15627 window's buffer.
15628 (hscroll_windows): Don't check automatic_hscrolling_p here.
15629
15630 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
15631 vscroll if we're setting window-buffer to the value it already has.
15632
156332008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
15634
15635 * m/intel386.h: Remove references to XENIX.
15636
156372008-01-17 Andreas Schwab <schwab@suse.de>
15638
15639 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
15640 instead of HAVE_X86_64_LIB64_DIR.
15641 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
15642
156432008-01-17 Glenn Morris <rgm@gnu.org>
15644
15645 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
15646 to HAVE_X86_64_LIB64_DIR.
15647
156482008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
15649
15650 * s/irix3-3.h:
15651 * s/irix4-0.h:
15652 * s/386-ix.h:
15653 * s/domain.h:
15654 * s/hpux9-x11r4.h:
15655 * s/hpux9shxr4.h: Remove files for systems no longer supported.
15656
15657 * sysdep.c: Remove code containing references to symbols defined
15658 by unsupported systems.
15659
156602008-01-16 Glenn Morris <rgm@gnu.org>
15661
15662 * coding.c (select-safe-coding-system-function): Doc fix.
15663
156642008-01-15 Glenn Morris <rgm@gnu.org>
15665
15666 * config.in: Revert 2008-01-13 change: this is a generated file.
15667
156682008-01-13 Tom Tromey <tromey@redhat.com>
15669
15670 * lisp.h: Fix typo.
15671
156722008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
15673
15674 * m/sequent-ptx.h:
15675 * m/sequent.h:
15676 * s/ptx.h:
15677 * s/ptx4-2.h:
15678 * s/ptx4.h: Remove files for systems no longer supported.
15679
15680 * callproc.c (Fcall_process): Fix previous change.
15681
156822008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
15683
15684 * unexsunos4.c: Remove file, system not supported anymore.
15685
15686 * m/mips.h:
15687 * m/intel386.h:
15688 * callproc.c:
15689 * config.in:
15690 * ecrt0.c:
15691 * emacs.c:
15692 * fileio.c:
15693 * frame.c:
15694 * getpagesize.h:
15695 * keyboard.c:
15696 * lread.c:
15697 * process.c:
15698 * puresize.h:
15699 * sysdep.c:
15700 * systty.h:
15701 * syswait.h:
15702 * unexec.c:
15703 * xdisp.c:
15704 * alloc.c: Remove code containing references to symbols defined by
15705 unsupported systems.
15706
157072008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
15708
15709 * coding.c (detect_coding_mask): Fix previous change.
15710
157112008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
15712
15713 * coding.c (detect_coding_iso2022): New arg
15714 latin_extra_code_state. Allow Latin extra codes only
15715 when *latin_extra_code_state is nonzero.
15716 (detect_coding_mask): If there is a NULL byte, detect the encoding
15717 as UTF-16 or binary. If Latin extra codes exist, detect the
15718 encoding as ISO-2022 only when there's no other proper encoding is
15719 found.
15720
157212008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15722
15723 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
15724 #ifdef MAC_OS.
15725
157262008-01-08 Richard Stallman <rms@gnu.org>
15727
15728 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
15729
157302008-01-06 Nick Roberts <nickrob@snap.net.nz>
15731
15732 * keyboard.c (parse_menu_item): Don't enclose key bindings on
15733 menu bar in parentheses.
15734
157352008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
15736
15737 * m/7300.h:
15738 * m/acorn.h:
15739 * m/alliant-2800.h:
15740 * m/alliant.h:
15741 * m/alliant1.h:
15742 * m/alliant4.h:
15743 * m/altos.h:
15744 * m/amdahl.h:
15745 * m/apollo.h:
15746 * m/att3b.h:
15747 * m/aviion-intel.h:
15748 * m/aviion.h:
15749 * m/celerity.h:
15750 * m/clipper.h:
15751 * m/cnvrgnt.h:
15752 * m/convex.h:
15753 * m/cydra5.h:
15754 * m/delta88k.h:
15755 * m/dpx2.h:
15756 * m/dual.h:
15757 * m/elxsi.h:
15758 * m/f301.h:
15759 * m/gould-np1.h:
15760 * m/gould.h:
15761 * m/i860.h:
15762 * m/ibmps2-aix.h:
15763 * m/ibmrt-aix.h:
15764 * m/ibmrt.h:
15765 * m/irist.h:
15766 * m/is386.h:
15767 * m/isi-ov.h:
15768 * m/mega68.h:
15769 * m/mg1.h:
15770 * m/news-r6.h:
15771 * m/news-risc.h:
15772 * m/news.h:
15773 * m/nh3000.h:
15774 * m/nh4000.h:
15775 * m/ns16000.h:
15776 * m/ns32000.h:
15777 * m/nu.h:
15778 * m/orion.h:
15779 * m/orion105.h:
15780 * m/paragon.h:
15781 * m/pfa50.h:
15782 * m/plexus.h:
15783 * m/pyramid.h:
15784 * m/pyrmips.h:
15785 * m/sh3el.h:
15786 * m/sps7.h:
15787 * m/sr2k.h:
15788 * m/stride.h:
15789 * m/sun1.h:
15790 * m/sun2.h:
15791 * m/sun3-68881.h:
15792 * m/sun3-fpa.h:
15793 * m/sun3-soft.h:
15794 * m/sun3.h:
15795 * m/sun386.h:
15796 * m/symmetry.h:
15797 * m/tad68k.h:
15798 * m/tahoe.h:
15799 * m/targon31.h:
15800 * m/tek4300.h:
15801 * m/tekxd88.h:
15802 * m/tower32.h:
15803 * m/tower32v3.h:
15804 * m/ustation.h:
15805 * m/wicat.h:
15806 * m/xps100.h:
15807 * s/cxux.h:
15808 * s/cxux7.h:
15809 * s/dgux.h:
15810 * s/dgux4.h:
15811 * s/dgux5-4-3.h:
15812 * s/dgux5-4r2.h:
15813 * s/esix.h:
15814 * s/esix5r4.h:
15815 * s/hiuxmpp.h:
15816 * s/hiuxwe2.h:
15817 * s/iris3-5.h:
15818 * s/iris3-6.h:
15819 * s/isc2-2.h:
15820 * s/isc3-0.h:
15821 * s/isc4-0.h:
15822 * s/isc4-1.h:
15823 * s/newsos5.h:
15824 * s/newsos6.h:
15825 * s/osf1.h:
15826 * s/osf5-0.h:
15827 * s/riscix1-1.h:
15828 * s/riscix12.h:
15829 * s/sco4.h:
15830 * s/sco5.h:
15831 * s/sunos4-0.h:
15832 * s/sunos4-1.h:
15833 * s/sunos413.h:
15834 * s/sunos4shr.h:
15835 * s/umax.h:
15836 * s/unipl5-2.h:
15837 * s/xenix.h:
15838 * cxux-crt0.s:
15839 * unexapollo.c:
15840 * unexconvex.c:
15841 * unexenix.c:
15842 * unexsni.c: Remove files for systems no longer supported.
15843
15844 * m/intel386.h: Remove references to unsupported systems.
15845
15846 * w32.c (get_emacs_configuration): Remove reference to i860.
15847
15848 * sysdep.c: Remove dead code.
15849
158502008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
15851
15852 * s/rtu.h:
15853 * m/masscomp.h: Remove files. Platform is obsolete.
15854
158552008-01-04 Michael Albinus <michael.albinus@gmx.de>
15856
15857 * dbusbind.c (Fdbus_method_return): New function.
15858 (xd_read_message): Add the serial number to the event.
15859 (Fdbus_register_method): Activate the function.
15860
158612008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
15862
15863 * keyboard.c (read_key_sequence): Fix typo.
15864
158652008-01-03 Michael Albinus <michael.albinus@gmx.de>
15866
15867 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
15868 (xd_signature, xd_append_arg): Handle element type detection for
15869 empty arrays.
15870 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
15871 SDATA () calls; this must be solved more general.
15872 (Fdbus_register_signal): Use SBYTES instead of strlen.
15873
158742008-01-03 Magnus Henoch <magnus@zemdatav>
15875
15876 * dbusbind.c (xd_append_arg): Use unsigned char instead of
15877 unsigned int for byte values (necessary for big-endian platform).
15878 (Fdbus_call_method): Handle the case of no returned arguments.
15879
158802007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
15881
15882 * dbusbind.c (xd_read_message): Use non-static input_event struct.
15883
158842007-12-31 Magnus Henoch <mange@freemail.hu>
15885
15886 * dbusbind.c (xd_signature): Signature of variant is just "v".
15887
158882007-12-30 Michael Albinus <michael.albinus@gmx.de>
15889
15890 * dbusbind.c: Fix several errors and compiler warnings.
15891 Reported by Tom Tromey <tromey@redhat.com>.
15892 (XD_ERROR, XD_DEBUG_MESSAGE)
15893 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
15894 (xd_append_arg): Part for basic D-Bus types rewritten.
15895 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
15896 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
15897 appropriate.
15898 (xd_read_message): Return Qnil. Don't signal an error; it is not
15899 useful during event reading.
15900 (Fdbus_register_signal): Signal an error if the check for
15901 FUNCTIONP fails.
15902 (Fdbus_register_method): New function. The implementation is not
15903 complete, the call of the function signals an error therefore.
15904 (Fdbus_unregister_object): New function, renamed from
15905 Fdbus_unregister_signal. The initial check signals an error, if
15906 the object is not well formed.
15907
159082007-12-30 Richard Stallman <rms@gnu.org>
15909
15910 * textprop.c (get_char_property_and_overlay):
15911 Signal error if POSITION is out of range in a buffer.
15912
159132007-12-29 Martin Rudalics <rudalics@gmx.at>
15914
15915 * w32fns.c (Fx_create_frame): Make copy of frame parameters
15916 because the original parameters are in pure storage now.
15917
159182007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15919
15920 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
15921
159222007-12-22 Eli Zaretskii <eliz@gnu.org>
15923
15924 * callint.c (syms_of_callint) <command-history>: Add reference to
15925 history-length in the doc string.
15926
159272007-12-17 Jason Rumney <jasonr@gnu.org>
15928
15929 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
15930 before passing as wParam.
15931
159322007-12-22 Michael Albinus <michael.albinus@gmx.de>
15933
15934 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
15935 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
15936 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
15937 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
15938 as number.
15939 (Fdbus_call_method): Fix docstring.
15940
159412007-12-21 Michael Albinus <michael.albinus@gmx.de>
15942
15943 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
15944 New macros.
15945 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
15946 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
15947 Simplify.
15948 (xd_signature): New function.
15949 (xd_append_arg): Compute also signatures. Major rewrite.
15950 (xd_retrieve_arg): Make debug messages friendly.
15951 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
15952 Check for signatures of arguments.
15953
159542007-12-19 Michael Albinus <michael.albinus@gmx.de>
15955
15956 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
15957 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
15958 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
15959 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
15960 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
15961 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
15962 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
15963 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
15964 (xd_retrieve_value): Remove. Functionality included in ...
15965 (xd_append_arg): New function.
15966 (Fdbus_call_method, Fdbus_send_signal): Apply it.
15967
159682007-12-16 Michael Albinus <michael.albinus@gmx.de>
15969
15970 * dbusbind.c (top): Include <stdio.h>.
15971 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
15972 dbus_message_new_method_call and dbus_message_new_signal.
15973 (Fdbus_register_signal): Rename unique_name to uname.
15974 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
15975 non-existing unique name. Fix typos in matching rule. Return an
15976 object which is useful in Fdbus_unregister_signal.
15977 (Fdbus_unregister_signal): Reimplementation, in order to remove
15978 only the corresponding entry.
15979 (Vdbus_registered_functions_table): Change the order of entries.
15980 Apply these changes in xd_read_message and Fdbus_register_signal.
15981
159822007-12-16 Andreas Schwab <schwab@suse.de>
15983
15984 * fileio.c (Finsert_file_contents): Fix overflow check to not
15985 depend on undefined integer overflow.
15986
159872007-12-14 Jason Rumney <jasonr@gnu.org>
15988
15989 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
15990 for characters above 127.
15991
159922007-12-13 Jason Rumney <jasonr@gnu.org>
15993
15994 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
15995 before dereferencing array.
15996 (lookup_vk_code): Remove zero comparison.
15997
159982007-12-14 Michael Albinus <michael.albinus@gmx.de>
15999
16000 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
16001 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
16002 Use `unsigned int' instead of `uint'.
16003 (xd_read_message, Fdbus_register_signal): Split expressions into
16004 multiple lines before operators "&&" and "||", according to the
16005 GNU Coding Standards.
16006
160072007-12-14 Eli Zaretskii <eliz@gnu.org>
16008
16009 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
16010
160112007-12-12 Juri Linkov <juri@jurta.org>
16012
16013 * buffer.c (Frename_buffer): In interactive spec replace
16014 `read-buffer' with `read-string' that uses `buffer-name-history'
16015 as history, and the current buffer's name as default.
16016
160172007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
16018
16019 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
16020 manipulating the backtrace manually.
16021 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
16022 (struct backtrace, backtrace_list): Remove.
16023 (command_loop_1): Remove dead var `no_direct'.
16024
16025 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
16026 preserve non-built-in buffer-local variables.
16027 (Fkill_all_local_variables): Don't re-create&re-set permanent
16028 buffer-local variables.
16029
160302007-12-09 Juri Linkov <juri@jurta.org>
16031
16032 * buffer.c (Frename_buffer): Change interactive spec from "s" to
16033 Lisp code that uses `read-buffer' with current buffer as default.
16034
160352007-12-08 Michael Albinus <michael.albinus@gmx.de>
16036
16037 * dbusbind.c (xd_read_message): Generate an event for every
16038 registered handler. There might be several handlers registered
16039 for the same signal.
16040 (Fdbus_register_signal): Don't overwrite a registration for the
16041 same signal. Add a new registration if handlers are different.
16042 (Vdbus_registered_functions_table): Rework doc string.
16043
160442007-12-07 Michael Albinus <michael.albinus@gmx.de>
16045
16046 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
16047 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
16048 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
16049 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
16050 Unify argument lists.
16051 (xd_read_message, Fdbus_register_signal): Reorder and extend event
16052 arguments and hash table keys. Use unique name for service.
16053 (Fdbus_unregister_signal): Remove checks.
16054 (Vdbus_registered_functions_table): Fix doc string.
16055
160562007-12-05 Magnus Henoch <mange@freemail.hu>
16057
16058 * process.c (make_process): Initialize pty_flag to 0.
16059
160602007-12-05 Jason Rumney <jasonr@gnu.org>
16061
16062 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
16063 specified XBMs.
16064
160652007-12-05 Richard Stallman <rms@gnu.org>
16066
16067 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
16068
160692007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16070
16071 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
16072 New variable.
16073 (mac_try_close_socket) [MAC_OSX]: New function.
16074 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
16075 Update cfsockets_for_select. Replace invalid CFRunLoop source.
16076
16077 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
16078 Use mac_try_close_socket.
16079
160802007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16081
16082 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
16083 reloc_base.
16084 (copy_dysymtab): Compute relocation base here.
16085 (rebase_reloc_address) [__ppc64__]: New function.
16086 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
16087 changed.
16088
160892007-12-05 Jason Rumney <jasonr@gnu.org>
16090
16091 * w32proc.c (sys_spawnve): Quote args with wildcards.
16092
160932007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16094
16095 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
16096 __objc_* sections.
16097 (unrelocate) [_LP64]: Set relocation base to address of data segment.
16098
160992007-12-05 Michael Albinus <michael.albinus@gmx.de>
16100
16101 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
16102 Move check for Vdbus_registered_functions_table to
16103 xd_read_queued_messages.
16104 (xd_read_queued_messages): Protect xd_read_message calls by
16105 internal_condition_case_1.
16106
161072007-12-04 Michael Albinus <michael.albinus@gmx.de>
16108
16109 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
16110 Qdbus_system_bus and Qdbus_session_bus, respectively.
16111 (Vdbus_intern_symbols): Remove.
16112 (Vdbus_registered_functions_table): New hash table.
16113 (XD_SYMBOL_INTERN_SYMBOL): Remove.
16114 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
16115 Rewrite in order to manage registered functions by hash table
16116 Vdbus_registered_functions_table.
16117
161182007-12-03 Jan Djärv <jan.h.d@swipnet.se>
16119
16120 * xterm.c: Update URL to Window Manager Specification in comment.
16121
161222007-12-02 Michael Albinus <michael.albinus@gmx.de>
16123
16124 * config.in (HAVE_DBUS): Add.
16125
16126 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
16127 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
16128 (obj): Add $(DBUS_OBJ).
16129 (LIBES): Add $(DBUS_LIBS).
16130 (dbusbind.o): New target.
16131
16132 * dbusbind.c: New file.
16133
16134 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
16135
16136 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
16137 (Qdbus_event): New Lisp symbol.
16138 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
16139 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 16140 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
16141
16142 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
16143
161442007-12-01 Richard Stallman <rms@gnu.org>
16145
16146 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
16147
161482007-11-30 Jason Rumney <jasonr@gnu.org>
16149
16150 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
16151 (w32con_reset_terminal_modes): Clear screen buffer.
16152 (w32_face_attributes): Don't use color indexes that are out of range.
16153 Only reverse the default colors.
16154
16155 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
16156 WINDOWSNT.
16157
16158 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
16159
161602007-11-29 Jason Rumney <jasonr@gnu.org>
16161
16162 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
16163 (w32_face_attributes): Use Vtty_defined_color_alist to determine
16164 if the terminal colors are initialized.
16165 (unspecified_fg, unspecified_bg): Remove unused declarations.
16166
161672007-11-29 Andreas Schwab <schwab@suse.de>
16168
16169 * keyboard.c (apply_modifiers): Fix typo.
16170
161712007-11-29 Richard Stallman <rms@gnu.org>
16172
16173 * keymap.c (Fcurrent_local_map): Doc fix.
16174
161752007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
16176
16177 * s/gnu-kfreebsd.h: New file.
16178
161792007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
16180
16181 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
16182 Don't cast redundantly.
16183
16184 * keyboard.c (KEY_TO_CHAR): New macro.
16185 (parse_modifiers, apply_modifiers): Accept integer arguments.
16186 (read_key_sequence): Use them to unify the "shift->unshift" mapping
16187 for chars and symbol keys.
16188 After doing such remapping, apply function-key-map again.
16189
161902007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
16191
16192 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
16193 compiled anymore.
16194
161952007-11-26 Andreas Schwab <schwab@suse.de>
16196
16197 * process.c (list_processes_1): Fix indentation level of the
16198 command column.
16199
162002007-11-23 Andreas Schwab <schwab@suse.de>
16201
16202 * editfns.c (Fformat): Handle %c specially since it requires the
16203 argument to be of type int.
16204
162052007-11-23 Markus Triska <markus.triska@gmx.at>
16206
16207 * emacs.c (main): Call init_editfns before init_process, since
16208 init_process sets Vprocess_connection_type depending on OS release.
16209
162102007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
16211
16212 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
16213 (find_symbol_value): Use do_symval_forwarding.
16214
16215 * data.c (set_internal): Set the value in the `cons-cell' (for
16216 Buffer_Local_values) not only for frame-local variables.
16217
162182007-11-22 Andreas Schwab <schwab@suse.de>
16219
16220 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
16221 values to sprintf.
16222 * keymap.c (Fsingle_key_description): Likewise.
16223 * print.c (print_object): Likewise.
16224
162252007-11-22 Jan Djärv <jan.h.d@swipnet.se>
16226
16227 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
16228 file for image is nil.
16229
162302007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
16231
16232 * term.c: Include stdarg.h.
16233 (fatal): Implement using varargs.
16234 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
16235
162362007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16237
16238 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
16239 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
16240 Update call to buffer_slot_type_mismatch.
16241 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
16242 (buffer_slot_type_mismatch): Update.
16243 * buffer.c (buffer_local_types): Remove.
16244 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
16245 (defvar_per_buffer): Set the type in the buffer_objfwd.
16246
162472007-11-21 Jason Rumney <jasonr@gnu.org>
16248
16249 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
16250 CreateFileMapping returns NULL on failure.
16251
162522007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16253
16254 * search.c (Fset_match_data): Remove the `evaporate' feature.
16255 (unwind_set_match_data): Don't use the `evaporate' feature.
16256
162572007-11-21 Jason Rumney <jasonr@gnu.org>
16258
16259 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
16260
16261 * w32console.c (w32con_write_glyphs): Remove unused variables.
16262
162632007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
16264
16265 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
16266
16267 * s/darwin.h (MULTI_KBOARD): Remove.
16268
16269 * macfns.c (x_create_tip_frame, Fx_create_frame)
16270 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
16271
162722007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
16273
16274 * buffer.c (Fbuffer_local_value): Remove redundant test.
16275 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
16276 than in `current-buffer' to match the comment.
16277 Do the swap using swap_in_global_binding.
16278
16279 * data.c (store_symval_forwarding, set_internal):
16280 * eval.c (specbind): Remove dead code.
16281
16282 * coding.c (detect_coding, Fupdate_coding_systems_internal):
16283 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
16284 Since we do not want to see internal Lisp_*fwd objects here.
16285
162862007-11-18 Jan Djärv <jan.h.d@swipnet.se>
16287
16288 * sysdep.c (init_system_name): Use getaddrinfo if available.
16289
16290 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
16291 (x_scroll_bar_note_movement): start, end, with, height in struct
16292 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
16293
162942007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
16295
16296 * puresize.h (BASE_PURESIZE): Increase to 1190000.
16297
162982007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
16299
16300 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
16301 This undoes Richard's change of 14-Oct-2002.
16302
16303 * alloc.c (allocate_other_vector):
16304 * lisp.h (allocate_other_vector): Remove.
16305
16306 * window.c (struct save_window_data): Move non-lisp data to the end
16307 and make it `int' rather than Lisp_Object.
16308 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
16309 Done wrap/unwrap integer values.
16310 (Fset_window_configuration, compare_window_configurations):
16311 Update use of fields to their new types.
16312
16313 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
16314 Turn integer fields into `int'. Merge x_window_low and x_window_high.
16315 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
16316 (SET_SCROLL_BAR_X_WINDOW): Remove.
16317 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
16318 Access the new x_window field directly.
16319 * xterm.c (x_scroll_bar_create): Use a pseudovector.
16320 Don't wrap/unwrap integers into Lisp_Objects.
16321 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
16322 (x_scroll_bar_report_motion):
16323 Don't wrap/unwrap integers into Lisp_Objects.
16324 (x_term_init): Use SDATA.
16325 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
16326 (x_scroll_bar_set_handle, x_scroll_bar_remove)
16327 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
16328 (x_scroll_bar_report_motion, x_scroll_bar_clear):
16329 * xfns.c (x_set_background_color):
16330 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
16331 Access the new x_window field directly.
16332
16333 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
16334 (allocate_pseudovector): Make non-static.
16335
16336 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
16337 (allocate_pseudovector): Declare.
16338 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
16339
163402007-11-15 Andreas Schwab <schwab@suse.de>
16341
16342 * editfns.c (Fformat): Correctly format EMACS_INT values.
16343 Also take precision into account when formatting an integer.
16344
16345 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
16346
163472007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
16348
16349 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
16350 (syms_of_keyboard): Defsubr it.
16351
16352 * data.c (swap_in_global_binding): Fix longstanding bug where
16353 store_symval_forwarding was not called with the right second argument,
16354 thus causing objfwd-ing from being dropped.
16355
163562007-11-14 Juanma Barranquero <lekktu@gmail.com>
16357
16358 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
16359 (Fx_display_pixel_height, Fx_display_planes)
16360 (Fx_display_color_cells, Fx_server_max_request_size)
16361 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
16362 (Fx_display_visual_class, Fx_display_save_under):
16363 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
16364 (Fx_display_pixel_height, Fx_display_planes)
16365 (Fx_display_color_cells, Fx_server_max_request_size)
16366 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
16367 (Fx_display_mm_height, Fx_display_mm_width)
16368 (Fx_display_backing_store, Fx_display_visual_class)
16369 (Fw32_select_font, Fx_display_save_under):
16370 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
16371 (Fx_display_pixel_height, Fx_display_planes)
16372 (Fx_display_color_cells, Fx_server_max_request_size)
16373 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
16374 (Fx_display_save_under): Fix typos in docstrings.
16375
163762007-11-14 Juanma Barranquero <lekktu@gmail.com>
16377
16378 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
16379 corresponding to deleted entries; they are an implementation detail.
16380 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
16381 Remove variables.
16382 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
16383 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
16384 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
16385 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
16386 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
16387 (Fw32_define_rgb_color, Fw32_load_color_file)
16388 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
16389 Fix typos in docstrings.
16390 (Fx_server_version): Reflow docstring.
16391 (Fw32_shell_execute): Doc fixes.
16392
163932007-11-13 Juanma Barranquero <lekktu@gmail.com>
16394
16395 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
16396 if w32_parse_hot_key returned nil.
16397
163982007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
16399
16400 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
16401
164022007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 16403
aac0c6e3
MR
16404 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
16405
16406 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
16407
16408 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
16409 Remove W32_SCROLL_BAR_CLICK_EVENT.
16410
16411 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
16412 Add MULTIMEDIA_KEY_EVENT.
16413
16414 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
16415 (lispy_multimedia_keys) [WINDOWSNT]: New array.
16416 (make_lispy_event) [WINDOWSNT]: Use it to translate
16417 MULTIMEDIA_KEY_EVENT.
16418
16419 * w32term.h (WM_APPCOMMAND): Define if not already.
16420 (GET_APPCOMMAND_LPARAM): Likewise.
16421
16422 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
16423 WM_APPCOMMAND.
16424
16425 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
16426 (syms_of_w32fns): Export and initialize it.
16427 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
16428
164292007-11-09 Chong Yidong <cyd@stupidchicken.com>
16430
16431 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
16432 twice.
16433
16434 * xdisp.c (handle_face_prop): Fix last change.
16435
164362007-11-09 Richard Stallman <rms@gnu.org>
16437
16438 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
16439 not just for after-strings and before-strings.
16440 Call face_for_overlay_string and pass the overlay to it.
16441 (handle_display_prop): Determine whether property came from an overlay.
16442 Pass OVERLAY arg to handle_single_display_spec.
16443 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
16444 (load_overlay_strings): Fill in it->string_overlays.
16445 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
16446
16447 * xfaces.c (face_for_overlay_string): Function renamed from
16448 face_at_buffer_position_no_overlays, and add arg OVERLAY.
16449
16450 * dispextern.h (struct it): New elt string_overlays.
16451 New elt from_overlay, also in stack.
16452 Rearrange a few elements.
16453 (face_for_overlay_string): Decl renamed from
16454 face_at_buffer_position_no_overlays, and add argument.
16455
164562007-11-09 Richard Stallman <rms@gnu.org>
16457
16458 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
16459 to get the base face for an overlay string.
16460
16461 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
16462
16463 * xfaces.c (face_at_buffer_position_no_overlays): New function.
16464
16465 * xdisp.c (handle_stop): Move some code out of loop.
16466
164672007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16468
16469 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
16470 Fix conversion from Lisp object to ATSUFontID.
16471
164722007-11-09 Jason Rumney <jasonr@gnu.org>
16473
16474 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
16475
164762007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16477
16478 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
16479 Don't assume regions are aligned to page boundary.
16480 (print_load_command_name): Add LC_UUID if defined.
16481
164822007-11-09 Richard Stallman <rms@gnu.org>
16483
16484 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
16485
164862007-11-07 Jason Rumney <jasonr@gnu.org>
16487
16488 * s/windows95.h: Remove.
16489
164902007-11-06 Jan Djärv <jan.h.d@swipnet.se>
16491
16492 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
16493 abort with a message on unhandled store_type values.
16494
164952007-11-01 Jan Djärv <jan.h.d@swipnet.se>
16496
16497 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
16498 Remove HAVE_X11R5 and HAVE_X11R4.
16499
165002007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
16501
16502 * Makefile.in: Remove references to sunfns.c and sunfns.o.
16503
165042007-11-01 Johan Bockgård <bojohan@gnu.org>
16505
16506 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
16507 Don't set s->stippled_p here, since it has already been set by
16508 x_set_glyph_string_gc from x_draw_glyph_string.
16509
165102007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
16511
16512 * sunfns.c: Remove file.
16513
16514 * m/sun386.h:
16515 * m/sun2.h:
16516 * m/sparc.h: Remove Sun windows code.
16517
165182007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
16519
16520 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
16521 (init_keyboard): Set current_kboard's window-system to nil.
16522 (tty_read_avail_input): Typo.
16523 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
16524
165252007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
16526
16527 * s/usg5-4.h:
16528 * s/usg5-3.h:
16529 * s/ptx.h:
16530 * m/is386.h:
16531 * m/ibmps2-aix.h:
16532 * Makefile.in: Remove all mentions of X10.
16533
16534 * dispnew.c (syms_of_display): Don't mention version 10.
16535
165362007-10-28 Juanma Barranquero <lekktu@gmail.com>
16537
16538 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
16539 ($(BLD)/abbrev.$(O)): Remove.
16540
165412007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
16542
16543 Rewrite abbrev.c in Elisp.
16544 * image.c (Qcount): Don't declare as extern.
16545 (syms_of_image): Initialize and staticpro `Qcount'.
16546 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
16547 * emacs.c (main): Don't call syms_of_abbrev.
16548 * Makefile.in (obj): Remove abbrev.o.
16549 (abbrev.o): Remove.
16550 * abbrev.c: Remove.
16551
165522007-10-26 Martin Rudalics <rudalics@gmx.at>
16553
16554 * window.c (window_min_size_2): Don't count header-line.
16555
165562007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
16557
16558 * frame.h (struct frame): Move all bit fields after the first bit
16559 field to take advantage of the available space. Group all the
16560 chars together to reduce wasted space due to padding.
16561
165622007-10-26 Juanma Barranquero <lekktu@gmail.com>
16563
16564 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
16565
16566 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
16567 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
16568 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
16569 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
16570 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
16571 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
16572 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
16573 (last_marked, mark_object_loop_halt): Make static.
16574
16575 * frame.c (syms_of_frame) <delete-frame-functions>:
16576 Fix typo in docstring.
16577
165782007-10-25 Juanma Barranquero <lekktu@gmail.com>
16579
16580 * w32.c (init_environment): Fix tiny memory leak.
16581 (w32_get_resource): Remove unused variable `ok'.
16582
165832007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
16584
16585 Make `window-system' into a keyboard-local variable (rather than
16586 frame-local as done originally by multi-tty).
16587
16588 * keyboard.h (struct kboard): Add Vwindow_system.
16589 * keyboard.c (init_kboard): Set a default for Vwindow_system.
16590 (mark_kboards): Mark Vwindow_system.
16591
16592 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
16593 (init_display): Don't set the obsolete `window-system' frame-param.
16594
16595 * xterm.c (x_term_init):
16596 * w32term.c (w32_create_terminal):
16597 * term.c (init_tty): Set Vwindow_system.
16598 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
16599 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
16600
16601 * xfns.c (Fx_create_frame, x_create_tip_frame):
16602 * w32fns.c (Fx_create_frame, x_create_tip_frame):
16603 * macfns.c (Fx_create_frame):
16604 Don't set the obsolete `window-system' frame-param.
16605
16606 * frame.h (Qwindow_system): Remove.
16607 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
16608 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
16609
166102007-10-24 Richard Stallman <rms@gnu.org>
16611
16612 * frame.c (x_figure_window_size): For fullscreen case,
16613 set USPosition | PPosition without clobbering rest of window_prompting.
16614
16615 * keyboard.c (Fcurrent_idle_time): Doc fix.
16616
16617 * print.c (Fwith_output_to_temp_buffer): Doc fix.
16618
166192007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
16620
16621 * process.c (unwind_request_sigio): Only define if __ultrix__.
16622
16623 * callproc.c (child_setup): Remove spurious *.
16624
16625 * lisp.h (Fget_text_property): Declare.
16626 (have_menus_p): Declare it here rather than in sys-dep header files.
16627 * macterm.h (have_menus_p):
16628 * msdos.h (have_menus_p):
16629 * xterm.h (have_menus_p): Remove.
16630
16631 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
16632 (Fmake_variable_frame_local): Just check the variable's const-ness
16633 rather than checking nil or t.
16634
166352007-10-22 Jason Rumney <jasonr@gnu.org>
16636
16637 * w32fns.c: Include math.h.
16638 (w32_abort): Declaration moved to nt/config.nt.
16639
16640 * s/ms-w32.h (HAVE_STDLIB_H): Define.
16641 (abort): Redefinition moved to nt/config.nt.
16642
16643 * m/windowsnt.h: Remove.
16644
166452007-10-22 Juanma Barranquero <lekktu@gmail.com>
16646
16647 * emacs.c (Fdump_emacs): Fix typo in message.
16648 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
16649 <installation-directory>: Reflow docstring.
16650
166512007-10-22 Juri Linkov <juri@jurta.org>
16652
16653 * minibuf.c: Allow minibuffer default to be a list of default values.
16654 With empty input use the first element of this list as returned default.
16655 (string_to_object)
16656 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
16657 (read_minibuf): If defalt is cons, set histstring to its car.
16658 (Fread_string): If default_value is cons, set val to its car.
16659 (Fread_buffer): If def is cons, use its car.
16660 (Fcompleting_read): If defalt is cons, set val to its car.
16661
166622007-10-21 Michael Albinus <michael.albinus@gmx.de>
16663
16664 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
16665
166662007-10-20 Juanma Barranquero <lekktu@gmail.com>
16667
16668 * doc.c (Fdocumentation): Check for advice in all cases.
16669
166702007-10-19 Chong Yidong <cyd@stupidchicken.com>
16671
16672 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
16673
166742007-10-19 Richard Stallman <rms@gnu.org>
16675
16676 * doc.c (Fdocumentation): Check for and handle an advised function.
16677
166782007-10-19 Juanma Barranquero <lekktu@gmail.com>
16679
16680 * process.c (Fset_process_filter): Doc fix.
16681
166822007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
16683
16684 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
16685 which caused key-translation-map to applied repeatedly (thus breaking
16686 double-mode).
16687
166882007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
16689
16690 * xselect.c (x_own_selection, x_handle_selection_clear)
16691 (x_clear_frame_selections):
16692 * w32menu.c (list_of_panes, list_of_items):
16693 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
16694 * textprop.c (validate_plist, interval_has_all_properties)
16695 (interval_has_some_properties, interval_has_some_properties_list)
16696 (add_properties, text_property_list):
16697 * process.c (Fget_buffer_process, list_processes_1, status_notify):
16698 * minibuf.c (Fassoc_string):
16699 * macselect.c (x_own_selection, x_clear_frame_selections)
16700 (Fx_disown_selection_internal):
16701 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
16702 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
16703
167042007-10-17 Chong Yidong <cyd@stupidchicken.com>
16705
16706 * process.c: Link to libs for calling res_init() if available.
16707 (Fmake_network_process): Call res_init() before getaddrinfo or
16708 gethostbyname, if possible.
16709
167102007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
16711
16712 * lread.c (read1): Set pvectype for char_tables.
16713
16714 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
16715 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
16716 Add type checks.
16717 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
16718
16719 * alloc.c (free_misc): Use XMISCTYPE.
16720 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
16721
167222007-10-17 Glenn Morris <rgm@gnu.org>
16723
16724 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
16725 (syms_of_minibuf): Add Qcompletion_ignore_case.
16726 * dired.c (Qcompletion_ignore_case): Change to external.
16727 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
16728 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
16729 (Fread_file_name): Use it rather than intern'ing.
16730
16731 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
16732 (Fread_coding_system): Ignore case of user input.
16733
167342007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16735
16736 * xdisp.c (handle_display_prop): Ignore display specs after
16737 replacing one when string text is being replaced.
16738 (handle_single_display_spec): Pretend as if characters with display
16739 property haven't been consumed only when buffer text is being replaced.
16740
167412007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
16742
16743 * xfns.c (Fx_create_frame, Fx_display_list):
16744 * window.c (window_fixed_size_p, enlarge_window)
16745 (shrink_window_lowest_first):
16746 * macterm.c (init_font_name_table):
16747 * macfns.c (Fx_create_frame, Fx_display_list):
16748 * lread.c (close_load_descs):
16749 * keyboard.c (read_char_x_menu_prompt):
16750 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
16751 * coding.c (code_convert_region_unwind): Test the type of an object
16752 rather than just !NILP before extracting data from it.
16753
16754 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
16755
16756 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
16757 (XMISCANY): New macro.
16758 (XMISCTYPE): Use it.
16759 (struct Lisp_Misc_Any): New type.
16760 (union Lisp_Misc): Use it.
16761 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
16762 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
16763 (find_symbol_value, set_internal, default_value, Fset_default)
16764 (Fmake_variable_buffer_local, Fmake_local_variable)
16765 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
16766 (Flocal_variable_if_set_p, Fvariable_binding_locus):
16767 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
16768 * alloc.c (allocate_buffer): Set the size and tag.
16769 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
16770 Use XMISCANY.
16771 (die): Follow the GNU convention for error messages.
16772 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
16773 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
16774 tag any more.
16775 (set_buffer_internal_1):
16776 * frame.c (store_frame_param):
16777 * eval.c (specbind):
16778 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
16779
16780 * doc.c (Fsnarf_documentation): Simplify.
16781
167822007-10-14 Juanma Barranquero <lekktu@gmail.com>
16783
16784 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
16785 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
16786
167872007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
16788
16789 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
16790
167912007-10-14 Juanma Barranquero <lekktu@gmail.com>
16792
16793 * eval.c (do_autoload): Don't save autoloads.
16794
16795 * data.c (Ffset): Save autoload of the function being set.
16796
167972007-10-07 John Paul Wallington <jpw@pobox.com>
16798
16799 * xfns.c (x_create_tip_frame): Set the `display-type' frame
16800 parameter before setting up faces.
16801
168022007-10-13 Eli Zaretskii <eliz@gnu.org>
16803
16804 * ccl.c (Fregister_code_conversion_map):
16805 * keyboard.c (append_tool_bar_item): Reformat last change.
16806
16807 * lisp.h (eabs): Rename from `abs'. All callers changed.
16808
168092007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
16810
16811 * buffer.c (add_overlay_mod_hooklist):
16812 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
16813 * fontset.c (make_fontset):
16814 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
16815 (append_tool_bar_item):
16816 * macmenu.c (grow_menu_items):
16817 * w32menu.c (grow_menu_items):
16818 * xmenu.c (grow_menu_items): Use larger_vector.
16819
168202007-10-13 Eli Zaretskii <eliz@gnu.org>
16821
16822 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
16823 selected frame'' on MSDOS).
16824
168252007-10-12 Martin Rudalics <rudalics@gmx.at>
16826
16827 * frame.c (Qexplicit_name): New variable.
16828 (x_report_frame_params): Report it in parameter alist.
16829 (syms_of_frame): Intern and staticpro it.
16830
168312007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
16832
16833 * macfns.c (x_create_tip_frame): Set terminal for frame.
16834
168352007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
16836
16837 * frame.c (Qenvironment): Remove.
16838 (syms_of_frame) <Qenvironment>: Don't initialize.
16839 (Fdelete_frame): Don't treat the `environment' param specially.
16840 * frame.h (Qenvironment): Don't declare.
16841 * callproc.c (set_initial_environment): Don't set unused frame param.
16842
16843 * frame.c (Fframe_with_environment): Remove.
16844 (syms_of_frame) <Sframe_with_environment>: Don't declare.
16845
16846 * lisp.h (Fframe_with_environment): Don't declare.
16847
168482007-10-10 Juanma Barranquero <lekktu@gmail.com>
16849
16850 * indent.c (indent_tabs_mode, last_known_column)
16851 (last_known_column_modified): Make static.
16852 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
16853
168542007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
16855
16856 * puresize.h (BASE_PURESIZE): Increase to 1170000.
16857
168582007-10-09 Jason Rumney <jasonr@gnu.org>
16859
16860 * w32term.c (x_set_window_size): Disable code that attempts to tell
16861 Lisp code about a size change before it actually happens.
16862
168632007-10-09 Richard Stallman <rms@gnu.org>
16864
16865 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
16866 return HANDLED_RETURN.
16867
168682007-10-08 Martin Rudalics <rudalics@gmx.at>
16869
16870 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
16871 when there's an unread command event.
16872
16873 * frame.c (focus_follows_mouse): Move here from frame.el to allow
16874 window autoselection act appropriately when leaving selected frame.
16875 (syms_of_frame): Initialize focus_follows_mouse.
16876 * frame.h (focus_follows_mouse): Extern it.
16877 * macterm.c (XTread_socket): When focus_follows_mouse is nil
16878 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
16879 * msdos.c (dos_rawgetc): Likewise.
16880 * w32term.c (w32_read_socket): Likewise.
16881 * xterm.c (handle_one_xevent): Likewise.
16882 * xdisp.c (syms_of_xdisp): In doc-string of
16883 mouse-autoselect-window mention focus-follows-mouse.
16884
168852007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16886
16887 * macterm.c (mac_load_query_font): Fix missing return value.
16888 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
16889 Add BLOCK_INPUT.
16890
168912007-10-08 Richard Stallman <rms@gnu.org>
16892
16893 * xdisp.c (get_window_cursor_type): Implement documented behavior
16894 for cursor-in-non-selected-windows = t.
16895
168962007-10-08 Jason Rumney <jasonr@gnu.org>
16897
16898 * w32.c (w32_get_resource): Always close registry keys.
16899
169002007-10-08 Jason Rumney <jasonr@gnu.org>
16901
16902 * makefile.w32-in (LIBS): Add COMCTL32.
16903
16904 * w32fns.c (globals_of_w32fns): Init common controls.
16905
169062007-10-08 Richard Stallman <rms@gnu.org>
16907
16908 * image.c (our_memory_buffer): Rename from omfib_buffer.
16909
169102007-10-08 Richard Stallman <rms@gnu.org>
16911
16912 * buffer.c (Foverlays_at): Doc fix.
16913
169142007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
16915
16916 * fns.c (Fplist_put): Preserve uneven tail data.
16917
169182007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
16919
16920 * termhooks.h (enum event_kind): Remove trailing comma.
16921
16922 * frame.h (enum): Remove trailing comma.
16923
169242007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
16925
16926 * w32proc.c (delete_child): Don't terminate threads of zombies.
16927
169282007-10-08 Martin Rudalics <rudalics@gmx.at>
16929
16930 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
16931
16932 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
16933 last-repeatable-command.
16934 (init_kboard): Initialize Vlast_repeatable_command.
16935 (command_loop_1): Set it to real_this_command unless that was
16936 bound to an input event.
16937 (mark_kboards): Mark it.
16938
169392007-10-08 Richard Stallman <rms@gnu.org>
16940
16941 * eval.c (condition-case): Doc fix.
16942
169432007-10-08 Masatake YAMATO <jet@gyve.org>
16944
16945 * xfaces.c (tty_supports_face_attributes_p): Fix code
16946 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
16947 was copied and not edited.
16948
169492007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
16950
16951 Add new `input-decode-map' keymap and use it for terminal
16952 escape sequences.
16953 * keyboard.h (struct kboard): Add Vinput_decode_map.
16954 Remove Vlocal_key_translation_map.
16955 * keyboard.c (read_key_sequence): Add support for input-decode-map.
16956 (init_kboard): Init input-decode-map.
16957 Replace local-key-translation-map back with key-translation-map.
16958 (syms_of_keyboard): Declare input-decode-map.
16959 Remove local-key-translation-map. Update docstrings.
16960 (mark_kboards): Mark Vinput_decode_map.
16961 Don't mark Vlocal_key_translation_map.
16962 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
16963 Replace local-key-translation-map back with key-translation-map.
16964 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
16965 Bind in input-decode-map rather than function-key-map.
16966
16967 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
16968 This was made redundant by the previous introduction of XSETPVECTYPE.
16969
169702007-10-09 Richard Stallman <rms@gnu.org>
16971
16972 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
16973
169742007-09-29 Richard Stallman <rms@gnu.org>
16975
16976 * eval.c (internal_condition_case_2, internal_condition_case_1)
16977 (internal_condition_case): Reenable abort if x_catching_errors ()
16978 to see if that really happens and why.
16979
169802007-10-06 Andreas Schwab <schwab@suse.de>
16981
16982 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
16983
169842007-10-04 Juanma Barranquero <lekktu@gmail.com>
16985
16986 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
16987
169882007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
16989
16990 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
16991
169922007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
16993
16994 * window.h (struct window):
16995 * window.c (struct save_window_data, struct saved_window):
16996 * termhooks.h (struct terminal):
16997 * process.h (struct Lisp_Process):
16998 * frame.h (struct frame):
16999 * buffer.h (struct buffer):
17000 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
17001 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
17002 The size field of (pseudo)vectors is now unsigned.
17003 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
17004
17005 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
17006 Turn `count' into an integer.
17007
17008 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
17009 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
17010 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
17011 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
17012 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
17013
17014 * alloc.c (allocate_pseudovector): New fun.
17015 (ALLOCATE_PSEUDOVECTOR): New macro.
17016 (allocate_window, allocate_terminal, allocate_frame)
17017 (allocate_process): Use it.
17018 (mark_vectorlike): New function.
17019 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
17020 (mark_terminals): Use it.
17021 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
17022 (Fmake_byte_code): Use XSETPVECTYPE.
17023
17024 * frame.c (Fframe_parameters): Minor simplification.
17025
17026 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
17027
17028 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
17029
17030 * buffer.c (Fget_buffer_create, init_buffer_once):
17031 * lread.c (defsubr):
17032 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
17033
17034 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
17035 defined differently in the m/*.h files.
17036 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
17037 (XSETPVECTYPE): New macro.
17038 (XSETPSEUDOVECTOR): Use it.
17039
17040 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
17041 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
17042
17043 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
17044 * lread.c (defvar_per_buffer):
17045 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
17046
17047 * window.c (candidate_window_p): Only consider as visible frames that
17048 are on the same terminal.
17049
17050 * m/ibms390x.h (MARKBIT): Remove unused macro.
17051
170522007-10-01 Juanma Barranquero <lekktu@gmail.com>
17053
17054 * lread.c (Fload): Fix typo in docstring.
17055
170562007-10-01 Michaël Cadilhac <michael@cadilhac.name>
17057
17058 * floatfns.c (Fexpt): Manually check for overflows, so that a power
17059 of a non-zero value can't yield zero.
17060
170612007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
17062
17063 * term.c (term_clear_mouse_face, term_mouse_highlight)
17064 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
17065
17066 * print.c (safe_debug_print): Use XHASH.
17067
17068 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
17069 Lisp elements such as tags.
17070 (XHASH): New macro.
17071 (EQ): Use it.
17072 (SREF, SSET, STRING_COPYIN): Use SDATA.
17073 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
17074
17075 * alloc.c (mark_terminal): Remove left-over declaration.
17076 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
17077 (allocate_vectorlike): Remove type argument. Adjust callers.
17078 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
17079 Only handle the one remaining MEM_TYPE_VECTORLIKE.
17080
17081 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
17082 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
17083 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
17084 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
17085 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
17086 Use them.
17087
17088 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
17089 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
17090 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
17091
170922007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
17093
17094 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
17095 loaded by default.
17096
170972007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
17098
17099 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
17100 on this tty.
17101 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
17102
17103 * term.c (mouse_face_window): Rename from Qmouse_face_window.
17104 Update all users.
17105 (handle_one_term_event): Use Gpm_DrawPointer.
17106 (Fgpm_mouse_start): Rename from Fterm_open_connection.
17107 Signal errors instead of returning nil. Always return nil.
17108 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
17109 Make it a noop if gpm-mouse was not activated.
17110 (syms_of_term): Update names.
17111
171122007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
17113
17114 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
17115 (init_sys_modes): Check that gpm_tty is the current tty.
17116
17117 * alloc.c (allocate_terminal): Set the vector size to only count the
17118 lisp fields. Initialize those to nil.
17119 (mark_object): Don't treat terminals specially.
17120 (mark_terminal): Remove.
17121 (mark_terminals): Use mark_object instead.
17122
17123 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
17124 the GC to the beginning.
17125
17126 * indent.h:
17127 * indent.c: Use EMACS_INT for ints coming from Elisp data.
17128
17129 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
17130
171312007-09-25 Jason Rumney <jasonr@gnu.org>
17132
17133 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
17134
17135 * w32console.c (create_w32cons_output): Remove.
17136
17137 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
17138
17139 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
17140 (reset_sys_modes): Use reset_terminal_modes_hook.
17141
171422007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
17143
17144 * eval.c (do_autoload): Don't output any message.
17145
171462007-09-24 Juri Linkov <juri@jurta.org>
17147
17148 * emacs.c (standard_args): Change priority of "--no-splash"
17149 from 40 to 3. Add "--no-desktop" with the same priority.
17150
171512007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
17152
17153 * alloc.c (gc_sweep): Check cons cell mark bits word by word
17154 and optimize the case where they are all 1.
17155
171562007-09-23 Johannes Weiner <hannes@saeurebad.de>
17157
17158 * lisp.h (abs): Define if not defined.
17159 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
17160 Don't define `abs', since it's defined in lisp.h.
17161
171622007-09-22 Eli Zaretskii <eliz@gnu.org>
17163
17164 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
17165 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
17166 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
17167 (init_tty): Use DEV_TTY instead of "/dev/tty".
17168 [WINDOWSNT]: No need to protect from NAME arg being null.
17169
171702007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
17171
17172 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
17173 up the tty state.
17174
171752007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17176
17177 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
17178 (gpm_tty): Change its type.
17179 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
17180 (gpm_tty): Change its type and initialize it.
17181 (Fterm_open_connection): Check the frame is indeed a tty.
17182 Use the new gpm_tty.
17183 (Fterm_close_connection): Use the new gpm_tty.
17184 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
17185 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
17186
171872007-09-21 Juanma Barranquero <lekktu@gmail.com>
17188
17189 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
17190 underline_color, to draw strike-through.
17191
171922007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17193
17194 * lisp.h (allocate_terminal): Declare.
17195
17196 * window.c (candidate_window_p): Consider frames that are being placed
17197 by the user as somewhere between visible and iconified.
17198 (window_loop): Prefer windows on the current frame.
17199 (Fselect_window): Move the use of select-frame to the beginning so we
17200 can just delegate all the work (it'll call us back anyway).
17201
17202 * frame.c (Qdisplay_environment_variable):
17203 * frame.h (Qdisplay_environment_variable): Delete.
17204
17205 * .gdbinit (xbacktrace): Print the arg's address rather than the value
17206 of the first arg, since that value may be a union.
17207
17208 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
17209 parameter rather than Qdisplay_environment_variable. If all else
17210 fails, look for DISPLAY in initial-environment.
17211
172122007-09-21 Glenn Morris <rgm@gnu.org>
17213
17214 * Makefile.in (emacstool): Remove target.
17215 (lisp, shortlisp): Remove termdev.elc.
17216
172172007-09-21 Markus Triska <markus.triska@gmx.at>
17218
17219 * xterm.c (x_delete_display): Compile session management conditionally.
17220
172212007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
17222
17223 * callproc.c (getenv_internal_1): New function.
17224 (getenv_internal): Use it.
17225 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
17226
17227 * terminal.c (get_terminal): Don't accept ints to represent terminals.
17228 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
17229 (Fset_terminal_parameter): Work with dead terminals as well.
17230 (Fmodify_terminal_parameters): Remove.
17231
17232 * terminal.c (get_terminal): Handle terminals.
17233 Make sure the terminal returned is live.
17234 (create_terminal): Use allocate_terminal.
17235 (mark_terminals): Move to alloc.c.
17236 (delete_terminal): Use terminal->name as liveness status.
17237 NULL out fields after freeing their contents.
17238 Don't deallocate the object.
17239 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
17240 rather than an int.
17241 (Fterminal_live_p): Accept non-integer arguments.
17242 (Fterminal_list): Return terminal objects rather than an ints.
17243
17244 * alloc.c (enum mem_type): New member for `terminal' objects.
17245 (allocate_terminal): New function.
17246 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
17247 Handle terminals.
17248 (mark_terminal): New fun.
17249 (mark_terminals): Move from terminal.c.
17250
17251 * term.c (get_tty_terminal): Don't treat output_initial specially.
17252 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
17253 (delete_tty): Use terminal->name as liveness status.
17254
17255 * termhooks.h (struct terminal): Make it into a pseudovector.
17256 Remove `deleted' replaced by checking `name's nullness.
17257
17258 * print.c (print_object): Handle terminals.
17259
17260 * lisp.h (enum pvec_type): New `terminal' pseudovector.
17261 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
17262
17263 * frame.c (make_terminal_frame):
17264 * keyboard.c (tty_read_avail_input):
17265 * w32term.c (x_delete_terminal):
17266 * xfns.c (Fx_create_frame, x_create_tip_frame):
17267 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
17268
172692007-09-20 Glenn Morris <rgm@gnu.org>
17270
17271 * process.c (Fmake_network_process): Doc fix.
17272
172732007-09-19 Jason Rumney <jasonr@gnu.org>
17274
17275 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
17276
172772007-09-19 Michaël Cadilhac <michael@cadilhac.name>
17278
17279 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
17280 Fix a C warning regarding variable constness.
17281
17282 * xterm.c (handle_one_xevent): Fix a C warning.
17283
172842007-09-18 Jason Rumney <jasonr@gnu.org>
17285
17286 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
17287
172882007-09-17 Jan Djärv <jan.h.d@swipnet.se>
17289
17290 * gtkutil.c (gdpy_def): New variable.
17291 (xg_initialize): Initialize gdpy_def.
17292 (xg_display_close): If no other display exists, set gdpy_def to a
17293 new connection.
17294
172952007-09-16 Jan Djärv <jan.h.d@swipnet.se>
17296
17297 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
17298 when we have no file name for the icon.
17299 (xg_tool_bar_expose_callback): Remove.
17300 (xg_create_tool_bar): Don't connect expose signal to
17301 xg_tool_bar_expose_callback.
17302 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
17303
173042007-09-16 Andreas Schwab <schwab@suse.de>
17305
17306 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
17307 values instead of zapping them.
17308
173092007-09-14 Glenn Morris <rgm@gnu.org>
17310
17311 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
17312 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
17313 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
17314 scope and rename to omfib_buffer for clarity.
17315 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
17316
173172007-09-14 Kenichi Handa <handa@m17n.org>
17318
17319 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
17320
173212007-09-13 Jason Rumney <jasonr@gnu.org>
17322
17323 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
17324
17325 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
17326
17327 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
17328 (mac_term_init): Call here instead, passing rif.
17329
173302007-09-13 Glenn Morris <rgm@gnu.org>
17331
17332 * s/hpux.h: No longer define `static' as nothing.
17333
173342007-09-13 Johan Bockgård <bojohan@gnu.org>
17335
17336 * callint.c (Fcall_interactively): Remove unused var `fun'.
17337
173382007-09-12 Romain Francoise <romain@orebokech.com>
17339
17340 * window.c (prefer_window_split_horizontally, display_buffer):
17341 Revert 2007-09-08 change.
17342
173432007-09-12 Glenn Morris <rgm@gnu.org>
17344
17345 * alloca.c: Remove file.
17346 * Makefile.in (alloca): Do not undef.
17347 (allocaobj, alloca.o): Remove.
17348 (otherobj): Remove allocaobj.
17349 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
17350 * regex.c (C_ALLOCA): Remove all references and code that was only
17351 used when this was defined.
17352 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
17353 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
17354 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
17355
17356 * Makefile.in (SOURCES, unlock, relock): Delete.
17357
17358 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
17359 (menu_grab_callback): All uses changed.
17360
17361 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
17362 (x_reply_selection_request): All uses changed.
17363
173642007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
17365
17366 * lread.c (load_warn_old_style_backquotes): Change message to look
17367 better when it appears in the middle of byte-compiler messages.
17368
173692007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
17370
17371 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
17372
17373 * xterm.c (x_create_terminal): Add comment.
17374
17375 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
17376
173772007-09-10 Richard Stallman <rms@gnu.org>
17378
17379 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
17380
173812007-09-10 Michaël Cadilhac <michael@cadilhac.name>
17382
17383 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
17384 (DEFUN): Document `intspec', use it instead of `prompt'.
17385
17386 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
17387
17388 * data.c (Finteractive_form): If the interactive specification starts
17389 with a `(', use it as a Lisp form.
17390
17391 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
17392 name and file modes.
17393
17394 * callint.c (Fcall_interactively): Comment fixes.
17395
173962007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
17397
17398 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
17399 and compiled functions.
17400
174012007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
17402
17403 * window.c (prefer_window_split_horizontally): New variable.
17404 (display_buffer): Consider splitting window horizontally depending
17405 on prefer_window_split_horizontally.
17406
174072007-09-08 Eli Zaretskii <eliz@gnu.org>
17408
17409 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
17410
174112007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
17412
17413 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
17414
17415 * frame.c (x_set_frame_parameters): Check number is positive before
17416 using XFASTINT.
17417
17418 * window.c (freeze_window_start): Don't presume selected_window holds
17419 a window object.
17420 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
17421
174222007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
17423
17424 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
17425
174262007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
17427
17428 * window.c (Vsplit_window_preferred_function): New var.
17429 (Fdisplay_buffer): Use it.
17430 (syms_of_window): Export, and initialize it.
17431
174322007-09-06 Pixel <pixel@mandriva.com> (tiny change)
17433
17434 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
17435
174362007-09-06 Glenn Morris <rgm@gnu.org>
17437
17438 * gtkutil.c (menu_grab_callback) <cnt>:
17439 * xselect.c (x_reply_selection_request) <cnt>: Move static
17440 variable to file scope.
17441
174422007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
17443
17444 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
17445 consistent values of selected_frame and selected_window.
17446
174472007-09-04 Jason Rumney <jasonr@gnu.org>
17448
17449 * w32console.c (initialize_w32_display): Zero unused hooks.
17450
174512007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
17452
17453 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
17454 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
17455
174562007-09-04 Jason Rumney <jasonr@gnu.org>
17457
17458 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
17459 in w32console.c. Set up input. Remove XXX comments that have been
17460 confirmed as correct.
17461
17462 * s/ms-w32.h (MULTI_KBOARD): Define.
17463
17464 * w32console.c (one_and_only_w32cons): Remove.
17465 (initialize_w32_display): Take terminal argument.
17466
17467 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
17468 initialize_w32_display.
17469 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
17470
17471 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
17472
17473 * keyboard.c (discard_mouse_events): Discard it.
17474 (make_lispy_event): Translate it to a lisp event.
17475 (lispy_wheel_names): Add wheel-left and right events.
17476 (syms_of_keyboard): Enlarge wheel_syms.
17477
17478 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
17479 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
17480
17481 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
17482
17483 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
17484 from WM_MOUSEHWHEEL.
17485 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
17486
17487 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
17488 terminal.
17489
17490 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
17491 keyboard for the terminal.
17492
174932007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
17494
17495 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
17496 (Vresume_tty_hook): Rename from Vresume_tty_functions.
17497 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
17498 and resume-tty-function to resume-tty-hook.
17499 (Fsuspend_tty, Fresume_tty): Use new names.
17500
175012007-09-02 Jan Djärv <jan.h.d@swipnet.se>
17502
17503 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
17504 if it starts with "n:".
17505
175062007-08-31 Jan Djärv <jan.h.d@swipnet.se>
17507
17508 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
17509
175102007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
17511
17512 * frame.h:
17513 * frame.c (Qterm_environment_variable): Remove.
17514 (syms_of_frame): Don't init and staticpro it.
17515
17516 * callproc.c (getenv_internal): Remove special case for $TERM.
17517
17518 * callproc.c (Vinitial_environment): New variable.
17519 (set_initial_environment): Initialize it.
17520 (syms_of_callproc): Declare it.
17521 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
17522 TERM under which a process runs is never related to the TERM in which
17523 Emacs is running.
17524
175252007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
17526
17527 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
17528 * s/darwin.h: ... do it here.
17529
175302007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
17531
17532 * lisp.h (set_initial_environment): Rename from set_global_environment.
17533
17534 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
17535 removed by mistake on the multi-tty branch.
17536
17537 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
17538 (Fmodify_frame_parameters): Return a value.
17539
17540 * image.c (png_load): Comment-out var only used in commented-out code.
17541
17542 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
17543 before passing it to mark_object.
17544
17545 * xfaces.c (internal_resolve_face_name): Return a value.
17546 (internal_resolve_face_name, resolve_face_name_error): Comment out.
17547
17548 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
17549 (x_icon): Comment-out var only used in commented-out code.
17550
175512007-08-29 Romain Francoise <romain@orebokech.com>
17552
17553 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
17554 QUIT hasn't been provided.
17555
175562007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
17557
17558 * callproc.c (child_setup, getenv_internal): Use the
17559 display-environment-variable and term-environment-variable frame params.
17560 (set_initial_environment): Initialise Vprocess_environment.
17561
17562 * config.in: Disable multi-keyboard support on a mac.
17563
17564 * frame.c (Qterm_environment_variable)
17565 (Qdisplay_environment_variable): New variables.
17566 (syms_of_frame): Intern and staticpro them.
17567 (Fmake_terminal_frame): Disable output method test.
17568
17569 * frame.h: Declare them here.
17570
17571 * macfns.c (x_set_mouse_color): Get rif from the frame.
17572 (x_set_tool_bar_lines): Don't use updating_frame.
17573 (mac_window): Add 2 new parameters for consistency with other systems.
17574 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
17575 frame parameters following what is done in X11 and w32. Don't use
17576 FRAME_MAC_DISPLAY_INFO.
17577 (Fx_open_connection, start_hourglass): Remove window-system check.
17578 (x_create_tip_frame): Get the keyboard from the terminal.
17579
17580 * macmenu.c: Reorder includes.
17581 (Fx_popup_menu): Use terminal specific mouse_position_hook.
17582
17583 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
17584 terminal parameter.
17585 (x_clear_frame): Add a frame parameter.
17586 (note_mouse_movement): Get rif from the frame.
17587 (mac_term_init): Initialize the terminal.
17588 (mac_initialize): Make static and move terminal initialization ...
17589 (mac_create_terminal): ... to this new function.
17590
17591 * macterm.h (struct mac_display_info): Add terminal.
17592 (mac_initialize): Delete declaration.
17593
17594 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
17595
17596 * sysdep.c: Comment out text after #endif.
17597
17598 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
17599 is defined. Better initialize ttys in windows. Use terminal
17600 specific mouse_position_hook.
17601
17602 * termhooks.h (union display_info): Add mac_display_info.
17603
17604 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
17605 Set the default minibuffer frame, window_system and the rest of the
17606 frame parameters following what is done in X11.
17607
17608 * w32term.c (w32_initialize): Make static.
17609
17610 * xselect.c (x_handle_selection_clear): Only access
17611 terminal->kboard when MULTI_KBOARD is defined.
17612
17613 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
17614 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
17615
176162007-08-29 Jason Rumney <jasonr@gnu.org>
17617
17618 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
17619 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
17620
17621 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
17622 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
17623
17624 * keyboard.c (restore_kboard_configuration): Only define when
17625 MULTI_KBOARD defined.
17626
17627 * makefile.w32-in: Update dependancies from Makefile.in.
17628 (OBJ1): Add terminal.$(O)
17629
17630 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
17631 Don't define function body.
17632 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
17633
17634 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
17635
17636 * w32.c (request_sigio, unrequest_sigio): Remove.
17637
17638 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
17639 (w32con_clear_frame, w32con_clear_end_of_line)
17640 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
17641 (w32con_delete_glyphs, w32con_set_terminal_window)
17642 (scroll_line, w32_sys_ring_bell): Add frame arg.
17643 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
17644 Add terminal arg.
17645 (PICK_FRAME): Remove.
17646 (w32con_write_glyphs): Use frame specific terminal coding.
17647 (one_and_only_w32cons): New global variable.
17648 (initialize_w32_display): Use it for storing hooks.
17649 (create_w32cons_output): New function.
17650
17651 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
17652 arg a frame.
17653
17654 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
17655 Set window_system.
17656 (x_set_tool_bar_lines): Don't use updating_frame.
17657 (Fx_create_frame): Set terminal and ref count.
17658 (Fx_open_connection): Remove window-system check.
17659
17660 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
17661
17662 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
17663 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
17664 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
17665 Add frame arg.
17666 (x_delete_terminal, w32_create_terminal): New functions.
17667 (w32_term_init): Create a terminal.
17668 (w32_initialize): Move terminal specific initialization to
17669 w32_create_terminal.
17670
17671 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
17672 (w32_clear_rect, w32_clear_area): Use background from frame.
17673 (w32_display_info): Add terminal.
17674 (w32_sys_ring_bell, x_delete_display): Declare here.
17675
17676 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
17677
17678 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
17679
176802007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
17681
17682 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
17683 Fix get_named_tty calls for the controlling tty.
17684
176852007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
17686
17687 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
17688
176892007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
17690
17691 * term.c (tty_insert_glyphs): Add missing first parameter.
17692
176932007-08-29 Károly Lőrentey <karoly@lorentey.hu>
17694
17695 * buffer.c (Fbuffer_list, Fbury_buffer):
17696 Take frame->buried_buffer_list into account.
17697
17698 * cm.c (current_tty): New variable, for cmputc().
17699 (cmputc): Use it.
17700 (cmcheckmagic): Add tty parameter, look up terminal streams there.
17701 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
17702 (cmgoto): Add tty parameter. Pass it on to calccost().
17703 Use emacs_tputs() instead of tputs().
17704
17705 * cm.h (emacs_tputs): New macro to set current_tty, and then call
17706 tputs().
17707 (current_tty): New variable, for cmputc().
17708 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
17709
17710 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
17711 (internal_condition_case, internal_condition_case_1)
17712 (internal_condition_case_2): Don't abort when x_catching_errors.
17713
17714 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
17715 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
17716 prevent crashes caused by bogus longjmps in read_char.
17717
17718 * keymap.h (Fset_keymap_parent): Add EXFUN.
17719
17720 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
17721 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
17722 Remove redundant definition.
17723
17724 * macfns.c (x_set_mouse_color, x_make_gc):
17725 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17726
17727 * w32term.c (x_free_frame_resources):
17728 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17729 (w32_initialize): Use the accessor macros for terminal characteristics.
17730
17731 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
17732 Use the accessor macros for terminal characteristics.
17733 * msdos.c (internal_terminal_init): Use the accessor macros for
17734 terminal characteristics.
17735 (ScreenVisualBell, internal_terminal_init):
17736 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17737
17738 * termopts.h (no_redraw_on_reenter): Declare.
17739
17740 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
17741 (mark_terminals, mark_ttys): Declare.
17742 (Fgarbage_collect): Call them.
17743 (mark_object): Mark buried_buffer_list.
17744
17745 * prefix-args.c: Include stdlib.h for exit.
17746
17747 * syssignal.h: Add comment.
17748
17749 * indent.c: Include stdio.h.
17750
17751 * window.h (Vinitial_window_system): Declare.
17752 (Vwindow_system): Delete declaration.
17753
17754 * fontset.c (Finternal_char_font): Use FRAME_RIF.
17755
17756 * image.c (lookup_image): Don't initialize `c' until the xasserts
17757 have been run.
17758
17759 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
17760 FRAME_FOREGROUND_PIXEL.
17761
17762 * print.c (print_preprocess): Don't lose print_depth levels while
17763 iterating.
17764
17765 * widget.c (update_from_various_frame_slots):
17766 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17767
17768 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
17769 frames.
17770 (window_internal_height): Remove bogus make_number call.
17771 (init_window_once): Call make_terminal_frame with two zero parameters.
17772
17773 * fileio.c (Fread_file_name): Update comment.
17774
17775 * callint.c (Fcall_interactively):
17776 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
17777 Make sure it is correctly unwound.
17778
17779 * xsmfns.c (x_session_close): New function.
17780
17781 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
17782 Delete declarations.
17783
17784 * xterm.h: Remove declaration for x_fully_uncatch_errors.
17785 (x_output): Remove background_pixel and foreground_pixel fields.
17786 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
17787 (x_delete_device, x_session_close): Declare.
17788
17789 * lread.c: Include setjmp.h. Update declaration of `read_char'.
17790 (read_filtered_event): Call `read_char' with a local
17791 `wrong_kboard_jmpbuf'.
17792
17793 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
17794 Don't call single_kboard_state. Use FRAME_RIF.
17795
17796 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
17797 systems.
17798
17799 * lisp.h (set_process_environment): Rename to `set_global_environment'.
17800 (Fframe_with_environment, Fset_input_meta_mode)
17801 (Fset_quit_char): EXFUN.
17802 (x_create_device, tty_output, terminal, tty_display_info): Declare.
17803 (init_sys_modes, reset_sys_modes): Update prototypes.
17804 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
17805
17806 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
17807 Vlocal_key_translation_map, and Vkeyboard_translate_table.
17808 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
17809 Delete declarations.
17810 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
17811 (temporarily_switch_to_single_kboard, tty_read_avail_input):
17812 New declarations.
17813
17814 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
17815 already does that during init_display(). Call syms_of_keymap
17816 before syms_of_keyboard. Call `syms_of_terminal'.
17817 Call set_initial_environment, not set_process_environment.
17818 (shut_down_emacs): Call reset_all_sys_modes() instead of
17819 reset_sys_modes().
17820
17821 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
17822 (internal_resolve_face_name, resolve_face_name_error): New functions.
17823 (resolve_face_name): Protect against loops and errors thrown by Fget.
17824 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
17825 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
17826
17827 * scroll.c: Replace CURTTY() with local variables throughout the
17828 file (where applicable).
17829 (calculate_scrolling, calculate_direct_scrolling)
17830 (scrolling_1, scroll_cost): Use the accessor macros for terminal
17831 characteristics.
17832
17833 * keymap.c (Vfunction_key_map): Remove.
17834 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
17835 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
17836 (Vkey_translation_map): Remove.
17837 (syms_of_keymap): Remove DEFVAR for key-translation-map.
17838 (Fdescribe_buffer_bindings)
17839 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
17840 Update for terminal-local key-translation-map.
17841
17842 * Makefile.in (callproc.o): Update dependencies.
17843 (lisp, shortlisp): Add termdev.elc.
17844 (obj): Add terminal.o.
17845 (terminal.o): Add dependencies.
17846 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
17847 (data.o, fns.o): Add termhooks.h dependency.
17848 (SOME_MACHINE_LISP): Add dnd.elc.
17849 (minibuf.o): Fix typo.
17850 Update dependencies.
17851
17852 * data.c (do_symval_forwarding, store_symval_forwarding)
17853 (find_symbol_value): Use the selected frame's keyboard, not
17854 current_kboard.
17855
17856 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
17857 Vwindow_system.
17858
17859 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
17860 Fmenu_bar_open.
17861 (syms_of_xmenu): Update defsubr.
17862 (mouse_position_for_popup, Fx_popup_menu)
17863 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
17864 (set_frame_menubar, free_frame_menubar)
b97439ce 17865 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
17866 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
17867 an X frame.
17868
17869 * xselect.c (x_own_selection): Abort if not an X frame.
17870 (some_frame_on_display): Check if it is an X frame.
17871 (x_handle_selection_clear): Deal with MULTI_KBOARD.
17872
17873 * coding.c: Include frame.h and termhooks.h.
17874 (terminal_coding, keyboard_coding): Delete.
17875 (Fset_terminal_coding_system_internal)
17876 (Fset_keyboard_coding_system_internal)
17877 (Fkeyboard_coding_system)
17878 (Fterminal_coding_system): Add a terminal parameter.
17879 Get terminal_coding from the terminal.
17880 (init_coding_once): Don't call setup_coding_system here.
17881
17882 * dispextern.h (set_scroll_region, turn_off_insert)
17883 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
17884 (tty_clear_end_of_line, tty_setup_colors)
17885 (delete_tty, updating_frame)
17886 (produce_special_glyphs, produce_glyphs, write_glyphs)
17887 (insert_glyphs): Remove.
17888 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
17889 (tty_turn_off_highlight, get_tty_size): Add declaration.
17890 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
17891
17892 * frame.h (enum output_method): Add output_initial.
17893 (struct x_output): Delete.
17894 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
17895 Access foreground_pixel and background_pixel directly from the frame.
17896 (tty_display): Delete.
17897 (struct frame): Add buried_buffer_list, foreground_pixel,
17898 background_pixel and terminal. Delete kboard.
17899 (union output_data): Add tty.
17900 (FRAME_KBOARD): Get the kboard from the terminal.
17901 (FRAME_INITIAL_P): New macro.
17902 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
17903 (Qterm_environment_variable, Qdisplay_environment_variable)
17904 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
17905 New declarations.
17906
17907 * termchar.h (tty_output, tty_display_info): New structures.
17908 (tty_list): Declare.
17909 (FRAME_TTY, CURTTY): New macros.
17910 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
17911 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
17912 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
17913 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
17914
17915 * callproc.c: Include frame.h and termhooks.h, for terminal
17916 parameters.
17917 (add_env): New function.
17918 (child_setup): Use it.
17919 (child_setup, getenv_internal): Handle the new Vprocess_environment.
17920 (getenv_internal): Fix get_terminal_param call.
17921 (Fgetenv_internal, egetenv): Update doc.
17922 (syms_of_callproc): Initialize Vprocess_environment to nil.
17923 Register and initialize them. Remove obsolete defvars. Update doc
17924 strings.
17925 (child_setup): Handle Vlocal_environment_variables.
17926 (getenv_internal): Add terminal parameter.
17927 Handle Vlocal_environment_variables.
17928 (Fgetenv_internal): Add terminal parameter.
17929 (child_setup, getenv_internal, Fgetenv_internal): Store the local
17930 environment in a frame (not terminal) parameter. Update doc strings.
17931 (set_initial_environment): Rename from set_global_environment.
17932 Store Emacs environment in initial frame parameter.
17933
17934 * xdisp.c (redisplay_internal): Update references to
17935 `previous_terminal_frame'.
17936 (display_mode_line, Fformat_mode_line): Replace calls to
17937 `push_frame_kboard' with `push_kboard'.
17938 (get_glyph_string_clip_rects): Add extra parentheses and
17939 braces to prevent compiler warnings.
17940 (calc_pixel_width_or_height): Add xassert to check that the
17941 frame is alive. Don't call `lookup_image' on a termcap frame.
17942 (message2_nolog, message3_nolog, redisplay_internal)
17943 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
17944 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
17945 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
17946 (Fx_display_pixel_width, Fx_display_pixel_height)
17947 (Fx_display_planes, Fx_display_color_cells)
17948 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
17949 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
17950 (Fx_display_backing_store, Fx_display_visual_class)
17951 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
17952 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
17953
17954 * xfns.c (x_set_foreground_color x_set_background_color)
17955 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
17956 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17957 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
17958 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
17959 terminal that is being deleted.
17960 (Fx_create_frame): Use `store_frame_param' to set `window-system'
17961 frame parameter, and make sure it overrides any user-supplied setting.
17962 (Fx_close_connection, Fx_synchronize): Unify argument names with
17963 the rest of the DEFUNs.
17964
17965 * dispnew.c (Fsend_string_to_terminal): Update call to
17966 `get_tty_terminal'.
17967 (Fredraw_frame, Fsend_string_to_terminal)
17968 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
17969 FRAME_TERMCAP_P and FRAME_TTY.
17970 (window_change_signal): Don't believe width/height values that are
17971 impossibly small.
17972 (Vinitial_window_system): Rename from Vwindow_system.
17973 (termscript, Wcm, rif): Delete.
17974
17975 * termhooks.h (struct terminal): New struct containing the
17976 previously global text display hooks and new members NAME,
17977 DELETED and PARAM_ALIST.
17978 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
17979 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
17980 (FRAME_RIF): New macros.
17981 (get_terminal_param, get_device): New declarations.
17982 (termscript): Delete declaration.
17983
17984 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
17985 (XTflash, x_free_frame_resources, x_scroll_bar_create)
17986 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
17987 FRAME_FOREGROUND_PIXEL.
17988 (x_fully_uncatch_errors): Disable definition.
17989 (x_scroll_bar_expose): Fix reference to foreground pixel.
17990 (XTread_socket): Disable loop on all X displays.
17991 (x_delete_terminal): Don't set terminal->deleted and let
17992 delete_terminal delete the frames on the terminal.
17993 (x_delete_display): Doc update to reflect changes in
17994 delete_terminal.
17995 (x_display_info) <terminal>: Move member earlier in the struct.
17996 (deleting_tty): Remove old variable.
17997 (Fsuspend_tty): Call clear_tty_hooks.
17998 (Fresume_tty, init_tty): Call set_tty_hooks.
17999 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
18000 errors on X frames.
18001 (x_catch_errors_unwind): Abort if x_error_message is NULL.
18002 (handle_one_xevent): Initialize `f' to NULL.
18003 (x_delete_terminal, x_create_terminal): New functions.
18004 (XTset_terminal_modes, XTreset_terminal_modes)
18005 (XTread_socket, x_connection_closed, x_term_init)
18006 (x_term_init, x_delete_display): Add terminal parameter.
18007 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
18008 X connections.
18009
18010 * frame.c: Include termchar.h.
18011 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
18012 (Qwindow_system, Qenvironment, Qterm_environment_variable)
18013 (Qdisplay_environment_variable): New vars.
18014 (Fframep): Deal with output_initial.
18015 (Fframe-live-p): Doc fix.
18016 (Fwindow-system): New function.
18017 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
18018 (make_terminal_frame): Don't create frames on a terminal that is
18019 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18020 (store_frame_param): Check for found_for_frame before calling XFRAME.
18021 (Fmake_terminal_frame): Handle NULL tty names correctly.
18022 (syms_of_frame): Enhance doc string of `default-frame-alist'.
18023 (Fdelete_frame): Remove unused variable `count'. Don't allow other
18024 frames to refer to a deleted frame in their 'environment parameter.
18025 (Fframe_with_environment): New function.
18026 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
18027 (get_future_frame_param): New function.
18028 (Fmake_terminal_frame): Use it.
18029 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
18030
18031 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
18032 * sysdep.c (reset_sys_modes): Update for renames.
18033
18034 * keyboard.c (tty_read_avail_input): New function.
18035 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
18036 (syms_of_keyboard): Defsubr them.
18037 (Fset_input_meta_mode, Fset_quit_char): New functions.
18038 (Fset_input_mode): Split to above functions.
18039 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
18040 parameter. Use it in call to `read_char'.
18041 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
18042 Set wrong_kboard_jmpbuf correctly in recursive calls.
18043 Use current_kboard to access Vkeyboard_translate_table.
18044 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
18045 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
18046 Update longjmp invocations. Remember the original current_kboard,
18047 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
18048 changes it. Comment out unnecessary calls to
18049 `record_single_kboard_state' and `any_kboard_state'.
18050 Update recursive calls.
18051 (wrong_kboard_jmpbuf): Remove global variable.
18052 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
18053 Handle deleted interrupted_kboards correctly; that is a legal
18054 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
18055 and read_char calls. Abort if interrupted_kboard died in read_char.
18056 (any_kboard_state, single_kboard_state)
18057 (push_frame_kboard): Remove function.
18058 (pop_kboard): Switch out of single_kboard mode if the kboard has
18059 been deleted. Remove unused variable. Help debugging by not
18060 changing current_kboard unnecessarily. Set current_kboard to the
18061 kboard of the selected frame when the stored kboard object has
18062 been deleted before pop_kboard.
18063 (temporarily_switch_to_single_kboard): Change first parameter to a
18064 frame pointer. Throw an error when caller wants to change kboards
18065 while in single_kboard mode. Don't push_kboard if we weren't in
18066 single kboard state. Don't pop_kboard if we popped into any
18067 kboard state.
18068 (restore_kboard_configuration): Abort if pop_kboard changed the
18069 kboard in single_kboard mode. Call pop_kboard only after setting
18070 up single_kboard mode.
18071 (Frecursive_edit): Switch to single_kboard mode only in nested
18072 command loops.
18073 (cmd_error, command_loop, command_loop_1, timer_check):
18074 Comment out unnecessary call to `any_kboard_state' and
18075 `record_single_kboard_state'.
18076 (delete_kboard): Exit single_kboard mode if we have just deleted
18077 that kboard. Use FRAME_KBOARD.
18078 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
18079 `fatal_error_signal'.
18080 (record_single_kboard_state): Don't push_kboard if we weren't in
18081 single kboard state. Don't pop_kboard if we popped into any
18082 kboard state.
18083 (push_frame_kboard): Rename to push_kboard.
18084 (kbd_buffer_get_event): Use FRAME_TERMINAL.
18085 (read_avail_input): Read input from all terminals.
18086 (mark_kboards): Also mark Vkeyboard_translate_table.
18087 (kbd_buffer_store_event_hold): Simplify condition.
18088 (read_key_sequence): Reinitialize fkey and keytran at each replay.
18089 (Vkeyboard_translate_table): Move to struct kboard.
18090 (init_kboard): Initialize Vkeyboard_translate_table.
18091 (syms_of_keyboard): Use DEFVAR_KBOARD to define
18092 Vkeyboard_translate_table. Update doc strings. Update docs of
18093 local-function-key-map and function-key-map.
18094
18095 * terminal.c: New file.
18096
18097 * term.c: Include errno.h.
18098 (Vring_bell_function, device_list, initial_device)
18099 (next_device_id, ring_bell, update_begin, update_end)
18100 (set_terminal_window, cursor_to, raw_cursor_to)
18101 (clear_to_end, clear_frame, clear_end_of_line)
18102 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
18103 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
18104 (syms_of_term): Move their initialization to terminal.c.
18105 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
18106 (Ftty_display_color_cells)
18107 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
18108 (clear_tty_hooks, set_tty_hooks)
18109 (init_tty, maybe_fatal): New functions.
18110 (Ftty_type): Return nil if terminal is not on a tty instead of
18111 throwing an error. Doc update.
18112 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
18113 Doc update. Initialize new subrs and variables.
18114 (delete_tty): Use terminal->deleted.
18115 (tty_set_terminal_modes): Rename from set_terminal_modes.
18116 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
18117 (set_scroll_region): Rename to `tty_set_scroll_region'.
18118 (turn_on_insert): Rename to `tty_turn_on_insert'.
18119 (turn_off_insert): Rename to `tty_turn_off_insert'.
18120 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
18121 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
18122 (toggle_highligh): Rename to `tty_toggle_highlight'.
18123 (background_highlight): Rename to `tty_background_highlight'.
18124 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
18125 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
18126 (tty_set_scroll_region, tty_background_highlight)
18127 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
18128 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
18129 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
18130 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
18131 Add static modifier.
18132 (tty_reset_terminal_modes, tty_set_terminal_window)
18133 (tty_set_scroll_region, tty_background_highlight)
18134 (tty_highlight_if_desired, tty_cursor_to)
18135 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
18136 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
18137 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
18138 renames.
18139
181402007-08-28 Jan Djärv <jan.h.d@swipnet.se>
18141
18142 * keyboard.c: Qrtl is new.
18143 (parse_tool_bar_item): Handle :rtl keyword.
18144 (syms_of_keyboard): Intern :rtl keyword.
18145
18146 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
18147
18148 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
18149 so no Lisp code is executed.
18150 (file_for_image, find_rtl_image): New functions.
18151 (xg_get_image_for_pixmap): Use file_for_image.
18152 (update_frame_tool_bar): If direction is RTL, use RTL image if
18153 defined. Use Gtk stock images if defined.
18154
181552007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18156
18157 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
18158 for nonexistent or zero-width glyph in composition glyph.
18159
181602007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
18161
18162 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
18163
18164 * xdisp.c (Finvisible_p): New function.
18165 (syms_of_xdisp): defsubr it.
18166
181672007-08-24 Juanma Barranquero <lekktu@gmail.com>
18168
18169 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
18170 Doc fixes.
18171
181722007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18173
18174 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
18175
181762007-08-24 Martin Rudalics <rudalics@gmx.at>
18177
18178 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
18179 whether decoding has modified buffer contents.
18180
181812007-08-24 Jason Rumney <jasonr@gnu.org>
18182
18183 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
18184 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
18185 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
18186 (init_svg_functions) [HAVE_NTGUI]: New function.
18187 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
18188 (svg_load_image): Use them.
18189 (svg_load_image) [HAVE_NTGUI]: Implement background.
18190
181912007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18192
18193 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
18194 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
18195 (LIBX): Remove @RSVG_LIBS@.
18196 (LIBES): Add $(RSVG_LIBS).
18197
18198 * image.c (svg_load_image): Blend with specified background if exists.
18199 Use IMAGE_BACKGROUND. Add Mac OS Support.
18200
18201 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
18202 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
18203 Remove macros.
18204 [MAC_OSX] (socket_callback): Do nothing.
18205 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
18206 ReceiveNextEvent.
18207 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
18208 socket_callback.
18209 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
18210
182112007-08-22 Glenn Morris <rgm@gnu.org>
18212
18213 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
18214
182152007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
18216
18217 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
18218
18219 * image.c: Add support for SVG images. Some additional comments
18220 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
18221 (svg_image_p): New function to test for SVG image.
18222 (svg_load): New function to load SVG image.
18223 (svg_load_image): New function, helper for svg_load.
18224 (Qsvg): New Lisp_object.
18225 (svg_keyword_index): New enum.
18226 (svg_format): New static `image_keyword' struct.
18227 (svg_type): New static `image_type' struct.
18228 (librsvg/rsvg.h): Include it.
18229
182302007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
18231
18232 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
18233
182342007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
18235
18236 * lread.c (Qold_style_backquotes): New var.
18237 (syms_of_lread): Init and staticpro it.
18238 (load_warn_old_style_backquotes): New fun.
18239 (Fload): Use them to warn about old style backquotes.
18240 (end_of_file_error, Fload): Remove unused vars.
18241
18242 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
18243
18244 * lread.c (Vold_style_backquotes): New var.
18245 (syms_of_lread): Init and export it to Elisp.
18246 (read1): Set it when we find an old-style (back)quote.
18247
182482007-08-22 Jason Rumney <jasonr@gnu.org>
18249
18250 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
18251
182522007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
18253
18254 * puresize.h (BASE_PURESIZE): Increase to 1140000.
18255
182562007-08-19 Richard Stallman <rms@gnu.org>
18257
18258 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
18259
182602007-08-19 Andreas Schwab <schwab@suse.de>
18261
18262 * alloc.c (pure): Round PURESIZE up.
18263
182642007-08-17 Jan Djärv <jan.h.d@swipnet.se>
18265
18266 * xterm.c (handle_one_xevent): Remove check that mouse click is in
18267 active frame.
18268
182692007-08-16 Richard Stallman <rms@gnu.org>
18270
18271 * eval.c (Fcommandp): Add parens to clarify.
18272
18273 * minibuf.c (Fall_completions): Use enum for type of table.
18274
18275 * emacs.c (USAGE2): Improve text.
18276
182772007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
18278
18279 * term.c (tty_default_color_capabilities): Declare static
18280 variables in file scope, to avoid HPUX compiler problem.
18281
182822007-08-13 Jan Djärv <jan.h.d@swipnet.se>
18283
18284 * gtkutil.c (update_frame_tool_bar): Use -1 as index
18285 to gtk_toolbar_insert.
18286
182872007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
18288
18289 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
18290
18291 * insdel.c (reset_var_on_error): New fun.
18292 (signal_before_change, signal_after_change):
18293 Use it to reset (after|before)-change-functions to nil in case of error.
18294 Bind inhibit-modification-hooks to t.
18295 Don't bind (after|before)-change-functions to nil while they run.
18296
182972007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18298
18299 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
18300 filling pixmap with stippled background.
18301
183022007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18303
18304 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
18305 Don't use invisible frame as parent window for repositioning.
18306
183072007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
18308
18309 * print.c (new_backquote_output): Rename from old_backquote_output.
18310 (print): Inverse its logic (according to its name) so as to match the
18311 behavior of new_backquote_flag in lread.c.
18312
183132007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18314
18315 * gmalloc.c (posix_memalign): New function.
18316
18317 * macterm.c (frame_highlight, frame_unhighlight): Don't call
18318 ActivateControl/DeactivateControl here.
18319 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
18320 frame-notice-user-settings is non-nil.
18321 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
18322 for kEventParamFMFontStyle.
18323 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
18324 mac_pass_command_to_system and mac_pass_control_to_system here.
18325 (XTread_socket): Call ActivateControl/DeactivateControl here.
18326 (XTread_socket) [TARGET_API_MAC_CARBON]:
18327 Check mac_pass_command_to_system and mac_pass_control_to_system here.
18328 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
18329 for window repositioning.
18330
183312007-08-08 Glenn Morris <rgm@gnu.org>
18332
18333 * Replace `iff' in doc-strings and comments.
18334
183352007-08-07 Chong Yidong <cyd@stupidchicken.com>
18336
18337 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
18338
183392007-08-07 Martin Rudalics <rudalics@gmx.at>
18340
18341 * fileio.c (Finsert_file_contents): Run format-decode and
18342 after_insert_file_functions on entire buffer when REPLACE is
18343 non-nil and inhibit modification_hooks and point_motion_hooks.
18344 For consistency, run after_insert_file_functions iff something
18345 got inserted. Move signal_after_change and update_compositions
18346 after code running after_insert_file_functions. Make sure that
18347 undo_list doesn't record intermediate steps of the decoding process.
18348
183492007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18350
18351 * emacs.c (main)
18352 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
18353 Call malloc_enable_thread on interactive startup.
18354
18355 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
18356 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
18357 [USE_PTHREAD]: Conditionalize with it.
18358 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
18359 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
18360 New functions.
18361
183622007-08-06 Chong Yidong <cyd@stupidchicken.com>
18363
18364 * xdisp.c (redisplay_window): When restoring original buffer
18365 position, make sure it is still valid.
18366
18367 * image.c (png_load): Ignore png-supplied background color.
18368
183692007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18370
18371 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
18372 Use kCFAbsoluteTimeIntervalSince1970.
18373
18374 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
18375 New variable.
18376 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
18377 event loop should be quit.
18378 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
18379 Quit dialog event loop if quit_dialog_event_loop is set.
18380
18381 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
18382 (Selection): New typedef. Use instead of ScrapRef.
18383 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
18384 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
18385 (mac_clear_selection): Rename from clear_scrap.
18386 (get_flavor_type_from_symbol): New argument SEL and subsume function of
18387 scrap_has_target_type. All uses changed.
18388 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
18389 (mac_selection_has_target_p): New functions.
18390 (mac_put_selection_value): Rename from put_scrap_string.
18391 (mac_get_selection_value): Rename from get_scrap_string.
18392 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
18393 (put_scrap_private_timestamp, scrap_has_target_type)
18394 (get_scrap_private_timestamp): Remove functions.
18395 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
18396 (x_own_selection, x_get_local_selection):
18397 Use mac_valid_selection_value_p.
18398 (x_own_selection): Don't use put_scrap_private_timestamp.
18399 Record OWNERSHIP-INFO into Vselection_alist instead.
18400 (x_get_local_selection): Don't check type if request is local.
18401 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
18402 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
18403
184042007-08-04 Jan Djärv <jan.h.d@swipnet.se>
18405
18406 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
18407 add comment explaining why.
18408
184092007-08-03 Richard Stallman <rms@gnu.org>
18410
18411 * fileio.c (Fvisited_file_modtime): Use make_time.
18412
184132007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
18414
18415 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
18416 build.
18417
184182007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
18419
18420 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
18421
184222007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
18423
18424 * puresize.h (BASE_PURESIZE): Increase to 1130000.
18425
184262007-07-30 Richard Stallman <rms@gnu.org>
18427
18428 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
18429
184302007-07-29 Jan Djärv <jan.h.d@swipnet.se>
18431
18432 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
18433
184342007-07-28 Nick Roberts <nickrob@snap.net.nz>
18435
18436 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
18437 remote default-directory.
18438
18439 * buffer.c (mode-line-format): Update doc string.
18440
184412007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18442
18443 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
18444 scroll bar gap.
18445 (x_scroll_bar_create): Set bar->fringe_extended_p.
18446 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
18447 on frame edge. Check fringe background extension. Don't clear
18448 extended fringe background area.
18449
18450 * w32term.h (struct scroll_bar): New member fringe_extended_p.
18451 (w32_fill_area): Enclose multiple statements with do ... while (0).
18452
18453 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
18454 Extend fringe background to scroll bar gap.
18455 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
18456 Set bar->fringe_extended_p.
18457 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
18458 Put leftmost/rightmost scroll bars on frame edge. Check fringe
18459 background extension. Don't clear extended fringe background area.
18460
18461 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
18462 New member fringe_extended_p.
18463
184642007-07-25 Glenn Morris <rgm@gnu.org>
18465
18466 * Relicense all FSF files to GPLv3 or later.
18467
18468 * COPYING: Switch to GPLv3.
18469
184702007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
18471
18472 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
18473
18474 * data.c (Finteractive_form): Check for the presence of an
18475 `interactive-form' symbol property more thoroughly.
18476
18477 * data.c (Finteractive_form): Use an `interactive-form' property if
18478 present, analogous to the function-documentation property.
18479
184802007-07-24 Jason Rumney <jasonr@gnu.org>
18481
18482 * w32fns.c (x_real_positions): Get real position from OS instead of
18483 calculating it.
18484
184852007-07-23 Jason Rumney <jasonr@gnu.org>
18486
18487 * filelock.c (current_lock_owner): Allow for @ sign in username.
18488
184892007-07-22 Nick Roberts <nickrob@snap.net.nz>
18490
18491 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
18492 remote default-directory.
18493
18494 * buffer.c (mode-line-format): Describe above case in doc string.
18495
184962007-07-20 Eli Zaretskii <eliz@gnu.org>
18497
18498 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
18499 Define if not defined.
18500
185012007-07-18 Jason Rumney <jasonr@gnu.org>
18502
18503 * w32proc.c (w32_executable_type): Handle 64 bit executables.
18504
185052007-07-18 Richard Stallman <rms@gnu.org>
18506
18507 * data.c (Fsetq_default): Doc fix.
18508
18509 * eval.c (Fsetq): Doc fix.
18510
185112007-07-18 Juanma Barranquero <lekktu@gmail.com>
18512
18513 * coding.c (Ffind_operation_coding_system):
18514 * eval.c (For, Fand): Doc fixes.
18515 Reported by Johan Bockgård.
18516
185172007-07-18 Jan Djärv <jan.h.d@swipnet.se>
18518
18519 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
18520
18521 * xterm.h: Declare x_ewmh_activate_frame.
18522
18523 * xterm.c (x_ewmh_activate_frame): New function.
18524 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
18525
185262007-07-17 Martin Rudalics <rudalics@gmx.at>
18527
18528 * window.c (Fdisplay_buffer): If largest or LRU window is the
18529 only window, split it even if it is not eligible for splitting.
18530 This restores the original behavior broken by the 2007-07-15
18531 change.
18532
185332007-07-17 Glenn Morris <rgm@gnu.org>
18534
18535 * abbrev.c (abbrev_check_chars): New function.
18536 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
18537 Call abbrev_check_chars to check abbrev characters are word
18538 constituents. Doc fix.
18539
185402007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
18541
18542 * process.c (Fstart_process, Fmake_network_process)
18543 (read_process_output): Fix up last changes.
18544
185452007-07-16 Eli Zaretskii <eliz@gnu.org>
18546
18547 * makefile.w32-in (clean): Don't delete *~.
18548
185492007-07-16 Andreas Schwab <schwab@suse.de>
18550
18551 * window.c (Fdisplay_buffer): Use NILP.
18552 (Fset_window_scroll_bars): Likewise.
18553
185542007-07-15 Martin Rudalics <rudalics@gmx.at>
18555
18556 * window.c (window_min_size_2): New function.
18557 (window_min_size_1, size_window, Fdisplay_buffer)
18558 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
18559 windows without mode- or header-lines when window-min-height is
18560 too small.
18561 (size_window): Reset nodelete_p after testing it, following an
18562 earlier note by Kim F. Storm.
18563 (display_buffer): Do not set split_height_threshold to twice the
18564 value of window_min_height to avoid changing the value of a
18565 customizable variable. Rather explicitly check whether the
18566 height of the window that shall be splitted is at least as large
18567 as split_height_threshold.
18568 (Fwindow_full_width_p): New defun.
18569 (syms_of_window): Defsubr it.
18570
18571 * window.h: Add EXFUN for Fwindow_full_width_p.
18572
185732007-07-14 Jason Rumney <jasonr@gnu.org>
18574
18575 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
18576
185772007-07-14 Richard Stallman <rms@gnu.org>
18578
18579 * eval.c (maybe_call_debugger): New function.
18580 (find_handler_clause): Use maybe_call_debugger.
18581 Call it when the handler says `debug'.
18582 Eliminate DEBUGGER_VALUE_PTR.
18583 (Fsignal): Eliminate debugger_value.
18584 (Qdebug): New variable.
18585 (syms_of_eval): Initialize it.
18586
185872007-07-14 Juanma Barranquero <lekktu@gmail.com>
18588
18589 * eval.c (Fprogn):
18590 * keyboard.c (Ftrack_mouse):
18591 * print.c (Fwith_output_to_temp_buffer):
18592 * window.c (Fsave_window_excursion): Doc fix.
18593
185942007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
18595
18596 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
18597
185982007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
18599
18600 * process.h (struct Lisp_Process): Turn slots infd, outfd,
18601 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
18602 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
18603 read_output_delay, and read_output_skip from Lisp_Objects to ints.
18604 Remove unused encoding_carryover.
18605 * process.c: Adjust all functions accordingly.
18606
186072007-07-12 Richard Stallman <rms@gnu.org>
18608
18609 * term.c: Include unistd.h only if HAVE_UNISTD_H.
18610
186112007-07-11 Jason Rumney <jasonr@gnu.org>
18612
18613 * makefile.w32-in (LIBS): Include OLE32.
18614
18615 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
18616 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
18617
186182007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
18619
18620 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
18621 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
18622 from a Lisp_Object into a bare pointer.
18623 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
18624 Adjust the code correspondingly.
18625
18626 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
18627
18628 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
18629 (term_show_mouse_face): Remove unused var `j'.
18630 (handle_one_term_event): Remove unused vars `i' and `j'.
18631 Don't cast return value of ttyname since it's not necessary.
18632
186332007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
18634
18635 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
18636 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
18637
18638 * fns.c (map_char_table): Use an array of int for `indices' rather than
18639 an array of Lisp_Objects (which are only ever integers anyway).
18640 (Fmap_char_table): Update caller.
18641 * lisp.h: Update prototype.
18642 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
18643 * fontset.c (Ffontset_info):
18644 * casetab.c (set_case_table): Update callers.
18645
18646 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
18647
18648 * keymap.c (struct accessible_keymaps_data)
18649 (struct where_is_internal_data): New structures.
18650 (accessible_keymaps_1, where_is_internal_1): Use them to change
18651 interface to adhere to the one used by map_keymap.
18652 (Faccessible_keymaps, where_is_internal): Use map_keymap.
18653 (accessible_keymaps_char_table, where_is_internal_2): Remove.
18654
18655 * keymap.h (map_keymap_function_t): More informative prototype.
18656
186572007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
18658
18659 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
18660 (looking_at_1): Don't change search_regs and last_thing_searched
18661 if `inhibit-changing-match-data' is non-nil.
18662 (string_match_1, search_buffer, set_search_regs): Likewise.
18663 (syms_of_search): Add Lisp level definition for
18664 `inhibit-changing-match-data' and set it to nil.
18665 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
18666 start and end of the match, instead of using values in search_regs.
18667
186682007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
18669
18670 * minibuf.c (Fcompleting_read): New value `confirm-only'
18671 for `require-match'.
18672
186732007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
18674
18675 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
18676 part of the 2007-06-27 change to syms_of_fileio.
18677
186782007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18679
18680 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
18681 Check WINDOWP before using XWINDOW. Consolidate return statements.
18682
186832007-06-27 Richard Stallman <rms@gnu.org>
18684
18685 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
18686
186872007-06-27 Juanma Barranquero <lekktu@gmail.com>
18688
18689 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
18690
186912007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18692
18693 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
18694 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
18695 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
18696 (_free_internal, memalign): Use them.
18697 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
18698 Initialize to PTHREAD_MUTEX_INITIALIZER.
18699 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
18700 (morecore_nolock): Rename from morecore. All uses changed.
18701 Use only nolock versions of internal allocation functions.
18702 (_malloc_internal_nolock, _realloc_internal_nolock)
18703 (_free_internal_nolock): New functions created from
18704 _malloc_internal, _realloc_internal, and _free_internal.
18705 (_malloc_internal, _realloc_internal, _free_internal): Use them.
18706 Copy hook value to automatic variable before its use.
18707 (memalign): Copy hook value to automatic variable before its use.
18708
187092007-06-26 Kenichi Handa <handa@m17n.org>
18710
18711 * coding.c (Ffind_operation_coding_system): Docstring improved.
18712 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
18713
187142007-06-25 David Kastrup <dak@gnu.org>
18715
18716 * keymap.c (Fcurrent_active_maps): Add `position' argument.
18717 (Fwhere_is_internal): Adjust call to `current-active-maps' to
18718 cater for additional parameter.
18719
18720 * keymap.h: Adjust number of parameters to `current-active-maps'.
18721
18722 * doc.c (Fsubstitute_command_keys): Adjust call of
18723 `current-active-maps'.
18724
187252007-06-25 David Kastrup <dak@gnu.org>
18726
18727 * callint.c (Fcall_interactively): Make the parsing of interactive
18728 specs somewhat more readable.
18729
187302007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18731
18732 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
18733 to scroll bar gap also when bitmap fills fringe. Draw only foreground
18734 if extended background has already been filled.
18735
187362007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18737
18738 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
18739 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
18740
18741 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
18742 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
18743 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
18744 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
18745 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
18746 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
18747 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
18748 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
18749 Run timers during dialog popup.
18750 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
18751
187522007-06-21 Jason Rumney <jasonr@gnu.org>
18753
18754 * image.c (convert_mono_to_color_image): Swap fore and background.
18755
187562007-06-20 Jason Rumney <jasonr@gnu.org>
18757
18758 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
18759 (w32_free_bdf_font): Unmap memory not handle.
18760
187612007-06-20 Sam Steingold <sds@gnu.org>
18762
18763 * gmalloc.c (__morecore): Fix the declaration to comply with the
18764 definition.
18765
187662007-06-20 Juanma Barranquero <lekktu@gmail.com>
18767
18768 * w32term.c (w32_delete_display): Remove leftover declaration.
18769 (w32_define_cursor, w32_initialize): Make static.
18770
18771 * w32.c (_wsa_errlist): Fix typo in error message.
18772 (init_environment): Ignore any environment variable from the
18773 registry having a null value.
18774
187752007-06-20 Glenn Morris <rgm@gnu.org>
18776
18777 * Makefile.in (LIBGIF): Default to -lgif.
18778
187792007-06-17 Jason Rumney <jasonr@gnu.org>
18780
18781 * w32menu.c (add_menu_item): Don't use multibyte string functions on
18782 unicode strings.
18783
187842007-06-16 Juanma Barranquero <lekktu@gmail.com>
18785
18786 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
18787 Fix typo in docstring.
18788
187892007-06-16 Eli Zaretskii <eliz@gnu.org>
18790
18791 * w32menu.c (add_menu_item): Escape `&' characters in menu items
18792 and their keybindings.
18793
187942007-06-15 Chong Yidong <cyd@stupidchicken.com>
18795
18796 * composite.c (update_compositions): Fix last fix.
18797
187982007-06-14 Jason Rumney <jasonr@gnu.org>
18799
18800 * w32.c (get_process_times_fn): New function pointer.
18801 (globals_of_w32): Intialize it if present in kernel32.dll.
18802 (w32_get_internal_run_time): New function.
18803
18804 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
18805
188062007-06-14 Kenichi Handa <handa@etlken.m17n.org>
18807
18808 * composite.c (update_compositions): Check the validness of
18809 compositions.
18810
188112007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18812
18813 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
18814 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
18815
18816 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
18817 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
18818
18819 * macgui.h (USE_MAC_TOOLBAR): New define.
18820
18821 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
18822 Return immediately unless popup is activated.
18823
18824 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
18825 background to scroll bar gap.
18826 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
18827 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
18828 scroll bars on frame edge. Check fringe background extension.
18829 Don't clear extended fringe background area.
18830 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
18831 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
18832 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
18833 [USE_MAC_TOOLBAR]: New macros.
18834 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
18835 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
18836 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
18837 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
18838 [USE_MAC_TOOLBAR]: New functions.
18839 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
18840 manually if previous repositioning has failed.
18841 (mac_handle_keyboard_event): Use precomputed event kind.
18842 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
18843 as tool bar item click. Handle mouse movement over tool bar items.
18844
18845 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
18846 toolbar_win_gravity.
18847 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
18848 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
18849 Add externs.
18850
18851 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
18852 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
18853
188542007-06-14 Chong Yidong <cyd@stupidchicken.com>
18855
18856 * image.c (search_image_cache): Remove unused variable.
18857
188582007-06-13 Chong Yidong <cyd@stupidchicken.com>
18859
18860 * xfns.c, xmenu.c: Link to xaw3d if available.
18861
188622007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18863
18864 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
18865 frame_foreground and frame_background.
18866
18867 * image.c (lookup_image): Save frame foreground and background colors.
18868 (search_image_cache): Check if saved and current frame colors match.
18869
188702007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
18871
18872 * regex.c (regex_compile): Remove the `regnum' counter.
18873 Use bufp->re_nsub instead. Add support for \(?N:RE\).
18874
188752007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
18876
18877 * term.c: Include intervals.h to declare Fget_text_property.
18878
188792007-06-10 Jason Rumney <jasonr@gnu.org>
18880
18881 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
18882
188832007-06-08 Juanma Barranquero <lekktu@gmail.com>
18884
18885 * callint.c (Fcall_interactively):
18886 * editfns.c (Fdelete_and_extract_region):
18887 * fileio.c (Fread_file_name):
18888 * fns.c (Fmapconcat):
18889 * keyboard.c (cmd_error_internal):
18890 * keymap.c (Fkey_description):
18891 * lread.c (openp):
18892 * minibuf.c (read_minibuf):
18893 * search.c (wordify):
18894 * sunfns.c (sel_read):
18895 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
18896 * xfns.c (x_default_scroll_bar_color_parameter):
18897 * xmenu.c (menu_help_callback):
18898 * xselect.c (Fx_get_atom_name):
18899 * xterm.c (x_term_init): Use empty_unibyte_string.
18900
189012007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
18902
18903 * alloc.c (init_strings): Initialize canonical empty strings.
18904 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
18905 canonical empty string when the requested size is 0.
18906
18907 * emacs.c (empty_unibyte_string): Rename from empty_string.
18908 (empty_multibyte_string): New canonical empty string.
18909 (syms_of_emacs): Don't initialize empty_string.
18910
18911 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
18912 string, if appropriate.
18913 (empty_unibyte_string, empty_multibyte_string): New externs.
18914 (empty_string): Remove extern.
18915
18916 * lread.c (syms_of_lread): Use empty_unibyte_string.
18917
189182007-06-07 Jason Rumney <jasonr@gnu.org>
18919
18920 * s/ms-w32.h: Don't define HAVE_TZNAME.
18921
18922 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
18923
189242007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18925
18926 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
18927
18928 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
18929 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
18930
18931 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
18932 Don't call next handler.
18933 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
18934 Remove argument. Install handler to application.
18935 (set_frame_menubar): Don't change deep_p.
18936 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
18937 FRAME_OUTER_TO_INNER_DIFF_Y.
18938 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
18939 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
18940 [HAVE_DIALOGS]: New macros.
18941 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
18942 Use them.
18943 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
18944
18945 * macselect.c [MAC_OSX] (install_service_handler): Rename from
18946 init_service_handler. All callers changed. Return OSStatus value.
18947
18948 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
18949 All callers changed so as not to call SetPortWindowPort.
18950 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
18951 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
18952 mac_draw_string_common.
18953 (mac_draw_image_string_qd): Likewise.
18954 (mac_draw_string_common): Use them. Add INLINE.
18955 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
18956 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
18957 GetGlobalMouse.
18958 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
18959 and FRAME_OUTER_TO_INNER_DIFF_Y.
18960 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
18961 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
18962 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
18963 repositioning window to mac_handle_window_event.
18964 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
18965 saving window location to mac_handle_window_event
18966 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
18967 (install_menu_target_item_handler): Remove argument in extern.
18968 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
18969 Also accept command events.
18970 (do_keystroke): New function created from XTread_socket.
18971 (init_command_handler): Remove functions.
18972 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
18973 and save window location by kEventWindowShowing and kEventWindowHiding
18974 handlers here. Don't call next handler for window state change and
18975 focus events.
18976 (mac_handle_application_event, mac_handle_keyboard_event)
18977 [TARGET_API_MAC_CARBON]: New functions.
18978 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
18979 kEventWindowShowing and kEventWindowHiding events. Move installation
18980 of mouse, font, text input and menu target item handlers to
18981 install_application_handler.
18982 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
18983 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
18984 New function.
18985 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
18986 Register it.
18987 (XTread_socket) [TARGET_API_MAC_CARBON]:
18988 Consolidate SendEventToEventTarget calls.
18989 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
18990 Move application activation handler to mac_handle_application_event.
18991 Move keyboard handler to mac_handle_keyboard_event.
18992 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
18993 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
18994 init_command_handler. Call install_application_handler.
18995
18996 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
18997 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
18998
189992007-06-07 Glenn Morris <rgm@gnu.org>
19000
19001 * emacs.c (main): Use `emacs-copyright' in --version output.
19002
190032007-06-06 Chong Yidong <cyd@stupidchicken.com>
19004
19005 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
19006
190072007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19008
19009 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
19010
19011 * macgui.h: Replace WindowPtr with WindowRef.
19012
19013 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19014 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19015 Replace ControlHandle with ControlRef.
19016 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
19017
19018 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19019 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19020 Replace ControlHandle with ControlRef.
19021 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
19022 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
19023
19024 * macterm.h (struct scroll_bar): Rename member control_handle_low
19025 and control_handle_high to control_ref_low and control_ref_high.
19026 All uses changed.
19027 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
19028 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
19029 respectively. All uses changed.
19030 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
19031 (install_window_handler, remove_window_handler): Replace WindowPtr
19032 with WindowRef in externs.
19033
190342007-06-05 Juanma Barranquero <lekktu@gmail.com>
19035
19036 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
19037
190382007-06-03 Nick Roberts <nickrob@snap.net.nz>
19039
19040 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
19041
19042 * frame.c (Fmouse_position, Fmouse_pixel_position):
19043 Condition on HAVE_GPM too.
19044
19045 * term.c (term_mouse_highlight): Remove unused variables.
19046 (Fterm_open_connection): Set gpm_zerobased to 1.
19047 (term_mouse_movement, term_mouse_click, handle_one_term_event):
19048 Use zero based co-ordinates.
19049 (handle_one_term_event): Report a drag as mouse movement too.
19050
19051 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
19052
190532007-06-03 Chong Yidong <cyd@stupidchicken.com>
19054
19055 * image.c (search_image_cache): New function. Require background
19056 color match if background color is unspecified in the image spec.
19057 (uncache_image, lookup_image): Use it.
19058
190592007-06-01 Juanma Barranquero <lekktu@gmail.com>
19060
19061 * window.c (Fshrink_window): Reflow docstring.
19062
190632007-06-02 Chong Yidong <cyd@stupidchicken.com>
19064
19065 * Version 22.1 released.
19066
190672007-06-01 Richard Stallman <rms@gnu.org>
19068
19069 * xfns.c (x_encode_text): Add GCPRO.
19070
190712007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19072
19073 * xfns.c (x_set_name_internal): Save encoded name before
19074 x_encode_text in case string data is relocated.
19075
190762007-05-31 Richard Stallman <rms@gnu.org>
19077
19078 * buffer.c (syms_of_buffer): Doc fix.
19079
190802007-05-30 Nick Roberts <nickrob@snap.net.nz>
19081
19082 * sysdep.c (init_sys_modes): Add rather than replace with
19083 O_NONBLOCK.
19084
19085 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
19086 term_mouse_moveto.
19087
19088 * termhooks.h (term_mouse_moveto): New extern.
19089
19090 * term.c (mouse_face_window): Rename...
19091 (Qmouse_face_window): ...to this.
19092 (term_show_mouse_face, term_clear_mouse_face)
19093 (term_mouse_highlight): Use Qmouse_face_window.
19094 (term_mouse_moveto): New function.
19095 (term_mouse_position): Make it work.
19096 (syms_of_term): Uncomment assignment to mouse_position_hook.
19097 Staticpro Qmouse_face_window.
19098
190992007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19100
19101 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
19102 around current_column call.
19103
191042007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
19105
19106 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
19107 * xdisp.c (next_element_from_buffer):
19108 * window.c (delete_window):
19109 * term.c (term_mouse_highlight):
19110 * msdos.c (getdefdir):
19111 * macterm.c (mac_create_bitmap_from_bitmap_data)
19112 (init_font_name_table):
19113 * fns.c (Fsxhash):
19114 * data.c (Fmake_local_variable):
19115 * ccl.c (ccl_driver): Likewise.
19116
191172007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19118
19119 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
19120 Call mac_wakeup_from_rne on window size change.
19121
191222007-05-25 Chong Yidong <cyd@stupidchicken.com>
19123
19124 * image.c (uncache_image): Fix typo.
19125
191262007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
19127
19128 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
19129
191302007-05-22 Richard Stallman <rms@gnu.org>
19131
19132 * xterm.c (x_connection_closed): Remove NO_RETURN.
19133
191342007-05-22 Martin Rudalics <rudalics@gmx.at>
19135
19136 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
19137
191382007-05-21 Chong Yidong <cyd@stupidchicken.com>
19139
19140 * image.c (uncache_image): New function.
19141 (Fimage_refresh): New function.
19142
191432007-05-20 Jan Djärv <jan.h.d@swipnet.se>
19144
19145 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
19146
191472007-05-20 Nick Roberts <nickrob@snap.net.nz>
19148
19149 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
19150 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
19151
191522007-05-20 Nick Roberts <nickrob@snap.net.nz>
19153
19154 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
19155 conditional on [HAVE_GPM_H].
19156
191572007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
19158
19159 * syntax.c (skip_chars): Update syntax-table only after we checked that
19160 the new location is valid.
19161
191622007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19163
19164 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
19165 mac_get_window_bounds.
19166
191672007-05-20 Nick Roberts <nickrob@snap.net.nz>
19168
19169 * Makefile.in (LIBGPM): Allow it to be set from configure.
19170 If set then link Emacs with it.
19171
19172 * config.in: Regenerate.
19173
19174 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
19175 New externs.
19176
19177 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
19178 Include gpm.h.
19179 (handle_one_term_event, term_gpm): New externs.
19180
19181 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
19182 and allow it to be interrupted by SIGIO.
19183
19184 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
19185 (wait_reading_process_output): Wait on gpm_fd too.
19186 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
19187 (add_gpm_wait_descriptor_called_flag): New variable.
19188 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
19189
19190 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
19191 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
19192 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
19193 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
19194 (make_lispy_event): Add case GPM_CLICK_EVENT.
19195 (read_avail_input): Handle mouse input.
19196
19197 * term.c (write_glyphs_with_face): New function.
19198 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
19199 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
19200 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
19201 (mouse_face_face_id, term_gpm, pos_x, pos_y)
19202 (last_mouse_x, last_mouse_y): New variables.
19203 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
19204 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
19205 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
19206 (Fterm_close_connection): New functions.
19207 (term_init): Initialise mouse_face_window.
19208
192092007-05-19 Chong Yidong <cyd@stupidchicken.com>
19210
19211 * xdisp.c (redisplay_window): If first window line is a
19212 continuation line, recompute the new window start instead of
19213 recentering.
19214
192152007-05-18 Glenn Morris <rgm@gnu.org>
19216
19217 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
19218 Suggested by Alfred M. Szmidt <ams@gnu.org>.
19219
192202007-05-17 Glenn Morris <rgm@gnu.org>
19221
19222 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
19223
192242007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19225
19226 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
19227 dead key repeat and up events.
19228
192292007-05-14 Chong Yidong <cyd@stupidchicken.com>
19230
19231 * image.c (pbm_load): Check image size for monochrome pbm.
19232
192332007-05-13 Chong Yidong <cyd@stupidchicken.com>
19234
19235 * xterm.c (XTread_socket): Revert last change.
19236
192372007-05-12 Chong Yidong <cyd@stupidchicken.com>
19238
19239 * image.c (pbm_load): Correctly check image size for greyscale pbm.
19240
19241 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
19242
192432007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19244
19245 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
19246 mixup (YAILOM).
19247
192482007-05-07 Andreas Schwab <schwab@suse.de>
19249
19250 * keymap.c (Flookup_key): Fix typo in last change.
19251
192522007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19253
19254 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
19255 mapping for unibyte strings.
19256
192572007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19258
19259 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
19260 (Fx_popup_dialog) [MAC_OSX]: Likewise.
19261
192622007-04-29 Richard Stallman <rms@gnu.org>
19263
19264 * insdel.c (replace_range): For undo, record insertion first.
19265
192662007-04-29 Andreas Schwab <schwab@suse.de>
19267
19268 * lisp.h (VECSIZE): Use OFFSETOF.
19269
192702007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19271
19272 * xdisp.c (try_window_reusing_current_matrix): Fix number of
19273 disabled lines.
19274
192752007-04-28 Richard Stallman <rms@gnu.org>
19276
19277 * lread.c (read_escape): In a string, \s is always space.
19278
192792007-04-27 Jan Djärv <jan.h.d@swipnet.se>
19280
19281 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
19282
19283 * gtkutil.c (xg_update_menubar, create_menus): Create empty
19284 submenu for menu bar items.
19285
19286See ChangeLog.10 for earlier changes.
19287
19288;; Local Variables:
19289;; coding: utf-8
19290;; add-log-time-zone-rule: t
aac0c6e3
MR
19291;; End:
19292
76b6f707 19293 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
19294
19295 This file is part of GNU Emacs.
19296
19297 GNU Emacs is free software: you can redistribute it and/or modify
19298 it under the terms of the GNU General Public License as published by
19299 the Free Software Foundation, either version 3 of the License, or
19300 (at your option) any later version.
19301
19302 GNU Emacs is distributed in the hope that it will be useful,
19303 but WITHOUT ANY WARRANTY; without even the implied warranty of
19304 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19305 GNU General Public License for more details.
19306
19307 You should have received a copy of the GNU General Public License
19308 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
19309
19310;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40