]> code.delx.au - gnu-emacs/blob - src/ChangeLog
* xterm.c (x_fully_uncatch_errors, x_trace_wire, x_check_font): Convert old-style...
[gnu-emacs] / src / ChangeLog
1 2010-07-15 Andreas Schwab <schwab@linux-m68k.org>
2
3 * xterm.c (x_fully_uncatch_errors, x_trace_wire, x_check_font):
4 Convert old-style definition.
5
6 * xmenu.c (create_and_show_popup_menu, xmenu_show): Fix type of
7 timestamp argument.
8
9 2010-07-15 Eli Zaretskii <eliz@gnu.org>
10
11 * fringe.c (update_window_fringes): Restore mistakenly reverted
12 code from 2010-04-17T12:33:05Z!eliz@gnu.org merged in 2010-04-20T13:31:28Z!eliz@gnu.org.
13
14 2010-07-14 Jan Djärv <jan.h.d@swipnet.se>
15
16 * xterm.c (xm_scroll_callback, x_process_timeouts): K&R => prototype.
17 (SET_SAVED_KEY_EVENT): Remove (not used).
18 (SET_SAVED_MENU_EVENT): Rename to SET_SAVED_BUTTON_EVENT and
19 remove size parameter.
20 (handle_one_xevent): Check popup_activated () for menu for Xt also.
21 Remove #ifdef USE_GTK around finish = X_EVENT_DROP.
22 Remove #ifdef USE_MOTIF code that did SET_SAVED_BUTTON_EVENT for
23 ButtonRelease.
24 (x_set_window_size_1): scroll_bar_actual_width is always
25 SCROLL_BAR_COLS * COLUMN_WIDTH for the purpose of frame sizing.
26
27 * xdisp.c (pending_menu_activation): Remove extern declaration.
28 (prepare_menu_bars): Remove setting of pending_menu_activation.
29
30 * xmenu.c (pending_menu_activation): Remove.
31 (x_activate_menubar): Set popup_activated_flag for Xt also. Remove
32 setting of pending_menu_activation.
33 (set_frame_menubar): Remove check of pending_menu_activation.
34 Declare menubar_size before code. Correct spelling in comment.
35
36 2010-07-14 Kenichi Handa <handa@m17n.org>
37
38 * font.c (font_open_entity): Cancel previous change.
39 (Ffont_get): Don't check FONT_ENTITY_INDEX of a font-object.
40
41 2010-07-13 Eli Zaretskii <eliz@gnu.org>
42
43 Remove subprocesses #ifdefs.
44 * process.c <inhibit_sentinels>: Move to the common part.
45 (Fwaiting_for_user_input_p): Move to the common part; return nil
46 if async subprocesses aren't supported.
47 * sysdep.c (wait_for_termination) [!MSDOS]: Don't compile on
48 MS-DOS. Remove "#ifdef subprocesses".
49 (sys_subshell, sys_select): Remove "#ifdef subprocesses".
50 (gettimeofday): Remove "#ifdef subprocesses".
51 (wait_without_blocking): Remove function.
52 (flush_pending_output, child_setup_tty): Don't compile on MS-DOS.
53 Remove "#ifdef subprocesses".
54 (child_setup_tty): Use WINDOWSNT instead of DOS_NT, since not
55 compiled on MS-DOS.
56 * callproc.c (Fcall_process) [!MSDOS]: Don't call
57 wait_for_termination on MS-DOS.
58 * emacs.c (shut_down_emacs): Remove "#ifndef subprocesses" from
59 initialization of inhibit_sentinels.
60 * keyboard.c (record_asynch_buffer_change): Remove "#ifdef
61 subprocesses" conditional.
62 * callproc.c (Fcall_process) [!subprocesses]: Don't call
63 wait_for_termination, since `buffer' cannot be an integer when
64 async subprocesses are not supported
65 * xdisp.c (decode_mode_spec): Use `MSDOS' instead of `subprocesses'
66 for ifdefing away the call to Fprocess_status.
67
68 * process.c (add_keyboard_wait_descriptor) [!subprocesses]: Ifdef
69 away the entire body of the function.
70
71 2010-07-13 Dan Nicolaescu <dann@ics.uci.edu>
72
73 Remove subprocesses #ifdefs from term.c.
74 * process.c (add_keyboard_wait_descriptor)
75 (delete_keyboard_wait_descriptor): Move to common section, do
76 nothing when subprocesses is not defined.
77 * term.c (Fsuspend_tty, Fresume_tty, init_tty): Remove subprocesses #ifdefs.
78
79 Convert maybe_fatal to standard C.
80 * lisp.h (verror): Declare.
81 * eval.c (verror): New function containing the code from ...
82 (error): ... this. Call verror.
83 * term.c (vfatal): New function containing the code from ...
84 (fatal): ... this. Call vfatal.
85 (maybe_fatal): Convert to standard C, use variable number of
86 arguments. Declare as non-return.
87 (init_tty): Fix maybe_fatal call.
88
89 2010-07-12 Dan Nicolaescu <dann@ics.uci.edu>
90
91 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
92 (_scroll_bar_note_movement): Convert definitions to standard C.
93 * xmenu.c (menu_help_callback, pop_down_menu, xmenu_show):
94 * xfns.c (hack_wm_protocols, x_window, x_window): Likewise.
95
96 2010-07-12 Dan Nicolaescu <dann@ics.uci.edu>
97
98 * xterm.c (x_frame_of_widget, x_alloc_nearest_color_for_widget)
99 (x_alloc_lighter_color_for_widget, cvt_string_to_pixel)
100 (cvt_pixel_dtor, x_window_to_menu_bar, xt_action_hook)
101 (xaw_jump_callback, xaw_scroll_callback)
102 (x_create_toolkit_scroll_bar, x_set_toolkit_scroll_bar_thumb)
103 (x_wm_set_size_hint, x_activate_timeout_atimer): Convert
104 definitions to standard C.
105 * xmenu.c (menubar_id_to_frame, popup_get_selection)
106 (popup_activate_callback, popup_deactivate_callback)
107 (menu_highlight_callback, menubar_selection_callback)
108 (apply_systemfont_to_dialog, apply_systemfont_to_menu)
109 (free_frame_menubar, popup_selection_callback, as)
110 (create_and_show_popup_menu, dialog_selection_callback)
111 (create_and_show_dialog):
112 * xfns.c (hack_wm_protocols, x_window):
113 * xfaces.c (x_update_menu_appearance):
114 * widget.c (get_default_char_pixel_size, pixel_to_char_size)
115 (char_to_pixel_size, round_size_to_char, get_wm_shell)
116 (set_frame_size, update_wm_hints, setup_frame_gcs)
117 (update_various_frame_slots, update_from_various_frame_slots)
118 (EmacsFrameInitialize, EmacsFrameRealize, EmacsFrameResize)
119 (EmacsFrameSetValues, EmacsFrameQueryGeometry)
120 (EmacsFrameSetCharSize, widget_store_internal_border): Likewise.
121
122 2010-07-12 Andreas Schwab <schwab@linux-m68k.org>
123
124 * dbusbind.c (xd_initialize): Don't compare boolean with a
125 constant.
126
127 2010-07-12 Eli Zaretskii <eliz@gnu.org>
128
129 * process.c (setup_process_coding_systems): Move to the part
130 shared by non-subprocesses systems, and make its body empty when
131 subprocesses is not defined.
132 (close_process_descs): Move to the part shared by non-subprocesses
133 systems.
134 (wait_reading_process_output) [!subprocesses]: Convert arg list to
135 ANSI C.
136
137 2010-07-12 Andreas Schwab <schwab@linux-m68k.org>
138
139 * editfns.c (transpose_markers): Convert old-style definition.
140 * emacs.c (abort, shut_down_emacs, fixup_locale)
141 (synchronize_system_time_locale)
142 (synchronize_system_messages_locale, syms_of_emacs): Likewise.
143 * floatfns.c (extract_float, matherr, init_floatfns)
144 (syms_of_floatfns): Likewise.
145 * fns.c (make_hash_table): Likewise.
146 * ftfont.c (ftfont_get_otf, ftfont_otf_features)
147 (ftfont_otf_capability, ftfont_get_glyph_id, ftfont_get_metrics)
148 (ftfont_drive_otf, ftfont_shape_by_flt, ftfont_shape)
149 (ftfont_variation_glyphs): Likewise.
150 * gtkutil.c (xg_create_widget, xg_modify_menubar_widgets): Likewise.
151 * keymap.c (describe_map_tree, describe_map, describe_vector): Likewise.
152 * lread.c (read_filtered_event): Likewise.
153 * minibuf.c (read_minibuf_noninteractive, read_minibuf): Likewise.
154 * process.c (wait_reading_process_output): Likewise.
155 * scroll.c (do_line_insertion_deletion_costs): Likewise.
156 * search.c (search_buffer, boyer_moore): Likewise.
157 * syntax.c (scan_sexps_forward): Likewise.
158 * xdisp.c (try_scrolling): Likewise.
159 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
160 (face_at_string_position): Likewise.
161 * xfns.c (x_default_scroll_bar_color_parameter): Likewise.
162 * xselect.c (x_get_window_property, receive_incremental_selection)
163 (x_get_window_property_as_lisp_data, lisp_data_to_selection_data):
164 Likewise.
165 * xterm.c (x_draw_relief_rect, x_draw_box_rect): Likewise.
166
167 2010-07-12 Dan Nicolaescu <dann@ics.uci.edu>
168
169 * callproc.c (child_setup): Remove subprocesses conditional.
170 Remove code dealing with SET_EMACS_PRIORITY, unused.
171
172 * buffer.c (Fset_buffer_multibyte): Remove subprocesses conditional.
173 * process.c (close_process_descs): Use DOS_NT instead of WINDOWSNT.
174
175 * emacs.c (__do_global_ctors, __do_global_ctors_aux)
176 (__do_global_dtors, __main): Use void in definition.
177 (main): Remove code dealing with SET_EMACS_PRIORITY, unused.
178 Remove SYMS_MACHINE code, unused. Remove SYMS_SYSTEM, inline
179 the only users from ...
180 * s/ms-w32.h (SYMS_SYSTEM): ... here and ...
181 * s/msdos.h (SYMS_SYSTEM): ... here. Remove.
182 (HAVE_VOLATILE): Remove, unused.
183
184 Convert more function definitions to standard C.
185 * xdisp.c (window_box_edges, handle_single_display_spec)
186 (display_string): Convert definition to standard C.
187 * scroll.c (do_direct_scrolling, scrolling_1):
188 * dispnew.c (allocate_matrices_for_frame_redisplay)
189 (mirrored_line_dance):
190 * coding.c (code_convert_string):
191 * charset.c (map_charset_chars):
192 * ccl.c (Fccl_program_p, Fccl_execute, Fccl_execute_on_string)
193 (Fregister_ccl_program, Fregister_code_conversion_map):
194 * keyboard.c (kbd_buffer_nr_stored): Likewise.
195 (head_table): Make static and const.
196
197 2010-07-12 Andreas Schwab <schwab@linux-m68k.org>
198
199 * Makefile.in (C_WARNINGS_SWITCH, PROFILING_CFLAGS)
200 (PROFILING_LDFLAGS): Set from substitution.
201 (ALL_CFLAGS): Add C_WARNINGS_SWITCH and PROFILING_CFLAGS, put
202 CFLAGS last.
203
204 2010-07-12 Kenichi Handa <handa@m17n.org>
205
206 * Makefile.in (lisp): Change hebrew.el to hebrew.elc.
207 (shortlisp): Likewise.
208
209 * font.h (enum font_property_index): New member FONT_ENTITY_INDEX.
210
211 * font.c (font_open_entity): Record ENTITY in FONT_OBJECT's slot
212 of FONT_ENTITY_INDEX.
213 (Ffont_get): If KEY is :otf and the font-object doesn't have the
214 property, get the property value dynamically.
215 (Ffont_put): Accept font-entity and font-object too.
216 (Ffont_get_glyhphs): Renamed from Fget_font_glyphs. Arguments and
217 return value changed.
218 (syms_of_font): Adjusted for the above change.
219
220 2010-07-11 Andreas Schwab <schwab@linux-m68k.org>
221
222 * blockinput.h: Remove obsolete comment.
223
224 * lisp.h: Include <stddef.h>.
225 (OFFSETOF): Don't define.
226 (VECSIZE): Use offsetof instead of OFFSETOF.
227 (PSEUDOVECSIZE): Likewise.
228 * process.c (conv_sockaddr_to_lisp): Likewise.
229 * alloc.c: Don't include <stddef.h>.
230 * buffer.h (PER_BUFFER_VAR_OFFSET): Use offsetof.
231
232 * process.c: Remove obsolete comment.
233
234 2010-07-11 Chong Yidong <cyd@stupidchicken.com>
235
236 * xfaces.c (Vface_remapping_alist): Doc fix (Bug#6091).
237
238 2010-07-11 Andreas Schwab <schwab@linux-m68k.org>
239
240 * callint.c (Fcall_interactively): Use strchr, strrchr instead of
241 index, rindex.
242 * doc.c (get_doc_string, Fsnarf_documentation): Likewise.
243 * editfns.c (Fuser_full_name, Fformat): Likewise.
244 * emacs.c (argmatch, sort_args, decode_env_path): Likewise.
245 * fileio.c (Ffile_symlink_p): Likewise.
246 * filelock.c (current_lock_owner): Likewise.
247 * font.c (font_parse_name, font_parse_family_registry): Likewise.
248 * fontset.c (fontset_pattern_regexp): Likewise.
249 * lread.c (read1): Likewise.
250 * sysdep.c (init_system_name): Likewise.
251 * xfns.c (select_visual): Likewise.
252 * s/hpux10-20.h (index, rindex): Don't define.
253 * s/ms-w32.h (index): Likewise.
254 * s/usg5-4.h: Likewise.
255
256 * callproc.c (relocate_fd): Use F_DUPFD if defined.
257
258 * alloc.c (pending_malloc_warning, malloc_warning): Add const.
259 * callproc.c (relocate_fd, getenv_internal_1, getenv_internal)
260 (egetenv): Likewise.
261 * doprnt.c (doprnt): Likewise.
262 * editfns.c (set_time_zone_rule, format2): Likewise.
263 * emacs.c (decode_env_path): Likewise.
264 * eval.c (signal_error, error): Likewise.
265 * insdel.c (replace_range_2): Likewise.
266 * keyboard.c (cmd_error_internal): Likewise.
267 * lread.c (isfloat_string, make_symbol, dir_warning): Likewise.
268 * print.c (write_string, write_string_1, print_error_message):
269 Likewise.
270 * vm-limit.c (warn_function, memory_warnings): Likewise.
271 * xdisp.c (message1, message1_nolog, message_with_string)
272 (vmessage, message, message_nolog): Likewise.
273 * emacs.c: Remove duplicate declaration.
274 * keyboard.h: Likewise.
275 * lisp.h: Update prototypes.
276
277 * eval.c: Fix indentation problem.
278
279 * keyboard.c: Include "process.h"
280
281 * eval.c: Remove obsolete noinline declaration.
282 * fns.c: Likewise.
283
284 2010-07-11 Ken Raeburn <raeburn@raeburn.org>
285
286 * doprnt.c (doprnt): Take a va_list argument instead of count and
287 pointer.
288 * eval.c (error): Change to a standard-C variadic function.
289 * xdisp.c (vmessage): Renamed from message, made static, and
290 changed to take a va_list argument.
291 (message): New variadic wrapper.
292 (message_nolog): Now a variadic function, calling vmessage.
293 * lisp.h: Include stdarg.h for va_list.
294 (doprnt, error, message, message_nolog): Decls updated.
295
296 2010-07-11 Eli Zaretskii <eliz@gnu.org>
297
298 * process.c (syms_of_process) <delete-exited-processes>: Define
299 even if !subprocesses.
300 (delete_exited_processes): Ditto.
301
302 * msdos.c (syms_of_msdos) <delete-exited-processes>: Remove DEFVAR.
303 (delete_exited_processes): Don't define.
304
305 2010-07-10 Chong Yidong <cyd@stupidchicken.com>
306
307 * frame.c (make_frame): Initialize menu_bar_lines and
308 tool_bar_lines members.
309 (make_initial_frame, make_terminal_frame): Initialize
310 menu_bar_lines using value of menu-bar-mode.
311
312 * msdos.c (IT_set_frame_parameters): Don't set menu-bar-lines.
313
314 2010-07-10 Eli Zaretskii <eliz@gnu.org>
315
316 * process.c: Reshuffle #include's. Condition some of the global
317 and static variables on `subprocesses'.
318 (hold_keyboard_input, unhold_keyboard_input, kbd_on_hold_p):
319 Leave only one implementation.
320 (Fget_buffer_process, Fprocess_inherit_coding_system_flag)
321 (kill_buffer_processes, Flist_system_processes)
322 (Fprocess_attributes, init_process, syms_of_process): Unify the
323 implementations for with subprocesses and without them.
324
325 2010-07-09 Jan Djärv <jan.h.d@swipnet.se>
326
327 * xmenu.c (set_frame_menubar): Must realize menubar_widget to get the
328 correct size for Motif.
329 (free_frame_menubar): Call x_set_window_size to update frame size.
330
331 * xfns.c (x_window): Set borderWidth to 0 for pane and
332 EmacsFrame. Frame size calculation is wrong otherwise.
333
334 2010-07-09 Michael Albinus <michael.albinus@gmx.de>
335
336 * dbusbind.c (xd_initialize): Add new argument RAISE_ERROR, which
337 allows to suppress errors when polling in Emacs' main loop.
338 (Fdbus_init_bus, Fdbus_get_unique_name, Fdbus_call_method)
339 (Fdbus_call_method_asynchronously, Fdbus_method_return_internal)
340 (Fdbus_method_error_internal, Fdbus_send_signal)
341 (xd_get_dispatch_status, xd_read_message, Fdbus_register_signal)
342 (Fdbus_register_method): Use it. (Bug#6579)
343
344 2010-07-08 Dan Nicolaescu <dann@ics.uci.edu>
345
346 * alloc.c: Convert DEFUNs to standard C.
347 * buffer.c:
348 * bytecode.c:
349 * callint.c:
350 * callproc.c:
351 * casefiddle.c:
352 * casetab.c:
353 * category.c:
354 * character.c:
355 * charset.c:
356 * chartab.c:
357 * cmds.c:
358 * coding.c:
359 * composite.c:
360 * data.c:
361 * dbusbind.c:
362 * dired.c:
363 * dispnew.c:
364 * doc.c:
365 * dosfns.c:
366 * editfns.c:
367 * emacs.c:
368 * eval.c:
369 * fileio.c:
370 * filelock.c:
371 * floatfns.c:
372 * fns.c:
373 * font.c:
374 * fontset.c:
375 * frame.c:
376 * fringe.c:
377 * image.c:
378 * indent.c:
379 * insdel.c:
380 * keyboard.c:
381 * keymap.c:
382 * lread.c:
383 * macros.c:
384 * marker.c:
385 * menu.c:
386 * minibuf.c:
387 * msdos.c:
388 * nsfns.m:
389 * nsmenu.m:
390 * nsselect.m:
391 * print.c:
392 * process.c:
393 * search.c:
394 * sound.c:
395 * syntax.c:
396 * term.c:
397 * terminal.c:
398 * textprop.c:
399 * undo.c:
400 * w16select.c:
401 * w32console.c:
402 * w32fns.c:
403 * w32font.c:
404 * w32menu.c:
405 * w32proc.c:
406 * w32select.c:
407 * window.c:
408 * xdisp.c:
409 * xfaces.c:
410 * xfns.c:
411 * xmenu.c:
412 * xselect.c:
413 * xsettings.c:
414 * xsmfns.c: Likewise.
415
416
417 2010-07-08 Eli Zaretskii <eliz@gnu.org>
418
419 * process.c (kbd_is_on_hold, hold_keyboard_input)
420 (unhold_keyboard_input, kbd_on_hold_p) [!subprocesses]: Define.
421
422 2010-07-08 Jan Djärv <jan.h.d@swipnet.se>
423
424 * xmenu.c (set_frame_menubar, create_and_show_popup_menu)
425 (create_and_show_dialog): Don't call apply_systemfont_to_(menu|dialog)
426 unless USE_LUCID.
427
428 2010-07-08 Dan Nicolaescu <dann@ics.uci.edu>
429
430 * xdisp.c (store_mode_line_noprop_char): Remove K&R alternative declaration.
431
432 Clean up include guards.
433 * tparam.c: Remove include guards for config.h, string.h and code
434 that assumes #ifndef emacs.
435 * termcap.c:
436 * unexalpha.c:
437 * sysdep.c:
438 * filemode.c:
439 * filelock.c:
440 * bidi.c: Likewise.
441
442 Remove prefix-args.c
443 * prefix-args.c: Remove file.
444 * autodeps.mk (ALLOBJS): Remove reference to prefix-args.
445 * Makefile.in (temacs${EXEEXT}): Remove references to
446 PRE_EDIT_LDFLAGS and POST_EDIT_LDFLAGS.
447 (mostlyclean): Remove reference to prefix-args.
448 (prefix-args): Remove.
449
450 Simplify cstart_of_data, start_of_code and related code.
451 * mem-limits.h: Remove !emacs and _LIBC conditional code.
452 (start_of_data): Merge into start_of_data function.
453 * sysdep.c (start_of_text): Remove. Move simplified versions of
454 it in the only users: unexaix.c and unexec.c.
455 (read_input_waiting): Remove local declaration of quit_char.
456 (start, etext): Remove declarations.
457 (start_of_data): Merge with the version in mem-limits.h and move
458 to vm-limits.c.
459 * vm-limit.c (start_of_data): Merged and simplified version of the
460 code formerly in mem-limits.h and sysdep.c.
461 * unexec.c (start): New declaration, moved from sysdep.c.
462 (start_of_text): Simplified version of the code formerly in sysdep.c.
463 * unexaix.c (start_of_text): Simplified version of the code
464 formerly in sysdep.c.
465 * m/alpha.h (HAVE_TEXT_START): Remove.
466 (TEXT_START): Move ...
467 * unexalpha.c (TEXT_START): ... here.
468 * s/hpux10-20.h (TEXT_START): Remove.
469 * s/darwin.h (TEXT_START):
470 * m/mips.h (TEXT_START):
471 * m/macppc.h (HAVE_TEXT_START):
472 * m/m68k.h (TEXT_START):
473 * m/iris4d.h (TEXT_START):
474 * m/intel386.h (TEXT_START):
475 * m/ibmrs6000.h (TEXT_START):
476 * m/ia64.h (HAVE_TEXT_START):
477 * s/msdos.h (TEXT_START): Likewise.
478
479 2010-07-07 Andreas Schwab <schwab@linux-m68k.org>
480
481 * alloc.c (overrun_check_malloc, overrun_check_realloc)
482 (overrun_check_free, xstrdup, allocate_string)
483 (allocate_string_data, compact_small_strings, Fmake_string)
484 (make_unibyte_string, make_multibyte_string)
485 (make_string_from_bytes, make_specified_string, make_float)
486 (Fcons, allocate_terminal, allocate_frame, make_pure_string)
487 (Fgarbage_collect): Replace bcopy, safe_bcopy, bzero, bcmp by
488 memcpy, memmove, memset, memcmp.
489 * atimer.c (start_atimer, set_alarm): Likewise.
490 * buffer.c (clone_per_buffer_values, report_overlay_modification)
491 (mmap_realloc, init_buffer_once): Likewise.
492 * callint.c (Fcall_interactively): Likewise.
493 * callproc.c (Fcall_process, Fcall_process_region, child_setup)
494 (getenv_internal_1): Likewise.
495 * casefiddle.c (casify_object): Likewise.
496 * ccl.c (ccl_driver): Likewise.
497 * character.c (str_as_multibyte, str_to_multibyte): Likewise.
498 * charset.c (load_charset_map_from_file)
499 (load_charset_map_from_file, load_charset_map_from_vector)
500 (Fdefine_charset_internal): Likewise.
501 * cm.c (Wcm_clear): Likewise.
502 * coding.c (decode_eol, decode_coding_object)
503 (Fset_coding_system_priority, make_subsidiaries): Likewise.
504 * data.c (Faset): Likewise.
505 * dired.c (directory_files_internal, file_name_completion_stat):
506 Likewise.
507 * dispnew.c (new_glyph_matrix, adjust_glyph_matrix)
508 (clear_glyph_row, copy_row_except_pointers)
509 (copy_glyph_row_contents, new_glyph_pool, realloc_glyph_pool)
510 (save_current_matrix, restore_current_matrix)
511 (build_frame_matrix_from_leaf_window, mirrored_line_dance)
512 (mirror_line_dance, scrolling_window): Likewise.
513 * doc.c (Fsnarf_documentation, Fsubstitute_command_keys):
514 Likewise.
515 * doprnt.c (doprnt): Likewise.
516 * editfns.c (Fuser_full_name, make_buffer_string_both)
517 (Fmessage_box, Fformat, Ftranspose_regions): Likewise.
518 * emacs.c (sort_args): Likewise.
519 * eval.c (Fapply, Ffuncall): Likewise.
520 * fileio.c (Ffile_name_directory, make_temp_name)
521 (Fexpand_file_name, search_embedded_absfilename)
522 (Fsubstitute_in_file_name, Ffile_symlink_p, Finsert_file_contents)
523 (auto_save_error): Likewise.
524 * fns.c (Fstring_equal, Fcopy_sequence, concat)
525 (string_to_multibyte, Fstring_as_unibyte, Fstring_as_multibyte)
526 (internal_equal, Fclear_string, larger_vector, copy_hash_table)
527 (Fmake_hash_table): Likewise.
528 * fringe.c (Fdefine_fringe_bitmap): Likewise.
529 * ftfont.c (ftfont_text_extents): Likewise.
530 * getloadavg.c (getloadavg): Likewise.
531 * image.c (define_image_type, make_image, make_image_cache)
532 (x_create_x_image_and_pixmap, xbm_image_p)
533 (w32_create_pixmap_from_bitmap_data, xbm_load, xpm_lookup_color)
534 (xpm_image_p, x_create_bitmap_from_xpm_data, xpm_load)
535 (init_color_table, x_build_heuristic_mask, pbm_image_p, pbm_load)
536 (png_image_p, png_read_from_memory, png_load, jpeg_image_p)
537 (tiff_image_p, tiff_read_from_memory, gif_image_p)
538 (gif_read_from_memory, gif_load, svg_image_p, gs_image_p):
539 Likewise.
540 * indent.c (scan_for_column, compute_motion): Likewise.
541 * insdel.c (gap_left, gap_right, make_gap_smaller, copy_text)
542 (insert_1_both, insert_from_gap, replace_range_2): Likewise.
543 * intervals.c (reproduce_tree, reproduce_tree_obj): Likewise.
544 * keyboard.c (echo_char, save_getcjmp, restore_getcjmp)
545 (kbd_buffer_store_event_hold, apply_modifiers_uncached)
546 (store_user_signal_events, menu_bar_items, tool_bar_items)
547 (process_tool_bar_item, append_tool_bar_item)
548 (read_char_minibuf_menu_prompt, read_key_sequence)
549 (Fread_key_sequence, Fread_key_sequence_vector, Frecent_keys):
550 Likewise.
551 * keymap.c (current_minor_maps, Fdescribe_buffer_bindings):
552 Likewise.
553 * lisp.h (STRING_COPYIN): Likewise.
554 * lread.c (Fload, read1, oblookup): Likewise.
555 * msdos.c (Frecent_doskeys): Likewise.
556 * nsfns.m (Fx_create_frame): Likewise.
557 * nsfont.m (nsfont_open, nsfont_text_extents, ns_glyph_metrics):
558 Likewise.
559 * nsimage.m (EmacsImage-initFromSkipXBM:width:height:)
560 (EmacsImage-initForXPMWithDepth:width:height:flip:length:):
561 Likewise.
562 * nsmenu.m (ns_update_menubar): Likewise.
563 * nsterm.m (ns_draw_fringe_bitmap, ns_term_init): Likewise.
564 * print.c (print_unwind, printchar, strout, print_string)
565 (print_error_message): Likewise.
566 * process.c (conv_lisp_to_sockaddr, set_socket_option)
567 (Fmake_network_process, Fnetwork_interface_list)
568 (Fnetwork_interface_info, read_process_output, Fprocess_send_eof)
569 (init_process): Likewise.
570 * ralloc.c (resize_bloc, r_alloc_sbrk, r_alloc_init): Likewise.
571 * regex.c (init_syntax_once, regex_compile, re_compile_fastmap):
572 Likewise.
573 * scroll.c (do_scrolling, do_direct_scrolling)
574 (scrolling_max_lines_saved): Likewise.
575 * search.c (search_buffer, wordify, Freplace_match): Likewise.
576 * sound.c (wav_init, au_init, Fplay_sound_internal): Likewise.
577 * syntax.c (skip_chars, skip_syntaxes): Likewise.
578 * sysdep.c (child_setup_tty, sys_subshell, emacs_get_tty)
579 (emacs_set_tty): Likewise.
580 * term.c (encode_terminal_code, calculate_costs)
581 (produce_special_glyphs, create_tty_output, init_tty, delete_tty):
582 Likewise.
583 * termcap.c (tgetst1, gobble_line): Likewise.
584 * termhooks.h (EVENT_INIT): Likewise.
585 * tparam.c (tparam1): Likewise.
586 * unexalpha.c (unexec): Likewise.
587 * unexec.c (write_segment): Likewise.
588 * unexmacosx.c (unexec_write_zero): Likewise.
589 * w32fns.c (w32_wnd_proc, Fx_create_frame, x_create_tip_frame)
590 (Fx_file_dialog, Fsystem_move_file_to_trash): Likewise.
591 * w32font.c (w32font_list_family, w32font_text_extents)
592 (w32font_list_internal, w32font_match_internal)
593 (w32font_open_internal, compute_metrics, Fx_select_font):
594 Likewise.
595 * w32menu.c (set_frame_menubar, add_menu_item)
596 (w32_menu_display_help, w32_free_submenu_strings): Likewise.
597 * w32term.c (XCreateGC, w32_initialize_display_info): Likewise.
598 * w32uniscribe.c (uniscribe_list_family): Likewise.
599 * w32xfns.c (get_next_msg, post_msg, prepend_msg): Likewise.
600 * window.c (make_window, replace_window, set_window_buffer)
601 (Fsplit_window): Likewise.
602 * xdisp.c (init_iterator, RECORD_OVERLAY_STRING, reseat_to_string)
603 (add_to_log, message3, x_consider_frame_title)
604 (append_space_for_newline, extend_face_to_end_of_line)
605 (decode_mode_spec_coding, init_glyph_string): Likewise.
606 * xfaces.c (x_create_gc, get_lface_attributes_no_remap)
607 (Finternal_copy_lisp_face, Finternal_merge_in_global_face)
608 (face_attr_equal_p, make_realized_face, make_face_cache)
609 (free_realized_faces, lookup_named_face, smaller_face)
610 (face_with_height, lookup_derived_face)
611 (x_supports_face_attributes_p, Finternal_set_font_selection_order)
612 (Finternal_set_font_selection_order, realize_default_face)
613 (compute_char_face, face_at_buffer_position)
614 (face_for_overlay_string, face_at_string_position, merge_faces):
615 Likewise.
616 * xfns.c (xic_create_fontsetname, Fx_create_frame)
617 (Fx_window_property, x_create_tip_frame)
618 (Fx_backspace_delete_keys_p): Likewise.
619 * xfont.c (xfont_list, xfont_match, xfont_list_family)
620 (xfont_text_extents): Likewise.
621 * xmenu.c (set_frame_menubar, xmenu_show): Likewise.
622 * xrdb.c (magic_file_p, x_get_resource): Likewise.
623 * xselect.c (x_queue_event, x_get_window_property)
624 (receive_incremental_selection): Likewise.
625 * xsmfns.c (x_session_check_input): Likewise.
626 * xterm.c (x_send_scroll_bar_event, SET_SAVED_MENU_EVENT)
627 (handle_one_xevent, x_check_errors, xim_initialize, x_term_init):
628 Likewise.
629 * character.h (BCOPY_SHORT): Removed.
630 * config.in: Regenerate.
631 * dispnew.c (safe_bcopy): Only define as dummy if PROFILING.
632 * emacs.c (main) [PROFILING]: Don't declare
633 dump_opcode_frequencies.
634 * lisp.h (safe_bcopy): Remove declaration.
635 (memset) [!HAVE_MEMSET]: Declare.
636 (memcpy) [!HAVE_MEMCPY]: Likewise.
637 (memmove) [!HAVE_MEMMOVE]: Likewise.
638 (memcmp) [!HAVE_MEMCMP]: Likewise.
639 * s/ms-w32.h (bzero, bcopy, bcmp, GAP_USE_BCOPY)
640 (BCOPY_UPWARD_SAFE, BCOPY_DOWNWARD_SAFE, HAVE_BCOPY, HAVE_BCMP):
641 Don't define.
642 (HAVE_MEMCMP, HAVE_MEMCPY, HAVE_MEMMOVE, HAVE_MEMSET): Define.
643 * s/msdos.h (GAP_USE_BCOPY, BCOPY_UPWARD_SAFE)
644 (BCOPY_DOWNWARD_SAFE): Don't define.
645 * sysdep.c (memset) [!HAVE_MEMSET]: Define.
646 (memcpy) [!HAVE_MEMCPY]: Define.
647 (memmove) [!HAVE_MEMMOVE]: Define.
648 (memcmp) [!HAVE_MEMCMP]: Define.
649
650 2010-07-07 Jan Djärv <jan.h.d@swipnet.se>
651
652 * process.c (kbd_is_on_hold): New variable.
653 (hold_keyboard_input, unhold_keyboard_input, kbd_on_hold_p): New
654 functions.
655 (wait_reading_process_output): If kbd_on_hold_p returns non-zero,
656 select on empty input mask.
657 (init_process): Initialize kbd_is_on_hold to 0.
658
659 * process.h (hold_keyboard_input, unhold_keyboard_input)
660 (kbd_on_hold_p): Declare.
661
662 * keyboard.c (input_available_signal): Declare.
663 (kbd_buffer_nr_stored): New function.
664 (kbd_buffer_store_event_hold): If kbd_buffer_nr_stored returns
665 more than KBD_BUFFER_SIZE/2, stop reding input (Bug#6571).
666 (kbd_buffer_get_event): If input is suspended and kbd_buffer_nr_stored
667 returns less than KBD_BUFFER_SIZE/4, resume reding input (Bug#6571).
668 (tty_read_avail_input): If input is on hold, return.
669 Don't read more that free slots in kbd_buffer (Bug#6571).
670
671 2010-07-07 Eli Zaretskii <eliz@gnu.org>
672
673 * msdos.h:
674 * msdos.c:
675 * dosfns.c:
676 * w16select.c: Convert function definitions to ANSI C.
677
678 * msdos.h (ctrl_break_func, install_ctrl_break_check): Remove
679 unused prototypes.
680
681 2010-07-07 Juanma Barranquero <lekktu@gmail.com>
682
683 * coding.c, sysdep.c: Convert some more functions to standard C.
684
685 2010-07-07 Juanma Barranquero <lekktu@gmail.com>
686
687 * coding.c (decode_coding_gap, encode_coding_gap, decode_coding_object)
688 (encode_coding_object): Use SPECPDL_INDEX.
689 (syms_of_coding): Use DOS_NT.
690
691 2010-07-07 Dan Nicolaescu <dann@ics.uci.edu>
692
693 * intervals.h (interval): Use EMACS_UINT instead of unsigned EMACS_INT.
694
695 Make the function member of Lisp_Subr use standard C prototypes.
696 * lisp.h (struct Lisp_Subr): Use a union for the function member.
697 (DECL_ALIGN): Add a cast for the function.
698 * eval.c (Feval, Ffuncall): Use the proper type for each type
699 function call.
700
701 2010-07-06 Chong Yidong <cyd@stupidchicken.com>
702
703 * fringe.c (draw_fringe_bitmap_1): Use lookup_named_face to get
704 fringe face id, so face-remapping-alist works (Bug#6091).
705
706 2010-07-06 Juanma Barranquero <lekktu@gmail.com>
707
708 * w32.c, w32console.c, w32fns.c, w32font.c, w32heap.c, w32inevt.c
709 * w32menu.c, w32proc.c, w32reg.c, w32select.c, w32term.c
710 * w32uniscribe.c, w32xfns.c: Convert function definitions to standard C.
711
712 2010-07-06 Andreas Schwab <schwab@linux-m68k.org>
713
714 * xterm.c (x_get_keysym_name): Change type of parameter to int.
715 * lisp.h: Declare x_get_keysym_name.
716 * keyboard.c (modify_event_symbol): Don't declare
717 x_get_keysym_name here.
718
719 2010-07-06 Dan Nicolaescu <dann@ics.uci.edu>
720
721 * ecrt0.c: Revert conversion to standard C.
722
723 2010-07-05 Dan Nicolaescu <dann@ics.uci.edu>
724
725 * vm-limit.c (memory_warnings):
726 * keyboard.c (modify_event_symbol):
727 * floatfns.c (rounding_driver, ceiling2, floor2, truncate2)
728 (round2, emacs_rint):
729 * process.c (send_process, old_sigpipe): Convert function
730 definitions and declarations to standard C.
731
732 2010-07-05 Juanma Barranquero <lekktu@gmail.com>
733
734 * buffer.c, cm.c, eval.c, keyboard.c, process.c, term.c, vm-limit.c,
735 * xdisp.c: Convert function definitions to standard C.
736
737 * cm.c (cmputc): Arg C is now int, not char.
738 * process.c (Fmake_network_process): Cast sockaddr_in* to sockaddr*.
739
740 2010-07-05 James Cloos <cloos@jhcloos.com>
741
742 * xterm.h (Xatom_net_wm_name, Xatom_net_wm_icon_name): New.
743
744 * xterm.c (x_term_init): Intern the _NET_WM_NAME and
745 _NET_WM_ICON_NAME atoms.
746
747 * xfns.c (x_set_name_internal): Set the EWMH _NET_WM_NAME
748 and _NET_WM_ICON_NAME properties, too, matching what is
749 done in the Gtk+ case.
750
751 2010-07-05 Jan Djärv <jan.h.d@swipnet.se>
752
753 * xterm.c (XTring_bell, XTset_terminal_window): Fix wrong prototype.
754
755 * xsmfns.c (SSDATA): New macro.
756 (smc_save_yourself_CB, x_session_initialize): Use SSDATA for strings
757 passed to strlen/strcpy/strcat.
758 (create_client_leader_window): Surround with #ifndef USE_GTK. Cast
759 7:th arg to XChangeProperty to (unsigned char *)
760
761 * xsettings.c (something_changedCB, parse_settings)
762 (apply_xft_settings): Reformat prototype.
763 (something_changedCB, init_gconf): Remove unused variable i.
764 (read_settings): Remove unused variable long_len.
765
766 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask)
767 (xg_get_image_for_pixmap, create_dialog)
768 (xg_get_file_with_selection, xg_get_file_name, update_cl_data)
769 (menuitem_highlight_callback, make_menu_item)
770 (xg_create_one_menuitem, create_menus, xg_update_menu_item)
771 (xg_create_scroll_bar, xg_update_scrollbar_pos)
772 (xg_set_toolkit_scroll_bar_thumb, xg_tool_bar_button_cb)
773 (xg_tool_bar_proxy_help_callback, xg_tool_bar_detach_callback)
774 (xg_tool_bar_attach_callback, xg_tool_bar_help_callback)
775 (xg_tool_bar_item_expose_callback): Reformat prototype.
776 (xg_update_menubar): GList *group => GSList *group.
777 (xg_modify_menubar_widgets): Initialize witem to 0, check witem != 0
778 before use.
779 (update_frame_tool_bar): 4:th param to xg_get_image_for_pixmap changed
780 to GTK_IMAGE (wimage).
781
782 2010-07-05 Dan Nicolaescu <dann@ics.uci.edu>
783
784 * atimer.c: Use "" instead of <> for local includes for
785 consistency with the rest of the code.
786
787 * xsmfns.c (smc_save_yourself_CB, smc_error_handler):
788 * xrdb.c (get_system_name):
789 * window.c (shrink_windows):
790 * syntax.c (forw_comment):
791 * scroll.c (calculate_scrolling, calculate_direct_scrolling)
792 (ins_del_costs):
793 * mem-limits.h (start_of_data):
794 * lread.c (readevalloop):
795 * gtkutil.c (xg_dialog_response_cb, xg_get_file_with_chooser)
796 (xg_get_file_with_selection, xg_update_menubar, xg_update_submenu):
797 * frame.c (x_get_focus_frame):
798 * floatfns.c (fmod_float):
799 * fileio.c (choose_write_coding_system):
800 * emacs.c (fatal_error_signal, init_cmdargs, argmatch)
801 (malloc_initialize_hook, sort_args, synchronize_locale):
802 * doprnt.c (doprnt):
803 * dired.c (compile_pattern):
804 * data.c (fmod_float):
805 * chartab.c (map_sub_char_table, map_sub_char_table_for_charset)
806 (map_char_table_for_charset):
807 * charset.c (define_charset_internal):
808 * alloc.c (Fgarbage_collect): Convert declarations or definitions
809 to standard C.
810
811 2010-07-04 Tetsurou Okazaki <okazaki@be.to> (tiny change)
812 Stefan Monnier <monnier@iro.umontreal.ca>
813
814 * lread.c (read1): Fix up last change to not mess up `c'.
815
816 2010-07-04 Juanma Barranquero <lekktu@gmail.com>
817
818 * strftime.c: Revert conversion to standard C (2010-07-04T07:50:25Z!dann@ics.uci.edu).
819
820 2010-07-04 Juanma Barranquero <lekktu@gmail.com>
821
822 Fix prototypes.
823
824 * atimer.c (start_atimer): Use EMACS_TIME, not struct timeval.
825 * dired.c (file_name_completion_stat): Use DIRENTRY, not struct dirent.
826 * fileio.c (read_non_regular, read_non_regular_quit): Add Lisp_Object
827 arg, as required by internal_condition_case_1.
828 * print.c (strout): Use const char* for arg PTR.
829 * regex.c (bcmp_translate): Use RE_TRANSLATE_TYPE, not Lisp_Object.
830 (analyse_first): Fix "const const".
831 * sysdep.c (set_file_times): Use EMACS_TIME, not struct timeval.
832 * unexelf.c (round_up, find_section): Use ElfW macro for arguments.
833 * xgselect.c (xg_select): Use SELECT_TYPE, EMACS_TIME.
834
835 2010-07-04 Dan Nicolaescu <dann@ics.uci.edu>
836
837 * alloc.c: Convert function definitions to standard C.
838 * atimer.c:
839 * bidi.c:
840 * bytecode.c:
841 * callint.c:
842 * callproc.c:
843 * casefiddle.c:
844 * casetab.c:
845 * category.c:
846 * ccl.c:
847 * character.c:
848 * charset.c:
849 * chartab.c:
850 * cmds.c:
851 * coding.c:
852 * composite.c:
853 * data.c:
854 * dbusbind.c:
855 * dired.c:
856 * dispnew.c:
857 * doc.c:
858 * doprnt.c:
859 * ecrt0.c:
860 * editfns.c:
861 * fileio.c:
862 * filelock.c:
863 * filemode.c:
864 * fns.c:
865 * font.c:
866 * fontset.c:
867 * frame.c:
868 * fringe.c:
869 * ftfont.c:
870 * ftxfont.c:
871 * gtkutil.c:
872 * indent.c:
873 * insdel.c:
874 * intervals.c:
875 * keymap.c:
876 * lread.c:
877 * macros.c:
878 * marker.c:
879 * md5.c:
880 * menu.c:
881 * minibuf.c:
882 * prefix-args.c:
883 * print.c:
884 * ralloc.c:
885 * regex.c:
886 * region-cache.c:
887 * scroll.c:
888 * search.c:
889 * sound.c:
890 * strftime.c:
891 * syntax.c:
892 * sysdep.c:
893 * termcap.c:
894 * terminal.c:
895 * terminfo.c:
896 * textprop.c:
897 * tparam.c:
898 * undo.c:
899 * unexelf.c:
900 * window.c:
901 * xfaces.c:
902 * xfns.c:
903 * xfont.c:
904 * xftfont.c:
905 * xgselect.c:
906 * xmenu.c:
907 * xrdb.c:
908 * xselect.c:
909 * xsettings.c:
910 * xsmfns.c:
911 * xterm.c: Likewise.
912
913 2010-07-03 Eli Zaretskii <eliz@gnu.org>
914
915 * msdos.c (IT_set_frame_parameters): Fix setting of colors in
916 frames other than the initial one. Fix reversal of colors when
917 `reverse' is specified in the frame parameters. Call
918 update_face_from_frame_parameter instead of
919 internal-set-lisp-face-attribute. Initialize screen colors from
920 initial_screen_colors[] when f->default_face_done_p is zero,
921 instead of depending on being called with default-frame-alist as
922 the alist argument.
923
924 * xfaces.c (update_face_from_frame_parameter): Move out of
925 HAVE_WINDOW_SYSTEM portion. Condition window-system only parts
926 with HAVE_WINDOW_SYSTEM.
927
928 * msdos.c (IT_set_frame_parameters): Set menu-bar-lines according
929 to menu-bar-mode, if not set in the frame parameters or in
930 default-frame-alist.
931
932 * w32console.c (sys_tputs): Adjust argument list to prototype in
933 term.c.
934
935 2010-07-03 Juanma Barranquero <lekktu@gmail.com>
936
937 * lisp.h (memory_warnings): Fix prototype.
938
939 * cm.h (evalcost): Fix prototype.
940
941 * cm.c (evalcost): Fix arg type.
942
943 2010-07-02 Dan Nicolaescu <dann@ics.uci.edu>
944
945 * term.c (term_clear_mouse_face, Fidentity):
946 * syssignal.h (signal_handler_t):
947 * lisp.h (memory_warnings):
948 * coding.h (preferred_coding_system):
949 * cm.h (evalcost):
950 * blockinput.h (reinvoke_input_signal): Convert to standard C prototypes.
951
952 2010-07-02 Eli Zaretskii <eliz@gnu.org>
953
954 * dosfns.h (msdos_stdcolor_idx, msdos_stdcolor_name): Remove P_
955 from prototypes.
956
957 * msdos.h (load_pixmap): Don't define away.
958
959 2010-07-02 Jan Djärv <jan.h.d@swipnet.se>
960
961 * lisp.h:
962 * atimer.h: Remove define for P_.
963
964 * alloc.c: Remove __P and P_ from .c and .m files.
965 * atimer.c:
966 * buffer.c:
967 * callint.c:
968 * category.c:
969 * charset.c:
970 * chartab.c:
971 * cm.c:
972 * coding.c:
973 * composite.c:
974 * data.c:
975 * dired.c:
976 * dispnew.c:
977 * doc.c:
978 * editfns.c:
979 * emacs.c:
980 * eval.c:
981 * fileio.c:
982 * filelock.c:
983 * fns.c:
984 * font.c:
985 * fontset.c:
986 * frame.c:
987 * ftfont.c:
988 * ftxfont.c:
989 * gmalloc.c:
990 * gtkutil.c:
991 * image.c:
992 * indent.c:
993 * intervals.c:
994 * keyboard.c:
995 * keymap.c:
996 * lread.c:
997 * marker.c:
998 * menu.c:
999 * minibuf.c:
1000 * print.c:
1001 * process.c:
1002 * scroll.c:
1003 * search.c:
1004 * sound.c:
1005 * strftime.c:
1006 * syntax.c:
1007 * sysdep.c:
1008 * term.c:
1009 * terminal.c:
1010 * textprop.c:
1011 * unexalpha.c:
1012 * w32console.c:
1013 * w32fns.c:
1014 * w32font.c:
1015 * w32menu.c:
1016 * w32term.c:
1017 * w32uniscribe.c:
1018 * window.c:
1019 * xdisp.c:
1020 * xfaces.c:
1021 * xfns.c:
1022 * xfont.c:
1023 * xftfont.c:
1024 * xmenu.c:
1025 * xselect.c:
1026 * xterm.c: Likewise.
1027
1028 Remove P_ and __P macros.
1029 * atimer.h: Remove P_ and __P macros.
1030 * buffer.h:
1031 * category.h:
1032 * ccl.h:
1033 * character.h:
1034 * charset.h:
1035 * cm.h:
1036 * coding.h:
1037 * composite.h:
1038 * dispextern.h:
1039 * disptab.h:
1040 * dosfns.h:
1041 * font.h:
1042 * fontset.h:
1043 * frame.h:
1044 * gtkutil.h:
1045 * indent.h:
1046 * intervals.h:
1047 * keyboard.h:
1048 * keymap.h:
1049 * lisp.h:
1050 * macros.h:
1051 * md5.h:
1052 * menu.h:
1053 * msdos.h:
1054 * nsterm.h:
1055 * puresize.h:
1056 * region-cache.h:
1057 * syntax.h:
1058 * syssignal.h:
1059 * systime.h:
1060 * termhooks.h:
1061 * w32font.h:
1062 * w32term.h:
1063 * widget.h:
1064 * window.h:
1065 * xgselect.h:
1066 * xsettings.h:
1067 * xterm.h: Likewise.
1068
1069 2010-07-02 Dan Nicolaescu <dann@ics.uci.edu>
1070
1071 * lisp.h: Document that USE_LISP_UNION_TYPE is now enabled using autoconf.
1072
1073 Cleanup old code.
1074 * dired.c (BSD4_3): Remove all uses, redundant with BSD4_2.
1075 * syssignal.h: Remove code for Lynx, not supported anymore.
1076 * vm-limit.c: Remove unused code the depends on emacs not being
1077 defined and NO_LIM_DATA being defined.
1078 * mem-limits.h: Remove dead code.
1079
1080 2010-07-01 Jan Djärv <jan.h.d@swipnet.se>
1081
1082 * window.c (Fwindow_absolute_pixel_edges): Doc fix.
1083
1084 * window.c (calc_absolute_offset, Fwindow_absolute_pixel_edges)
1085 (Fwindow_inside_absolute_pixel_edges): New functions (bug#5721).
1086
1087 * nsfns.m (compute_tip_xy): Do not convert coordinates from frame
1088 parameters, they are already absolute.
1089
1090 * nsterm.m (x_set_window_size, initFrameFromEmacs): Renamed
1091 FRAME_NS_TOOLBAR_HEIGHT to FRAME_TOOLBAR_HEIGHT.
1092
1093 * nsterm.h (FRAME_NS_TOOLBAR_HEIGHT): Rename to FRAME_TOOLBAR_HEIGH
1094
1095 * nsmenu.m (update_frame_tool_bar, free_frame_tool_bar): Update
1096 FRAME_TOOLBAR_HEIGHT.
1097
1098 * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Add
1099 BLOCK/UNBLOCK_INPUT so asserts don't trigger.
1100
1101 2010-06-30 Chong Yidong <cyd@stupidchicken.com>
1102
1103 * frame.c (get_future_frame_param, Fmake_terminal_frame): Don't
1104 check default-frame-alist.
1105
1106 2010-06-30 Andreas Schwab <schwab@linux-m68k.org>
1107
1108 * process.c (create_process): Avoid using invalid file descriptors.
1109
1110 * callproc.c (child_setup): Avoid closing a file descriptor twice.
1111
1112 2010-06-30 Jan Djärv <jan.h.d@swipnet.se>
1113
1114 * xsettings.c (Ffont_get_system_normal_font, Ffont_get_system_font):
1115 Improve documentation. Return font regardless of use_system_font.
1116 (syms_of_xsettings): Improve documentation for font-use-system-font.
1117
1118 2010-07-10 Chong Yidong <cyd@stupidchicken.com>
1119
1120 * xfaces.c (realize_face): Garbage the frame if a face is removed
1121 (Bug#6593).
1122
1123 2010-07-05 Andreas Schwab <schwab@linux-m68k.org>
1124
1125 * keyboard.c: Remove duplicate <setjmp.h>.
1126 (read_key_sequence): Remove volatile qualifiers.
1127
1128 2010-07-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1129
1130 * dispextern.h (FRINGE_HEIGHT_BITS): New define.
1131 (struct glyph_row): New members left_fringe_offset and
1132 right_fringe_offset.
1133
1134 * xterm.c (x_draw_fringe_bitmap): Don't clip bottom aligned bitmap
1135 specially.
1136 * w32term.c (w32_draw_fringe_bitmap): Likewise.
1137 * nsterm.m (ns_draw_fringe_bitmap): Likewise.
1138
1139 * fringe.c (draw_fringe_bitmap_1): Don't clip bitmap here.
1140 Take account of bitmap offset.
1141 (draw_window_fringes): Take account of window vscroll.
1142 (update_window_fringes): Likewise. Extend top-aligned top indicator
1143 or bottom-aligned bottom indicator to adjacent rows if it doesn't fit
1144 in one row. Don't set redraw_fringe_bitmaps_p outside row comparison.
1145 Set left_fringe_offset and right_fringe_offset (Bug#5634, Bug#6325).
1146
1147 2010-07-04 Juanma Barranquero <lekktu@gmail.com>
1148
1149 * w32fns.c (Qtooltip): Declare.
1150 Suggested by Andy Moreton <andrewjmoreton@gmail.com>.
1151
1152 2010-07-03 Jan Djärv <jan.h.d@swipnet.se>
1153
1154 * xmenu.c (x_activate_menubar): Send Press/Release for Gtk+ to avoid
1155 grab on just Press (Bug#6499).
1156
1157 2010-07-02 Chong Yidong <cyd@stupidchicken.com>
1158
1159 * frame.c (Qtooltip): New var.
1160 (delete_frame): Use it. Fix faulty if statement. Don't update
1161 mode line for tooltip frames. Suggested by Martin Rudalics.
1162
1163 * xfns.c (x_create_tip_frame):
1164 * w32fns.c (x_create_tip_frame): Use it.
1165
1166 2010-06-17 Naohiro Aota <naota@elisp.net> (tiny change)
1167
1168 * xftfont.c (xftfont_open): Check font width one by one also when
1169 spacing is dual.
1170
1171 * ftfont.c (ftfont_open): Ditto.
1172
1173 2010-06-30 Glenn Morris <rgm@gnu.org>
1174
1175 * s/sol2-6.h (INHIBIT_X11R6_XIM): Remove, handled by configure now.
1176
1177 * Makefile.in (CANNOT_DUMP): Update for configure name change.
1178
1179 * s/freebsd.h (USE_MMAP_FOR_BUFFERS):
1180 * s/irix6-5.h (USE_MMAP_FOR_BUFFERS):
1181 * s/darwin.h (SYSTEM_MALLOC):
1182 * s/sol2-10.h (SYSTEM_MALLOC): Move to configure.
1183
1184 2010-06-29 Jan Djärv <jan.h.d@swipnet.se>
1185
1186 * nsfns.m: extern declare Vmenu_bar_mode, Vtool_bar_mode.
1187 (ns_get_screen): Don't assign integer to f.
1188 (Fx_display_color_cells): Declarations before statements.
1189
1190 2010-06-28 Jan Djärv <jan.h.d@swipnet.se>
1191
1192 * xfns.c (x_default_font_parameter): Remove got_from_system
1193 (Bug#6526).
1194
1195 * xterm.h (gtk_widget_get_window, gtk_widget_get_mapped)
1196 (gtk_adjustment_get_page_size, gtk_adjustment_get_upper): New
1197 defines based on what configure finds.
1198
1199 * xterm.c (XTflash): Use gtk_widget_get_window.
1200 (xg_scroll_callback): Use gtk_adjustment_get_upper and
1201 gtk_adjustment_get_page_size.
1202 (handle_one_xevent): Use gtk_widget_get_mapped.
1203 (x_term_init): Remove HAVE_GTK_MULTIDISPLAY and associated error
1204 messages.
1205
1206 * xmenu.c (create_and_show_popup_menu): Call gtk_widget_get_mapped.
1207
1208 * gtkutil.h: Replace HAVE_GTK_FILE_BOTH with
1209 HAVE_GTK_FILE_SELECTION_NEW.
1210
1211 * gtkutil.c (xg_display_open, xg_display_close): Remove
1212 HAVE_GTK_MULTIDISPLAY, it is always defined.
1213 (xg_display_open): Return type is void.
1214 (gtk_widget_set_has_window)
1215 (gtk_dialog_get_action_area, gtk_dialog_get_content_area)
1216 (gtk_widget_get_sensitive, gtk_adjustment_set_page_size)
1217 (gtk_adjustment_set_page_increment)
1218 (gtk_adjustment_get_step_increment): #define these if not found
1219 by configure.
1220 (remove_submenu): New define based on Gtk+ version.
1221 (xg_set_cursor, xg_frame_resized, xg_event_is_for_scrollbar): Use
1222 gtk_widget_get_window.
1223 (xg_frame_resized, xg_update_frame_menubar): Use gtk_widget_get_mapped.
1224 (xg_create_frame_widgets): Use gtk_widget_set_has_window.
1225 (create_dialog): Use gtk_dialog_get_action_area and
1226 gtk_dialog_get_content_area.
1227 (xg_uses_old_file_dialog, xg_get_file_name): Remove HAVE_GTK_FILE_BOTH
1228 and HAVE_GTK_FILE_CHOOSER_DIALOG_NEW. File chooser is always
1229 available, so checking for HAVE_GTK_FILE_SELECTION_NEW is enough.
1230 (xg_update_menubar, xg_update_submenu, xg_show_toolbar_item): Use
1231 g_object_ref and g_object_unref.
1232 (xg_update_menu_item, xg_tool_bar_menu_proxy): Use
1233 gtk_widget_get_sensitive.
1234 (xg_update_submenu): Use remove_submenu.
1235 (xg_update_scrollbar_pos): Don't use GtkFixedChild, use child
1236 properties instead to get old x and y position.
1237 (xg_set_toolkit_scroll_bar_thumb): Use gtk_adjustment_get_page_size,
1238 gtk_adjustment_get_step_increment, gtk_adjustment_set_page_size,
1239 gtk_adjustment_set_step_increment and gtk_adjustment_set_page_increment.
1240 (xg_get_tool_bar_widgets): New function.
1241 (xg_tool_bar_menu_proxy, xg_show_toolbar_item)
1242 (update_frame_tool_bar): Call xg_get_tool_bar_widgets.
1243 (toolbar_set_orientation): New #define based on if configure
1244 finds gtk_orientable_set_orientation.
1245 (xg_create_tool_bar): Call toolbar_set_orientation.
1246 (xg_make_tool_item, xg_show_toolbar_item): Call gtk_box_pack_start
1247 instead of gtk_box_pack_start_defaults.
1248
1249 2010-06-28 Chong Yidong <cyd@stupidchicken.com>
1250
1251 * cmds.c (Fdelete_backward_char): Move into Lisp.
1252
1253 2010-06-27 Dan Nicolaescu <dann@ics.uci.edu>
1254
1255 * s/freebsd.h (BSD4_2): Remove redundant definition.
1256 bsd-common.h defines it already.
1257
1258 2010-06-27 Chong Yidong <cyd@stupidchicken.com>
1259
1260 * xfns.c (Fx_create_frame): Don't consult X resouces when setting
1261 menu-bar-lines and tool-bar-lines. Use menu-bar-mode and
1262 tool-bar-mode, which are now set using these X resources at
1263 startup, to determine the defaults (Bug#2249).
1264
1265 * w32fns.c (Fx_create_frame):
1266 * nsfns.m (Fx_create_frame): Likewise.
1267
1268 * frame.c (Vmenu_bar_mode, Vtool_bar_mode): New vars.
1269
1270 2010-06-24 Juanma Barranquero <lekktu@gmail.com>
1271
1272 * gtkutil.c (xg_update_scrollbar_pos):
1273 Avoid C99 mid-block variable declaration.
1274
1275 2010-06-22 Jan Djärv <jan.h.d@swipnet.se>
1276
1277 * xterm.c (x_scroll_bar_create): Remove call to xg_show_scroll_bar.
1278
1279 * gtkutil.h (xg_show_scroll_bar): Remove.
1280
1281 * gtkutil.c (xg_update_scrollbar_pos): Show/hide scroll bar as needed
1282 if height is less than scroll bar min size.
1283 (xg_show_scroll_bar): Remove, show moved to xg_update_scrollbar_pos.
1284
1285 * xfns.c (x_default_font_parameter): Try to open font from system
1286 before using it (bug#6478). Rename got_from_gconf to got_from_system.
1287
1288 2010-06-22 Keith Packard <keithp@keithp.com> (tiny change)
1289
1290 * font.c (font_parse_fcname): Allow . for sizes like 7.5 (bug#6437).
1291
1292 2010-06-20 Eli Zaretskii <eliz@gnu.org>
1293
1294 * xdisp.c (try_scrolling): When scroll-conservatively is set to
1295 most-positive-fixnum, be extra accurate when scrolling window
1296 start, to avoid missing the cursor line.
1297
1298 2010-06-19 Eli Zaretskii <eliz@gnu.org>
1299
1300 * xdisp.c (try_scrolling): Compute the limit for searching point
1301 in forward scroll from scroll_max, instead of an arbitrary limit
1302 of 10 screen lines. See
1303 http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00766.html
1304 and
1305 http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00773.html
1306 for details.
1307
1308 2010-06-16 Glenn Morris <rgm@gnu.org>
1309
1310 * editfns.c (Fbyte_to_string): Pacify compiler.
1311
1312 2010-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
1313
1314 * lread.c (read1): Phase out old-style backquotes a bit more.
1315
1316 2010-06-12 Eli Zaretskii <eliz@gnu.org>
1317
1318 * makefile.w32-in ($(BLD)/bidi.$(O)): Depend on biditype.h and
1319 bidimirror.h.
1320
1321 * deps.mk (bidi.o): Depend on biditype.h and bidimirror.h.
1322
1323 * bidi.c (bidi_initialize): Remove explicit initialization of
1324 bidi_type_table; include biditype.h instead. Don't support
1325 entries whose second codepoint is zero. Initialize bidi_mirror_table.
1326 (bidi_mirror_char): Use bidi_mirror_table.
1327
1328 * biditype.h: New file.
1329
1330 * bidimirror.h: New file.
1331
1332 * window.c (syms_of_window): Doc fix (bug#6409).
1333
1334 2010-06-12 Romain Francoise <romain@orebokech.com>
1335
1336 * Makefile.in (lisp, shortlisp): Use new location of vc-hooks and
1337 ediff-hook.
1338
1339 2010-06-10 Glenn Morris <rgm@gnu.org>
1340
1341 * editfns.c (Fbyte_to_string): Pacify compiler.
1342
1343 * m/ibms390x.h: Rather than duplicating ibms390.h, just include it.
1344
1345 2010-06-26 Andreas Schwab <schwab@linux-m68k.org>
1346
1347 * alloc.c (Fmake_byte_code): Don't access undefined argument
1348 (Bug#6517).
1349
1350 2010-06-25 Chong Yidong <cyd@stupidchicken.com>
1351
1352 * xdisp.c (next_element_from_image): Ensure that after-strings are
1353 read the next time we hit handle_stop (Bug#1336).
1354
1355 2010-06-23 Andreas Schwab <schwab@linux-m68k.org>
1356
1357 * lread.c (read1): Signal error if #s is not followed by paren.
1358
1359 2010-06-19 Chong Yidong <cyd@stupidchicken.com>
1360
1361 * image.c (free_image): Mark frame as garbaged (Bug#6426).
1362
1363 * keymap.c (Fdefine_key): Doc fix (Bug#6460).
1364
1365 2010-06-15 Glenn Morris <rgm@gnu.org>
1366
1367 * editfns.c (Fbyte_to_string): Pacify compiler.
1368
1369 2010-06-09 Stefan Monnier <monnier@iro.umontreal.ca>
1370
1371 * dbusbind.c (xd_append_arg): Don't "make-unibyte" the string.
1372 Check `object's type before accessing its guts.
1373
1374 2010-06-09 Dan Nicolaescu <dann@ics.uci.edu>
1375
1376 * s/usg5-4.h: Fix previous change.
1377 Suggested by Lawrence Mitchell <wence@gmx.li>
1378
1379 2010-06-08 Andreas Schwab <schwab@linux-m68k.org>
1380
1381 * minibuf.c (Fall_completions): Add more checks.
1382
1383 2010-06-08 Juanma Barranquero <lekktu@gmail.com>
1384
1385 * minibuf.c (Fall_completions): Check COLLECTION's size (bug#6378).
1386
1387 2010-06-08 Dan Nicolaescu <dann@ics.uci.edu>
1388
1389 * lread.c (X_OK): Remove, unused.
1390
1391 * dispnew.c: Remove obsolete comment.
1392
1393 Remove INCLUDED_FCNTL.
1394 * xterm.c (INCLUDED_FCNTL):
1395 * callproc.c (INCLUDED_FCNTL):
1396 * alloc.c (INCLUDED_FCNTL):
1397 * systty.h (INCLUDED_FCNTL): Remove all uses, not needed anymore.
1398 (emacs_get_tty, emacs_set_tty): Declare unconditionally.
1399
1400 2010-06-07 Martin Rudalics <rudalics@gmx.at>
1401
1402 * window.c (Fselect_window): Move `record_buffer' up to the
1403 beginning of this function, so the buffer gets recorded
1404 even if the selected window does not change.
1405 http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00137.html
1406
1407 2010-06-07 Juanma Barranquero <lekktu@gmail.com>
1408
1409 * cmds.c (Fforward_char, Fbackward_char): Fix typos in docstrings.
1410 (Fforward_line, Fbeginning_of_line): Reflow docstrings.
1411
1412 2010-06-06 Dan Nicolaescu <dann@ics.uci.edu>
1413
1414 Remove BSTRING related code, all platforms define it.
1415 * s/usg5-4.h (BSTRING): Remove definition.
1416 * s/template.h (BSTRING):
1417 * s/msdos.h (BSTRING):
1418 * s/ms-w32.h (BSTRING):
1419 * s/hpux10-20.h (BSTRING):
1420 * s/gnu-linux.h (BSTRING):
1421 * s/darwin.h (BSTRING):
1422 * s/cygwin.h (BSTRING):
1423 * s/bsd-common.h (BSTRING):
1424 * s/aix4-2.h (BSTRING): Likewise.
1425 * sysdep.c: Remove code depending on BSTRING not being defined.
1426
1427 2010-06-05 Juanma Barranquero <lekktu@gmail.com>
1428
1429 Remove obsolete macro BASE_LEADING_CODE_P.
1430 * character.h (BASE_LEADING_CODE_P): Remove.
1431 * regex.c [!emacs] (BASE_LEADING_CODE_P): Remove.
1432 * buffer.c (Fset_buffer_multibyte):
1433 * indent.c (scan_for_column, compute_motion):
1434 * insdel.c (count_combining_before, count_combining_after):
1435 Use LEADING_CODE_P instead of BASE_LEADING_CODE_P.
1436
1437 2010-06-04 Juanma Barranquero <lekktu@gmail.com>
1438
1439 Turn `directory-sep-char' into a noop.
1440
1441 * lisp.h [WINDOWSNT] (Vdirectory_sep_char): Don't declare.
1442 (DIRECTORY_SEP): Define unconditionally.
1443
1444 * s/ms-w32.h (DIRECTORY_SEP): Remove.
1445
1446 * emacs.c (decode_env_path): Don't check DIRECTORY_SEP,
1447 call dostounix_filename directly.
1448
1449 * fileio.c (CORRECT_DIR_SEPS): Remove.
1450 (Ffile_name_directory, directory_file_name, Fexpand_file_name)
1451 (Fsubstitute_in_file_name): Use dostounix_filename instead.
1452 (file_name_as_directory): Use dostounix_filename, DIRECTORY_SEP.
1453 (syms_of_fileio) <directory-sep-char>: Move to subr.el.
1454
1455 * w32proc.c (CORRECT_DIR_SEPS): Remove.
1456 (Fw32_short_file_name, Fw32_long_file_name): Use dostounix_filename.
1457
1458 2010-06-03 Andreas Schwab <schwab@linux-m68k.org>
1459
1460 * process.c (conv_lisp_to_sockaddr): Fix conversion of IPv4
1461 address. (Bug#6346)
1462
1463 2010-06-03 Juanma Barranquero <lekktu@gmail.com>
1464
1465 * ccl.c (Fccl_program_p): Fix typo in docstring.
1466
1467 2010-06-03 Dan Nicolaescu <dann@ics.uci.edu>
1468
1469 Move UNEXEC definition to autoconf.
1470 * s/usg5-4.h (UNEXEC): Remove, move to configure.in.
1471 * s/sol2-10.h (UNEXEC):
1472 * s/irix6-5.h (UNEXEC):
1473 * s/hpux10-20.h (UNEXEC):
1474 * s/gnu-linux.h (UNEXEC):
1475 * s/darwin.h (UNEXEC):
1476 * s/cygwin.h (UNEXEC):
1477 * s/bsd-common.h (UNEXEC):
1478 * s/aix4-2.h (UNEXEC):
1479 * m/alpha.h (UNEXEC): Likewise.
1480 * Makefile.in (UNEXEC_OBJ): Define using @UNEXEC_OBJ@.
1481
1482 2010-06-03 Juanma Barranquero <lekktu@gmail.com>
1483
1484 Remove obsolete pre-unicode2 macros.
1485 * character.h (MULTIBYTE_FORM_LENGTH, PARSE_MULTIBYTE_SEQ): Remove.
1486 * composite.c (composition_reseat_it):
1487 * data.c (Faset):
1488 * fns.c (Ffillarray):
1489 * regex.c (re_search_2): Use BYTES_BY_CHAR_HEAD.
1490 [!emacs] (BYTES_BY_CHAR_HEAD): Define instead of MULTIBYTE_FORM_LENGTH.
1491
1492 2010-06-03 Juri Linkov <juri@jurta.org>
1493
1494 * buffer.c (Fother_buffer): Add CHECK_FRAME.
1495 (Fswitch_to_buffer): Remove unused variable `err'.
1496
1497 2010-06-03 Glenn Morris <rgm@gnu.org>
1498
1499 * m/template.h (NO_SOCK_SIGIO): Remove, no longer used.
1500
1501 * m/hp800.h (alloca) [__NetBSD__ && __GNUC__]: No need to define it,
1502 now that AH_BOTTOM does it.
1503
1504 * m/hp800.h (HAVE_ALLOCA):
1505 * m/ibms390x.h (HAVE_ALLOCA): Do not define, no longer needed.
1506
1507 * m/ia64.h, s/gnu-linux.h, s/gnu.h, s/netbsd.h, s/usg5-4.h:
1508 Remove NOT_C_CODE tests, it is always true now.
1509
1510 2010-06-02 Dan Nicolaescu <dann@ics.uci.edu>
1511
1512 Fix config.h includes.
1513 * xsettings.c:
1514 * xgselect.c:
1515 * nsterm.m:
1516 * nsselect.m:
1517 * nsimage.m:
1518 * nsfont.m:
1519 * nsfns.m:
1520 * dbusbind.c: Use #include <config.h> instead of "config.h" as all
1521 other files do.
1522
1523 * gmalloc.c: Remove BROKEN_PROTOTYPES reference, unused.
1524
1525 * s/sol2-6.h: Remove obsolete comments.
1526
1527 Remove unnecessary alloca.h includes.
1528 * keymap.c: Do not include alloca.h, config.h does that.
1529 * sysdep.c: Likewise. Do not define fwrite, not used.
1530
1531 2010-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
1532
1533 * sysdep.c (child_setup_tty): Move the non-canonical initialization to
1534 the HAVE_TERMIO where it belongs (bug#6149).
1535
1536 2010-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
1537
1538 * keymap.c (Fwhere_is_internal): Fix handling of remapping (in thread
1539 of bug#6305).
1540
1541 2010-05-30 Eli Zaretskii <eliz@gnu.org>
1542
1543 * bidi.c (bidi_move_to_visually_next): Make sure the sentinel
1544 state is always cached (bug#6306).
1545
1546 2010-05-29 Eli Zaretskii <eliz@gnu.org>
1547
1548 Fix cursor motion in bidi-reordered continued lines.
1549 * xdisp.c (try_cursor_movement): Backup to non-continuation line
1550 only after finding point's row. Fix the logic. Rewrite the loop
1551 over continuation lines in bidi-reordered buffers. Return
1552 CURSOR_MOVEMENT_MUST_SCROLL upon failure to find a suitable row,
1553 rather than CURSOR_MOVEMENT_CANNOT_BE_USED.
1554
1555 2010-05-28 Michael Albinus <michael.albinus@gmx.de>
1556
1557 * fileio.c (Fdelete_file): Pass TRASH arg to handler call.
1558
1559 2010-05-28 Kenichi Handa <handa@m17n.org>
1560
1561 * font.c (font_delete_unmatched): Check Vface_ignored_fonts.
1562 Don't sheck SPEC if it is nil.
1563 (font_list_entities): Call font_delete_unmatched if
1564 Vface_ignored_fonts is non-nil. (Bug#6287)
1565
1566 2010-05-28 Glenn Morris <rgm@gnu.org>
1567
1568 * Makefile.in (LIBES): Remove $LOADLIBES, it is never set.
1569
1570 2010-05-27 Chong Yidong <cyd@stupidchicken.com>
1571
1572 * fileio.c (Fdelete_file): Change meaning of optional arg to mean
1573 whether to trash.
1574 (internal_delete_file, Frename_file): Callers changed.
1575 (delete_by_moving_to_trash): Doc fix.
1576 (Fdelete_directory_internal): Don't move to trash.
1577
1578 * callproc.c (delete_temp_file):
1579 * buffer.c (Fkill_buffer): Callers changed.
1580
1581 * lisp.h: Update prototype.
1582
1583 2010-05-27 Chong Yidong <cyd@stupidchicken.com>
1584
1585 * xdisp.c (redisplay_window): After redisplay, check if point is
1586 still valid before setting it (Bug#6177).
1587
1588 2010-05-27 Glenn Morris <rgm@gnu.org>
1589
1590 * Makefile.in, autodeps.mk, deps.mk, ns.mk:
1591 Convert comments to Makefile format.
1592
1593 * Makefile.in (bootstrap-clean): No more Makefile.c.
1594
1595 2010-05-26 Glenn Morris <rgm@gnu.org>
1596
1597 * Makefile.in (YMF_PASS_LDFLAGS): Remove.
1598 (temacs${EXEEXT}): Use PRE_EDIT_LDFLAGS, POST_EDIT_LDFLAGS.
1599
1600 * Makefile.in (NS_IMPL_GNUSTEP_INC, NS_IMPL_GNUSTEP_TEMACS_LDFLAGS):
1601 Remove.
1602 (TEMACS_LDFLAGS): Do not use NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
1603
1604 2010-05-26 Kenichi Handa <handa@m17n.org>
1605
1606 * composite.c (composition_compute_stop_pos): Fix condition for
1607 backward scanning.
1608
1609 2010-05-25 Glenn Morris <rgm@gnu.org>
1610
1611 * Makefile.in (@NS_IMPL_GNUSTEP_INC@, NS_IMPL_GNUSTEP_TEMACS_LDFLAGS):
1612 Move before TEMACS_LDFLAGS.
1613 (TEMACS_LDFLAGS): Use $NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
1614 (temacs${EXEEXT}): Do not use $NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
1615
1616 * Makefile.in (NOT_C_CODE): No longer define.
1617 (config.h): No longer include.
1618
1619 * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): Move definition after some
1620 variables it may reference.
1621
1622 * Makefile.in (LD_SWITCH_SYSTEM_EXTRA): Remove.
1623 (TEMACS_LDFLAGS): Remove LD_SWITCH_SYSTEM_EXTRA.
1624
1625 2010-05-25 Kenichi Handa <handa@m17n.org>
1626
1627 * dispextern.h (struct composition_it): New members rule_idx and
1628 charpos.
1629
1630 * xdisp.c (set_iterator_to_next): While scanning backward, assume
1631 that the character positions of IT point the last character of the
1632 current grapheme cluster.
1633 (next_element_from_composition): Don't change character positions
1634 of IT.
1635 (append_composite_glyph): Set glyph->charpos to
1636 it->cmp_it.charpos.
1637
1638 * composite.c (autocmp_chars): Change the first argument to RULE,
1639 and try composition with RULE only.
1640 (composition_compute_stop_pos): Record the index number of the
1641 composition rule in CMP_IT->rule_idx.
1642 (composition_reseat_it): Call autocmp_chars repeatedly until the
1643 correct rule of the composition is found.
1644 (composition_update_it): Set CMP_IT->charpos. Assume the CHARPOS
1645 is at the last character of the current grapheme cluster when
1646 CMP_IT->reversed_p is nonzero.
1647
1648 2010-05-24 Stefan Monnier <monnier@iro.umontreal.ca>
1649
1650 * editfns.c (Fbyte_to_string): New function.
1651
1652 2010-05-24 Stefan Monnier <monnier@iro.umontreal.ca>
1653
1654 * process.c (Fmake_network_process): Set :host to nil if it's not used.
1655 Suggested by Masatake YAMATO <yamato@redhat.com>.
1656
1657 2010-05-23 Eli Zaretskii <eliz@gnu.org>
1658
1659 * dispextern.h (init_iterator): Sync prototype with changed definition.
1660
1661 2010-05-20 enami tsugutomo <tsugutomo.enami@jp.sony.com>
1662
1663 * s/netbsd.h: If terminfo is found, use it in preference to
1664 termcap. (Bug#6190) [Backport from trunk]
1665
1666 2010-05-19 Eli Zaretskii <eliz@gnu.org>
1667
1668 Redesign and reimplement bidi-aware edge positions of glyph rows.
1669
1670 * dispextern.h (struct glyph_row): New members minpos and maxpos.
1671 (MATRIX_ROW_START_CHARPOS, MATRIX_ROW_START_BYTEPOS)
1672 (MATRIX_ROW_END_CHARPOS, MATRIX_ROW_END_BYTEPOS): Reference minpos
1673 and maxpos members instead of start.pos and end.pos, respectively.
1674
1675 * xdisp.c (display_line): Compare IT_CHARPOS with the position in
1676 row->start.pos, rather than with MATRIX_ROW_START_CHARPOS.
1677 (cursor_row_p): Use row->end.pos rather than MATRIX_ROW_END_CHARPOS.
1678 (try_window_reusing_current_matrix, try_window_id):
1679 Use ROW->minpos rather than ROW->start.pos.
1680 (init_from_display_pos, init_iterator): Use EMACS_INT for
1681 character and byte positions.
1682 (find_row_edges): Rename from find_row_end. Accept additional
1683 arguments for minimum and maximum buffer positions seen by
1684 display_line for this row. Don't use iterator to find the
1685 position following the maximum one; instead, increment the
1686 position found by display_line directly. Fix logic; eol_pos
1687 should be tested before the rest. Handle the case of characters
1688 delivered from display vector (bug#6036). Fix tests related to
1689 it->method. Handle the truncated_on_right_p rows.
1690 (RECORD_MAX_MIN_POS): New macro.
1691 (display_line): Use it to record the minimum and maximum buffer
1692 positions for glyphs in the row being assembled. Record the
1693 position of the newline that terminates the line. If word wrap is
1694 in effect, restore minimum and maximum positions seen up to the
1695 wrap point, when iterator returns to it.
1696 (try_window_reusing_current_matrix): Give up if in bidi-reordered
1697 row and cursor not already at point. Restore original pre-bidi
1698 code for unidirectional buffers.
1699
1700 * dispnew.c (increment_row_positions, check_matrix_invariants):
1701 Increment and check row->start.pos and row->end.pos, in addition
1702 to MATRIX_ROW_START_CHARPOS and MATRIX_ROW_END_CHARPOS.
1703
1704 * .gdbinit (prowlims): Display row->minpos and row->maxpos.
1705 Display truncated_on_left_p and truncated_on_right_p flags.
1706 Formatting fixes.
1707 (pmtxrows): Display the ordinal number of each row. Don't display
1708 rows beyond the last one.
1709
1710 * bidi.c (bidi_cache_iterator_state): Don't zero out new_paragraph:
1711 it is not copied by bidi_copy_it.
1712
1713 2010-05-22 Eli Zaretskii <eliz@gnu.org>
1714
1715 * w32.c (sys_write): Break writes into chunks smaller than 32MB.
1716 (Bug#6237)
1717
1718 2010-05-22 Chong Yidong <cyd@stupidchicken.com>
1719
1720 * image.c (Fimage_flush): Rename from image-refresh.
1721
1722 2010-05-21 Chong Yidong <cyd@stupidchicken.com>
1723
1724 * xdisp.c (redisplay_internal): Clear caches even if redisplaying
1725 just one window.
1726
1727 * image.c (Vimage_cache_eviction_delay): Decrease to 300.
1728 (clear_image_cache): If the number of cached images is unusually
1729 large, decrease the cache eviction delay (Bug#6230).
1730
1731 2010-05-21 Glenn Morris <rgm@gnu.org>
1732
1733 * Makefile.in (${ns_appdir}, ${ns_appbindir}Emacs, ns-app):
1734 Move these rules to ns.mk.
1735 * ns.mk: New file.
1736
1737 * Makefile.in (../src/$(OLDXMENU), $(OLDXMENU)): Always define rules.
1738
1739 * Makefile.in (CANNOT_DUMP): New, set by configure.
1740 (emacs${EXEEXT}, bootstrap-emacs${EXEEXT}): Use $CANNOT_DUMP.
1741
1742 2010-05-20 Juri Linkov <juri@jurta.org>
1743
1744 * fileio.c (Fdelete_file): Change interative spec to use
1745 `read-file-name' like in `find-file-read-args' where the default
1746 value is `default-directory' instead of `buffer-file-name'.
1747 http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00533.html
1748
1749 2010-05-20 Kevin Ryde <user42@zip.com.au>
1750
1751 * keyboard.c (Vlast_command, Vkeyboard_translate_table)
1752 (Voverriding_terminal_local_map, Vsystem_key_alist)
1753 (Vlocal_function_key_map): Fix manual link in docstring (Bug#6224).
1754
1755 2010-05-20 Glenn Morris <rgm@gnu.org>
1756
1757 * Makefile.in (DEPDIR): New constant.
1758 (DEPFLAGS): Set with configure, not cpp.
1759 (MKDEPDIR): New, set by configure.
1760 (.c.o, .m.o, ecrt0.o): Use $MKDEPDIR.
1761 (clean): Use $DEPDIR.
1762 (deps_frag): Include from configure.
1763 Move static/dynamic dependency stuff to deps.mk/autodeps.mk.
1764 * deps.mk, autodeps.mk: New files, extracted from Makefile.in.
1765
1766 * bidi.c (bidi_cache_shrink, bidi_cache_iterator_state): Fix
1767 reallocation of the cache. (Bug#6210)
1768
1769 2010-05-19 Glenn Morris <rgm@gnu.org>
1770
1771 * s/msdos.h (ORDINARY_LINK): Move to sed2v2.inp.
1772
1773 * Makefile.in (LD, YMF_PASS_LDFLAGS): Set with configure, not cpp.
1774 (GNULIB_VAR): Remove.
1775 (LIBES): Use LIB_GCC instead of GNULIB_VAR.
1776
1777 * m/ibms390x.h (LINKER):
1778 * m/macppc.h (LINKER) [GNU_LINUX]:
1779 * s/aix4-2.h (ORDINARY_LINK):
1780 * s/cygwin.h (LINKER):
1781 * s/darwin.h (ORDINARY_LINK):
1782 * s/gnu.h (ORDINARY_LINK):
1783 * s/netbsd.h (LINKER):
1784 * s/usg5-4.h (ORDINARY_LINK):
1785 Move to configure.
1786
1787 * s/aix4-2.h (LINKER): Remove; this file sets ORDINARY_LINK.
1788
1789 2010-05-18 Chong Yidong <cyd@stupidchicken.com>
1790
1791 * character.c (Fstring, Funibyte_string): Use SAFE_ALLOCA to
1792 prevent stack overflow if number of arguments is too large
1793 (Bug#6214).
1794
1795 2010-05-18 Juanma Barranquero <lekktu@gmail.com>
1796
1797 * charset.c (load_charset_map_from_file): Don't call close after fclose.
1798
1799 2010-05-18 Glenn Morris <rgm@gnu.org>
1800
1801 * s/gnu-linux.h: Combine two conditionals.
1802
1803 * Makefile.in (otherobj): Include $(VMLIMIT_OBJ) separately from
1804 $(POST_ALLOC_OBJ).
1805
1806 * Makefile.in (RALLOC_OBJ): New, set by configure.
1807 (rallocobj): Replace with the previous variable.
1808 (otherobj): Use $RALLOC_OBJ.
1809
1810 * s/gnu.h (REL_ALLOC) [DOUG_LEA_MALLOC]:
1811 * s/gnu-linux.h (REL_ALLOC) [DOUG_LEA_MALLOC]: Move undef to configure.
1812
1813 * Makefile.in (GMALLOC_OBJ, VMLIMIT_OBJ): New, set by configure.
1814 (gmallocobj, vmlimitobj): Replace with previous two variables.
1815 (otherobj): Use $GMALLOC_OBJ, $VMLIMIT_OBJ.
1816
1817 2010-05-17 Glenn Morris <rgm@gnu.org>
1818
1819 * Makefile.in (OLDXMENU_DEPS): New, set by configure.
1820 (stamp-oldxmenu): Use $OLDXMENU_DEPS.
1821
1822 2010-05-16 Glenn Morris <rgm@gnu.org>
1823
1824 * Makefile.in (${ns_appbindir}Emacs, ns-app): Always define these rules.
1825
1826 * Makefile.in (clean): Get rid of HAVE_NS conditional.
1827
1828 * Makefile.in (ns_appdir, ns_appbindir): Now configure adds the
1829 trailing "/".
1830
1831 * Makefile.in (TEMACS_LDFLAGS2): New, set by configure.
1832 (temacs${EXEEXT}): Combine the NS_IMPL_GNUSTEP case with the default.
1833
1834 * Makefile.in (GNUSTEP_SYSTEM_LIBRARIES): Remove, unused.
1835 (NS_IMPL_GNUSTEP_TEMACS_LDFLAGS): New, set by configure.
1836 (LD) [NS_IMPL_GNUSTEP]: Set to $(CC) -rdynamic.
1837 (temacs${EXEEXT}): Remove $LOCALCPP, never defined or referenced.
1838 Make most of the NS_IMPL_GNUSTEP case the same as the default case.
1839
1840 * Makefile.in (temacs${EXEEXT}) [!NS_IMPL_GNUSTEP]:
1841 Remove ${STARTFLAGS}, nothing ever sets it.
1842
1843 2010-05-16 Dan Nicolaescu <dann@ics.uci.edu>
1844
1845 * m/ia64.h (UNEXEC): Remove, set in s/*.h.
1846
1847 2010-05-16 Glenn Morris <rgm@gnu.org>
1848
1849 * Makefile.in (LIBX_BASE): Always define.
1850
1851 * Makefile.in (LIBX_OTHER): Move out of cpp section.
1852
1853 * Makefile.in (LIBXT): Always define.
1854
1855 2010-05-15 Glenn Morris <rgm@gnu.org>
1856
1857 * Makefile.in (OLDXMENU, LIBXMENU, LIBX_OTHER): Always define.
1858
1859 * Makefile.in (FONT_DRIVERS): Remove, replace with $FONT_OBJ.
1860 (obj, SOME_MACHINE_OBJECTS): Use $FONT_OBJ.
1861
1862 2010-05-15 Ken Raeburn <raeburn@raeburn.org>
1863
1864 * lisp.h (XFLOAT_DATA): Use "0?x:x" to generate an rvalue. (Bug#5916)
1865 (LISP_MAKE_RVALUE) [!USE_LISP_UNION_TYPE && !__GNUC__]: Likewise.
1866
1867 * emacs.c (main): Initialize initial-environment and
1868 process-environment before generating from env, not after.
1869
1870 Handle --version reasonably in CANNOT_DUMP configuration.
1871 * emacs.c (emacs_version, emacs_copyright): New string variables.
1872 (Vemacs_version, Vemacs_copyright): New Lisp_Object variables.
1873 (syms_of_emacs): Defvar them, and initialize them from the C
1874 string variables.
1875 (main): If initialization hasn't been done, print initial version
1876 info from the C strings, instead of starting an interactive session.
1877
1878 2010-05-15 Eli Zaretskii <eliz@gnu.org>
1879
1880 * bidi.c (bidi_paragraph_init): Don't leave alone garbage values
1881 of bidi_it->paragraph_dir. Call bidi_initialize if needed.
1882 (bidi_paragraph_init): Remove redundant assertion that we are at
1883 the beginning of a line after call to bidi_find_paragraph_start.
1884
1885 * xdisp.c (Fcurrent_bidi_paragraph_direction): New function.
1886 (syms_of_xdisp): Defsubr it.
1887
1888 * cmds.c (Fforward_char, Fbackward_char): Doc fix.
1889
1890 * Makefile.in: Fix MSDOS-related comments.
1891
1892 2010-05-15 Glenn Morris <rgm@gnu.org>
1893
1894 * Makefile.in (OLDXMENU_TARGET): New, set by configure.
1895 (really-lwlib, really-oldXMenu): Always define.
1896 ($OLDXMENU): Depend on $OLDXMENU_TARGET.
1897
1898 * Makefile.in: Simplify cpp conditional.
1899
1900 * Makefile.in (${ns_appdir}): Simplify using umask.
1901
1902 * Makefile.in (${ns_appdir}): Remove references to CVS-related files.
1903
1904 2010-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
1905
1906 * eval.c (specbind): Remove left-over duplicate test.
1907 Disallow let-binding frame-local vars. Add comment.
1908
1909 2010-05-14 Eli Zaretskii <eliz@gnu.org>
1910
1911 Make the cache of bidi iterator states dynamically allocated.
1912 * bidi.c (bidi_cache_shrink): New function.
1913 (bidi_init_it): Call it.
1914 (bidi_cache_iterator_state): Enlarge the cache if needed.
1915
1916 * bidi.c (bidi_move_to_visually_next): Rename from
1917 bidi_get_next_char_visually. All callers changed.
1918
1919 2010-05-14 Kenichi Handa <handa@m17n.org>
1920
1921 * dispextern.h (struct composition_it): New member reversed_p.
1922
1923 * composite.c (composition_compute_stop_pos): Search backward if
1924 ENDPOS < CHARPOS.
1925 (composition_reseat_it): Handle the case that ENDPOS < CHARPOS.
1926 Set CMP_IT->reversed_p.
1927 (composition_update_it): Pay attention to CMP_IT->reversed_p.
1928
1929 * xdisp.c (set_iterator_to_next):
1930 Call composition_compute_stop_pos with negative ENDPOS if we are
1931 scanning backward. Call composition_compute_stop_pos if scan
1932 direction is changed.
1933 (next_element_from_buffer): Call composition_compute_stop_pos with
1934 negative ENDPOS if we are scanning backward.
1935 (next_element_from_composition): Pay attention to
1936 IT->cmp_it.reversed_p.
1937
1938 2010-05-14 Kenichi Handa <handa@m17n.org>
1939
1940 * font.c (font_range): Return the range for the font found at first.
1941
1942 2010-05-14 Glenn Morris <rgm@gnu.org>
1943
1944 * Makefile.in (ns_appdir, ns_appbindir, ns_appsrc): Always define.
1945
1946 * Makefile.in (mktime, X11, register): Move undefs to configure.
1947
1948 * Makefile.in (MSDOS_OBJ): Default to empty, let msdos scripts set it.
1949 (MSDOS_X_OBJ): New variable.
1950 (MSDOS_SUPPORT_REAL): New constant.
1951 (MSDOS_SUPPORT): Set as a variable, not with cpp.
1952 (obj): Use MSDOS_X_OBJ.
1953 (lisp): Use MSDOS_SUPPORT as a variable.
1954
1955 * Makefile.in (REAL_MOUSE_SUPPORT): New constant.
1956 (GPM_MOUSE_SUPPORT): Now it's a constant.
1957 (MOUSE_SUPPORT, TOOLTIP_SUPPORT, WINDOW_SUPPORT): Set with configure,
1958 not cpp.
1959
1960 * Makefile.in (@NS_IMPL_GNUSTEP_INC@): Use in place of #ifdef.
1961 (ns_appresdir): Remove, unused.
1962
1963 * Makefile.in (SHELL): Move outside cpp section.
1964
1965 * s/netbsd.h (AMPERSAND_FULL_NAME): Remove (defined in AH_BOTTOM).
1966
1967 2010-05-13 Glenn Morris <rgm@gnu.org>
1968
1969 * Makefile.in (FONT_DRIVERS): Place with other HAVE_X_WINDOWS stuff.
1970 (TOOLTIP_SUPPORT): Place with other HAVE_WINDOW_SYSTEM stuff.
1971
1972 * Makefile.in (FONT_DRIVERS): If HAVE_X_WINDOWS is defined,
1973 HAVE_WINDOW_SYSTEM must be too.
1974
1975 * Makefile.in (WINNT_SUPPORT): Remove, nt build does not use this file.
1976 (lisp): Remove WINNT_SUPPORT.
1977
1978 * Makefile.in (OLDXMENU, LIBXMENU) [!HAVE_MENUS]:
1979 Let configure set these variables (to empty) in this case as well.
1980
1981 * Makefile.in (LD_SWITCH_X_SITE): Define as a variable, not via cpp.
1982 (LIBX_BASE): Use $LD_SWITCH_X_SITE.
1983
1984 * Makefile.in (C_SWITCH_X_SYSTEM, C_SWITCH_X_SITE, LIB_STANDARD)
1985 (LIB_MATH, FONTCONFIG_CFLAGS, FONTCONFIG_LIBS, FREETYPE_CFLAGS)
1986 (FREETYPE_LIBS, LIBOTF_CFLAGS, LIBOTF_LIBS, M17N_FLT_CFLAGS)
1987 (M17N_FLT_LIBS, GNU_OBJC_CFLAGS, GNUSTEP_SYSTEM_LIBRARIES, LIBGPM)
1988 (LIBRESOLV, UNEXEC_OBJ): For clarity, define variables to hold
1989 the values output by configure.
1990 (ALL_CFLAGS, obj, LIBES, temacs${EXEEXT}): Use the above variables.
1991
1992 2010-05-12 Glenn Morris <rgm@gnu.org>
1993
1994 * Makefile.in (YMF_PASS_LDFLAGS, LD, LINKER): Simplify the logic.
1995 (LINKER_WAS_SPECIFIED): Remove.
1996
1997 * Makefile.in (LIB_GCC): Set using configure, not cpp.
1998 (GNULIB_VAR) [!ORDINARY_LINK]: Always set to $LIB_GCC.
1999 * m/arm.h (LIB_GCC) [GNU_LINUX]:
2000 * s/cygwin.h (LIB_GCC):
2001 * s/freebsd.h (LIB_GCC):
2002 * s/gnu-linux.h (LIB_GCC):
2003 * s/msdos.h (LIB_GCC):
2004 * s/netbsd.h (LIB_GCC):
2005 Move to configure.
2006
2007 2010-05-11 Karel Klic <kklic@redhat.com>
2008
2009 * ftfont.c: Fix incorrect parentheses of #if condition for
2010 definining M17N_FLT_USE_NEW_FEATURE.
2011
2012 2010-05-11 Glenn Morris <rgm@gnu.org>
2013
2014 * Makefile.in (LIBS_SYSTEM) [MSDOS]: Do not reset.
2015 * s/msdos.h (MSDOS_LIBS_SYSTEM): Remove.
2016
2017 2010-05-10 Eli Zaretskii <eliz@gnu.org>
2018
2019 * xdisp.c (init_iterator): Don't turn on bidi reordering in
2020 unibyte buffers. See
2021 http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00263.html.
2022
2023 2010-05-10 Glenn Morris <rgm@gnu.org>
2024
2025 * Makefile.in (LIBS_SYSTEM): Set using configure, not cpp.
2026 (LIBS_SYSTEM) [MSDOS]: Reset with MSDOS_LIBS_SYSTEM.
2027 (LIBES): Use LIBS_SYSTEM as a variable.
2028 * s/msdos.h (LIBS_SYSTEM): Rename to MSDOS_LIBS_SYSTEM. Always define.
2029 * s/aix4-2.h (LIBS_SYSTEM):
2030 * s/freebsd.h (LIBS_SYSTEM):
2031 * s/hpux10-20.h (LIBS_SYSTEM):
2032 * s/sol2-6.h (LIBS_SYSTEM):
2033 * s/unixware.h (LIBS_SYSTEM):
2034 Move to configure.
2035
2036 * s/aix4-2.h (MAIL_USE_LOCKF):
2037 * s/bsd-common.h (MAIL_USE_FLOCK):
2038 * s/darwin.h (MAIL_USE_FLOCK):
2039 * s/gnu-linux.h (MAIL_USE_FLOCK):
2040 * s/irix6-5.h (MAIL_USE_FLOCK):
2041 * s/template.h (MAIL_USE_FLOCK):
2042 Move to configure.
2043
2044 2010-05-08 Chong Yidong <cyd@stupidchicken.com>
2045
2046 * Version 23.2 released.
2047
2048 2010-05-08 Andreas Schwab <schwab@linux-m68k.org>
2049
2050 * composite.c (autocmp_chars): Save point as marker before calling
2051 auto-composition-function (Bug#5984).
2052
2053 * lisp.h (restore_point_unwind): Add prototype.
2054
2055 * fileio.c (restore_point_unwind): Remove static attribute.
2056
2057 2010-05-08 Kenichi Handa <handa@m17n.org>
2058
2059 * ftfont.c (M17N_FLT_USE_NEW_FEATURE): Define it if we can use the
2060 new feature of libotf and m17n-flt.
2061 (ftfont_check_otf) [M17N_FLT_USE_NEW_FEATURE]:
2062 Call OTF_check_features even if no specific feature is given.
2063 (PACK_OTF_TAG) [M17N_FLT_USE_NEW_FEATURE]: New macro.
2064 (ftfont_drive_otf) [M17N_FLT_USE_NEW_FEATURE]: Handle the case
2065 that OUT is NULL. Use OTF_drive_gsub_with_log and
2066 OTF_drive_gpos_with_log instead of OTF_drive_gsub and
2067 OTF_drive_gpos.
2068 (ftfont_try_otf) [M17N_FLT_USE_NEW_FEATURE]: New function.
2069 (ftfont_shape_by_flt) [M17N_FLT_USE_NEW_FEATURE]:
2070 Setup mflt_enable_new_feature and mflt_try_otf.
2071
2072 2010-05-08 Jan Djärv <jan.h.d@swipnet.se>
2073
2074 * xsettings.c (Ftool_bar_get_system_style): Correct comment.
2075
2076 * gtkutil.c (xg_pack_tool_bar): Change show_all to show for handle
2077 box and toolbar (Bug #6139).
2078 (xg_create_tool_bar): Remove comment (Bug #6139).
2079 (xg_make_tool_item): Remove gtk_widget_show_all (Bug #6139).
2080 (xg_show_toolbar_item): Add gtk_widget_show for weventbox (Bug #6139).
2081
2082 2010-05-08 Juanma Barranquero <lekktu@gmail.com>
2083
2084 * makefile.w32-in ($(BLD)/eval.$(O), $(BLD)/w32fns.$(O)):
2085 Update dependencies.
2086
2087 2010-05-08 Eli Zaretskii <eliz@gnu.org>
2088
2089 * fringe.c (update_window_fringes): Set up truncation bitmaps for
2090 R2L lines.
2091
2092 2010-05-08 Glenn Morris <rgm@gnu.org>
2093
2094 * Makefile.in (THIS_IS_MAKEFILE): Remove, unused.
2095
2096 * Makefile.in (LIBS_TERMCAP): Set with configure, not cpp.
2097 (TERMCAP_OBJ): New, set by configure, replacing termcapobj.
2098 (termcapobj): Replace with TERMCAP_OBJ.
2099 (otherobj): Use $TERMCAP_OBJ instead of $termcapobj.
2100 (LIBES): Use LIBS_TERMCAP as a variable.
2101
2102 * s/freebsd.h (osreldate.h): No longer include, since this file
2103 does not use __FreeBSD_version any more.
2104
2105 * s/aix4-2.h (TERMINFO):
2106 * s/cygwin.h (TERMINFO):
2107 * s/darwin.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
2108 * s/freebsd.h (TERMINFO, LIBS_TERMCAP):
2109 * s/gnu-linux.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
2110 * s/gnu.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
2111 * s/hpux10-20.h (TERMINFO, LIBS_TERMCAP):
2112 * s/irix6-5.h (TERMINFO):
2113 * s/netbsd.h (LIBS_TERMCAP):
2114 * s/openbsd.h (TERMINFO, LIBS_TERMCAP):
2115 * s/sol2-6.h (LIBS_TERMCAP) [!TERMINFO]:
2116 * s/usg5-4.h (TERMINFO):
2117 Move to configure.
2118
2119 2010-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
2120
2121 * eval.c (unbind_to): Don't unbind a local binding into the global
2122 binding when the local binding disappeared. Inversely, don't unbind
2123 a global binding into a newly created local binding.
2124 * data.c (set_internal): Make its `buf' arg into a `where' arg so we
2125 can specify the frame to use, when applicable. Adjust callers.
2126
2127 2010-05-07 Vincent Belaïche <vincent.belaiche@gmail.com>
2128 Stefan Monnier <monnier@iro.umontreal.ca>
2129
2130 * floatfns.c (Fisnan, Fcopysign, Ffrexp, Fldexp): New functions.
2131
2132 2010-05-07 Eli Zaretskii <eliz@gnu.org>
2133
2134 * w32fns.c: Include w32.h.
2135 (Fw32_shell_execute): Decode the error message before passing it
2136 to `error'. (Bug#6126)
2137
2138 * msdos.c (dos_set_window_size):
2139 * w16select.c (Fx_selection_exists_p): Use `Fsymbol_value (foo)'
2140 instead of `XSYMBOL (foo)->value'.
2141
2142 2010-05-07 Eli Zaretskii <eliz@gnu.org>
2143
2144 Fix the MS-DOS build, broken by autoconfiscation.
2145
2146 * Makefile.in: Don't use Make-style comments past the "start of
2147 cpp stuff" line.
2148 (MSDOS_OBJ): Remove xmenu.o (it is now defined by XMENU_OBJ).
2149
2150 * s/msdos.h (UNEXEC): Don't define (@unexec@ in Makefile.in is
2151 edited directly by msdos/sed1v2.inp).
2152
2153 2010-05-07 Glenn Morris <rgm@gnu.org>
2154
2155 * Makefile.in (LD_SWITCH_SYSTEM): Set with configure, not cpp.
2156 (LD_SWITCH_SYSTEM_EXTRA): New variable, set by configure.
2157 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM and $LD_SWITCH_SYSTEM_EXTRA,
2158 move out of cpp section.
2159 * s/freebsd.h (LD_SWITCH_SYSTEM):
2160 * s/gnu-linux.h (LD_SWITCH_SYSTEM):
2161 * s/netbsd.h (LD_SWITCH_SYSTEM):
2162 * s/openbsd.h (LD_SWITCH_SYSTEM): Move to configure.in.
2163
2164 2010-05-07 Dan Nicolaescu <dann@ics.uci.edu>
2165
2166 Define LIB_STANDARD and START_FILES using autoconf.
2167 * s/usg5-4.h (LIB_STANDARD):
2168 * s/netbsd.h (START_FILES):
2169 * s/irix6-5.h (LIB_STANDARD):
2170 * s/hpux10-20.h (LIB_STANDARD, START_FILES):
2171 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
2172 * s/freebsd.h (START_FILES):
2173 * s/darwin.h (START_FILES):
2174 * s/cygwin.h (START_FILES):
2175 * s/aix4-2.h (LIB_STANDARD):
2176 * m/ibmrs6000.h (START_FILES): Remove, move logic to configure.in.
2177 * Makefile.in (STARTFILES): Rename to START_FILES, define using
2178 autoconf, not cpp.
2179
2180 2010-05-06 Dan Nicolaescu <dann@ics.uci.edu>
2181
2182 Remove NEED_BSDTTY and NEED_UNISTD_H.
2183 * s/hpux10-20.h (NEED_BSDTTY): Remove.
2184 * s/aix4-2.h (NEED_UNISTD_H): Remove.
2185 * systty.h: Simplify conditionals for including <sys/bsdtty.h>,
2186 <sys/ptyio.h> and <unistd.h>.
2187
2188 * emacs.c (main): Remove NO_DIR_LIBRARY conditional, unused.
2189
2190 * Makefile.in (STARTFILES): Conditionally define to make the usage clear.
2191 * s/gnu.h (START_FILES): Remove empty definition.
2192
2193 2010-05-06 Jan Djärv <jan.h.d@swipnet.se>
2194
2195 * xterm.c (x_draw_image_relief): Move declaration of extra to beginning.
2196
2197 2010-05-06 Glenn Morris <rgm@gnu.org>
2198
2199 * Makefile.in (CPP, LN_S): Remove unused variables.
2200
2201 2010-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
2202
2203 * syntax.c (Fchar_syntax): Check the arg is a character (bug#6080).
2204
2205 2010-05-05 Lawrence Mitchell <wence@gmx.li>
2206
2207 * m/sparc.h: Fix typo in earlier change.
2208
2209 2010-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
2210
2211 Misc tweaks.
2212 * eval.c (Fdefvaralias): Remove unintended nested if.
2213 (internal_condition_case_2, internal_condition_case_n): Use ANSI type.
2214
2215 2010-05-04 Bernhard Herzog <bh@intevation.de> (tiny change)
2216
2217 * xsmfns.c (smc_save_yourself_CB): strlen(client_id) => strlen(cwd).
2218
2219 2010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
2220
2221 Remove BSD_PGRPS.
2222 * s/bsd-common.h (BSD_PGRPS): Remove undef.
2223 * s/gnu-linux.h (BSD_PGRPS): Remove.
2224 * term.c (dissociate_if_controlling_tty):
2225 * sysdep.c (narrow_foreground_group, widen_foreground_group)
2226 (init_sys_modes, reset_sys_modes):
2227 * emacs.c (main):
2228 * callproc.c (Fcall_process, child_setup): Remove code depending
2229 on BSD_PGRPS.
2230
2231 Remove POSIX_SIGNALS.
2232 * s/usg5-4.h (POSIX_SIGNALS):
2233 * s/netbsd.h (POSIX_SIGNALS):
2234 * s/msdos.h (POSIX_SIGNALS):
2235 * s/ms-w32.h (POSIX_SIGNALS):
2236 * s/hpux11.h (POSIX_SIGNALS):
2237 * s/gnu.h (POSIX_SIGNALS):
2238 * s/gnu-linux.h (POSIX_SIGNALS):
2239 * s/freebsd.h (POSIX_SIGNALS):
2240 * s/darwin.h (POSIX_SIGNALS):
2241 * s/cygwin.h (POSIX_SIGNALS):
2242 * s/aix4-2.h (POSIX_SIGNALS): Remove definition.
2243 * s/unixware.h:
2244 * s/sol2-6.h: Remove comments on POSIX_SIGNALS.
2245 * process.c (create_process):
2246 * syssignal.h:
2247 * sysdep.c (wait_for_termination, init_signals):
2248 * process.c (create_process):
2249 * msdos.c: POSIX_SIGNALS is always defined on all platforms,
2250 remove all code that assumes the contrary.
2251
2252 2010-05-04 Glenn Morris <rgm@gnu.org>
2253
2254 * s/gnu-linux.h (LD_SWITCH_SYSTEM): Use LD_SWITCH_X_SITE_AUX as a shell
2255 variable.
2256 * s/netbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
2257 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH.
2258 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
2259 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH instead of
2260 LD_SWITCH_SYSTEM_tmp.
2261 * Makefile.in (LD_SWITCH_X_SITE_AUX, LD_SWITCH_X_SITE_AUX_RPATH):
2262 New variables, set by configure.
2263
2264 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
2265 * s/darwin.h (HEADERPAD_EXTRA, LIBS_NSGUI): Remove.
2266 (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
2267 * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): New variable, set by configure.
2268 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM_TEMACS.
2269
2270 * s/aix4-2.h (C_SWITCH_SYSTEM):
2271 * m/alpha.h (C_SWITCH_MACHINE):
2272 Move to configure.in.
2273 * Makefile.in (C_SWITCH_MACHINE, C_SWITCH_SYSTEM):
2274 New variables, set by configure.
2275 (ALL_CFLAGS): Use $C_SWITCH_MACHINE and $C_SWITCH_SYSTEM in place of
2276 $c_switch_machine and $c_switch_system.
2277
2278 2010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
2279
2280 * s/hpux10-20.h (LIB_STANDARD): New definition.
2281 * Makefile.in (ORDINARY_LINK): Remove setting LIB_STANDARD based
2282 on it, not used anymore.
2283
2284 2010-05-03 Chong Yidong <cyd@stupidchicken.com>
2285
2286 * eval.c (internal_condition_case_n): Rename from
2287 internal_condition_case_2.
2288 (internal_condition_case_2): New function.
2289
2290 * xdisp.c (safe_call): Use internal_condition_case_n.
2291
2292 * fileio.c (Fdelete_file, internal_delete_file): New arg FORCE.
2293 (internal_delete_file, Frename_file): Callers changed.
2294
2295 * buffer.c (Fkill_buffer):
2296 * callproc.c (delete_temp_file): Callers changed (Bug#6070).
2297
2298 * lisp.h: Update prototypes.
2299
2300 2010-05-03 Glenn Morris <rgm@gnu.org>
2301
2302 * Makefile.in (LIBX_EXTRA, LIBX_BASE): New variables.
2303 (LIBXT_OTHER, LIBX_OTHER): New, set by configure.
2304 (LIBXT): Set with configure, not cpp.
2305 (LIBX): Remove.
2306 (LIBES): Replace $LIBX with $LIBX_BASE and $LIBX_OTHER.
2307
2308 2010-05-02 Dan Nicolaescu <dann@ics.uci.edu>
2309
2310 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Remove.
2311 The FreeBSD is not needed, the default works, Solaris version is
2312 not needed, and the remaining case is not supported by configure.
2313
2314 2010-05-02 Jan Djärv <jan.h.d@swipnet.se>
2315
2316 * xsmfns.c (CHDIR_OPT): New define.
2317 (smc_save_yourself_CB): Add CHDIR_OPT to options to use when
2318 restarting emacs.
2319
2320 * xterm.c (x_connection_closed): Call Fkill_emacs instead of
2321 shut_down_emacs.
2322
2323 * emacs.c (USAGE1): Mention --chdir.
2324 (main): Handle --chdir.
2325 (standard_args): Add --chdir.
2326 (fatal_error_signal): Call Fkill_emacs for SIGTERM and SIGHUP (Bug
2327 #5552).
2328
2329 2010-05-01 Dan Nicolaescu <dann@ics.uci.edu>
2330
2331 Remove LD_SWITCH_MACHINE.
2332 * Makefile.in (LD_SWITCH_MACHINE): Remove definition, unused.
2333 (TEMACS_LDFLAGS): Do not use LD_SWITCH_MACHINE.
2334
2335 Clean up IRIX code.
2336 * m/iris4d.h (TERMINFO, FIRST_PTY_LETTER): Move definitions ...
2337 * s/irix6-5.h (TERMINFO, FIRST_PTY_LETTER): ... here.
2338
2339 Clean up AIX code.
2340 * m/ibmrs6000.inp: Remove file, unused.
2341 * m/ibmrs6000.h (IBMR2AIX): Remove, unused.
2342 (LD_SWITCH_MACHINE): Rename to LD_SWITCH_SYSTEM_TEMACS, and move
2343 definition ...
2344 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): ... here.
2345
2346 * sysdep.c (child_setup_tty, init_sys_modes): Remove !IBMR2AIX code,
2347 unused.
2348
2349 2010-05-01 Eli Zaretskii <eliz@gnu.org>
2350
2351 Emulate POSIX_SIGNALS on MS-Windows.
2352
2353 * s/ms-w32.h (POSIX_SIGNALS, struct sigaction, SIG_BLOCK)
2354 (SIG_SETMASK, SIG_UNBLOCK): Define.
2355
2356 * sysdep.c (sys_signal) [WINDOWSNT]: #ifdef away.
2357 (wait_for_termination) [WINDOWSNT]: Move MS-Windows specific code
2358 from non-POSIX_SIGNALS section to POSIX_SIGNALS section.
2359
2360 * w32.c (sigemptyset, sigaddset, sigfillset, sigprocmask):
2361 New stubs.
2362
2363 Miscellaneous fixes of bidi display.
2364
2365 * xdisp.c (find_row_end): New function, refactored from display_line.
2366 (display_line): Use it.
2367 (extend_face_to_end_of_line): In almost-filled rows, extend only
2368 if the row is R2L and not continued.
2369 (display_line): Fix prepending of truncation glyphs to R2L rows.
2370 Preserve overlay and string info in row->end.
2371 (insert_left_trunc_glyphs): Support addition of left truncation
2372 glyphs to R2L rows.
2373 (set_cursor_from_row): Don't place cursor on the vertical border
2374 glyph between adjacent windows. Fix a crash when a display string
2375 is continued to the next line. Don't return zero if cursor was
2376 found by `cursor' property of a display string.
2377 (try_cursor_movement): Don't assume that row->end == (row+1)->start,
2378 test for that explicitly.
2379
2380 2010-05-01 Glenn Morris <rgm@gnu.org>
2381
2382 * Makefile.in (gmallocobj, rallocobj, vmlimitobj): Initialize to null,
2383 for clarity.
2384 (OTHER_OBJ): Remove.
2385 (PRE_ALLOC_OBJ, POST_ALLOC_OBJ): New, set by configure.
2386 (otherobj): Use PRE_ALLOC_OBJ, POST_ALLOC_OBJ rather than OTHER_OBJ.
2387
2388 2010-05-01 Karel Klíč <kklic@redhat.com>
2389
2390 * fileio.c (Ffile_selinux_context): Context functions may return null.
2391
2392 2010-04-30 Dan Nicolaescu <dann@ics.uci.edu>
2393
2394 * s/gnu.h (POSIX_SIGNALS, START_FILES): New definitions.
2395
2396 2010-04-30 Glenn Morris <rgm@gnu.org>
2397
2398 * Makefile.in (vmlimitobj) [!SYSTEM_MALLOC]: New variable. (Bug#6065)
2399 (OTHER_OBJ): Define as a separate variable, for clarity.
2400
2401 2010-04-30 Jan Djärv <jan.h.d@swipnet.se>
2402
2403 * xsettings.c: include limits.h and update file comment.
2404
2405 2010-04-30 Glenn Morris <rgm@gnu.org>
2406
2407 * Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]:
2408 Set with configure, not cpp.
2409 (LIBW): Remove, replace with $TOOLKIT_LIBW.
2410
2411 * Makefile.in (mallocobj): Remove.
2412 (otherobj): Simplify using @OTHER_OBJ@.
2413
2414 * Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o)
2415 (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o):
2416 Don't bother making nsgui.h dependency platform-specific.
2417
2418 * Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency.
2419
2420 2010-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
2421
2422 * process.c (read_process_output, exec_sentinel): Don't burp if the
2423 sentinel/filter kills the current buffer (bug#6060).
2424
2425 Fix wrong-docstring problem introduced with hash-consing. (Bug#6008)
2426 * eval.c (Fautoload): Set doc to a unique number rather than to 0.
2427 Remove unused var `args'.
2428 * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove.
2429 (LOADHIST_ATTACH): Wrap with do...while to avoid surprises for callers.
2430 * doc.c (store_function_docstring): Use XSETCAR.
2431
2432 2010-04-28 Glenn Morris <rgm@gnu.org>
2433
2434 * Makefile.in (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT): New variables.
2435 (WINDOW_SUPPORT) [HAVE_WINDOW_SYSTEM]: Use them.
2436
2437 * Makefile.in (CYGWIN_OBJ): Set with configure, not cpp.
2438
2439 * Makefile.in (GPM_MOUSE_SUPPORT): New, set by configure.
2440 (MOUSE_SUPPORT) [!HAVE_MOUSE]: Use $GPM_MOUSE_SUPPORT.
2441
2442 * Makefile.in (FONT_OBJ): New, set by configure.
2443 (FONT_DRIVERS): Use $FONT_OBJ.
2444
2445 * Makefile.in (LIBXMU): Set with configure, not cpp.
2446 * s/aix4-2.h (LIBXMU):
2447 * s/hpux10-20.h (LIBXMU):
2448 Remove definition, now set in configure.
2449
2450 * Makefile.in (NS_OBJ, NS_SUPPORT): Set with configure, not cpp.
2451
2452 * m/amdx86-64.h [i386]: Move this test to configure.in.
2453
2454 2010-04-27 Glenn Morris <rgm@gnu.org>
2455
2456 * Makefile.in (LIBXTR6): Set with configure, not cpp.
2457 * s/unixware.h (NEED_LIBW): Remove definition.
2458
2459 * Makefile.in (LUCID_LIBW, MOTIF_LIBW): Remove, replacing by...
2460 (TOOLKIT_LIBW): New, set by configure.
2461 (@X_TOOLKIT_TYPE@): No longer define it.
2462
2463 * Makefile.in (LIBXP): Remove, since included in MOTIF_LIBW.
2464 (MOTIF_LIBW): Set with configure, not cpp.
2465 * s/aix4-2.h (LIB_MOTIF):
2466 * s/gnu-linux.h (LIB_MOTIF):
2467 * s/unixware.h (LIB_MOTIF): Move to configure.in.
2468
2469 2010-04-27 Dan Nicolaescu <dann@ics.uci.edu>
2470
2471 Reduce CPP usage.
2472 * Makefile.in (LIB_X11_LIB): Remove, inline in the only user.
2473 (obj): Use autoconf for unexec instead of cpp.
2474 (C_SWITCH_SYSTEM, C_SWITCH_MACHINE, C_SWITCH_X_SITE): Remove
2475 definitions and undefs. Inline definitions in the only user.
2476 (ALL_CFLAGS): Substitute C_SWITCH_X_SYSTEM using autoconf.
2477
2478 2010-04-27 Glenn Morris <rgm@gnu.org>
2479
2480 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around,
2481 since the defaults (set by the system file) are fine in most cases.
2482 [GNU_LINUX, __OpenBSD__, __NetBSD__, __APPLE__]: Remove sections.
2483 * m/ibms390x.h (START_FILES, LIB_STANDARD):
2484 * m/macppc.h (START_FILES, LIB_STANDARD) [GNU_LINUX]:
2485 * m/sparc.h (START_FILES, LIB_STANDARD) [__linux__]:
2486 Remove definitions, since they are set correctly in s/gnu-linux.h.
2487 * s/freebsd.h (START_FILES, LIB_STANDARD):
2488 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
2489 * s/hpux10-20.h (START_FILES):
2490 * s/netbsd.h (START_FILES, LIB_STANDARD, START_FILES_1, END_FILES_1):
2491 Use $CRT_DIR in place of fixed /usr/lib, /lib directories.
2492
2493 * Makefile.in (LIBXP, LUCID_LIBW, WIDGET_OBJ): Set via configure.
2494 (MOTIF_LIBW): Use $LIBXP.
2495 (otherobj): Use $WIDGET_OBJ.
2496
2497 2010-04-26 Dan Nicolaescu <dann@ics.uci.edu>
2498
2499 * Makefile.in (LIBS_MACHINE): Remove, unused.
2500
2501 Use autoconf instead of cpp for LIB_MATH.
2502 * s/darwin.h (LIB_MATH): Do not define here, move to configure.
2503 * s/cygwin.h (LIB_MATH): Likewise.
2504 * Makefile.in (LIB_MATH): Do not define with cpp.
2505 (LIBES): Use autoconf for LIB_MATH.
2506
2507 2010-04-26 Kenichi Handa <handa@m17n.org>
2508
2509 * composite.c (Ffind_composition_internal): Fix the return value
2510 for an automatic composition.
2511
2512 2010-04-25 Dan Nicolaescu <dann@ics.uci.edu>
2513
2514 Remove all NO_ARG_ARRAY uses.
2515 * fns.c (concat2, concat3, nconc2):
2516 * eval.c (apply1, call1, call2, call3, call4, call5, call6)
2517 (call7): Remove NO_ARG_ARRAY usage, assume it's always true.
2518 * m/xtensa.h (NO_ARG_ARRAY):
2519 * m/template.h (NO_ARG_ARRAY):
2520 * m/sparc.h (NO_ARG_ARRAY):
2521 * m/sh3.h (NO_ARG_ARRAY):
2522 * m/mips.h (NO_ARG_ARRAY):
2523 * m/macppc.h (NO_ARG_ARRAY):
2524 * m/iris4d.h (NO_ARG_ARRAY):
2525 * m/intel386.h (NO_ARG_ARRAY):
2526 * m/ibms390x.h (NO_ARG_ARRAY):
2527 * m/ibms390.h (NO_ARG_ARRAY):
2528 * m/ibmrs6000.h (NO_ARG_ARRAY):
2529 * m/ia64.h (NO_ARG_ARRAY):
2530 * m/hp800.h (NO_ARG_ARRAY):
2531 * m/arm.h (NO_ARG_ARRAY):
2532 * m/amdx86-64.h (NO_ARG_ARRAY):
2533 * m/alpha.h (NO_ARG_ARRAY): Remove definition.
2534
2535 2010-04-25 Eli Zaretskii <eliz@gnu.org>
2536
2537 * xdisp.c (display_line): Don't assume 2nd call to
2538 get_next_display_element cannot return zero. (Bug#6030)
2539 (iterate_out_of_display_property): New function, body from pop_it.
2540 (pop_it): Use it.
2541
2542 2010-04-24 Glenn Morris <rgm@gnu.org>
2543
2544 * m/amdx86-64.h (START_FILES, LIB_STANDARD) [__OpenBSD__]:
2545 For clarity, revert to using fixed /usr/lib rather than $CRT_DIR.
2546 (START_FILES, LIB_STANDARD) [__FreeBSD__]: Merge into the generic case,
2547 since CRT_DIR defaults to /usr/lib. Suggested by Dan Nicolaescu.
2548
2549 2010-04-24 Eli Zaretskii <eliz@gnu.org>
2550
2551 * xdisp.c (display_line): Use `reseat' instead of `reseat_1', and
2552 use `get_next_display_element' and `set_iterator_to_next' to
2553 advance to the next character, when looking for the character that
2554 begins the next row.
2555
2556 * .gdbinit: Add a "set Fmake_symbol" line to force GDB to load the
2557 definition of "struct Lisp_Symbol".
2558
2559 2010-04-24 Glenn Morris <rgm@gnu.org>
2560
2561 * Makefile.in (CRT_DIR): New variable, set by configure.
2562 * m/amdx86-64.h, m/ibms390x.h (START_FILES, LIB_STANDARD):
2563 Use $CRT_DIR rather than HAVE_LIB64_DIR. (Bug#5655)
2564
2565 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
2566
2567 * Makefile.in: Remove C_SWITCH_X_MACHINE, unused.
2568
2569 * s/cygwin.h (LIBS_DEBUG): Remove, unused.
2570
2571 Remove redundant flags.
2572 * s/freebsd.h (C_SWITCH_SYSTEM):
2573 * s/hpux10-20.h (C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
2574 * s/netbsd.h (C_SWITCH_SYSTEM):
2575 * s/openbsd.h (LD_SWITCH_X_DEFAULT): Remove, configure takes care
2576 of these.
2577
2578 Simplify m/intel386.h.
2579 * m/intel386.h (CRT0_DUMMIES): Remove, inline value in the only
2580 user: ecrt0.c.
2581 (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused.
2582 (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to
2583 the only user: s/unixware.h.
2584 * ecrt0.c: Remove #ifndef static. Inline CRT0_DUMMIES definition
2585 from m/intel386.h.
2586 * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE): Definitions
2587 moved here from m/intel386.h.
2588
2589 * m/mips.h: Remove #if 0 code.
2590
2591 2010-04-23 Eli Zaretskii <eliz@gnu.org>
2592
2593 Fix display of composed characters from L2R scripts in bidi buffers.
2594 * xdisp.c (set_iterator_to_next, next_element_from_composition):
2595 After advancing IT past the composition, resync the bidi iterator
2596 with IT's position. (Bug#5977)
2597
2598 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
2599
2600 * Makefile.in (LD_SWITCH_MACHINE_TEMACS): Remove, unused.
2601 (TEMACS_LDFLAGS): Don't use LD_SWITCH_SYSTEM_TEMACS.
2602
2603 2010-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
2604
2605 * gtkutil.c: Include xsettings.h for Ftool_bar_get_system_style.
2606
2607 2010-04-23 Eli Zaretskii <eliz@gnu.org>
2608
2609 Support `display' text properties and overlay strings in bidi buffers.
2610 * xdisp.c (pop_it): When the stack is popped after displaying
2611 from a string, bidi-iterate to exit from the text portion covered
2612 by the `display' property or overlay. (Bug#5988, bug#5920)
2613
2614 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
2615
2616 * m/macppc.h (LD_SWITCH_SYSTEM_TEMACS): Remove #undef.
2617 (LD_SWITCH_MACHINE_TEMACS): Remove, configure sets nocombreloc.
2618
2619 * s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
2620 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove.
2621
2622 Simplify STARTFILES definition.
2623 * s/hpux10-20.h (START_FILES): Explicitly define here instead of
2624 relying on Makefile.in to define it.
2625 * s/cygwin.h (START_FILES): Likewise.
2626 * Makefile.in (STARTFILES): Remove conditional code, not needed anymore.
2627
2628 Clean up Solaris code.
2629 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS, C_SWITCH_X_SYSTEM)
2630 (LIB_MOTIF): Remove, configure takes care of this.
2631 (NOT_USING_MOTIF): Remove, unused.
2632 * xrdb.c: Remove #if 0-ed #include.
2633 (SYSV): Remove conditional for old SysV.
2634 * sysdep.c (closedir): Remove conditional code for Solaris,
2635 Solaris has closedir.
2636
2637 2010-04-22 Jan Djärv <jan.h.d@swipnet.se>
2638
2639 * xsettings.c (read_and_apply_settings): Check if current_font is
2640 NULL before strcmp (Bug#6001).
2641
2642 2010-04-21 Dan Nicolaescu <dann@ics.uci.edu>
2643
2644 Clean up HP-UX files.
2645 * m/hp800.h (NO_REMAP, VIRT_ADDR_VARIES, DATA_SEG_BITS)
2646 (DATA_START, TEXT_START, LOAD_AVE_TYPE, LOAD_AVE_CVT)
2647 (LDAV_SYMBOL, index, rindex): Move definitions only used in HP-UX ...
2648 * s/hpux10-20.h: ... to the only user, here.
2649
2650 2010-04-21 Eli Zaretskii <eliz@gnu.org>
2651
2652 * bidi.c (bidi_find_paragraph_start, bidi_at_paragraph_end): Don't
2653 use buffer-local values of paragraph-start and paragraph-separate.
2654 <paragraph_start_re, paragraph_separate_re>: Rename from
2655 fallback_paragraph_start_re and fallback_paragraph_separate_re.
2656 (Bug#5992)
2657
2658 2010-04-21 Jan Djärv <jan.h.d@swipnet.se>
2659
2660 * xsettings.c: Qmonospace_font_name, Qtool_bar_style and
2661 current_tool_bar_style are new.
2662 (store_config_changed_event): Rename from store_font_changed_event.
2663 (XSETTINGS_TOOL_BAR_STYLE): New define.
2664 (SEEN_FONT, SEEN_TB_STYLE): New enum values.
2665 (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
2666 HAVE_XFT.
2667 (something_changedCB): store_font_changed_event is now
2668 store_config_changed_event
2669 (parse_settings): Rename from parse_xft_settings. Read
2670 non-xft xsettings outside #ifdef HAVE_XFT.
2671 (read_settings): Renamed from read_xft_settings.
2672 (apply_xft_settings): Take current settings as parameter. Do not
2673 call read_(xft)_settings.
2674 (read_and_apply_settings): New function.
2675 (xft_settings_event): Do non-xft stuff out of HAVE_XFT. Call
2676 read_and_apply_settings if there are settings to be read.
2677 (init_xsettings): Renamed from init_xfd_settings.
2678 Call read_and_apply_settings unconditionally.
2679 (xsettings_initialize): Call init_xsettings.
2680 (Ftool_bar_get_system_style): New function.
2681 (syms_of_xsettings): Define Qmonospace_font_name and
2682 Qtool_bar_style. Initialize current_tool_bar_style to nil.
2683 defsubr Stool_bar_get_system_style. Fprovide on
2684 dynamic-setting.
2685 Move misplaced HAVE_GCONF
2686
2687 * xsettings.h (Ftool_bar_get_system_style): Declare.
2688
2689 * xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
2690 Qtext, Qboth, Qboth_horiz are new.
2691 (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
2692 Vtool_bar_style, tool_bar_max_label_size.
2693
2694 * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.
2695
2696 * keyboard.c: QClabel is new.
2697 (parse_tool_bar_item): Take out QClabel from tool bar items.
2698 Try to construct a label if ther is no QClabel.
2699 (syms_of_keyboard): Intern :label as QClabel.
2700
2701 * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
2702 (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
2703 New.
2704
2705 * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
2706 dynamic-setting.el.
2707
2708 * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
2709 (xg_make_tool_item, xg_show_toolbar_item): New function.
2710 (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
2711 Call xg_make_tool_item to make a tool bar item.
2712 Call xg_show_toolbar_item. Use wtoolbar instead of x->toolbar_widget.
2713
2714 * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
2715 into account for toolbars.
2716
2717 2010-04-21 Jan Djärv <jan.h.d@swipnet.se>
2718
2719 * data.c (make_blv): Declarations before code (Bug#5993).
2720
2721 2010-04-21 Glenn Morris <rgm@gnu.org>
2722
2723 * Makefile.in (DBUS_OBJ, GTK_OBJ, XMENU_OBJ, XOBJ):
2724 Define using autoconf, not cpp.
2725 (LIBXSM): New variable, set by autoconf.
2726 (LIBXT): Use $LIBXSM.
2727
2728 2010-04-21 Dan Nicolaescu <local_user@dannlt>
2729
2730 Remove NOMULTIPLEJOBS, unused.
2731 * s/template.h (NOMULTIPLEJOBS):
2732 * s/msdos.h (NOMULTIPLEJOBS): Remove, unused.
2733
2734 Simplify LD_SWITCH_SYSTEM_TEMACS usage.
2735 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS):
2736 * s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure
2737 detects -znocombreloc and passes it to the linker
2738 * s/hpux10-20.h (LD_SWITCH_SYSTEM_TEMACS): Remove, empty.
2739
2740 2010-04-21 Glenn Morris <rgm@gnu.org>
2741
2742 * Makefile.in (LIBSELINUX_LIBS): Move out of #ifdef.
2743
2744 2010-04-21 Karel Klíč <kklic@redhat.com>
2745
2746 * Makefile.in (LIBSELINUX_LIBS): New.
2747 (LIBES): Add $LIBSELINUX_LIBS.
2748 * eval.c, lisp.h (call7): New function.
2749 * fileio.c [HAVE_LIBSELINUX]: Include selinux headers.
2750 (Ffile_selinux_context, Fset_file_selinux_context):
2751 New functions.
2752 (Fcopy_file): New parameter preserve-selinux-context.
2753 (Frename_file): Preserve selinux context when renaming by copy-file.
2754
2755 2010-04-21 Juanma Barranquero <lekktu@gmail.com>
2756 Eli Zaretskii <eliz@gnu.org>
2757
2758 Don't depend on cm.c or termcap.c on Windows, use stubs.
2759 * makefile.w32-in (OBJ1): Remove cm.$(O) and termcap.$(O).
2760 ($(BLD)/cm.$(O), $(BLD)/termcap.$(O)): Remove.
2761 * w32console.c (current_tty, cost): New vars; lifted from cm.c.
2762 (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear)
2763 (sys_tputs, sys_tgetstr): New stubs.
2764 * s/ms-w32.h (chcheckmagic, cmcostinit, cmgoto, cmputc, Wcm_clear)
2765 (tputs, tgetstr): New; define to sys_*.
2766
2767 2010-04-20 Juanma Barranquero <lekktu@gmail.com>
2768
2769 * buffer.c (syms_of_buffer) <bidi-display-reordering>: Doc fix.
2770
2771 2010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
2772
2773 * data.c (Fmake_variable_buffer_local, Fmake_local_variable):
2774 Just signal a warning rather than an error when inside a let.
2775 (Fmake_variable_frame_local): Add the same test.
2776
2777 * font.c (syms_of_font): Make the style table vars read-only.
2778
2779 * buffer.h (struct buffer): Remove unused var `direction_reversed'.
2780 * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
2781
2782 * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
2783
2784 2010-04-20 Eli Zaretskii <eliz@gnu.org>
2785
2786 Fix R2L paragraph display on TTY.
2787
2788 * xdisp.c (unproduce_glyphs): New function.
2789 (display_line): Use it when produced glyphs are discarded from R2L
2790 glyph rows.
2791 (append_composite_glyph): In R2L rows, prepend the glyph rather
2792 than appending it.
2793
2794 * term.c (append_composite_glyph): In R2L rows, prepend the glyph
2795 rather than append it. Set up the resolved_level and bidi_type
2796 attributes of the appended glyph.
2797 (produce_special_glyphs): Mirror the backslash continuation
2798 character in R2L lines.
2799
2800 Implement display of R2L paragraphs in GUI sessions.
2801
2802 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
2803 append_stretch_glyph.
2804 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix
2805 off-by-one error in computing x at end of text in the row.
2806 (append_stretch_glyph): In reversed row, prepend the glyph rather
2807 than append it. Set resolved_level and bidi_type of the glyph.
2808 (extend_face_to_end_of_line): If the row is reversed, prepend a
2809 stretch glyph whose width is such that the rightmost glyph will be
2810 drawn at the right margin of the window. Fix off-by-one error on
2811 TTY frames in testing whether a line needs face extension. Fix
2812 face extension at ZV. If this is the last glyph row, use
2813 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
2814 region face.
2815 (set_cursor_from_row, display_line): Use
2816 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
2817 row->continuation_lines_width.
2818 (next_element_from_buffer): Don't call bidi_paragraph_init if we
2819 are at ZV. Fixes a crash when reseated to ZV by
2820 try_window_reusing_current_matrix.
2821 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
2822 which happens with R2L glyph rows. Fixes a crash when inserting a
2823 character at end of an R2L line.
2824 (set_cursor_from_row): Don't be fooled by truncated rows: don't
2825 treat them as having zero-width characters. Improve comments.
2826 Don't reverse pos_before and pos_after for reversed glyph rows.
2827 Set cursor.x to negative value when the cursor might be on the
2828 left fringe.
2829 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
2830 left fringe, not the right one.
2831 (notice_overwritten_cursor, draw_phys_cursor_glyph)
2832 (erase_phys_cursor): For reversed cursor_row, support cursor on
2833 the left fringe.
2834
2835 * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
2836 of continuation indicators on the fringes.
2837 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
2838 left fringe.
2839
2840 * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
2841 draw cursor on the left fringe.
2842
2843 * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
2844 cursor on the left fringe.
2845
2846 * dispnew.c (update_text_area): Handle reversed desired rows when
2847 the cursor is on the left fringe.
2848 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
2849 below, not by 0, for when the cursor is on the left fringe.
2850
2851 2010-04-20 Jan Djärv <jan.h.d@swipnet.se>
2852
2853 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed
2854 widget is a scrollbar.
2855
2856 2010-04-20 Kenichi Handa <handa@m17n.org>
2857
2858 * charset.c (char_charset): Consider Vcharset_non_preferred_head
2859 only when the arg CHARSET_LIST is nil.
2860
2861 2010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
2862
2863 Make variable forwarding explicit rather the using special values.
2864 Basically, this makes the structure of buffer-local values and object
2865 forwarding explicit in the type of Lisp_Symbols rather than use
2866 special Lisp_Objects for that. This tends to lead to slightly more
2867 verbose code, but is more C-like, simpler, and makes it easier to make
2868 sure we handled all cases, among other things by letting the compiler
2869 help us check it.
2870 * lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
2871 Removing forwarding objects.
2872 (enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
2873 (struct Lisp_Symbol): Make the various forms of variable-forwarding
2874 explicit rather than hiding them inside Lisp_Object "values".
2875 (XFWDTYPE): New macro.
2876 (XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
2877 (XBUFFER_LOCAL_VALUE): Remove.
2878 (SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
2879 (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
2880 (SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
2881 (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
2882 (struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
2883 Remove the Lisp_Misc_* header.
2884 (struct Lisp_Buffer_Local_Value): Redefine.
2885 (BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
2886 (struct Lisp_Misc_Any): Add filler to get the right size.
2887 (struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
2888 Lisp_Intfwd.
2889 (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
2890 (DEFVAR_KBOARD): Allocate a forwarding object.
2891 * data.c (do_blv_forwarding, store_blv_forwarding): New macros.
2892 (let_shadows_global_binding_p): New function.
2893 (union Lisp_Val_Fwd): New type.
2894 (make_blv): New function.
2895 (swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
2896 (store_symval_forwarding, swap_in_global_binding, Fboundp)
2897 (swap_in_symval_forwarding, find_symbol_value, Fset)
2898 (let_shadows_buffer_binding_p, set_internal, default_value)
2899 (Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
2900 (Fkill_local_variable, Fmake_variable_frame_local)
2901 (Flocal_variable_p, Flocal_variable_if_set_p)
2902 (Fvariable_binding_locus):
2903 * xdisp.c (select_frame_for_redisplay):
2904 * lread.c (Fintern, Funintern, init_obarray, defvar_int)
2905 (defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
2906 * frame.c (store_frame_param):
2907 * eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
2908 * bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
2909 value structure.
2910 * buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
2911 (clone_per_buffer_values): Only adjust markers into the current buffer.
2912 (reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
2913 (Fbuffer_local_value, set_buffer_internal_1)
2914 (swap_out_buffer_local_variables):
2915 Adapt to the new symbol value structure.
2916 (DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
2917 (defvar_per_buffer): Take a new arg for the fwd object.
2918 (buffer_lisp_local_variables): Return a proper alist (different fix
2919 for bug#4138).
2920 * alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
2921 (Fgarbage_collect): Don't handle buffer_defaults specially.
2922 (mark_object): Handle new symbol value structure rather than the old
2923 special Lisp_Misc_* objects.
2924 (gc_sweep) <symbols>: Free also the buffer-local-value objects.
2925 * term.c (set_tty_color_mode):
2926 * bidi.c (bidi_initialize): Don't access the ->value field directly.
2927 * buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
2928 a buffer_local_flags.
2929 * print.c (print_object): Get rid of impossible forwarding objects.
2930
2931 2010-04-19 Eli Zaretskii <eliz@gnu.org>
2932
2933 * bidi.c (bidi_get_type, bidi_get_category)
2934 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
2935 (bidi_type_of_next_char, bidi_level_of_next_char):
2936 Declare static. Use `INLINE' rather than `inline'.
2937
2938 2010-04-19 Juanma Barranquero <lekktu@gmail.com>
2939
2940 * dired.c (Ffile_attributes): Fix typo in docstring.
2941
2942 2010-04-19 Adrian Robert <Adrian.B.Robert@gmail.com>
2943
2944 * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
2945 NSInteger (Bug#5811).
2946
2947 2010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2948
2949 * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
2950 (PTY_OPEN): New defines. Use openpty (Bug#726, Bug#5819).
2951
2952 2010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2953
2954 * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
2955
2956 2010-04-19 Chong Yidong <cyd@stupidchicken.com>
2957
2958 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
2959 terminal frames (Bug#5837).
2960
2961 2010-04-19 Eli Zaretskii <eliz@gnu.org>
2962
2963 * .gdbinit (xsubchartable): New command.
2964
2965 2010-04-19 Eli Zaretskii <eliz@gnu.org>
2966
2967 * xdisp.c (display_line): Don't write beyond the last glyph row in
2968 the desired matrix. Fixes a crash in "emacs -nw" (bug#5972), see
2969 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
2970 and
2971 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
2972
2973 2010-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
2974
2975 * alloc.c (Fpurecopy): Hash-cons if requested.
2976 (syms_of_alloc): Update purify-flag docstring.
2977
2978 2010-04-18 Jan Djärv <jan.h.d@swipnet.se>
2979
2980 * gtkutil.c (xg_set_geometry): Set size in geometry string also.
2981 (x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
2982
2983 2010-04-17 Eli Zaretskii <eliz@gnu.org>
2984
2985 Fix a crash when an NSM character is inserted at BEGV.
2986
2987 * bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
2988 (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
2989 NEUTRAL_B or UNKNOWN_BT.
2990
2991 2010-04-16 Eli Zaretskii <eliz@gnu.org>
2992
2993 * xdisp.c (set_cursor_from_row): Don't consider possibility of
2994 other rows with cursor unless they are different from this row and
2995 this row is part of a continued line. (Bug#5943)
2996
2997 2010-04-16 Dan Nicolaescu <dann@ics.uci.edu>
2998
2999 * s/freebsd.h: Restore osreldate.h include.
3000 Suggested by Naohiro Aota.
3001
3002 2010-04-16 Jan Djärv <jan.h.d@swipnet.se>
3003
3004 * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used.
3005
3006 2010-04-16 Ken Brown <kbrown@cornell.edu> (tiny change)
3007
3008 * s/cygwin.h: Avoid linking against static libgcc.
3009
3010 2010-04-15 Juri Linkov <juri@jurta.org>
3011
3012 * window.c: Add Qscroll_command.
3013 Remove Vscroll_preserve_screen_position_commands.
3014 (window_scroll_pixel_based, window_scroll_line_based): Check the
3015 `scroll-command' property on the last command instead of searching
3016 the last command in Vscroll_preserve_screen_position_commands.
3017 (syms_of_window): Initialize and staticpro `Qscroll_command'.
3018 Put Qscroll_command property on Qscroll_up and Qscroll_down.
3019 (scroll-preserve-screen-position): Doc fix.
3020 (Vscroll_preserve_screen_position_commands): Remove variable.
3021
3022 2010-04-15 Dan Nicolaescu <dann@ics.uci.edu>
3023
3024 * xdisp.c (message): Do not use NO_ARG_ARRAY.
3025
3026 2010-04-14 Dan Nicolaescu <dann@ics.uci.edu>
3027
3028 Reduce cpp use in Makefile.in.
3029 * Makefile.in (DBUS_CFLAGS, DBUS_LIBS, GCONF_CFLAGS, GCONF_LIBS)
3030 (LIBSOUND, CFLAGS_SOUND, RSVG_LIBS, RSVG_CFLAGS, INTERVALS_H)
3031 (GETLOADAVG_LIBS, RUN_TEMACS): Move to the autoconf section.
3032 (ORDINARY_LINK): Remove, defined in src/s/gnu.h.
3033 (CRT0_COMPILE): Remove, inline it in the only user.
3034
3035 2010-04-14 Juri Linkov <juri@jurta.org>
3036
3037 * window.c (keys_of_window): Rebind `C-v' from `scroll-up' to
3038 `scroll-up-command' and `M-v' from `scroll-down' to
3039 `scroll-down-command'.
3040
3041 2010-04-14 Juri Linkov <juri@jurta.org>
3042
3043 * window.c (Vscroll_preserve_screen_position_commands): New variable
3044 with the default value as the list of Qscroll_down and Qscroll_up.
3045 (window_scroll_pixel_based, window_scroll_line_based): Search the
3046 last command in the list Vscroll_preserve_screen_position_commands
3047 instead of comparing with Qscroll_up and Qscroll_down.
3048
3049 2010-04-13 Jan Djärv <jan.h.d@swipnet.se>
3050
3051 * gtkutil.c (xg_set_geometry): Set geometry for PPosition also.
3052 (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry
3053 does that.
3054
3055 * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width
3056 to zero.
3057
3058 2010-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
3059
3060 * term.c (init_tty): Move common text outside of #ifdef TERMINFO.
3061
3062 Try to solve the problem of spurious EOF chars in long lines of text
3063 sent to interactive subprocesses.
3064 * sysdep.c (child_setup_tty): Do not enable ICANON any more.
3065 (system_process_attributes): Remove unused var `ttotal'.
3066 * process.c (send_process): Don't bother breaking long line with EOF
3067 chars when talking to ttys any more.
3068 (wait_reading_process_output): Output a warning when called in such
3069 a way that it could block without being interruptible.
3070
3071 Try to detect file modification within the same second.
3072 * buffer.h (struct buffer): New field modtime_size.
3073 * buffer.c (reset_buffer): Initialize it.
3074 * fileio.c (Finsert_file_contents, Fwrite_region): Set it.
3075 (Fverify_visited_file_modtime): Check it.
3076 (Fclear_visited_file_modtime, Fset_visited_file_modtime): Clear it.
3077 (Fset_visited_file_modtime): Set (or clear) it.
3078
3079 2010-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
3080
3081 * process.c (status_notify): Remove unused var `ro'.
3082
3083 2010-04-12 Jan Djärv <jan.h.d@swipnet.se>
3084
3085 * xfns.c (select_visual): Don't call error if XGetVisualInfo returns
3086 more than one visual (Bug#5938).
3087
3088 2010-04-12 Dan Nicolaescu <dann@ics.uci.edu>
3089
3090 * Makefile.in (C_SWITCH_SYSTEM,C_SWITCH_MACHINE,C_SWITCH_X_SITE):
3091 Undefine.
3092
3093 2010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
3094
3095 Remove C_SWITCH_SYSTEM_TEMACS.
3096 * s/darwin.h (C_SWITCH_SYSTEM_TEMACS): Remove.
3097 (malloc, realloc, free): Use emacs, not temacs for conditional
3098 definition.
3099
3100 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Remove.
3101 (ALL_CFLAGS): Do not use C_SWITCH_SYSTEM_TEMACS.
3102
3103 Use autoconf, not cpp for some variables.
3104 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
3105 (C_SWITCH_X_SITE): Define using autoconf, not cpp.
3106 (ALL_CFLAGS): Use them as make variables.
3107 (really-lwlib, really-oldXMenu): Do not pass them.
3108
3109 2010-04-11 Jan Djärv <jan.h.d@swipnet.se>
3110
3111 * xmenu.c (apply_systemfont_to_dialog): New.
3112 (create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.
3113
3114 2010-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
3115
3116 * process.c (exec_sentinel): Preserve current-buffer.
3117
3118 * process.c (read_process_output): Move the save-current-buffer to
3119 apply to both the filter and the non-filter branches.
3120
3121 2010-04-10 Dan Nicolaescu <dann@ics.uci.edu>
3122
3123 * s/msdos.h (UNEXEC): New definition.
3124
3125 2010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3126
3127 * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
3128 (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
3129
3130 * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
3131 Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
3132 set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
3133 TRY_WINDOW_CHECK_MARGINS.
3134
3135 * xfns.c (Fx_show_tip): Undo last change. Call try_window with
3136 TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423). Subtract last glyph's
3137 width only when it is for padding.
3138
3139 2010-04-09 Jan Djärv <jan.h.d@swipnet.se>
3140
3141 * xfns.c (Fx_show_tip): Call try_window in a loop until
3142 fonts_changed_p is zero (Bug#2423).
3143
3144 2010-04-08 Eli Zaretskii <eliz@gnu.org>
3145
3146 * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
3147 the end of TEXT_AREA. (Bug#5856)
3148
3149 2010-04-08 Jan Djärv <jan.h.d@swipnet.se>
3150
3151 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
3152 HAVE_GCONF.
3153
3154 2010-04-08 Eli Zaretskii <eliz@gnu.org>
3155
3156 * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
3157 prev.orig_type, for resolving type of NSM. (Bug#5858)
3158
3159 2010-04-08 Jan Djärv <jan.h.d@swipnet.se>
3160
3161 * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
3162 (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
3163 in current_font.
3164 (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
3165 (Ffont_get_system_normal_font, xsettings_get_system_normal_font):
3166 New functions.
3167 (syms_of_xsettings): Initialize current_font.
3168 defsubr Sfont_get_system_normal_font.
3169
3170 * xsettings.h (Ffont_get_system_normal_font,
3171 xsettings_get_system_normal_font): Declare.
3172
3173 * xfns.c (extern xlwmenu_default_font): Remove.
3174 (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
3175 to xlwmenu.c.
3176
3177 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
3178 menu items in UTF-8.
3179
3180 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
3181 (apply_systemfont_to_menu): New function.
3182 (set_frame_menubar, create_and_show_popup_menu): Call
3183 apply_systemfont_to_menu.
3184
3185 2010-04-07 Jan Djärv <jan.h.d@swipnet.se>
3186
3187 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
3188 FRAME_LINE_TO_PIXEL_Y.
3189
3190 * xterm.c (x_set_window_size_1): Don't add border_width/height to
3191 pixelwidth/height.
3192
3193 2010-04-07 Dan Nicolaescu <dann@ics.uci.edu>
3194
3195 Simplify code for HP machines.
3196 * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
3197 for GNU_LINUX, not needed.
3198 (UNEXEC, NEED_BSDTTY): Move definitions...
3199 * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
3200
3201 * m/iris4d.h (UNEXEC): Move definition ...
3202 * s/irix6-5.h (UNEXEC): ... here.
3203
3204 2010-04-04 Jan Djärv <jan.h.d@swipnet.se>
3205
3206 * xfns.c (set_machine_and_pid_properties): New function.
3207 (Fx_create_frame): Call set_machine_and_pid_properties.
3208
3209 2010-04-03 Eli Zaretskii <eliz@gnu.org>
3210
3211 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
3212 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
3213 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
3214
3215 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
3216 in this function. (Bug#5703)
3217
3218 2010-04-03 Chong Yidong <cyd@stupidchicken.com>
3219
3220 * nsterm.h: Fix last change.
3221
3222 2010-04-03 Dan Nicolaescu <dann@ics.uci.edu>
3223
3224 * m/intel386.h (NO_REMAP): Move definition ...
3225 * s/msdos.h (NO_REMAP): ... here.
3226
3227 * m/vax.h (CRT0_DUMMIES): Remove, unused.
3228
3229 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
3230 used on those platforms.
3231
3232 2010-04-02 Dan Nicolaescu <dann@ics.uci.edu>
3233
3234 Remove extern errno declarations.
3235 * xterm.c:
3236 * xrdb.c:
3237 * w32term.c:
3238 * unexec.c:
3239 * unexaix.c:
3240 * sysdep.c:
3241 * process.c:
3242 * lread.c:
3243 * keyboard.c:
3244 * floatfns.c:
3245 * filelock.c:
3246 * fileio.c:
3247 * emacs.c (main):
3248 * ecrt0.c:
3249 * dispnew.c:
3250 * callproc.c:
3251 * buffer.c: Remove errno extern declarations.
3252 * s/netbsd.h (NEED_ERRNO): Remove.
3253
3254 2010-04-01 Dan Nicolaescu <dann@ics.uci.edu>
3255
3256 Remove all uses of LIBX11_SYSTEM.
3257 * Makefile.in (LIBX11_SYSTEM): Remove.
3258 * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
3259 instead.
3260
3261 2010-04-01 Eli Zaretskii <eliz@gnu.org>
3262
3263 Remove support for DJGPP v1.x (bug#5813).
3264
3265 * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
3266 * s/msdos.h:
3267 * unexec.c (make_hdr, copy_text_and_data):
3268 * sysdep.c (wait_for_termination, sys_subshell):
3269 * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
3270 (IT_set_terminal_modes, __write, _rename, gethostname)
3271 (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
3272 (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
3273 the value of __DJGPP__.
3274 (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
3275 compatibility code.
3276 * lread.c:
3277 * gmalloc.c (memalign):
3278 * fileio.c (Fcopy_file, check_executable, Ffile_modes):
3279 * emacs.c (main):
3280 * dosfns.c (init_dosfns):
3281 * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
3282
3283 2010-04-01 Eli Zaretskii <eliz@gnu.org>
3284
3285 * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
3286 string with `cursor' property comes from an `after-string'
3287 overlay. (Bug#5816)
3288
3289 2010-04-01 Glenn Morris <rgm@gnu.org>
3290
3291 * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
3292 Define as Makefile variables.
3293 (LIBX): Use above variables rather than directly using autoconf.
3294
3295 2010-03-31 Dan Nicolaescu <dann@ics.uci.edu>
3296
3297 Clean up BSD_SYSTEM use.
3298 * xterm.c:
3299 * process.c:
3300 * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
3301 for including <sys/ioctl.h>.
3302 * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
3303 code is only used for MSDOS.
3304
3305 2010-03-31 Juri Linkov <juri@jurta.org>
3306
3307 * image.c: Add `Qextension_data'.
3308 (syms_of_image): Initialize and staticpro `Qextension_data'.
3309 (Fimage_metadata): Rename from `Fimage_extension_data'.
3310 (gif_load): Put GIF extension data to the property
3311 `Qextension_data'.
3312
3313 2010-03-31 Chong Yidong <cyd@stupidchicken.com>
3314
3315 * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
3316 * nsterm.h: Fix prototype.
3317
3318 2010-03-31 Eli Zaretskii <eliz@gnu.org>
3319
3320 * xdisp.c (highlight_trailing_whitespace): Support highlight of
3321 trailing whitespace in right-to-left rows.
3322
3323 2010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
3324
3325 Get rid of the direct_output optimizations.
3326 * keyboard.c (nonundocount): Remove extern declaration.
3327 (command_loop_1): Remove brittle optimisation for cheap and
3328 common operations.
3329 * xdisp.c (redisplay_internal): Don't bother checking
3330 redisplay_performed_directly_p any more.
3331 * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
3332 any more.
3333 * dispnew.c (redisplay_performed_directly_p)
3334 (direct_output_for_insert, direct_output_forward_char):
3335 * dispextern.h (redisplay_performed_directly_p)
3336 (direct_output_for_insert, direct_output_forward_char): Remove.
3337 * cmds.c (nonundocount): Make it static.
3338
3339 2010-03-31 Bernhard Herzog <bh@intevation.de> (tiny change)
3340
3341 * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
3342
3343 2010-03-31 Jan Djärv <jan.h.d@swipnet.se>
3344
3345 * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
3346 invisible (Bug#5766).
3347
3348 2010-03-31 Adrian Robert <adrian.b.robert@gmail.com>
3349
3350 * xdisp.c (x_consider_frame_title, update_window_cursor):
3351 Remove HAVE_NS conditionals.
3352 (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
3353
3354 * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
3355 filename for the title.
3356 (ns_set_doc_edited): Do nothing if the selected window is a
3357 minibuffer window.
3358
3359 * nsterm.h: Add prototypes for ns_set_name_as_filename and
3360 ns_set_doc_edited.
3361
3362 * nsterm.m: Remove unneeded prototype.
3363
3364 2010-03-31 Glenn Morris <rgm@gnu.org>
3365
3366 * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
3367 in the DOC file. (Bug#5336)
3368
3369 2010-03-31 Chong Yidong <cyd@stupidchicken.com>
3370
3371 * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
3372
3373 2010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
3374
3375 * window.c (keys_of_window): Remove redundant/overridden bindings.
3376
3377 2010-03-30 Eli Zaretskii <eliz@gnu.org>
3378
3379 * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
3380 Restore original behavior when the iterator is not bidi_p.
3381
3382 2010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
3383
3384 * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
3385
3386 2010-03-30 Eli Zaretskii <eliz@gnu.org>
3387
3388 * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
3389 are outside the range of cached character positions.
3390
3391 2010-03-30 Juanma Barranquero <lekktu@gmail.com>
3392
3393 * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
3394
3395 2010-03-30 Eli Zaretskii <eliz@gnu.org>
3396
3397 Initial support for bidirectional editing.
3398
3399 * Makefile.in (obj): Include bidi.o.
3400 (bidi.o): New target.
3401
3402 * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
3403 ($(BLD)/bidi.$(O)): New target.
3404
3405 * bidi.c: New file.
3406
3407 * buffer.h (struct buffer): New members bidi_display_reordering
3408 and bidi_paragraph_direction.
3409
3410 * buffer.c (init_buffer_once): Initialize bidi_display_reordering
3411 and bidi_paragraph_direction.
3412 (syms_of_buffer): Declare Lisp variables bidi-display-reordering
3413 and bidi-paragraph-direction.
3414 (Fbuffer_swap_text): Swap the values of
3415 bidi_display_reordering and bidi_paragraph_direction.
3416
3417 * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
3418 (bidi_type_t, bidi_dir_t): New types.
3419 (bidi_saved_info, bidi_stack, bidi_it): New structures.
3420 (struct it): New members bidi_p, bidi_it, paragraph_embedding,
3421 prev_stop, base_level_stop, and eol_pos.
3422 (bidi_init_it, bidi_get_next_char_visually): New prototypes.
3423 (IT_STACK_SIZE): Enlarge to 5.
3424 (struct glyph_row): New member reversed_p.
3425 <string_buffer_position>: Update prototype.
3426 (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
3427 glyph_row if bidi_it.paragraph_dir == R2L.
3428 (struct glyph): New members resolved_level and bidi_type.
3429
3430 * dispnew.c (direct_output_forward_char): Give up if we need bidi
3431 processing or buffer's direction is right-to-left.
3432 (prepare_desired_row): Preserve the reversed_p flag.
3433 (row_equal_p): Compare the reversed_p attributes as well.
3434
3435 * xdisp.c (init_iterator): Initialize it->bidi_p. Call
3436 bidi_init_it and set it->paragraph_embedding from the current
3437 buffer's value of bidi_paragraph_direction.
3438 (reseat_1): Initialize bidi_it.first_elt.
3439 (set_iterator_to_next, next_element_from_buffer): Use the value of
3440 paragraph_embedding to determine the paragraph direction.
3441 (set_iterator_to_next): Under bidi reordering, call
3442 bidi_get_next_char_visually. Call bidi_paragraph_init if the
3443 new_paragraph flag is set in the bidi iterator.
3444 (next_element_from_buffer): If bidi_it.first_elt is set,
3445 initialize paragraph direction and find the first character to
3446 display in the visual order. If reseated to a middle of a line,
3447 prime the bidi iterator starting at the line's beginning. Handle
3448 the situation where we overstepped stop_charpos due to
3449 non-linearity of the bidi iteration. Likewise for when we back up
3450 beyond the previous stop_charpos. When moving across stop_charpos,
3451 record it in prev_stop.
3452 (display_line): Set row->end and it->start for the next row to the
3453 next character in logical order. Always extend reversed_p rows to
3454 the end of line, even if they end at ZV. Copy the reversed_p flag
3455 to the next glyph row. Keep calling set_cursor_from_row for
3456 bidi-reordered rows even if we already have a possible candidate
3457 for cursor position. Set row_end after all the row's glyphs have
3458 been produced, by looping over the glyphs. Record the position
3459 after EOL in it->eol_pos, and use it to set end_pos of the last
3460 row produced for a continued line.
3461 <Qright_to_left, Qleft_to_right>: New variables.
3462 (syms_of_xdisp): Initialize and staticpro them.
3463 (string_buffer_position_lim): New function.
3464 (string_buffer_position): Most of code moved to
3465 string_buffer_position_lim. Last argument and return value are
3466 now EMACS_INT; all callers changed.
3467 (set_cursor_from_row): Rewritten to support bidirectional text and
3468 reversed glyph rows.
3469 (text_outside_line_unchanged_p, try_window_id): Disable
3470 optimizations if we are reordering bidirectional text and the
3471 paragraph direction can be affected by the change.
3472 (append_glyph, append_composite_glyph)
3473 (produce_image_glyph, append_stretch_glyph): Set the
3474 resolved_level and bidi_type members of each glyph.
3475 (append_glyph): If the glyph row is reversed, prepend the glyph
3476 rather than appending it.
3477 (handle_stop_backwards): New function.
3478 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
3479 (reseat): call handle_stop_backwards to recompute prev_stop and
3480 base_level_stop for the new position.
3481 (handle_invisible_prop): Under bidi iteration, skip invisible text
3482 using bidi_get_next_char_visually. If we are `reseat'ed, init the
3483 paragraph direction. Update IT->prev_stop after skipping
3484 invisible text.
3485 (move_it_in_display_line_to): New variables prev_method
3486 and prev_pos. Compare for strict equality in
3487 BUFFER_POS_REACHED_P.
3488 (try_cursor_movement): Examine all the candidate rows that occlude
3489 point, to return the best match. If rows are bidi-reordered
3490 and point moved backwards, back up to the row that is not a
3491 continuation line, and start looking for a suitable row from
3492 there.
3493
3494 * term.c (append_glyph): Reverse glyphs by pre-pending them,
3495 rather than appending, if the glyph_row's reversed_p flag is set.
3496 Set the resolved_level and bidi_type members of each glyph.
3497
3498 * .gdbinit (pbiditype): New command.
3499 (pgx): Use it to display bidi level and type of the glyph.
3500 (pitx): Display some bidi information about the iterator.
3501 (prowlims, pmtxrows): New commands.
3502
3503 2010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
3504
3505 Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
3506 * s/usg5-4.h (LIBS_DEBUG):
3507 * s/irix6-5.h (C_DEBUG_SWITCH):
3508 * s/gnu-linux.h (LIBS_DEBUG):
3509 * s/darwin.h (LIBS_DEBUG):
3510 * s/bsd-common.h (LIBS_DEBUG):
3511 * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
3512 * m/iris4d.h (LIBS_DEBUG):
3513 * m/hp800.h (LIBS_DEBUG): Remove definitions.
3514
3515 * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
3516 (LIBS_DEBUG): Remove definition.
3517
3518 2010-03-27 Chong Yidong <cyd@stupidchicken.com>
3519
3520 * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
3521 Windows.
3522
3523 2010-03-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3524
3525 * process.c (Fmake_network_process): Don't call turn_on_atimers around
3526 `connect' (Bug#5723).
3527
3528 2010-03-25 Helmut Eller <eller.helmut@gmail.com>
3529
3530 * process.c (Fmake_network_process): Call `select' for interrupted
3531 `connect' rather than creating new socket (Bug#5173).
3532
3533 2010-03-24 Jan Djärv <jan.h.d@swipnet.se>
3534
3535 * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
3536
3537 * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
3538
3539 * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
3540
3541 2010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3542
3543 * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
3544 XLoadQueryFont.
3545
3546 2010-03-24 Kenichi Handa <handa@m17n.org>
3547
3548 * coding.c (decode_coding_ccl): Fix previous change for the
3549 multibyte case.
3550 (encode_coding_ccl): Don't setup ccl program here. Fix for the
3551 case that the output buffer is fullfilled.
3552 (encode_coding): Setup ccl program here.
3553
3554 2010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
3555
3556 * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
3557
3558 Simplify LIBS_MACHINE definitions.
3559 * m/hp800.h (LIBS_MACHINE): Remove, same as default.
3560 * m/iris4d.h (LIBS_MACHINE): Likewise.
3561 * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
3562 * s/aix4-2.h (LIBS_SYSTEM): ... here.
3563 * s/netbsd.h: Remove commented out code.
3564
3565 2010-03-22 Dan Nicolaescu <dann@ics.uci.edu>
3566
3567 Remove dead code dealing with POSIX_SIGNALS.
3568 * atimer.c (set_alarm): Remove dead code, all USG systems define
3569 POSIX_SIGNALS.
3570 * data.c (arith_error): Likewise.
3571 * keyboard.c (input_available_signal, handle_user_signal)
3572 (interrupt_signal): Likewise.
3573 * process.c (sigchld_handler): Likewise.
3574 (create_process): Remove if 0 code. Remove HPUX conditional when
3575 !defined (POSIX_SIGNALS), it cannot be true.
3576 * syssignal.h: Remove USG5_4 and USG conditionals when
3577 !POSIX_SIGNALS, they cannot be true.
3578
3579 * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
3580 NO_SOCK_SIGIO, not used anymore.
3581
3582 2010-03-21 Dan Nicolaescu <dann@ics.uci.edu>
3583
3584 * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
3585 support vax on BSDs.
3586
3587 * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
3588 * s/aix4-2.h (ORDINARY_LINK): ... here.
3589
3590 2010-03-21 Andreas Schwab <schwab@linux-m68k.org>
3591
3592 * Makefile.in (abs_builddir): Define.
3593 (bootstrap_exe): Use it.
3594 (VPATH): Use $(srcdir) instead of @srcdir@.
3595
3596 2010-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
3597
3598 * Makefile.in (bootstrap_exe): Use an absolute name.
3599
3600 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
3601
3602 Remove support for old GNU/Linux using libc version 5.
3603 * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
3604 * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
3605
3606 Consolidate redundant definitions in s/bsd-common.h.
3607 * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
3608 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
3609 (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
3610 doing it in all files that include this one.
3611 * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
3612 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
3613 (LDAV_SYMBOL, KERNEL_FILE): Remove.
3614 * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
3615 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
3616 (LDAV_SYMBOL, KERNEL_FILE): Remove.
3617 * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
3618 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
3619 (LDAV_SYMBOL, KERNEL_FILE): Remove.
3620
3621 Consolidate redundant definitions.
3622 * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
3623 it's undefined in all files that include this one.
3624 (POSIX_SIGNALS): Define here instead of doing it in all files that
3625 include this one.
3626 * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
3627 (POSIX_SIGNALS): Do not define.
3628 * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
3629 (POSIX_SIGNALS): Do not define.
3630 * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
3631 (POSIX_SIGNALS): Do not define.
3632
3633 Remove support for old UNIX System V systems.
3634 * s/unixware.h: Add the contents of s/usg-5-4-2.h.
3635 * s/usg-5-4-2.h: Remove.
3636
3637 Remove support for Solaris on PPC and for old versions.
3638 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
3639 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
3640 that cancel each other.
3641 * s/sol2-3.h:
3642 * s/sol2-4.h:
3643 * s/sol2-5.h: Remove.
3644 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
3645 (NO_REMAP): Remove, unused.
3646 (UNEXEC): Move definition ...
3647 * s/aix4-2.h (UNEXEC): ... here.
3648
3649 * s/openbsd.h: Remove support for non-ELF and for systems that do
3650 not support shared libraries.
3651 * s/netbsd.h:
3652 * s/freebsd.h: Likewise.
3653
3654 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
3655
3656 Remove non-working support for lynxos 3.0.
3657 * s/lynxos.h: Remove file.
3658
3659 * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
3660 COFF_BSD_SYMBOLS, nothing defines it anymore.
3661
3662 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
3663
3664 Remove obsolete uses of HAVE_SHM.
3665 * emacs.c (standard_args):
3666 (Fdump_emacs):
3667 (syms_of_emacs): Remove code depending on HAVE_SHM.
3668
3669 * alloc.c: Remove HAVE_SHM dependent definition.
3670
3671 * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
3672
3673 2010-03-18 Glenn Morris <rgm@gnu.org>
3674
3675 * emacs.c (USAGE4): Hard-code bug address.
3676 (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
3677 (bug_reporting_address): Remove.
3678 (main): Don't call bug_reporting_address.
3679
3680 * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
3681 (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
3682
3683 2010-03-15 Chong Yidong <cyd@stupidchicken.com>
3684
3685 * xfns.c (Fx_create_frame):
3686 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
3687 on left.
3688
3689 2010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change)
3690
3691 * editfns.c (Fformat): Account for string precision when computing
3692 field width (Bug#5710).
3693
3694 2010-03-12 Chong Yidong <cyd@stupidchicken.com>
3695
3696 * xfns.c (Fx_create_frame): Set default to Qright.
3697
3698 * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
3699 all window systems.
3700
3701 2010-03-12 Eli Zaretskii <eliz@gnu.org>
3702
3703 These changes remove termcap.c from the build on Posix platforms.
3704 * Makefile.in (termcapobj): Move termcap.o from here...
3705 (MSDOS_OBJ): ...to here.
3706 (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
3707 now identical to when LIBS_TERMCAP is defined.
3708
3709 * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
3710
3711 * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
3712
3713 * config.in: Regenerated. (See top-level ChangeLog.)
3714
3715 2010-03-10 Chong Yidong <cyd@stupidchicken.com>
3716
3717 * Branch for 23.2.
3718
3719 2010-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
3720
3721 Cleanup setup of gl_state in various parts of the code.
3722 * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
3723 (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
3724 * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
3725 (skip_chars):
3726 * regex.c (regex_compile): Use it.
3727 (re_compile_pattern): Don't set gl_state.current_syntax_table since
3728 it's now set in regex_compile when/if we need it.
3729
3730 2010-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
3731
3732 Make it possible to C-g in a tight bytecode loop again (bug#5680).
3733 * lisp.h (ELSE_PENDING_SIGNALS): New macro.
3734 (QUIT): Use it to consolidate code and remove redundancy.
3735 * bytecode.c (BYTE_CODE_QUIT): Use it as well.
3736
3737 * regex.c (regex_compile): Setup gl_state as well.
3738
3739 * syntax.c (skip_chars): Setup gl_state (bug#3823).
3740 (in_classes): Use CONSP before XCAR/XCDR.
3741
3742 2010-03-03 Chong Yidong <cyd@stupidchicken.com>
3743
3744 * keymap.c (Fwhere_is_internal): Use Fequal to compare
3745 definitions, so that keyboard macros are correctly handled
3746 (Bug#5481).
3747
3748 2010-03-02 Eli Zaretskii <eliz@gnu.org>
3749
3750 * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
3751 text that could be relocated inside the call to emacs_mule_char.
3752 (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
3753 (CODING_DECODE_CHAR): Add a comment describing its purpose.
3754
3755 2010-03-02 Kenichi Handa <handa@m17n.org>
3756
3757 * character.c (parse_str_as_multibyte): Fix handling of the
3758 multibyte form of raw-bytes.
3759 (str_as_multibyte): Likewise.
3760
3761 * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
3762 form of raw-bytes.
3763
3764 2010-02-28 Chong Yidong <cyd@stupidchicken.com>
3765
3766 * charset.c (load_charset_map_from_file)
3767 (load_charset_map_from_vector): Zero out allocated
3768 charset_map_entries before using them.
3769
3770 2010-02-27 Andreas Schwab <schwab@linux-m68k.org>
3771
3772 * w32uniscribe.c (uniscribe_check_otf): Fix length check.
3773
3774 2010-02-27 Chong Yidong <cyd@stupidchicken.com>
3775
3776 * font.c (font_parse_fcname): Recognize "Book", "Condensed",
3777 "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
3778
3779 2010-02-26 Kenichi Handa <handa@m17n.org>
3780
3781 * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
3782
3783 * xdisp.c (reseat_to_string): Fix previous change.
3784
3785 2010-02-26 David Reitter <david.reitter@gmail.com>
3786
3787 * nsfont.m (nsfont_draw): ns_antialias_text should be a
3788 Lisp_Object (Bug#4736).
3789
3790 2010-02-25 Kenichi Handa <handa@m17n.org>
3791
3792 * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
3793
3794 2010-02-24 Jan Djärv <jan.h.d@swipnet.se>
3795
3796 * xterm.c (XTflash): Move declarations before statements.
3797
3798 * gtkutil.c (xg_get_gdk_display): Remove (unused).
3799 (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
3800 (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
3801 (xg_create_tool_bar): Remove unused variables.
3802 (x_wm_set_size_hint): Move declarations before statements.
3803 (xg_create_frame_widgets): Remove variable grav.
3804
3805 2010-02-21 Chong Yidong <cyd@stupidchicken.com>
3806
3807 * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
3808
3809 2010-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
3810
3811 * term.c (fatal): Add a final \n if needed (bug#5596).
3812
3813 2010-02-18 Chong Yidong <cyd@stupidchicken.com>
3814
3815 * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
3816
3817 2010-02-18 Glenn Morris <rgm@gnu.org>
3818
3819 * callint.c (Finteractive): Doc fix.
3820
3821 2010-02-18 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change)
3822
3823 * coding.c (record_conversion_result):
3824 Handle CODING_RESULT_INSUFFICIENT_DST.
3825 (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
3826 memory allocation error.
3827
3828 2010-02-17 Kenichi Handa <handa@m17n.org>
3829
3830 * coding.c (decode_coding_ccl): Don't setup ccl program here.
3831 Fix for the case that the output buffer is fullfilled.
3832 (decode_coding): Setup ccl program here. Keep looping when the
3833 decoder stopped because the output buffer is
3834 fullfilled (bug#5534).
3835
3836 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
3837
3838 2010-02-13 Jan Djärv <jan.h.d@swipnet.se>
3839
3840 * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
3841 bug #5571.
3842 (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
3843 overdrawn.
3844
3845 2010-02-10 Jan Djärv <jan.h.d@swipnet.se>
3846
3847 * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
3848 doing_interact here.
3849 (ice_connection_closed): New function.
3850 (x_session_check_input, smc_die_CB, ice_io_error_handler)
3851 (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
3852 (x_session_check_input): Call IceCloseConnection if IceProcessMessages
3853 returns I/O error.
3854 (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
3855 bug #5512.
3856
3857 2010-02-08 Francis Devereux <francis@devrx.org> (tiny change)
3858
3859 * nsfont.m (nsfont_open): The system's value for the font descent
3860 is negative, so round it down to avoid clipping.
3861
3862 2010-02-06 Chong Yidong <cyd@stupidchicken.com>
3863
3864 * charset.c (load_charset_map_from_file)
3865 (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
3866 instead of xmalloc (Bug#5526). Suggested by Vivek Dasmohapatra.
3867
3868 2010-02-05 Chong Yidong <cyd@stupidchicken.com>
3869
3870 * charset.c (load_charset_map_from_file): Allocate large
3871 charset_map_entries structure on the heap rather than the stack.
3872 (Bug#5526).
3873
3874 2010-01-31 Kenichi Handa <handa@m17n.org>
3875
3876 * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
3877 size in NAME is invalid, return -1 (Bug#5396).
3878
3879 2010-01-31 Chong Yidong <cyd@stupidchicken.com>
3880
3881 * nsterm.m (ns_defined_color): Block input. Suggested by Mike
3882 <deactivated@gmail.com> (Bug#3605).
3883
3884 2010-01-31 David De La Harpe Golden <david@harpegolden.net>
3885
3886 * fileio.c (Frename_file): Correctly rename symlinks to
3887 directories (Bug#5496).
3888
3889 2010-01-31 Filipe Cabecinhas <filcab@gmail.com> (tiny change)
3890
3891 * nsterm.m (ns_ring_bell): Handle visible bell like X.
3892
3893 2010-01-30 Andreas Schwab <schwab@linux-m68k.org>
3894
3895 * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
3896
3897 2010-01-29 Chong Yidong <cyd@stupidchicken.com>
3898
3899 * frame.c (DEFAULT_ROWS): Change default to 35.
3900
3901 * xfns.c (x_default_font_parameter): Change default XFT font to
3902 monospace-10 (Bug#3643).
3903
3904 2010-01-29 Eli Zaretskii <eliz@gnu.org>
3905
3906 * w32inevt.c (key_event): Remove unnecessary comparison of
3907 event->uChar.AsciiChar with 128.
3908
3909 2010-01-28 Chong Yidong <cyd@stupidchicken.com>
3910
3911 * fileio.c (Frename_file): Fix last change (Bug#5487).
3912
3913 * m/mips.h: Remove DATA_START. Suggested by Dan Nicolaescu.
3914
3915 * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
3916
3917 2010-01-28 Jan Djärv <jan.h.d@swipnet.se>
3918
3919 * xfns.c (Fx_create_frame): Remove window size matching code from
3920 2010-01-15.
3921 (x_get_current_desktop, x_get_desktop_workarea): Remove.
3922
3923 2010-01-27 Jason Rumney <jasonr@gnu.org>
3924
3925 * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
3926 (key_event): Use unicode for characters 128 and higher (Bug#4567).
3927
3928 2010-01-27 Kenichi Handa <handa@m17n.org>
3929
3930 * regex.c (analyse_first): Fix setting of fastmap for unibyte
3931 pattern string (Bug#4209).
3932
3933 2010-01-27 David De La Harpe Golden <david@harpegolden.net>
3934
3935 * fileio.c (Frename_file): Call copy-directory and
3936 delete-directory for directories, in order to handle cross-device
3937 renaming (Bug#3353).
3938
3939 2010-01-25 Jan Djärv <jan.h.d@swipnet.se>
3940
3941 * xfns.c (Fx_create_frame): If frame height is too big, try
3942 sizes 24 and 10. Bug #3643.
3943
3944 2010-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
3945
3946 Try and fix bug#788, hopefully for real this time.
3947 * keymap.c (shadow_lookup): Add `remap' arg.
3948 (describe_map, describe_vector): Update calls to shadow_lookup.
3949 (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
3950 `remapped' so this flag is applicable to `sequence'. Be careful to
3951 perform remapping during shadow_lookup check of remapped_sequences.
3952
3953 2010-01-24 Eric Bélanger <snowmaniscool@gmail.com> (tiny change)
3954
3955 * image.c (png_load): Use png_sig_cmp instead of the obsolete
3956 png_check_sig, which has been removed in libpng 1.4.
3957
3958 2010-01-23 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
3959
3960 * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
3961 lacks this header file).
3962
3963 2010-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3964
3965 * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
3966 as in Emacs 22.
3967
3968 2010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3969
3970 * lisp.h (make_pure_string): String pointer arg now points to const.
3971
3972 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
3973 args now point to const.
3974
3975 2010-01-22 Eli Zaretskii <eliz@gnu.org>
3976
3977 * lread.c (Fload): Don't treat files without .elc extension as
3978 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
3979 them. (bug#5303)
3980
3981 2010-01-20 Kenichi Handa <handa@m17n.org>
3982
3983 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
3984 treat the source as actual byte sequence.
3985
3986 2010-01-19 Alan Mackenzie <acm@muc.de>
3987
3988 Fix spurious before-change-functions invocation from (insert ?\n).
3989 * textprop.c (set_text_properties): Rename parameter
3990 `signal_after_change_p' to `coherent_change_p', and make the
3991 invocation of `modify_region' conditional on it.
3992
3993 2010-01-19 Jan Djärv <jan.h.d@swipnet.se>
3994
3995 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
3996 for debug purpose.
3997 (syms_of_xsettings): Declare xft-settings.
3998
3999 2010-01-18 Chong Yidong <cyd@stupidchicken.com>
4000
4001 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
4002
4003 2010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
4004
4005 * xterm.c (event_handler_gdk): Block input (Bug#5037).
4006
4007 2010-01-16 Chong Yidong <cyd@stupidchicken.com>
4008
4009 * emacs.c (standard_args): Adjust arg priorities to reflect how
4010 they are processed in startup.el.
4011
4012 2010-01-16 Andreas Schwab <schwab@linux-m68k.org>
4013
4014 * Makefile.in (lisp, shortlisp): Update.
4015
4016 2010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
4017
4018 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
4019 code, link the new kboard into all_kboard before running Lisp code,
4020 and protect the new terminal with GCPRO (Bug#5365).
4021 (x_term_init): Remove unused var `atom'.
4022 (x_delete_display, x_delete_terminal): Remove unused var `i'.
4023
4024 2010-01-15 Jan Djärv <jan.h.d@swipnet.se>
4025
4026 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
4027 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
4028 to find out usable size of the desktop. Don't make frames larger than
4029 this. Bug #3643.
4030
4031 2010-01-15 Kenichi Handa <handa@m17n.org>
4032
4033 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
4034
4035 2010-01-15 Chong Yidong <cyd@stupidchicken.com>
4036
4037 * nsterm.m (Qnone): Define.
4038
4039 * nsfns.m (Qnone): Move definition to nsterm.m.
4040
4041 2010-01-14 Kenichi Handa <handa@m17n.org>
4042
4043 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
4044 systems.
4045
4046 2010-01-14 Kenichi Handa <handa@m17n.org>
4047
4048 Make auto-composition work on all buffers even if they are
4049 fundamental mode.
4050
4051 * composite.c (Vauto_composition_mode): New variable.
4052 (composition_compute_stop_pos): Check Vauto_composition_mode
4053 instead of Vauto_composition_function.
4054 (composition_adjust_point, Ffind_composition_internal): Likewise.
4055 (syms_of_composite): Declare Lisp variable
4056 "auto-composition-mode" here.
4057
4058 2010-01-13 Chong Yidong <cyd@stupidchicken.com>
4059
4060 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
4061 during call to vendor-specific-keysyms (Bug#5365).
4062
4063 2010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4064
4065 * keyboard.c (input_available_signal) [SYNC_INPUT]:
4066 Call SIGNAL_THREAD_CHECK (Bug#5333).
4067
4068 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
4069 Call SIGNAL_THREAD_CHECK.
4070
4071 2010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
4072
4073 Try to fix bug#5314. This is probably not the final word, tho.
4074 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
4075 recent-auto-save-p as a side-effect.
4076 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
4077 * buffer.c (Fkill_buffer, reset_buffer):
4078 * editfns.c (Fsubst_char_in_region):
4079 * fileio.c (Finsert_file_contents, Fdo_auto_save)
4080 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
4081
4082 2010-01-13 Kenichi Handa <handa@m17n.org>
4083
4084 Display buffer name, etc. in mode line by composing correctly.
4085
4086 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
4087 STRING is not nil.
4088 (display_mode_element): Adjust for the change of
4089 decode_mode_spec and display_line.
4090 (decode_mode_spec): Change arg MULTIBYTE to STRING.
4091 (display_string): Handle the case that STRING is non-null and
4092 LISP_STRING is not nil.
4093
4094 * xterm.c (x_draw_composite_glyph_string_foreground):
4095 Pay attention to s->face->overstrike.
4096
4097 * composite.c (composition_reseat_it): Don't check PT if STRING is
4098 non nil.
4099
4100 2010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4101
4102 * keyboard.c (read_char): Don't apply previous change when current
4103 buffer is unchanged by command execution.
4104
4105 2010-01-12 Jan Djärv <jan.h.d@swipnet.se>
4106
4107 * keyboard.c (read_char): Return after executing from special map.
4108
4109 2010-01-12 Glenn Morris <rgm@gnu.org>
4110
4111 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
4112 bug-gnu-emacs rather than emacs-pretest-bug.
4113
4114 2010-01-11 Chong Yidong <cyd@stupidchicken.com>
4115
4116 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
4117 initializing the Lisp variables that depend on them.
4118
4119 2010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4120
4121 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
4122 Clear areas that will not be updated after change of menu bar lines.
4123 Clear the menu bar window's current matrix when the window gets empty.
4124
4125 2010-01-09 Chong Yidong <cyd@stupidchicken.com>
4126
4127 * intervals.h, textprop.c (extend_property_ranges): Return value
4128 and args changed. Discard properties that begin at or after the
4129 new end (Bug#5306).
4130
4131 * editfns.c (Fformat): Caller changed.
4132
4133 * nsterm.m (ns_set_default_prefs): Delete function.
4134 (syms_of_nsterm): Initialize ns_command_modifier,
4135 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
4136 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
4137
4138 * xdisp.c (pos_visible_p): Check for invisible text at the correct
4139 position (Bug#4040).
4140
4141 2010-01-09 Eli Zaretskii <eliz@gnu.org>
4142
4143 * editfns.c (Ffloat_time): Doc fix.
4144
4145 2010-01-09 Jan Djärv <jan.h.d@swipnet.se>
4146
4147 * xfns.c (Fx_create_frame): Don't create frame larger than display
4148 by default bug#3643.
4149
4150 2010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4151
4152 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
4153 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
4154 windows above internal border.
4155
4156 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
4157 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
4158 windows above internal border.
4159
4160 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
4161 tool bar windows specially.
4162
4163 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
4164
4165 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
4166 specially.
4167 (XTflash): Take account of menu bar height.
4168
4169 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
4170 specially.
4171
4172 2010-01-08 Jan Djärv <jan.h.d@swipnet.se>
4173
4174 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
4175 also be true before we can return early (bug #5339).
4176
4177 2010-01-06 David Reitter <david.reitter@gmail.com>
4178
4179 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
4180 (Fns_display_usable_bounds): Rewrite, computing bounds properly
4181 (Bug#3233).
4182
4183 2010-01-06 Jan Djärv <jan.h.d@swipnet.se>
4184
4185 * font.c (font_open_entity): Enable chache and call cached_font_ok
4186 for the driver if defined.
4187 (QCuser_spec): New symbol.
4188 (font_spec_from_name): Save name as user-spec.
4189 (font_load_for_lface): Keep user-spec instead of name.
4190 (font_open_by_name): Save name as user-spec.
4191 (syms_of_font): Initialize QCuser_spec.
4192 (font_clear_prop): Clear name if it exists in font (bug#5157).
4193
4194 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
4195 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
4196 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
4197
4198 * font.h (struct font_driver): Add cached_font_ok.
4199
4200 * xterm.c (x_clear_frame): Queue draw for scroll bars.
4201
4202 2010-01-05 Jan Djärv <jan.h.d@swipnet.se>
4203
4204 * xterm.c (x_new_font): Move code for setting rows/cols before
4205 resizing ...
4206 (x_set_window_size): ... to here. Bug #2568.
4207
4208 * gtkutil.c (xg_clear_under_internal_border): New function.
4209 (xg_frame_resized, xg_frame_set_char_size):
4210 Call xg_clear_under_internal_border.
4211 (xg_update_scrollbar_pos): Clear under old scroll bar position.
4212
4213 2010-01-05 Chong Yidong <cyd@stupidchicken.com>
4214
4215 * keyboard.c (read_key_sequence): Catch keyboard switch after
4216 making a new tty frame (Bug#5095).
4217
4218 2010-01-05 Kenichi Handa <handa@m17n.org>
4219
4220 * fontset.c (fontset_find_font): Fix getting the frame pointer.
4221
4222 2010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
4223
4224 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
4225 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
4226 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
4227
4228 2010-01-03 Michael Albinus <michael.albinus@gmx.de>
4229
4230 * dbusbind.c (xd_add_watch): Improve debug message.
4231 (xd_remove_watch): Improve debug message. If DATA is the session
4232 bus, unset D-Bus session environment.
4233 (Fdbus_init_bus): Pass the bus as argument to
4234 dbus_connection_set_watch_functions. (Bug#5283)
4235
4236 2010-01-01 Chong Yidong <cyd@stupidchicken.com>
4237
4238 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
4239
4240 * lread.c (syms_of_lread): Make it clearer that these are the
4241 names of loaded files (Bug#5068).
4242
4243 * eval.c (run_hook_with_args): Handle the case where the global
4244 value has the obsolete single-function form (Bug#5026).
4245
4246 2009-12-27 Chong Yidong <cyd@stupidchicken.com>
4247
4248 * minibuf.c (Fall_completions): Minor optimization.
4249
4250 2009-12-26 Eli Zaretskii <eliz@gnu.org>
4251
4252 * .gdbinit (pgx): Fix display of composite glyphs.
4253 Display cmp.from and cmp.to as well.
4254 (pitx): Fix last change.
4255
4256 2009-12-25 Kenichi Handa <handa@m17n.org>
4257
4258 * composite.h (composition_adjust_point): Update prototype.
4259
4260 * composite.c (composition_reseat_it): Don't make a composition
4261 spanning over point.
4262 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
4263 composable characters.
4264 (composition_adjust_point): New arg NEW_PT. Callers changed.
4265
4266 * keyboard.c (command_loop_1): Force redisplay if the last point
4267 was within a composition.
4268 (adjust_point_for_property): Don't adjust point for automatic
4269 composition when called after buffer modification.
4270
4271 2009-12-19 Eli Zaretskii <eliz@gnu.org>
4272
4273 * .gdbinit (pitx): Don't use enum names, use their values.
4274 Remove reference to non-existing value GET_FROM_COMPOSITION.
4275 (pgx): Don't use enum names, use their values.
4276 (pitmethod): New helper command.
4277 (pitx): Use it to display iteration method.
4278 (pgrowit): New command.
4279
4280 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
4281
4282 Update dependencies in Makefile.in.
4283
4284 * Makefile.in (alloc.o): Depend on termhooks.h.
4285 (atimer.o): Depend on blockinput.h.
4286 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
4287 and frame.h.
4288 (callint.o): Depend on systime.h, coding.h, and composite.h.
4289 (callproc.o): Depend on buffer.h.
4290 (casefiddle.o): Don't depend on charset.h.
4291 (casetab.o): Depend on character.h.
4292 (ccl.o): Depend on composite.h.
4293 (chartab.o): Depend on ccl.h.
4294 (cm.o): Depend on dispextern.h.
4295 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
4296 (coding.o): Don't depend on $(INTERVALS_H).
4297 (composite.o): Don't depend on dispextern.h explicitly (it's in
4298 $(INTERVALS_H)). Depend on ccl.h.
4299 (data.o): Depend on systime.h, coding.h, composite.h,
4300 dispextern.h, font.h, and ccl.h.
4301 (dired.o): Depend on composite.h.
4302 (dispnew.o): Depend on coding.h. Don't depend explicitly on
4303 composite.h (it's in $(INTERVALS_H)).
4304 (doc.o): Depend on systime.h, coding.h, and composite.h.
4305 (editfns.o): Don't depend explicitly on dispextern.h.
4306 (emacs.o): Depend on frame.h and coding.h.
4307 (eval.o): Depend on coding.h, composite.h, and xterm.h.
4308 (fileio.o): Depend on frame.h and commands.h. Don't depend
4309 explicitly on dispextern.h.
4310 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
4311 composite.h.
4312 (fns.o): Don't depend on termhooks.h.
4313 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
4314 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
4315 coding.h, $(INTERVALS_H), window.h, xterm.h.
4316 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
4317 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
4318 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
4319 fontset.h, ccl.h, and ftfont.h.
4320 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
4321 (gtkutil.o): Depend on dispextern.h and composite.h.
4322 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
4323 termhooks.h, and ccl.h.
4324 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
4325 (intervals.o): Depend on systime.h and coding.h.
4326 (keyboard.o): Depend on composite.h and coding.h.
4327 (keymap.o): Depend on coding.h and frame.h.
4328 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
4329 (macros.o): Depend on systime.h, coding.h, and composite.h.
4330 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
4331 and atimer.h.
4332 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
4333 dispextern.h explicitly.
4334 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
4335 Don't depend explicitly on dispextern.h and composite.h.
4336 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
4337 (regex.o): Don't depend on charset.h.
4338 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
4339 (search.o): Don't depend explicitly on composite.h.
4340 (sound.o): Depend on atimer.h and systime.h.
4341 (syntax.o): Don't depend explicitly on composite.h.
4342 (sysdep.o): Depend on coding.h and composite.h.
4343 (term.o): Depend on xterm.h and buffer.h.
4344 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
4345 (textprop.o): Don't depend on dispextern.h explicitly.
4346 (undo.o): Depend on dispextern.h.
4347 (window.o): Depend on coding.h and termhooks.h. Don't depend on
4348 dispextern.h and composite.h explicitly.
4349 (xdisp.o): Depend on ccl.h.
4350 (xfaces.o): Depend on coding.h and ccl.h.
4351 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
4352 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
4353 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
4354 ftfont.h.
4355 (xgselect.o): New dependency.
4356 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
4357 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
4358 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
4359 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
4360 (xsmfns.o): Depend on frame.h and dispextern.h.
4361 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
4362 sysselect.h.
4363
4364 2009-12-19 Andreas Schwab <schwab@linux-m68k.org>
4365
4366 * font.c (Fclear_font_cache): Pass correct cache argument to
4367 font_clear_cache.
4368
4369 2009-12-16 Andreas Schwab <schwab@linux-m68k.org>
4370
4371 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
4372 twice.
4373
4374 2009-12-15 Chong Yidong <cyd@stupidchicken.com>
4375
4376 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
4377 calling file-remote-p. Reported by Jim Meyering.
4378
4379 2009-12-15 Michael Albinus <michael.albinus@gmx.de>
4380
4381 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
4382 avoid compiler warnings. (Bug #5217)
4383
4384 2009-12-14 Kenichi Handa <handa@m17n.org>
4385
4386 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
4387 in 8-bit encoding.
4388
4389 2009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
4390
4391 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
4392 tooltip windows.
4393
4394 2009-12-13 Jan Djärv <jan.h.d@swipnet.se>
4395
4396 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
4397 Xatom_net_window_type.
4398
4399 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
4400 Xatom_net_window_type.
4401
4402 * xterm.c (my_log_handler): New function.
4403 (x_term_init): Set my_log_handler as log handler during gtk_init
4404 so we can filter out buggy messages. (Bug #5120).
4405
4406 * xterm.c (xg_scroll_callback): Parameter list changed,
4407 use parameter GtkScrollType to determine scroll/line/page.
4408 Only allow dragging if a button < 4 is grabbed (bug #5177).
4409 (xg_end_scroll_callback): New function.
4410 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
4411 xg_create_scroll_bar.
4412
4413 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
4414 (scroll_end_callback): Remove.
4415 (xg_create_scroll_bar): Add parameter end_callback, bind it to
4416 button-release-event. Replace value-changed event with change-value,
4417 bug #5177,
4418 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
4419 bug #5177.
4420
4421 * gtkutil.h (XG_LAST_SB_DATA): Remove.
4422 (xg_create_scroll_bar): Add GCallback end_callback.
4423
4424 * xftfont.c (QClcdfilter): New variable.
4425 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
4426 (syms_of_xftfont): Initialize QClcdfilter.
4427
4428 2009-12-12 Jan Djärv <jan.h.d@swipnet.se>
4429
4430 * xsettings.c (struct xsettings): Add member seen.
4431 (parse_xft_settings): Update member seen with what we have read.
4432 Return non-zero if Xft-settings have been parsed, 0 otherwise.
4433 (apply_xft_settings): Only update Xft settings with what member seen
4434 indicates as new.
4435
4436 2009-12-12 Eli Zaretskii <eliz@gnu.org>
4437
4438 * dispextern.h (struct text_pos): Use EMACS_INT;
4439 (struct glyph): Use EMACS_INT for charpos.
4440 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
4441 region_beg_charpos, region_end_charpos,
4442 redisplay_end_trigger_charpos, and also for
4443 iterator_stack_entry.end_charpos and
4444 iterator_stack_entry.stop_charpos.
4445
4446 2009-12-12 Jan Djärv <jan.h.d@swipnet.se>
4447
4448 * gtkutil.c (scroll_end_callback): New function (bug #5177).
4449 (xg_create_scroll_bar): Call scroll_end_callback on button release
4450 event (bug #5177).
4451 (xg_event_is_for_scrollbar): != replaced with ==.
4452
4453 2009-12-12 Kenichi Handa <handa@m17n.org>
4454
4455 * ftfont.c (struct ftfont_info): New member matrix.
4456 (ftfont_open): Setup xftfont_info->matrix.
4457 (MFLTFontFT): New member matrix.
4458 (FLOOR, CEIL, ROUND): New macros.
4459 (ftfont_get_metrics): Handle matrix transformation.
4460 (ftfont_shape_by_flt): New arg matrix. Callers changed.
4461
4462 * xftfont.c (struct xftfont_info): New member matrix.
4463 (xftfont_open): Setup xftfont_info->matrix.
4464
4465 2009-12-10 Kenichi Handa <handa@m17n.org>
4466
4467 * xdisp.c (append_space_for_newline): Consider face-remapping.
4468
4469 2009-12-09 Andreas Schwab <schwab@linux-m68k.org>
4470
4471 * xsettings.c: Include "keyboard.h".
4472
4473 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
4474
4475 Fix implicit function declarations.
4476 * cmds.c: Include "frame.h".
4477 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
4478 * frame.h: Move declaration of delete_frame outside of
4479 HAVE_WINDOW_SYSTEM.
4480
4481 2009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
4482
4483 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
4484
4485 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
4486 GTK builds.
4487
4488 2009-12-07 Andreas Schwab <schwab@linux-m68k.org>
4489
4490 * unexelf.c (unexec): Don't search for .data twice.
4491
4492 2009-12-05 Chong Yidong <cyd@stupidchicken.com>
4493
4494 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
4495 if push failed.
4496 (handle_line_prefix): Set avoid_cursor_p here. Check return value
4497 of push_display_prop (Bug#5000).
4498
4499 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
4500 value of font_list_entities (Bug#5085).
4501
4502 2009-12-04 Juanma Barranquero <lekktu@gmail.com>
4503
4504 Fix `string-to-number' to deal consistently with integers and floats.
4505 * lread.c (isfloat_string): New argument ignore_trailing to accept all
4506 trailing characters, not just whitespace.
4507 (read1): Pass new arg 0 to keep old behavior.
4508 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
4509 trailing chars, as it is already done for integers. Doc fixes.
4510 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
4511
4512 2009-12-04 Eli Zaretskii <eliz@gnu.org>
4513
4514 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
4515 Delete unused enumeration value.
4516
4517 2009-12-03 Eli Zaretskii <eliz@gnu.org>
4518
4519 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
4520
4521 2009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
4522
4523 * process.c (Fmake_network_process): Fix up the tests for
4524 "connectionless socket", so they DTRT for seqpacket sockets as well.
4525
4526 2009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
4527
4528 * process.c (Qseqpacket): New symbol.
4529 (HAVE_SEQPACKET): New macro.
4530 (Fmake_network_process): Accept new :type `seqpacket'.
4531 (init_process): Add `seqpacket' feature when applicable.
4532 (syms_of_process): Initialize Qseqpacket.
4533
4534 2009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4535
4536 * font.c (font_load_for_lface, font_open_by_name): Don't store name
4537 if entity is Qnil.
4538
4539 2009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
4540
4541 * print.c (print_preprocess): Preprocess the key_and_value table of
4542 hashtables, even tho they're "hidden" (bug#5082).
4543
4544 2009-11-29 Jan Djärv <jan.h.d@swipnet.se>
4545
4546 * frame.c (frame_make_pointer_invisible)
4547 (frame_make_pointer_visible): Declare f before statements.
4548
4549 2009-11-28 Eli Zaretskii <eliz@gnu.org>
4550
4551 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
4552 omitted dependencies on lisp.h.
4553
4554 2009-11-27 Jan Djärv <jan.h.d@swipnet.se>
4555
4556 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
4557 is NULL.
4558
4559 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
4560
4561 * frame.c (frame_make_pointer_invisible)
4562 (frame_make_pointer_visible): Just return if there isn't any selected
4563 frame.
4564
4565 * search.c (simple_search): Remove warning by making *p const.
4566
4567 2009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
4568
4569 * xdisp.c (power_letter): Remove duplicate const.
4570
4571 2009-11-25 Jan Djärv <jan.h.d@swipnet.se>
4572
4573 * term.c (delete_tty): Remove check for last terminal (bug#4970).
4574
4575 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
4576 defaults (bug #5025).
4577
4578 2009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
4579
4580 * insdel.c (adjust_markers_for_delete): Move it in the
4581 right direction! (bug#4803)
4582
4583 2009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4584
4585 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
4586
4587 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
4588
4589 2009-11-24 Glenn Morris <rgm@gnu.org>
4590
4591 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
4592
4593 2009-11-23 Jan Djärv <jan.h.d@swipnet.se>
4594
4595 * Makefile.in: Must create deps for ecrt0.o in its rule.
4596
4597 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
4598 because that is what Gtk+ font dialog understands.
4599
4600 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
4601 of Fcopy_sequence.
4602 (font_open_by_name): Put name given into QCname for font-object returned.
4603
4604 * frame.c (x_set_font): Save original font name as frame parameter
4605 font-parameter.
4606
4607 * xsettings.c (set_default_xft_settings): New function.
4608 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
4609 is found.
4610
4611 2009-11-22 Andreas Schwab <schwab@linux-m68k.org>
4612
4613 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
4614 searching backwards through multibyte buffer.
4615
4616 2009-11-21 Jan Djärv <jan.h.d@swipnet.se>
4617
4618 * xterm.c: #include xgselect.h.
4619 (x_initialize): Call xgselect_initialize.
4620
4621 * xsettings.c (something_changedCB): C++ comments => C comments.
4622 (init_gconf): Do not deal with any GLib file descriptors, xg_select
4623 does that now.
4624
4625 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
4626 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
4627 (scroll_bar_button_cb): Remove.
4628 (create_menus): C++ comments => C comments. Don't bind grab-notify
4629 event.
4630 (xg_create_scroll_bar): Don't bind button-press-event and
4631 button-release-event.
4632
4633 * process.c: Include xgselect.h if defined (USE_GTK) ||
4634 defined (HAVE_GCONF).
4635 (wait_reading_process_output): Call xg_select for the same condition.
4636
4637 * xgselect.c (xg_select): New function to better integrate with
4638 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
4639
4640 * xgselect.h: New file, declare xg_select, xgselect_initialize.
4641
4642 * Makefile.in (XOBJ): Add xgselect.o.
4643
4644 2009-11-21 Andreas Schwab <schwab@linux-m68k.org>
4645
4646 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
4647 Remove ignored second argument. All callers changed.
4648 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
4649 (RE_STRING_CHAR_AND_LENGTH): Likewise.
4650 * xdisp.c (string_char_and_length): Likewise.
4651
4652 2009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
4653
4654 * xterm.c (x_new_font):
4655 * print.c (print_object):
4656 * cmds.c (Fself_insert_command): Move declarations before statements.
4657
4658 2009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
4659
4660 * s/cygwin.h: Remove unneeded linker flags.
4661
4662 2009-11-20 Jan Djärv <jan.h.d@swipnet.se>
4663
4664 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
4665
4666 * xsettings.h: Declare xsettings_get_system_font.
4667
4668 * xsettings.c (xsettings_get_system_font): New function.
4669 (init_gconf): No use initiating gconf unless we have Xft also.
4670 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
4671 HAVE_GCONF.
4672
4673 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
4674 add a blank entry so it doesn't collapse into nothing.
4675
4676 2009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
4677
4678 * lread.c (Funintern): Comment out last change.
4679
4680 2009-11-19 Richard Stallman <rms@gnu.org>
4681
4682 * lread.c (Funintern): Error if symbol is t or nil.
4683
4684 2009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
4685
4686 * insdel.c (make_gap_larger): Don't make as many assumptions about the
4687 representation of Lisp integers.
4688 Reported by MJ Chan <mjchan.inbox@gmail.com>.
4689
4690 2009-11-17 Andreas Schwab <schwab@linux-m68k.org>
4691
4692 * lisp.h: Remove declaration of Ffont_get_system_font.
4693 * xfns.c: Move include of "xsettings.h".
4694 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
4695
4696 2009-11-17 Jan Djärv <jan.h.d@swipnet.se>
4697
4698 * xsettings.c (something_changedCB, Ffont_get_system_font):
4699 Check use_system_font.
4700 (syms_of_xsettings): DEFVAR font-use-system-font.
4701
4702 2009-11-17 Andreas Schwab <schwab@linux-m68k.org>
4703
4704 * xfns.c (x_default_font_parameter): Remove dead assignment.
4705
4706 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
4707
4708 2009-11-17 Jan Djärv <jan.h.d@swipnet.se>
4709
4710 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
4711 not have FC_LCD_*. #define them if not there.
4712
4713 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
4714
4715 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
4716
4717 * xterm.c (handle_one_xevent): Call xft_settings_event for
4718 ClientMessage, PropertyNotify and DestroyNotify.
4719 (x_term_init): If we have XFT, get DPI from Xft.dpi.
4720 Call xsettings_initialize.
4721
4722 * xftfont.c (xftfont_fix_match): New function.
4723 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
4724 Call xftfont_fix_match after XftFontMatch.
4725
4726 * xfont.c (xfont_driver): Initialize all members.
4727
4728 * xfns.c (x_default_font_parameter):
4729 Try font from Ffont_get_system_font.
4730 Do not get font from x_default_parameter if we got one from
4731 Ffont_get_system_font.
4732 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
4733
4734 * w32font.c (w32font_driver): Initialize all members.
4735
4736 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
4737
4738 * lisp.h: Declare syms_of_xsettings.
4739
4740 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
4741 Handle CONFIG_CHANGED_EVENT.
4742
4743 * ftfont.c (ftfont_filter_properties): New function.
4744
4745 * frame.c (x_set_font): Remove unused variable lval.
4746
4747 * font.h (struct font_driver): Add filter_properties.
4748
4749 * font.c (font_put_extra): Don't return if val is nil, it means
4750 boolean option is off.
4751 (font_parse_fcname): Collect all extra properties in extra_props
4752 and call filter_properties for all drivers with extra_props and
4753 font as parameter.
4754 (font_open_entity): Do not use cache, it does not pick up new
4755 fontconfig settings like hinting.
4756 (font_load_for_lface): If spec had a name in it, store it in entity.
4757
4758 * emacs.c (main): Call syms_of_xsettings.
4759
4760 * config.in: HAVE_GCONF is new.
4761
4762 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
4763 xsettings.o is new.
4764
4765 2009-11-17 Kenichi Handa <handa@m17n.org>
4766
4767 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
4768 back to the default font in case that no suitable font is found.
4769
4770 2009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
4771
4772 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
4773 Suggested by Chad Brown <yandros@mit.edu>.
4774 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
4775
4776 2009-11-16 Jan Djärv <jan.h.d@swipnet.se>
4777
4778 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
4779
4780 2009-11-14 Andreas Schwab <schwab@linux-m68k.org>
4781
4782 * Makefile.in: Ignore errors from mkdir when creating deps directory.
4783
4784 2009-11-14 Jan Djärv <jan.h.d@swipnet.se>
4785
4786 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
4787 has a parent.
4788
4789 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
4790 dependency files in deps/. Include those files into Makefile.
4791
4792 * config.in: Generated (AUTO_DEPEND).
4793
4794 2009-11-13 Michael Albinus <michael.albinus@gmx.de>
4795
4796 * dbusbind.c (Vdbus_registered_objects_table): Rename from
4797 Vdbus_registered_functions_table, because it contains also
4798 properties. Fix docstring.
4799 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
4800
4801 2009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
4802
4803 * alloc.c (mark_object): Don't reprocess marked strings.
4804 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
4805 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
4806
4807 2009-11-13 Kenichi Handa <handa@m17n.org>
4808
4809 * category.c (word_boundary_p): Adjust for the change of the
4810 semantics of Vword_combining_categories.
4811 (Vword_combining_categories): Describe the slight change of the
4812 semantics.
4813
4814 2009-11-13 Eli Zaretskii <eliz@gnu.org>
4815
4816 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
4817
4818 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
4819
4820 2009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
4821
4822 * xdisp.c (syms_of_xdisp): Fix typo in last change.
4823
4824 2009-11-12 Juanma Barranquero <lekktu@gmail.com>
4825
4826 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
4827
4828 2009-11-11 David Reitter <david.reitter@gmail.com>
4829
4830 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
4831 variables to fix 2009-11-09 change.
4832
4833 2009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
4834
4835 * process.c (ifflag_def): Make flag_sym constant.
4836 (Fnetwork_interface_info): Use a constant pointer.
4837 (ifflag_table):
4838 * xfns.c (cursor_bits):
4839 * xdisp.c (power_letter):
4840 * termcap.c (speeds, esctab):
4841 * sysdep.c (baud_convert):
4842 * keyboard.c (lispy_accent_codes, modifier_names):
4843 * image.c (xbm_format, xpm_format, pbm_format, png_format)
4844 (jpeg_format, tiff_format, gif_format, svg_format)
4845 (interlace_start, interlace_increment, gs_format):
4846 * gtkutil.c (separator_names):
4847 * fringe.c (swap_nibble):
4848 * fns.c (base64_value_to_char, base64_char_to_value):
4849 * fileio.c (make_temp_name_tbl):
4850 * coding.c (suffixes): Make constant.
4851
4852 * frame.c (make_initial_frame):
4853 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
4854 build_string.
4855 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
4856
4857 * s/freebsd.h:
4858 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
4859
4860 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
4861 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
4862
4863 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
4864 * xterm.c (syms_of_xterm):
4865 * xfaces.c (syms_of_xfaces):
4866 * xdisp.c (syms_of_xdisp):
4867 * lread.c (syms_of_lread):
4868 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
4869 build_string.
4870
4871 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
4872
4873 2009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
4874
4875 * fns.c (Fplist_get): Merge the active and the commented out code.
4876
4877 2009-11-10 Jan Djärv <jan.h.d@swipnet.se>
4878
4879 * keyboard.h: Declare timer_check.
4880
4881 * keyboard.c (timer_check_2): New function that does what the old
4882 timer_check did.
4883 (timer_check): Call timer_check_2 until -1 or a non-zero time is
4884 returned, i.e. don't return -1 with timers pending.
4885
4886 * process.c: Remove extern declaration of timer_check.
4887
4888 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
4889 even if timer_check returned -1.
4890
4891 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
4892 xg_dialog_data.
4893 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
4894 the event loop.
4895 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
4896 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
4897 Destroy the dialog after xg_dialog_run.
4898
4899 2009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
4900
4901 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
4902
4903 2009-11-10 Jan Djärv <jan.h.d@swipnet.se>
4904
4905 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
4906
4907 2009-11-09 Juanma Barranquero <lekktu@gmail.com>
4908
4909 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
4910
4911 2009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
4912
4913 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
4914 w32menu.c, and nsmenu.m.
4915 Simplify the obsolete case where position is nil.
4916 (cleanup_popup_menu): New function, moved from nsmenu.m.
4917 (struct skp): Remove slot `notreal'.
4918 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
4919 adjust callers.
4920 (single_menu_item): Adjust call to parse_menu_item.
4921 (syms_of_menu): Defsubr x-popup-menu.
4922 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
4923 (keymap_panes): Don't export any more.
4924 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
4925 (xmenu_show): Declare.
4926 * keyboard.c (parse_menu_item): Remove arg `notreal'.
4927 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
4928 * keyboard.h (parse_menu_item): Update declaration.
4929 * xmenu.c (Fx_popup_menu): Remove.
4930 (syms_of_xmenu): Don't defsubr x-popup-menu.
4931 * w32menu.c (Fx_popup_menu): Remove.
4932 (syms_of_w32menu): Don't defsubr x-popup-menu.
4933 * nsmenu.m (cleanup_popup_menu): Remove.
4934 (ns_menu_show): Rename from ns_popup_menu and remove all the code
4935 moved to menu.c's Fx_popup_menu.
4936 (Fx_popup_menu): Remove.
4937 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
4938 menu_items (it's done in menu.c already).
4939
4940 2009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
4941
4942 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
4943 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
4944
4945 2009-11-08 Chong Yidong <cyd@stupidchicken.com>
4946
4947 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
4948 xmenu_show. Hide any tooltip before opening a menu.
4949 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
4950 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
4951
4952 2009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
4953
4954 Let integers use up 2 tags to give them one extra bit and thus double
4955 their range.
4956 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
4957 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
4958 New macros.
4959 (enum Lisp_Type): Use them. Give explicit values.
4960 (Lisp_Type_Limit): Remove.
4961 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
4962 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
4963 Pay attention to USE_2_TAGS_FOR_INTS.
4964 (INTEGERP): Use LISP_INT_TAG_P.
4965 * fns.c (internal_equal): Simplify the default case.
4966 (sxhash): Use case_Lisp_Int.
4967 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
4968 any more.
4969 (Ftype_of): Use case_Lisp_Int.
4970 (store_symval_forwarding): Take into account the fact that Ints can
4971 now have more than one tag.
4972 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
4973 buffer_slot_type_mismatch):
4974 * xfaces.c (face_attr_equal_p):
4975 * print.c (print_object):
4976 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
4977 Use case_Lisp_Int.
4978
4979 2009-11-06 Eli Zaretskii <eliz@gnu.org>
4980
4981 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
4982
4983 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
4984 warning.
4985
4986 2009-11-06 Jan Djärv <jan.h.d@swipnet.se>
4987
4988 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
4989
4990 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
4991
4992 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
4993 ButtonPressRelease and MotionNotify (bug#4870).
4994
4995 2009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
4996
4997 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
4998
4999 * xterm.c (syms_of_xterm):
5000 * xselect.c (syms_of_xselect):
5001 * xmenu.c (syms_of_xmenu):
5002 * xfns.c (syms_of_xfns):
5003 * xfaces.c (syms_of_xfaces):
5004 * xdisp.c (syms_of_xdisp):
5005 * window.c (syms_of_window):
5006 * w32fns.c (syms_of_w32fns):
5007 * undo.c (syms_of_undo):
5008 * textprop.c (syms_of_textprop):
5009 * terminal.c (syms_of_terminal):
5010 * syntax.c (syms_of_syntax):
5011 * sound.c (syms_of_sound):
5012 * search.c (syms_of_search):
5013 * print.c (syms_of_print):
5014 * minibuf.c (syms_of_minibuf):
5015 * macros.c (syms_of_macros):
5016 * keymap.c (syms_of_keymap, initial_define_key)
5017 (initial_define_lispy_key):
5018 * keyboard.c (syms_of_keyboard):
5019 * insdel.c (syms_of_insdel):
5020 * image.c (syms_of_image):
5021 * fringe.c (syms_of_fringe):
5022 * frame.c (syms_of_frame):
5023 * fontset.c (syms_of_fontset):
5024 * fns.c (syms_of_fns):
5025 * fns.c (syms_of_fns):
5026 * fileio.c (syms_of_fileio):
5027 * fileio.c (syms_of_fileio):
5028 * eval.c (syms_of_eval):
5029 * doc.c (syms_of_doc):
5030 * dispnew.c (syms_of_display):
5031 * dired.c (syms_of_dired):
5032 * dbusbind.c (syms_of_dbusbind):
5033 * data.c (syms_of_data):
5034 * composite.c (syms_of_composite):
5035 * coding.c (syms_of_coding):
5036 * cmds.c (syms_of_cmds):
5037 * charset.c (define_charset_internal, syms_of_character):
5038 * ccl.c (syms_of_ccl):
5039 * category.c (syms_of_category, init_category_once):
5040 * casetab.c (syms_of_casetab):
5041 * casefiddle.c (syms_of_casefiddle):
5042 * callint.c (syms_of_callint):
5043 * bytecode.c (syms_of_bytecode):
5044 * buffer.c (keys_of_buffer, syms_of_buffer):
5045 * alloc.c (syms_of_alloc):
5046 * process.c (syms_of_process, init_process):
5047 * lread.c (syms_of_lread, init_obarray):
5048 * font.c (build_style_table):
5049 * emacs.c (syms_of_emacs, main): Replace calls to intern with
5050 intern_c_string, calls to make_pure_string with
5051 make_pure_c_string. Use pure_cons instead of Fcons.
5052
5053 * process.c (socket_options): Make it const.
5054 (set_socket_option, init_process): Use a const pointer.
5055
5056 * lread.c (intern_c_string): New function.
5057 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
5058 (defvar_int): Uset it. Make the name const char*.
5059
5060 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
5061 (defvar_int): Update prototypes.
5062 (DEFUN, EXFUN): Support for prototypes is now required.
5063 (intern_c_string): New prototype.
5064 (struct Lisp_Subr): Make symbol_name constant.
5065
5066 * font.c (struct table_entry): Remove unused member. Make NAMES
5067 constant.
5068 (weight_table, slant_table, width_table): Make constant.
5069
5070 * emacs.c (struct standard_args): Make name and longname constant.
5071
5072 * character.h (DEFSYM): Use intern_c_string.
5073
5074 2009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
5075
5076 * alloc.c (make_pure_c_string): New function.
5077
5078 * eval.c (Fautoload): Purecopy all arguments.
5079
5080 2009-11-05 Kenichi Handa <handa@m17n.org>
5081
5082 * fileio.c (Finsert_file_contents): Be sure set coding-system of
5083 the buffer in case of replace.
5084
5085 2009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
5086
5087 * puresize.h (BASE_PURESIZE): Increase to 1620000.
5088
5089 2009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
5090
5091 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
5092 when applicable (bug#4851).
5093
5094 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
5095 (P_): Support for prototypes is now required.
5096
5097 2009-10-31 Chong Yidong <cyd@stupidchicken.com>
5098
5099 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
5100 (Bug#4827).
5101
5102 2009-10-30 Eli Zaretskii <eliz@gnu.org>
5103
5104 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
5105
5106 2009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
5107
5108 * puresize.h (BASE_PURESIZE): Increase to 1470000.
5109
5110 * lread.c (Fload): Purecopy the file name when building
5111 Vpreloaded_file_list.
5112
5113 2009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
5114
5115 * w32fns.c (syms_of_w32fns): Change default value of
5116 w32-scroll-lock-modifier to nil. (Bug#2827)
5117
5118 2009-10-26 Juanma Barranquero <lekktu@gmail.com>
5119
5120 * minibuf.c (Fall_completions): Fix typos in docstring.
5121
5122 2009-10-26 Andreas Schwab <schwab@redhat.com>
5123
5124 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
5125
5126 2009-10-26 Juanma Barranquero <lekktu@gmail.com>
5127
5128 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
5129 For delta < 0, skip check that only makes sense when the mini-window
5130 is going to be enlarged. (Bug#4534)
5131
5132 2009-10-25 Chong Yidong <cyd@stupidchicken.com>
5133
5134 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
5135 string in menu maps (Bug#4471).
5136
5137 2009-10-24 Chong Yidong <cyd@stupidchicken.com>
5138
5139 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
5140 FRAME_NS_VIEW on terminal frames (Bug#4765).
5141
5142 2009-10-24 Andreas Schwab <schwab@linux-m68k.org>
5143
5144 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
5145 DBUS_TYPE_UINTnn separately to get proper sign extension.
5146
5147 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
5148 can properly handle unsigned types.
5149 (make_uid, make_gid): Remove.
5150
5151 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
5152 types again.
5153
5154 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
5155 (system_process_attributes): Likewise.
5156
5157 2009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
5158
5159 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
5160
5161 * eval.c (Fautoload): Purecopy the filename. Simplify.
5162
5163 * category.c (Fdefine_category): Purecopy docstring.
5164
5165 2009-10-23 Andreas Schwab <schwab@linux-m68k.org>
5166
5167 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
5168
5169 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
5170
5171 2009-10-23 Chong Yidong <cyd@stupidchicken.com>
5172
5173 * window.c (Fwindow_edges, Fwindow_pixel_edges)
5174 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
5175 (Bug#4775).
5176
5177 2009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
5178
5179 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
5180 (init_fileio_once):
5181 * lisp.h (init_fileio_once): Remove.
5182 * emacs.c (main): Don't call init_fileio_once.
5183
5184 2009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
5185
5186 * puresize.h (BASE_PURESIZE): Increase to 1430000.
5187
5188 2009-10-21 Andreas Schwab <schwab@linux-m68k.org>
5189
5190 * doprnt.c (doprnt): Fix overflow check.
5191
5192 2009-10-21 Jan Djärv <jan.h.d@swipnet.se>
5193
5194 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
5195
5196 * xterm.h (x_wait_for_event): Declare it.
5197
5198 * xterm.c (pending_event_wait): New variable.
5199 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
5200 see pending_event_wait.eventtype.
5201 (handle_one_xevent): Don't change gravity when parent changes.
5202 (x_new_font): Call change_frame_size with new rows/columns before we
5203 try to resize the frame.
5204 (x_wait_for_event): New function.
5205 (x_set_window_size_1): Don't change gravity unless change_gravity
5206 is set.
5207 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
5208 don't change frame size, instead wait for the ConfigureNotify.
5209 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
5210 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
5211 (x_initialize): Initialize pending_event_wait.
5212
5213 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
5214 size.
5215
5216 * widget.c (EmacsFrameSetValues): Add comment.
5217 (EmacsFrameSetCharSize): Just call x_set_window_size.
5218
5219 * gtkutil.c (xg_frame_set_char_size): Flush events and call
5220 x_wait_for_event.
5221 (flush_and_sync): Remove again.
5222 (xg_get_font_name): Suggest monospace if no previous font is known.
5223
5224 2009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
5225
5226 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
5227 8th bit, since that only made sense in the ASCII world (bug#4751).
5228
5229 2009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5230
5231 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
5232 processing pending events when event is filtered for input method.
5233 (Bug#3681)
5234
5235 2009-10-20 Juanma Barranquero <lekktu@gmail.com>
5236
5237 * fns.c: Add #endif accidentally removed in previous change.
5238
5239 2009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
5240
5241 * fns.c: Remove code for unsupported system: MAC_OS.
5242 * image.c: Likewise. Include setjmp.h.
5243
5244 2009-10-19 Jan Djärv <jan.h.d@swipnet.se>
5245
5246 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
5247 pixel -1 (bug #4742).
5248
5249 2009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
5250
5251 * process.c (create_pty): Remove conditionals for no longer
5252 supported systems: UNIPLUS and RTU.
5253
5254 * xterm.c:
5255 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
5256
5257 * alloc.c: Do not define struct catchtag.
5258 * eval.c: Move struct catchtag definition ...
5259 * lisp.h: ... here.
5260
5261 * image.c: Move png.h #include earlier to avoid warnings.
5262
5263 * xterm.c:
5264 * xsmfns.c:
5265 * xselect.c:
5266 * xrdb.c:
5267 * xmenu.c:
5268 * xftfont.c:
5269 * xfont.c:
5270 * xfns.c:
5271 * xfaces.c:
5272 * xdisp.c:
5273 * window.c:
5274 * widget.c:
5275 * w32xfns.c:
5276 * w32uniscribe.c:
5277 * w32term.c:
5278 * w32select.c:
5279 * w32reg.c:
5280 * w32proc.c:
5281 * w32menu.c:
5282 * w32inevt.c:
5283 * w32heap.c:
5284 * w32font.c:
5285 * w32fns.c:
5286 * w32console.c:
5287 * w32.c:
5288 * w16select.c:
5289 * vm-limit.c:
5290 * unexsol.c:
5291 * unexec.c:
5292 * unexcw.c:
5293 * unexaix.c:
5294 * undo.c:
5295 * tparam.c:
5296 * textprop.c:
5297 * terminfo.c:
5298 * terminal.c:
5299 * termcap.c:
5300 * term.c:
5301 * syntax.c:
5302 * sound.c:
5303 * sheap.c:
5304 * search.c:
5305 * scroll.c:
5306 * region-cache.c:
5307 * regex.c:
5308 * ralloc.c:
5309 * process.c:
5310 * print.c:
5311 * nsterm.m:
5312 * nsselect.m:
5313 * nsmenu.m:
5314 * nsimage.m:
5315 * nsfont.m:
5316 * nsfns.m:
5317 * msdos.c:
5318 * minibuf.c:
5319 * menu.c:
5320 * marker.c:
5321 * macros.c:
5322 * keymap.c:
5323 * keyboard.c:
5324 * intervals.c:
5325 * insdel.c:
5326 * indent.c:
5327 * gtkutil.c:
5328 * ftxfont.c:
5329 * ftfont.c:
5330 * fringe.c:
5331 * frame.c:
5332 * fontset.c:
5333 * font.c:
5334 * fns.c:
5335 * floatfns.c:
5336 * filelock.c:
5337 * fileio.c:
5338 * emacs.c:
5339 * editfns.c:
5340 * dosfns.c:
5341 * doprnt.c:
5342 * doc.c:
5343 * dispnew.c:
5344 * dired.c:
5345 * dbusbind.c:
5346 * data.c:
5347 * composite.c:
5348 * coding.c:
5349 * cmds.c:
5350 * cm.c:
5351 * chartab.c:
5352 * charset.c:
5353 * character.c:
5354 * ccl.c:
5355 * category.c:
5356 * casetab.c:
5357 * casefiddle.c:
5358 * callproc.c:
5359 * callint.c:
5360 * bytecode.c:
5361 * buffer.c:
5362 * atimer.c: Include setjmp.h. (Bug#4643)
5363
5364 2009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
5365
5366 Remove leftover table unibyte_to_multibyte_table.
5367 * character.c (unibyte_to_multibyte_table): Remove.
5368 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
5369 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
5370 * character.h (UNIBYTE_TO_CHAR): New macro.
5371 (MAKE_CHAR_MULTIBYTE): Use it.
5372 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
5373 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
5374 (message_dolog, set_message_1):
5375 * search.c (Freplace_match):
5376 * editfns.c (Fcompare_buffer_substrings):
5377 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
5378 (concat):
5379 * insdel.c (copy_text, count_size_as_multibyte):
5380 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
5381 * term.c (produce_glyphs):
5382 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
5383 * regex.c (RE_CHAR_TO_MULTIBYTE):
5384 * cmds.c (internal_self_insert):
5385 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
5386
5387 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
5388
5389 2009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
5390
5391 * puresize.h (BASE_PURESIZE): Increase to 1310000.
5392
5393 2009-10-16 Juanma Barranquero <lekktu@gmail.com>
5394
5395 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
5396
5397 2009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
5398
5399 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
5400 still needed under Tiger.
5401
5402 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
5403
5404 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
5405 __Apple__.
5406
5407 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
5408
5409 2009-10-15 Kenichi Handa <handa@m17n.org>
5410
5411 * print.c (print_object): Escape a symbol like "2E10" too.
5412
5413 2009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
5414
5415 Cleanups and changes for 64-bit compile under Snow Leopard.
5416 Based on suggestions by Erik Charlebois.
5417
5418 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
5419
5420 * nsfont.m (ns_char_width): Replace deprecated call.
5421 (ns_findfonts, nsfont_list_family): Use long format in printf, and
5422 cast argument.
5423 (nsfont_open): Use ns_char_width() everywhere.
5424 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
5425
5426 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
5427
5428 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
5429 where appropriate.
5430
5431 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
5432 where appropriate.
5433 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
5434 Use stringWithUTF8String.
5435 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
5436
5437 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
5438 Add formal protocol mention to inheritance.
5439 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
5440
5441 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
5442 Fix printf format.
5443 (ns_query_color): Use CGFloat where appropriate.
5444 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
5445 (EmacsScroller-mouseDown:): Use long format in printf, and cast
5446 argument.
5447
5448 * config.in (NS_HAVE_NSINTEGER): Drop.
5449
5450 * dbusbind.c (dbus-method-return-internal)
5451 (dbus-method-error-internal): Use long format in printf, and cast
5452 argument.
5453
5454 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
5455 in printf, and cast argument.
5456
5457 * process.c (list_processes_1): Use long format in printf, and
5458 cast argument.
5459
5460 2009-10-11 Glenn Morris <rgm@gnu.org>
5461
5462 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
5463
5464 2009-10-08 Jan Djärv <jan.h.d@swipnet.se>
5465
5466 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
5467 menu bar with a small width so it doesn't enlarge the frame.
5468
5469 2009-10-08 Juanma Barranquero <lekktu@gmail.com>
5470
5471 * fontset.c (Fset_fontset_font): Fix typos in error messages.
5472
5473 2009-10-06 Glenn Morris <rgm@gnu.org>
5474
5475 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
5476 SOME_MACHINE_LISP (this enters indirectly via DOC).
5477
5478 2009-10-05 Eli Zaretskii <eliz@gnu.org>
5479
5480 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
5481
5482 2009-10-04 Eli Zaretskii <eliz@gnu.org>
5483
5484 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
5485 Doc fix.
5486
5487 2009-10-03 Martin Rudalics <rudalics@gmx.at>
5488
5489 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
5490
5491 2009-10-02 Michael Albinus <michael.albinus@gmx.de>
5492
5493 * lisp.h (Qdelete_directory_internal): Remove, because it is not
5494 used anymore outside fileio.c.
5495
5496 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
5497
5498 2009-10-01 Juanma Barranquero <lekktu@gmail.com>
5499
5500 * lisp.h (Qdelete_directory_internal):
5501 Declare, instead of Qdelete_directory.
5502
5503 * w32fns.c (Fsystem_move_file_to_trash): Use it.
5504
5505 2009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
5506
5507 * eval.c (Fcalled_interactively_p): Add `kind' argument.
5508
5509 2009-10-01 Michael Albinus <michael.albinus@gmx.de>
5510
5511 * fileio.c (Fdelete_directory_internal): Rename from
5512 Fdelete_directory. It is not a command anymore. It has no file
5513 name handler.
5514
5515 2009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
5516
5517 * xdisp.c (get_next_display_element): Use an enum in last change.
5518
5519 2009-09-28 Kenichi Handa <handa@m17n.org>
5520
5521 * xdisp.c (get_next_display_element): Pay attention to
5522 unibyte_display_via_language_environment in handling
5523 Vnobreak_char_display.
5524
5525 2009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5526
5527 * nsterm.h (ns_app_name): New extern variable.
5528
5529 * nsterm.m (ns_app_name): New variable.
5530 (ns_term_init): Set and use it.
5531 (ns_term_shutdown): Use it.
5532
5533 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
5534 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
5535
5536 * nsfns.m (ns_set_name_iconic, ns_set_name)
5537 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
5538 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
5539
5540 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
5541 Remove double-casting in client_data comparison.
5542
5543 2009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5544
5545 * keyboard.c (make_lispy_event): Remember last wheel direction.
5546 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
5547
5548 2009-09-26 Glenn Morris <rgm@gnu.org>
5549
5550 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
5551 internal.elc. Add term/pc-win.elc.
5552 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
5553 term/x-win.elc.
5554 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
5555 term/w32-win.elc.
5556 (NS_SUPPORT): New.
5557 (lisp): Add NS_SUPPORT.
5558 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
5559
5560 2009-09-25 David Reitter <david.reitter@gmail.com>
5561
5562 * nsmenu.m (EmacsMenu-clear): Recognize application menu
5563 on Mac OS X 10.6+ (bug#4513).
5564
5565 2009-09-24 Juanma Barranquero <lekktu@gmail.com>
5566
5567 * frame.c (xrdb_get_resource): Return nil for empty string resources;
5568 some parts of Emacs code (like font selection) don't grok them.
5569 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
5570
5571 2009-09-24 Andreas Schwab <schwab@redhat.com>
5572
5573 * coding.c (decode_coding_iso_2022): Fix operator precedence.
5574
5575 2009-09-24 Juanma Barranquero <lekktu@gmail.com>
5576
5577 * dired.c (Fdirectory_files): Fix typo in docstring.
5578
5579 2009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
5580
5581 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
5582 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
5583 (EmacsScroller-setPosition:portion:whole:): Remove -display call
5584 under GNUstep.
5585 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
5586
5587 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
5588 glyph advancement.
5589
5590 2009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5591
5592 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
5593 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
5594
5595 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
5596 deleted (bug #4492).
5597
5598 * nsfont.m (Vns_reg_to_script): New lisp variable.
5599 (syms_of_nsfont): Declare it.
5600 (ns_registry_to_script): New function.
5601 (ns_get_req_script): Call it.
5602 (ns_findfonts): Don't give up on non-unicode registry.
5603
5604 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
5605
5606 2009-09-20 Tom Tromey <tromey@redhat.com>
5607
5608 * eval.c (find_handler_clause): Make stack-trace-on-error work in
5609 batch mode (bug#4228).
5610
5611 2009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
5612
5613 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
5614 carefully. (Bug #4339)
5615
5616 2009-09-18 Chong Yidong <cyd@stupidchicken.com>
5617
5618 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
5619
5620 2009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
5621
5622 * emacs.c (inhibit_x_resources): Update doc string for NS.
5623 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
5624 legacy code for -NXHost. Fix error printf in daemon case.
5625
5626 * nsterm.h (ns_no_defaults): Remove.
5627
5628 * nsterm.m (ns_no_defaults): Remove.
5629 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
5630 (ns_use_qd_smoothing): Remove legacy variable.
5631 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
5632 don't update the NSWindow itself.
5633 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
5634 state detection and store user rect ourselves. (Bug #3581)
5635
5636 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
5637 ns_use_qd_smoothing.
5638
5639 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
5640 platform versions. Drop support for emacs-20-style face specs.
5641 (x-close-connection): Drop PSFlush() under OS X.
5642 (x-focus-frame): Activate the app first. (Bug #4180)
5643
5644 2009-09-17 Juanma Barranquero <lekktu@gmail.com>
5645
5646 * emacs.c (inhibit_x_resources): New variable.
5647 (main) [HAVE_NS]: Don't process --quick command line option.
5648 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
5649
5650 * lisp.h (inhibit_x_resources): Declare it extern.
5651
5652 * w32reg.c (x_get_string_resource):
5653 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
5654
5655 2009-09-17 Eli Zaretskii <eliz@gnu.org>
5656
5657 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
5658 Add lisp/term/internal.elc.
5659
5660 2009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
5661
5662 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
5663 (bug#4461).
5664
5665 2009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
5666
5667 * puresize.h (BASE_PURESIZE): Increase to 1290000.
5668
5669 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
5670 (OBJECTS_MACHINE): Remove, unused.
5671
5672 2009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
5673
5674 * frame.c (x_get_resource_string): Remove unused.
5675
5676 2009-09-15 Jan Djärv <jan.h.d@swipnet.se>
5677
5678 * xterm.c (x_new_font): Call change_frame_size before calling
5679 x_set_window_size, in case frame size won't change.
5680
5681 * frame.c (x_set_font): Remove dead code.
5682
5683 2009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
5684
5685 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
5686
5687 2009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5688
5689 * lread.c (Fload): Don't output a message after loading an obsolete
5690 package any more (done in Lisp now).
5691
5692 2009-09-12 Chong Yidong <cyd@stupidchicken.com>
5693
5694 * fns.c (syms_of_fns): Doc fix (Bug#4227).
5695
5696 2009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5697
5698 * keymap.c (Fwhere_is_internal): Use nconc2.
5699
5700 2009-09-11 Alan Mackenzie <acm@muc.de>
5701
5702 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
5703 batch mode.
5704
5705 2009-09-11 Andreas Schwab <schwab@linux-m68k.org>
5706
5707 * xdisp.c (display_mode_element): Detect cycles.
5708
5709 2009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
5710
5711 * keymap.c (where_is_internal): Don't erroneously return nil right after
5712 filling the cache.
5713 (where_is_internal_1): Fix up typo.
5714
5715 2009-09-11 Glenn Morris <rgm@gnu.org>
5716
5717 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
5718 share a common doc-string.
5719
5720 2009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
5721
5722 * keymap.c (get_keymap): Return the actual keymap symbol rather than
5723 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
5724
5725 * keymap.c (QCadvertised_binding): New constant.
5726 (syms_of_keymap): Initialize it.
5727 (Fwhere_is_internal): Try and use bindings from :advertised-binding
5728 if applicable.
5729
5730 2009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
5731
5732 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
5733 (parse_menu_item): Streamline since bindings are recomputed all the
5734 time anyway. Don't bother checking Vdefine_key_rebound_commands any
5735 more and don't support lmenu's menu-alias any more either.
5736
5737 * keymap.c (where_is_internal_data): Make noindirect a boolean.
5738 (where_is_internal): Strip it down to only traverse the keymaps.
5739 Move the cache handling from Fwhere_is_internal to here.
5740 (Fwhere_is_internal): Move the handling of remapping and the choice of
5741 the best binding from where_is_internal to here.
5742 Unify the cached/noncached paths, so remapping is also handled
5743 correctly when the cache is used, and so the cache can be used to
5744 speed up remap-handling when applicable.
5745 Give preference to non-remapped bindings.
5746 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
5747 non-remapped bindings.
5748 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
5749 command remapping.
5750
5751 * xdisp.c (display_mode_element): Move list length limit from 50 to
5752 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
5753
5754 2009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
5755
5756 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
5757
5758 2009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
5759
5760 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
5761 (Bug#4334)
5762
5763 * keymap.c (where_is_internal): Filter out shadowed remappings.
5764 Assume that where_is_internal returns unshadowed bindings to simplify
5765 the code and get rid of the gotos. Use ASIZE.
5766
5767 2009-09-04 Jan Djärv <jan.h.d@swipnet.se>
5768
5769 * xterm.c (x_focus_changed): If we get a focusout and pointer
5770 is invisible, make it visible.
5771
5772 * xterm.h: Remove condition for declaration of
5773 x_*_window_to_frame.
5774
5775 2009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
5776
5777 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
5778 initial terminal as well.
5779
5780 2009-09-02 Jan Djärv <jan.h.d@swipnet.se>
5781
5782 * xterm.h: Rename x_non_menubar_window_to_frame to
5783 x_menubar_window_to_frame.
5784
5785 * xterm.c: Remove declarations also in xterm.h.
5786 (XTmouse_position): Do not return valid positions
5787 for clicks in the menubar and the toolbar for Gtk+.
5788
5789 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
5790 if the widget for the event has the same top level as a frame,
5791 return the frame.
5792 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
5793 internal windows, bug #4122.
5794 (x_non_menubar_window_to_frame): Remove.
5795
5796 2009-09-02 Glenn Morris <rgm@gnu.org>
5797
5798 * buffer.c (default-major-mode): Move most of the doc from here...
5799 (major-mode): ... to here.
5800
5801 2009-08-30 Nick Roberts <nickrob@snap.net.nz>
5802
5803 * process.c (wait_reading_process_output): Keep the descriptor
5804 when pty is used by a non-child process, e.g., in I/O buffer of
5805 GDB this allows inferior to be restarted.
5806
5807 2009-08-29 Eli Zaretskii <eliz@gnu.org>
5808
5809 * xdisp.c (redisplay_internal): Remove redundant test and collapse
5810 both branches into one.
5811
5812 2009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
5813
5814 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
5815 (main): Use enable-multibyte-characters rather than
5816 default-enable-multibyte-characters. Output a warning message when
5817 running a unibyte session.
5818
5819 2009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5820
5821 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
5822 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
5823 (copy_data_segment): Also copy __program_vars section.
5824 (copy_dyld_info) [LC_DYLD_INFO]: New function.
5825 (dump_it) [LC_DYLD_INFO]: Use it.
5826
5827 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
5828
5829 2009-08-28 Eli Zaretskii <eliz@gnu.org>
5830
5831 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
5832 $(SRC)/buildobj.h.
5833 (buildobj.h): Renamed from $(SRC)/buildobj.h.
5834 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
5835 $(SRC)/buildobj.h.
5836 (clean): Add buildobj.h.
5837
5838 2009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
5839
5840 * print.c (print_object): Set escapeflag to 1 when printing
5841 hashtable keys and values.
5842
5843 2009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
5844
5845 * lread.c (read_integer): Use doubles (and potentially return a float
5846 number) as we do in string-to-number.
5847 (read1): Use strtol to read integers, signal errors on strtol's
5848 overflow and use floats if strtol's output is too large for
5849 Elisp integers.
5850
5851 2009-08-27 Eli Zaretskii <eliz@gnu.org>
5852
5853 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
5854 (make-buildobj-SH): Fix last change.
5855 (SRC): Move to before where it's first used.
5856
5857 2009-08-27 Kenichi Handa <handa@m17n.org>
5858
5859 * process.c (send_process): Use encode_coding_object instead of
5860 encode_coding_string to perform eol-conversion even if the string
5861 is unibyte.
5862
5863 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
5864 character.
5865
5866 * cmds.c (Fself_insert_command): Avoid unnecessay
5867 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
5868
5869 2009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
5870
5871 * callproc.c (Fcall_process): Remove always true #if.
5872
5873 * lisp.h: Replace #if 0 code for checking with text pointing to
5874 the --enable-checking configure flag.
5875
5876 * emacs.c (main): Mention the --enable-profiling configure flag
5877 instead of using CFLAGS.
5878
5879 2009-08-26 Ken Raeburn <raeburn@raeburn.org>
5880
5881 * Makefile.in (buildobj.h): New target.
5882 (doc.o): Depend on it.
5883 (temacs${EXEEXT}): Don't generate buildobj.lst.
5884 (mostlyclean): Delete buildobj.h, not buildobj.lst.
5885 * makefile.w32-in ($(SRC)/buildobj.h): New target.
5886 ($(BLD)/doc.$(O)): Depend on it.
5887 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
5888 provided by Eli Zaretskii.)
5889 ($(TEMACS)): Don't generate buildobj.lst.
5890 * doc.c: Include buildobj.h.
5891 (buildobj): New static variable.
5892 (Fsnarf_documentation): Use it, instead of opening and reading
5893 buildobj.lst.
5894
5895 2009-08-25 Michael Albinus <michael.albinus@gmx.de>
5896
5897 * dbusbind.c (Fdbus_call_method)
5898 (Fdbus_call_method_asynchronously): Use English numeric format for
5899 timeout values in doc string.
5900
5901 2009-08-25 Kenichi Handa <handa@m17n.org>
5902
5903 * alloc.c (mark_char_table): New function.
5904 (mark_object): Use mark_char_table for a char-table.
5905
5906 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
5907 (CHAR_TABLE_REF): Use it.
5908
5909 2009-08-23 Ken Raeburn <raeburn@raeburn.org>
5910
5911 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
5912 before invoking the newly build emacs to check for load-path
5913 shadowing.
5914
5915 2009-08-22 Glenn Morris <rgm@gnu.org>
5916
5917 * Makefile.in (bootstrap_exe): New variable.
5918 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
5919 Use ${bootstrap_exe}.
5920
5921 2009-08-22 Eli Zaretskii <eliz@gnu.org>
5922
5923 * coding.h (encode_coding_string): Don't encode unibyte strings.
5924 (Bug#4047)
5925
5926 2009-08-22 Michael Albinus <michael.albinus@gmx.de>
5927
5928 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
5929
5930 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
5931 intended as hotfix only.
5932 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
5933
5934 2009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
5935
5936 * nsterm.m (ns_get_color): Update documentation properly for last
5937 change, and clean up loose ends in the code left by it. Fix
5938 longstanding bug with 16-bit hex parsing, and add support for
5939 yet another X11 format (rgb:r/g/b) for compatibility.
5940 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
5941 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
5942
5943 2009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
5944
5945 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
5946
5947 2009-08-20 Michael Albinus <michael.albinus@gmx.de>
5948
5949 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
5950 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
5951 (xd_initialize, xd_pending_messages): Check, whether
5952 $DBUS_SESSION_BUS_ADDRESS is set.
5953
5954 2009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5955
5956 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
5957
5958 * nsterm.m (ns_get_color): Remove incompatible color formats again.
5959
5960 2009-08-20 Glenn Morris <rgm@gnu.org>
5961
5962 * emacs.c (system-type): Doc fix.
5963
5964 2009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
5965
5966 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
5967 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
5968
5969 2009-08-18 Michael Albinus <michael.albinus@gmx.de>
5970
5971 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
5972 New functions.
5973 (xd_initialize): Revert change from 2009-08-16.
5974
5975 2009-08-18 Kenichi Handa <handa@m17n.org>
5976
5977 * fontset.c (Ffontset_font): If a nil element is found in a
5978 font-group vector, return nil.
5979
5980 2009-08-17 Chong Yidong <cyd@stupidchicken.com>
5981
5982 * process.c (status_notify): Don't perform redisplay.
5983 (Fdelete_process, list_processes_1, process_send_signal):
5984 Expliticly perform redisplay.
5985 (wait_reading_process_output): Always check process status, but
5986 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
5987
5988 2009-08-17 Ken Raeburn <raeburn@raeburn.org>
5989
5990 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
5991 (XFLOAT_INIT): New macro for storing a float value.
5992 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
5993 * fns.c (sxhash): Copy out the value of a float in order to
5994 examine its bytes.
5995 * dbusbind.c (xd_append_arg): Likewise.
5996
5997 * emacs.c (main): Don't call syms_of_data twice.
5998
5999 2009-08-16 Michael Albinus <michael.albinus@gmx.de>
6000
6001 * dbusbind.c (xd_initialize): Add connection file descriptor to
6002 input_wait_mask, in order to let select() detect, whether a new
6003 message has been arrived.
6004 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
6005
6006 2009-08-15 Michael Albinus <michael.albinus@gmx.de>
6007
6008 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
6009 New functions.
6010
6011 * lisp.h (xd_pending_messages): Declare.
6012
6013 * keyboard.c (readable_events): Call xd_pending_messages.
6014
6015 2009-08-15 Chong Yidong <cyd@stupidchicken.com>
6016
6017 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
6018
6019 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
6020
6021 * buffer.c (set_buffer_internal_1)
6022 (swap_out_buffer_local_variables): Check for unbound local
6023 variables (Bug#4138).
6024
6025 2009-08-14 Eli Zaretskii <eliz@gnu.org>
6026
6027 * process.c (create_pty): Fix last change.
6028
6029 2009-08-13 Chong Yidong <cyd@stupidchicken.com>
6030
6031 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
6032 (xbm_load_image): Caller changed.
6033 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
6034
6035 2009-08-13 Nick Roberts <nickrob@snap.net.nz>
6036
6037 * process.c (create_pty): New function.
6038 (Fstart_process): Use it to allow Emacs to just associate a pty
6039 with the buffer. See associated change in gdb-mi.el.
6040 (list_processes_1): Deal with no program name.
6041 (start_process_unwind): Use pid == -2 to mean no process.
6042
6043 2009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
6044
6045 * cmds.c (nonundocount): New global variable.
6046 (keys_of_cmds): Initialize it.
6047 (Fself_insert_command): Use it to combine upto 20 sequential chars
6048 into a single undo entry, just like the Qself_insert_command code in
6049 keyboard.c does.
6050 Call frame_make_pointer_invisible, also like the Qself_insert_command
6051 code in keyboard.c does.
6052 * keyboard.c (command_loop_1): Use the new global nonundocount rather
6053 than its own local replacement for it.
6054
6055 2009-08-10 Ken Raeburn <raeburn@raeburn.org>
6056
6057 * fns.c (concat): Don't re-set string length to its current value.
6058
6059 * coding.h (decode_coding_string, encode_coding_string):
6060 Use SBYTES macro.
6061
6062 * doprnt.c (doprnt_lisp): Delete unused function.
6063 (doprnt): Merge with doprnt1, discarding lispstrings code.
6064 * lisp.h (doprnt_lisp): Don't declare.
6065
6066 2009-08-07 Juri Linkov <juri@jurta.org>
6067
6068 * puresize.h (BASE_PURESIZE): Increase to 1270000.
6069
6070 2009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
6071
6072 * print.c (syms_of_print): Undo previous change.
6073
6074 2009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
6075
6076 * lread.c (read1, syms_of_lread): Read hashtables back from the
6077 readable format.
6078
6079 * print.c (print_preprocess, print_object): Print hashtables fully
6080 and readably.
6081 (syms_of_print): Provide 'hashtable-print-readable.
6082
6083 2009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
6084
6085 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
6086 no family set.
6087 (nsfont_open): Handle case when entity has no family.
6088
6089 2009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
6090
6091 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
6092 element, not a list, for match case.
6093
6094 2009-07-28 Kenichi Handa <handa@m17n.org>
6095
6096 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
6097 rigidly.
6098
6099 * xfont.c (xfont_list_pattern): Don't ignore the return value of
6100 font_parse_xlfd. Check font properties more rigidly.
6101
6102 2009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
6103
6104 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
6105 bsd-common.h.
6106
6107 2009-07-27 Kenichi Handa <handa@m17n.org>
6108
6109 * xfaces.c (face_with_height): Call font_clear_prop.
6110
6111 2009-07-26 Chong Yidong <cyd@stupidchicken.com>
6112
6113 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
6114
6115 * xterm.c (x_term_init): Use Qx.
6116
6117 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
6118
6119 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
6120 (ns_get_color): Revert 2009-07-16 change.
6121
6122 2009-07-25 Eli Zaretskii <eliz@gnu.org>
6123
6124 * lread.c (syms_of_lread) <force_load_messages>: New variable.
6125 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
6126
6127 2009-07-25 Ken Raeburn <raeburn@raeburn.org>
6128
6129 * coding.h (decode_coding_string, encode_coding_string):
6130 Use SCHARS macro.
6131
6132 * lread.c: Rewrite 2009-07-21 changes.
6133 (load_depth): Delete.
6134 (Qload_in_progress): New variable.
6135 (load_unwind): Don't reference load_depth or load_in_progress.
6136 (Fload): Likewise; specbind Qload_in_progress instead.
6137 (init_lread): Don't initialize load_depth.
6138 (syms_of_lread): Initialize and protect Qload_in_progress.
6139
6140 2009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
6141
6142 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
6143
6144 2009-07-23 Yavor Doganov <yavor@gnu.org>
6145
6146 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
6147
6148 2009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
6149
6150 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
6151 Bugs 3792, 3720, 2402.
6152 (ns_lookup_indexed_color): Check for bad index.
6153 (ns_index_color): Init unused slot to 0.
6154 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
6155 Bug 3714, possibly 3082.
6156
6157 2009-07-22 Jason Rumney <jasonr@gnu.org>
6158
6159 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
6160 Position IME window at cursor (Bug#2570).
6161 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
6162 (globals_of_w32fns): Dynamically load functions required above.
6163
6164 * w32term.c (w32_draw_window_cursor): Send message to reposition
6165 any IME window.
6166
6167 2009-07-21 Chong Yidong <cyd@stupidchicken.com>
6168
6169 * fileio.c: Revert 2009-07-16 changes.
6170 (Vauto_save_include_big_deletions): New variable.
6171 (Fdo_auto_save): Disable auto-save only if
6172 auto-save-include-big-deletions is nil.
6173
6174 2009-07-21 Chong Yidong <cyd@stupidchicken.com>
6175
6176 * xdisp.c (move_it_to): For continued lines ending in a tab, take
6177 the overflowed pixels into account (Bug#3879).
6178
6179 2009-07-21 Ken Raeburn <raeburn@raeburn.org>
6180
6181 * lread.c (load_depth): New variable.
6182 (Fload, load_unwind, init_lread): Set it to the load recursion
6183 depth; set load_in_progress as a simple boolean based on the
6184 current load_depth. (Bug#3892)
6185
6186 2009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6187
6188 * nsfont.m (ns_has_attribute): Remove.
6189 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
6190
6191 2009-07-18 Juri Linkov <juri@jurta.org>
6192
6193 * process.c (Fset_process_query_on_exit_flag): Mention killing
6194 a buffer in docstring.
6195
6196 2009-07-17 Kenichi Handa <handa@m17n.org>
6197
6198 * casetab.c (shuffle): Fix the logic of setting up the cycle.
6199
6200 2009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6201
6202 * nsfns.m (Fns_set_alpha): Remove function.
6203 (syms_of_nsfns): Don't defsubr it.
6204
6205 * nsterm.m (ns_get_color): Remove incompatible color formats.
6206 (ns_color_to_lisp): Generate #rrggbb color format string.
6207
6208 2009-07-16 Richard Stallman <rms@gnu.org>
6209
6210 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
6211 (Fset_buffer_auto_saved): Handle save_length = -2.
6212
6213 2009-07-16 Chong Yidong <cyd@stupidchicken.com>
6214
6215 * xterm.c (Qx_gtk_map_stock): New var.
6216
6217 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
6218 of calling intern each time.
6219
6220 2009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6221
6222 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
6223 does tiling.
6224
6225 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
6226
6227 2009-07-14 Kenichi Handa <handa@m17n.org>
6228
6229 * font.c (font_vconcat_entity_vectors): New function.
6230 (struct font_sort_data): New member font_driver_preference.
6231 (font_compare): Check font_driver_preference.
6232 (font_sort_entities): The format of the first argument changed.
6233 (font_delete_unmatched): Likewise.
6234 (font_list_entities): The return type changed.
6235 (font_select_entity): The format of the second argument changed.
6236 (font_find_for_lface): Adjuste for the above changes.
6237 Don't suppress the checking of C even if the repertory supports it.
6238 (Flist_fonts): Adjust for the above changes.
6239
6240 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
6241 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
6242 Reject a font who has adstyle property that is different from a
6243 langname derived from registry property.
6244 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
6245
6246 2009-07-13 Eli Zaretskii <eliz@gnu.org>
6247
6248 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
6249 local copy of dirfilename.
6250
6251 2009-07-13 Kenichi Handa <handa@m17n.org>
6252
6253 * chartab.c (sub_char_table_ref_and_range): Fix the range check
6254 against max_char.
6255
6256 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
6257 calling XSYMBOL (sym).
6258
6259 2009-07-11 Eli Zaretskii <eliz@gnu.org>
6260
6261 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
6262 New function.
6263 (directory_files_internal) [WINDOWSNT]:
6264 Bind w32-get-true-file-attributes to either t or nil, depending whether
6265 the filesystem of the directory is fast or slow.
6266
6267 * w32.c (logon_network_drive): Don't assume PATH is an absolute
6268 file name.
6269 (is_slow_fs): New function.
6270 (stat): Use it to determine whether to issue more system calls to
6271 get accurate file attributes, when w32-get-true-file-attributes is
6272 `local'.
6273
6274 2009-07-10 Jan Djärv <jan.h.d@swipnet.se>
6275
6276 * xfns.c (Fx_select_font): Remember last font selected in
6277 x_last_font_name and use that the next time. Also try the frame
6278 parameter font-parameter as default to the font dialog.
6279
6280 2009-07-10 Kenichi Handa <handa@m17n.org>
6281
6282 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
6283
6284 2009-07-09 Eli Zaretskii <eliz@gnu.org>
6285
6286 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
6287
6288 * w32.c (stat): Treat UNC file names as residing on remote
6289 drives. (Bug#3542)
6290
6291 2009-07-09 Kenichi Handa <handa@m17n.org>
6292
6293 * fontset.c (fontset_find_font): Fix previous change.
6294
6295 2009-07-08 Michael Albinus <michael.albinus@gmx.de>
6296
6297 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
6298 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
6299 error flag.
6300
6301 2009-07-08 Kenichi Handa <handa@m17n.org>
6302
6303 * fontset.c (fontset_find_font): Fix the logic of handling
6304 charset_matched.
6305 (font_for_char): Delete unused var.
6306 (generate_ascii_font_name): Delete it.
6307
6308 * coding.h (JIS_TO_SJIS2): Fix the code range check.
6309
6310 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
6311 (encode_coding_sjis): Fix the code range check.
6312
6313 2009-07-07 Chong Yidong <cyd@stupidchicken.com>
6314
6315 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
6316 (Fexpand_file_name): Copy string data properly (Bug#3772).
6317
6318 2009-07-07 Jan Djärv <jan.h.d@swipnet.se>
6319
6320 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
6321 first MapNotify.
6322
6323 2009-07-07 Kenichi Handa <handa@m17n.org>
6324
6325 * character.h (unibyte_has_multibyte_table): Delete extern.
6326 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
6327
6328 * charset.c (Fset_charset_priority): Update charset_unibyte.
6329 (syms_of_charset): Initialize charset_unibyte.
6330
6331 * character.c (unibyte_has_multibyte_table): Delete it.
6332 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
6333 charset_unibyte.
6334 (multibyte_char_to_unibyte_safe): Likewise.
6335 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
6336
6337 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6338 (x_produce_glyphs): Likewise.
6339
6340 * .gdbinit (xcharset): Fix the treating $arg0.
6341
6342 2009-07-04 Eli Zaretskii <eliz@gnu.org>
6343
6344 Emulation of `getloadavg' on MS-Windows.
6345 * w32.c: Include float.h.
6346 (g_b_init_get_native_system_info, g_b_init_get_system_times)
6347 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
6348 (get_native_system_info, get_system_times): New functions.
6349 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
6350 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
6351 (globals_of_w32): Initialize g_b_init_get_native_system_info,
6352 g_b_init_get_system_times, and num_of_processors.
6353
6354 2009-07-03 Jason Rumney <jasonr@gnu.org>
6355
6356 * w32term.c (w32_initialize): Use standard types.
6357
6358 2009-07-03 Eli Zaretskii <eliz@gnu.org>
6359
6360 * dired.c (Ffile_attributes): Decode user and group names by the
6361 locale's encoding. (Bug#3443)
6362
6363 2009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
6364
6365 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
6366 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
6367
6368 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
6369
6370 * term.c (init_tty): Remove spurious #ifdef.
6371
6372 * m/mips.h: Mention this file is also used for netbsd.
6373 * m/pmax.h: Remove file.
6374
6375 2009-07-03 Jan Djärv <jan.h.d@swipnet.se>
6376
6377 * xterm.h (struct x_display_info): Add invisible_cursor.
6378 (struct x_output): Add current_cursor.
6379
6380 * xterm.c (XTtoggle_invisible_pointer): New function.
6381 (x_define_frame_cursor): Don't define cursor if invisible or the
6382 same as before. Set current_cursor.
6383 (x_create_terminal): Set toggle_invisible_pointer_hook.
6384
6385 * xfns.c (make_invisible_cursor): New function.
6386 (x_set_mouse_color): Call make_invisible_cursor.
6387 Set current_cursor.
6388 (x_window): Set current_cursor.
6389
6390 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
6391
6392 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
6393 inserting a character.
6394 (read_avail_input): Call frame_make_pointer_visible.
6395
6396 * frame.c (Vmake_pointer_invisible): New variable.
6397 (frame_make_pointer_invisible, frame_make_pointer_visible):
6398 New functions.
6399 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
6400
6401 * frame.h: Declare frame_make_pointer_invisible and
6402 frame_make_pointer_visible.
6403 (struct frame): Add pointer_invisible.
6404
6405 2009-07-02 Jan Djärv <jan.h.d@swipnet.se>
6406
6407 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
6408 frame isn't visible.
6409 (xg_frame_resized): If width/height is -1, get size of window
6410 from X server.
6411
6412 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
6413 for MapNotify.
6414
6415 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
6416 here or call change_frame_size. Just call flush_and_sync.
6417 (flush_and_sync): Reintroduce.
6418
6419 2009-07-01 Jan Djärv <jan.h.d@swipnet.se>
6420
6421 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
6422
6423 * xterm.c (x_handle_net_wm_state): Also look for sticky.
6424 (x_term_init): Initialize Xatom_net_wm_state_sticky.
6425
6426 * frame.h: Declare Qsticky.
6427
6428 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
6429
6430 * nsfns.m (ns_frame_parm_handlers): Ditto.
6431
6432 * frame.c: Declare Qsticky.
6433 (frame_parms): Add sticky.
6434
6435 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
6436
6437 * xterm.h: Declare x_set_sticky.
6438
6439 * xterm.c (x_set_sticky): New function.
6440
6441 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
6442 (xg_tool_bar_menu_proxy): Attach enter/leave events to
6443 xg_tool_bar_proxy_help_callback.
6444
6445 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
6446
6447 * frame.c: Qmaximized is new.
6448 (x_set_frame_parameters): Do not handle fullscreen specially.
6449 Only set width and height if explicitly set.
6450 (x_set_fullscreen): Handle Qmaximized.
6451 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
6452 (syms_of_frame): Initialize Qmaximized.
6453
6454 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
6455 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
6456
6457 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
6458 for Expose event. Add call to x_check_fullscreen for MapNotify event.
6459 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
6460 set gravity to NorthWestGravity when USE_GTK.
6461 (set_wm_state): New function.
6462 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
6463 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
6464 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
6465 or the case when no window manager is running. That means remove calls
6466 to x_real_positions and x_fullscreen_adjust.
6467
6468 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
6469 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
6470 flush_and_sync.
6471 (xg_height_changed): New function.
6472 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
6473 and gtk_window_set_policy. Set frame gravity after parsing the
6474 geometry string.
6475 (xg_update_frame_menubar, free_frame_menubar)
6476 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
6477 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
6478 Remove calls to xg_frame_set_char_size.
6479
6480 2009-07-01 Kenichi Handa <handa@m17n.org>
6481
6482 * keyboard.c (decode_keyboard_code): New function.
6483 (tty_read_avail_input): Decode the input bytes if necessary.
6484
6485 * coding.c (setup_coding_system):
6486 Initialize coding->carryover_bytes to 0.
6487 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
6488 use Qno_conversion.
6489
6490 2009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6491
6492 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
6493
6494 2009-06-30 Chong Yidong <cyd@stupidchicken.com>
6495
6496 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
6497
6498 2009-06-30 Jason Rumney <jasonr@gnu.org>
6499
6500 * w32term.c (w32_initialize): Use GetModuleHandle for library that
6501 is already loaded.
6502 Set user model ID if supported (bug#1849).
6503
6504 2009-06-29 Jim Meyering <meyering@redhat.com>
6505
6506 Remove useless if-before-xfree test.
6507 * nsfont.m (nsfont_close): Remove useless test.
6508 * term.c (delete_tty): Likewise.
6509 * w32.c (system_process_attributes): Likewise.
6510 * w32font.c (w32font_close): Likewise.
6511 * xfaces.c (x_free_gc): Likewise.
6512 * xselect.c (buffer): Likewise.
6513
6514 2009-06-28 Andreas Schwab <schwab@linux-m68k.org>
6515
6516 * process.c (send_process): Keep decoded string in a local
6517 variable and protect it from GC. (Bug#3521)
6518
6519 2009-06-28 Eli Zaretskii <eliz@gnu.org>
6520
6521 * term.c (create_tty_output) [MSDOS]: #ifdef away.
6522 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
6523
6524 2009-06-28 Chong Yidong <cyd@stupidchicken.com>
6525
6526 * xdisp.c (start_display, handle_face_prop)
6527 (move_it_vertically_backward, cursor_row_fully_visible_p)
6528 (redisplay_window, try_window_id, produce_image_glyph):
6529 Delete some #ifdef-ed out code chunks that are now obsolete.
6530
6531 * xterm.c (x_update_window_begin, x_new_focus_frame)
6532 (x_scroll_bar_handle_click, handle_one_xevent)
6533 (handle_one_xevent, XTread_socket, x_focus_on_frame)
6534 (x_make_frame_visible, x_make_frame_invisible)
6535 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
6536 code chunks that are now obsolete.
6537
6538 2009-06-28 Michael Albinus <michael.albinus@gmx.de>
6539
6540 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
6541 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
6542 for hours, when optimzation is enabled.
6543 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
6544 (xd_read_message): Make them static.
6545
6546 2009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
6547
6548 * term.c (turn_on_face): Allow simultaneously bold and dim
6549 terminal faces (Bug#3530).
6550
6551 2009-06-27 Chong Yidong <cyd@stupidchicken.com>
6552
6553 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
6554
6555 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
6556 truncation glyphs (Bug#3686).
6557
6558 2009-06-27 Glenn Morris <rgm@gnu.org>
6559
6560 * m/pmax.h: Restore file, with only netbsd portions.
6561
6562 2009-06-26 David Reitter <david.reitter@gmail.com>
6563
6564 * nsterm.m (keydown): Avoid infinite loop.
6565
6566 2009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
6567
6568 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
6569 the arg FORCE_SYMBOL.
6570
6571 2009-06-25 Kenichi Handa <handa@m17n.org>
6572
6573 * fontset.c (fontset_find_font): When a usable rfont_def is found
6574 in a fallback font-group, make it the first element of the group.
6575
6576 2009-06-24 Chong Yidong <cyd@stupidchicken.com>
6577
6578 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
6579
6580 2009-06-24 Kenichi Handa <handa@m17n.org>
6581
6582 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
6583 set for C.
6584 (fontset_font): Record the availability of a font for C both in
6585 the realized fontsets of the current one and the default one.
6586
6587 2009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
6588
6589 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
6590 conditional, it is always defined on AIX.
6591
6592 2009-06-23 Miles Bader <miles@gnu.org>
6593
6594 * window.c (Vrecenter_redisplay): New variable.
6595 (syms_of_window): Initialize it.
6596 (Qtty): New extern declaration.
6597 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
6598
6599 2009-06-23 Jim Meyering <meyering@redhat.com>
6600
6601 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
6602 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
6603 pointer dereferences are guaranteed to be valid.
6604
6605 2009-06-23 Kenichi Handa <handa@m17n.org>
6606
6607 * emacs.c (main): Call init_font ().
6608
6609 * font.h (Vfont_log): Extern it.
6610 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
6611
6612 * font.c (font_sort_entities, font_list_entities)
6613 (font_matching_entity, font_open_entity)
6614 (font_close_object): Change font_add_log to FONT_ADD_LOG.
6615 (Vfont_log): Delete static.
6616 (font_log_env_checked): Delete this variable.
6617 (font_add_log): Don't check font_log_env_checked.
6618 (font_deferred_log): Check Vfont_log.
6619 (init_font): New function.
6620
6621 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
6622
6623 * w32font.c: Change font_add_log to FONT_ADD_LOG.
6624
6625 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
6626
6627 * xfont.c: Change font_add_log to FONT_ADD_LOG.
6628
6629 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
6630 (face_for_char): Don't call font_deferred_log here.
6631 (font_for_char): Likewise.
6632
6633 2009-06-22 Chong Yidong <cyd@stupidchicken.com>
6634
6635 * w32term.c (x_draw_glyph_string): Use the glyph string's width
6636 rather than its background_width for drawing the overline and
6637 underline (Bug#489).
6638
6639 * xterm.c (x_draw_glyph_string): Use the glyph string's width
6640 rather than its background_width for drawing the overline and
6641 underline (Bug#489).
6642 (xg_default_icon_file): New variable.
6643 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
6644 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
6645
6646 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
6647 (load_overlay_strings): Remove externs.
6648 (fast_find_position): Function deleted.
6649 (mouse_face_from_buffer_pos): New function, based on
6650 fast_find_position. Correctly handle before-strings,
6651 display-strings, and after-strings (Bug#1220).
6652 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
6653
6654 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
6655
6656 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
6657 (move_it_in_display_line_to, move_it_in_display_line_to)
6658 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
6659
6660 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
6661
6662 * Branch for 23.1.
6663
6664 2009-06-21 Jason Rumney <jasonr@gnu.org>
6665
6666 * w32term.c (keyboard_codepage): New static variable.
6667 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
6668 (w32_read_socket) [WM_CHAR]: Use it to decode character
6669 input (bug#3237).
6670 (w32_initialize): Initialize it.
6671 (codepage_for_locale): New function.
6672
6673 2009-06-20 Ken Raeburn <raeburn@raeburn.org>
6674
6675 * process.c (status_message): Pass Faset index argument as a lisp
6676 object, so as to work with USE_LISP_UNION_TYPE.
6677
6678 2009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6679
6680 * coding.c (Ffind_coding_systems_region_internal):
6681 Cache checked characters.
6682
6683 2009-06-18 Kenichi Handa <handa@m17n.org>
6684
6685 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
6686
6687 2009-06-18 Andreas Schwab <aschwab@redhat.com>
6688
6689 * xdisp.c (redisplay_internal): Check that the frame is still
6690 live after redisplay of its windows.
6691 (redisplay_windows): Check that the window is still live.
6692
6693 2009-06-17 Andreas Schwab <schwab@linux-m68k.org>
6694
6695 * coding.c (detect_coding_utf_16): Fix previous change.
6696
6697 2009-06-16 Kenichi Handa <handa@m17n.org>
6698
6699 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
6700 UTF-16 by checking the dispersion of Eth and Oth bytes.
6701
6702 2009-06-15 Andreas Schwab <schwab@linux-m68k.org>
6703
6704 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
6705
6706 2009-06-15 Kenichi Handa <handa@m17n.org>
6707
6708 * process.c (status_message): Fix previous change. Be sure to
6709 decode a localized string.
6710
6711 2009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6712
6713 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
6714 add comment explaining why.
6715
6716 2009-06-14 Sidney Markowitz <sidney@sidney.com>
6717
6718 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
6719
6720 2009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
6721
6722 * nsfont.m (ns_attribute_value): Remove.
6723 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
6724 (ns_has_attribute): Shrink the normal range.
6725 (ns_findfonts): Don't worry about requested spec in determining
6726 need for synthItal.
6727 (ns_get_covering_families): Retain scriptToFamilies.
6728
6729 2009-06-14 Seiji Zenitani <zenitani@mac.com>
6730
6731 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
6732
6733 2009-06-11 Kenichi Handa <handa@m17n.org>
6734
6735 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
6736 overhang for the static composition case.
6737
6738 2009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6739
6740 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
6741 overhang for the automatic composition case.
6742
6743 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
6744 composition case.
6745
6746 2009-06-10 Chong Yidong <cyd@stupidchicken.com>
6747
6748 * xdisp.c (get_next_display_element): When handling wrap-prefix
6749 and line-prefix, treat \n as a control character (bug#3502).
6750
6751 2009-06-10 Kenichi Handa <handa@m17n.org>
6752
6753 * font.c (font_parse_family_registry): Fix for one-char foundry.
6754 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
6755
6756 2009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
6757
6758 * process.c (status_message): Fix handling of multibyte signal
6759 string (Bug#3499).
6760
6761 2009-06-09 Jim Meyering <meyering@redhat.com>
6762
6763 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
6764 color name is missing.
6765
6766 2009-06-09 Kenichi Handa <handa@m17n.org>
6767
6768 * charset.c (Fmap_charset_chars): In docstring, state clearly that
6769 FROM-CODE and TO-CODE are codepoints of CHARSET.
6770
6771 2009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
6772
6773 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
6774
6775 2009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
6776
6777 Changes to support :script/:lang/:otf in NS font driver.
6778 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
6779 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
6780 indicate not part of font driver interface, and change callers.
6781 (ns_get_family): Remove pointless null check.
6782 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
6783 ns_spec_to_descriptor, ns_descriptor_to_entity.
6784 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
6785 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
6786 (ns_spec_to_descriptor, ns_descriptor_to_entity)
6787 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
6788 (ns_get_req_script, ns_accumulate_script_ranges)
6789 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
6790 New functions.
6791 (nsfont_list, nsfont_match): Use ns_findfonts.
6792 (nsfont_open): Use font descriptor instead of traits.
6793 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
6794 (dump_glyphstring): Rename to ns_dump_glyphstring.
6795
6796 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
6797
6798 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
6799
6800 * fontset.c (fontset_from_font): Remove NS-specific code.
6801
6802 2009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
6803
6804 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
6805 nonactive windows.
6806
6807 2009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
6808
6809 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
6810
6811 2009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
6812
6813 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
6814
6815 2009-06-07 Chong Yidong <cyd@stupidchicken.com>
6816
6817 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
6818 account for the overflowing of newlines into the last glyph on the
6819 display line (Bug#3482).
6820
6821 2009-06-05 David Reitter <david.reitter@gmail.com>
6822
6823 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
6824 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
6825 Fns_selection_exists_p, Fns_selection_owner_p.
6826
6827 2009-06-03 Jason Rumney <jasonr@gnu.org>
6828
6829 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
6830 available. (Bug#3379)
6831
6832 2009-05-29 Kenichi Handa <handa@m17n.org>
6833
6834 * coding.c (get_translation_table):
6835 Check Venable_character_translation.
6836
6837 2009-05-26 David Reitter <david.reitter@gmail.com>
6838
6839 * nsterm.m (ns_raise_frame): Only raise frame if visible.
6840 (x_make_frame_visible): Move frame to front rather than calling
6841 ns_raise_frame().
6842 (keyDown:): Do not swallow events that aren't re-sent if frame
6843 isn't key window.
6844 (drawRect:): Do not set visibility/iconified flags because
6845 drawRect may be called by NSView even if the frame is hidden.
6846
6847 * nsfns.m (Fx_create_frame): Follow other ports in
6848 determining visibility; default to t. Ensure async_visible is set.
6849
6850 2009-05-23 Eli Zaretskii <eliz@gnu.org>
6851
6852 * dired.c (Ffile_attributes): Doc fix.
6853
6854 2009-05-22 Chong Yidong <cyd@stupidchicken.com>
6855
6856 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
6857
6858 2009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
6859
6860 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
6861 and xfont_scratch_props.
6862 (syms_of_xfont): Do it here instead.
6863 (xfont_find_ccl_program): Delete, unused.
6864 (xfont_open): Delete unused var `i'.
6865
6866 2009-05-21 Kenichi Handa <handa@m17n.org>
6867
6868 * fontset.c (Qlatin): Don't make it static.
6869
6870 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
6871 New functions.
6872 (xfont_scripts_cache, xfont_scratch_props): New variables.
6873 (Qlatin, Vscalable_fonts_allowed): Extern it.
6874 (xfont_list_pattern): Argument changed. Callers changed.
6875 Check Vscalable_fonts_allowed. Check the support of a script.
6876 (xfont_list): Don't reject a font spec with :script property.
6877 (xfont_has_char): Fix setting of encoding.
6878 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
6879 xfont_scratch_props.
6880
6881 2009-05-19 Kenichi Handa <handa@m17n.org>
6882
6883 * font.c (font_sort_entities): Rename from font_sort_entites.
6884 Callers changed.
6885
6886 2009-05-18 Kenichi Handa <handa@m17n.org>
6887
6888 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
6889
6890 2009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
6891
6892 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
6893 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
6894
6895 2009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6896
6897 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
6898 (x_delete_terminal): Dissociate resource database from display and
6899 then call XrmDestroyDatabase before closing display.
6900
6901 2009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
6902
6903 * nsterm.m (ns_read_socket): Remove unused variable.
6904 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
6905 whether selected frame is viable before raising it (based on patch
6906 by David Reitter), and improve commentary.
6907 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
6908
6909 2009-05-15 Kenichi Handa <handa@m17n.org>
6910
6911 * font.c (Ffont_spec): Check arguments.
6912
6913 2009-05-14 Chong Yidong <cyd@stupidchicken.com>
6914
6915 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
6916 weight when testing attributes (Bug#3282).
6917
6918 2009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6919
6920 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
6921 what we expect to get in the next ConfigureNotify event.
6922
6923 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
6924 before Xft one (Bug#1696).
6925
6926 2009-05-07 David Reitter <david.reitter@gmail.com>
6927
6928 * nsfns.m (Fx_display_planes): Compute bitplanes using
6929 NSBitsPerPixelFromDepth (Bug#3207).
6930
6931 2009-05-10 Chong Yidong <cyd@stupidchicken.com>
6932
6933 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
6934
6935 2009-05-10 Ulrich Mueller <ulm@gentoo.org>
6936
6937 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
6938
6939 2009-05-07 David Reitter <david.reitter@gmail.com>
6940
6941 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
6942 Respect mouse face background.
6943
6944 2009-05-07 David Reitter <david.reitter@gmail.com>
6945
6946 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
6947 Mouse movement/highlight: bracket drawing operations
6948 in ns_update_begin and ns_update_end.
6949
6950 2009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
6951
6952 * nsfns.m (ns_get_screen): Rewrite.
6953 Don't presume selected-frame is of type `ns'.
6954
6955 * font.c (font_update_drivers): Sanity fallback to avoid disabling
6956 all drivers.
6957
6958 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
6959
6960 2009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6961
6962 * keyboard.h (add_user_signal): Fix typo in extern.
6963
6964 * lisp.h (add_user_signal): Remove extern.
6965
6966 * unexelf.c (unexec): Consider a section to precede the .bss section
6967 if its addresses overlap that of .bss.
6968 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
6969 instead of dumping process.
6970
6971 2009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
6972
6973 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
6974
6975 2009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
6976
6977 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
6978
6979 2009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
6980
6981 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
6982 any statements.
6983
6984 2009-05-02 Andreas Schwab <schwab@linux-m68k.org>
6985
6986 * process.c (read_process_output): Make sure the current buffer is
6987 always restored.
6988
6989 * coding.c (record_conversion_result): Don't modify
6990 Vlast_code_conversion_error for successful result.
6991 (alloc_destination): Don't clobber conversion result. (Bug#1650)
6992
6993 2009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
6994
6995 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
6996 (load_charset_map): Remove unnecessary code.
6997
6998 2009-04-30 David Reitter <david.reitter@gmail.com>
6999
7000 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
7001 through f24.
7002
7003 2009-04-30 Chong Yidong <cyd@stupidchicken.com>
7004
7005 * xfaces.c (face_at_buffer_position): New arg base_face_id.
7006
7007 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
7008 face_at_buffer_position.
7009 (face_before_or_after_it_pos, get_next_display_element)
7010 (note_mouse_highlight): Update face_at_buffer_position call.
7011
7012 * term.c (term_mouse_highlight):
7013 * msdos.c (IT_note_mouse_highlight):
7014 * fontset.c (Finternal_char_font):
7015 * font.c (font_at, font_range): Update face_at_buffer_position call.
7016
7017 * dispextern.h (face_at_buffer_position): Update prototype.
7018
7019 2009-04-30 Kenichi Handa <handa@m17n.org>
7020
7021 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
7022
7023 2009-04-29 Andreas Schwab <schwab@linux-m68k.org>
7024
7025 * callproc.c (Fcall_process): Fix GC protection. Make sure
7026 current buffer is always restored.
7027
7028 2009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7029
7030 * atimer.c (init_atimer): Also clear stopped_atimers.
7031
7032 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
7033
7034 * process.c (create_process): Clean up merger residues of
7035 2008-07-17 change.
7036
7037 2009-04-29 Ulrich Mueller <ulm@gentoo.org>
7038
7039 * lread.c (Vread_circle): New variable.
7040 (read1): Disable recursive read if Vread_circle is nil.
7041
7042 2009-04-29 Kenichi Handa <handa@m17n.org>
7043
7044 * fontset.h (set_default_ascii_font): Delete extern.
7045
7046 * fontset.c (set_default_ascii_font): Delete this unused function.
7047
7048 * frame.c (x_set_font): When ARG is a font-object, check if the
7049 font-object matches with the ASCII font-spec of the frame's
7050 fontset. If not, create a new fontset for the frame. (Bug #3075)
7051
7052 2009-04-28 Andreas Schwab <schwab@linux-m68k.org>
7053
7054 * fns.c (Flocale_info): Protect vector from GC during decoding.
7055
7056 * process.c (Fstart_process): Protect argv strings from GC during
7057 encoding.
7058
7059 2009-04-27 Andreas Schwab <schwab@linux-m68k.org>
7060
7061 * sysdep.c: Include <ctype.h>.
7062
7063 2009-04-27 David Reitter <david.reitter@gmail.com>
7064
7065 * nsfont.m (nsfont_open): Remove unused variable shrink.
7066 Remove commented-out code.
7067
7068 2009-04-26 Johan Bockgård <bojohan@gnu.org>
7069
7070 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
7071
7072 2009-04-25 Jason Rumney <jasonr@gnu.org>
7073
7074 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
7075
7076 2009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7077
7078 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
7079 Swap bytes in short integer if fringe bitmap width > 8.
7080
7081 2009-04-23 Kenichi Handa <handa@m17n.org>
7082
7083 * xfaces.c (Fx_list_fonts): If a font size is specified in
7084 PATTERN, set it in returned scalable fonts.
7085
7086 2009-04-22 Chong Yidong <cyd@stupidchicken.com>
7087
7088 * keyboard.c (Fset_input_meta_mode): Doc fix.
7089
7090 * dispnew.c (Fsend_string_to_terminal): Doc fix.
7091
7092 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
7093
7094 * coding.c (Fterminal_coding_system): Doc fix.
7095
7096 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
7097 (Fx_display_pixel_height, Fx_display_planes)
7098 (Fx_display_color_cells, Fx_server_max_request_size)
7099 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
7100 (Fx_display_mm_height, Fx_display_mm_width)
7101 (Fx_display_backing_store, Fx_display_visual_class)
7102 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
7103 Doc fixes, replacing "terminal id" with "terminal object".
7104 (check_x_display_info): Handle terminal objects instead of
7105 terminal ids.
7106
7107 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
7108 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
7109 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
7110 Doc fixes, replacing "terminal id" with "terminal object".
7111
7112 2009-04-21 Kenichi Handa <handa@m17n.org>
7113
7114 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
7115 (font_score): Check AVGWIDTH too.
7116
7117 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
7118 worst case.
7119 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
7120 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
7121
7122 2009-04-19 Jason Rumney <jasonr@gnu.org>
7123
7124 The following changes fix Bug#3005 for wide glyphs on each platform,
7125 without reintroducing Bug#1258 for stretch glyphs.
7126
7127 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
7128 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
7129 get_phys_cursor_geometry.
7130
7131 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
7132 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
7133 using get_phys_cursor_geometry.
7134
7135 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
7136 correctly calculated.
7137
7138 2009-04-19 Jan Djärv <jan.h.d@swipnet.se>
7139
7140 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
7141 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
7142 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
7143 is deprecated.
7144
7145 2009-04-18 Andreas Schwab <schwab@linux-m68k.org>
7146
7147 * font.c (font_put_frame_data): Use xfree instead of free.
7148
7149 2009-04-17 Juanma Barranquero <lekktu@gmail.com>
7150
7151 * w32font.c (Qja, Qko): Remove declarations.
7152 (syms_of_w32font): Don't DEFSYM them.
7153
7154 2009-04-17 Chong Yidong <cyd@stupidchicken.com>
7155
7156 * font.c (Qja, Qko): Move definitions here from ftfont.c.
7157
7158 * font.h (Qja, Qko): Extern them.
7159
7160 * ftfont.c (Qja, Qko): Remove declarations.
7161
7162 * xfont.c (Qja, Qko): Remove declarations.
7163
7164 2009-04-17 Kenichi Handa <handa@m17n.org>
7165
7166 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
7167 string from a vector to handle Latin-1 characters correctly.
7168
7169 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
7170 entity even if the cache hits.
7171
7172 2009-04-16 Andreas Schwab <schwab@linux-m68k.org>
7173
7174 * search.c (boyer_moore): Use zero as marker value for a possible
7175 match instead of depending on overflow behavior. (Bug#2844)
7176
7177 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
7178 * lisp.h: Adjust prototypes.
7179
7180 2009-04-16 Chong Yidong <cyd@stupidchicken.com>
7181
7182 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
7183 change (Bug#3003).
7184
7185 2009-04-16 Kenichi Handa <handa@m17n.org>
7186
7187 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
7188
7189 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
7190 adstyle.
7191
7192 * ftfont.c (Qja, Qko): Don't make them static.
7193 (enum ftfont_cache_for): New enum.
7194 (fc_charset_table): Undo the previous change.
7195 (ftfont_get_latin1_charset): Delete it.
7196 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
7197 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
7198 non-scarable font, try to get AVERAGE_WIDTH.
7199 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
7200 Change ft_face_cache from a list of a hash-table. Don't check
7201 `ja' and `ko' adstyle here.
7202 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
7203 FTFONT_CACHE_FOR_CHARET.
7204 (ftfont_get_charset): Undo the previous change.
7205 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
7206 (ftfont_close): Likewise.
7207 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
7208
7209 * font.c (font_sort_entites): Change the meaning of the arg
7210 BEST-ONLY. Don't optimize for VEC of lenght 1.
7211 (font_select_entity): Just return the value of font_sort_entites.
7212
7213 * xfaces.c (merge_face_vectors): Reflect font properties in
7214 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
7215 font_clear_prop if a face attribute doesn't change.
7216
7217 * charset.h (charset_ksc5601): Extern it.
7218
7219 * charset.c (charset_ksc5601): New variable.
7220 (Fdefine_charset_internal): Set charset_ksc5601.
7221 (init_charset_once): Initialize charset_ksc5601 to -1.
7222
7223 2009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
7224
7225 * fileio.c (history_delete_duplicates): Remove unused declaration.
7226
7227 * callint.c (history_delete_duplicates): New declaration.
7228 (Fcall_interactively): Remove command history duplicates when
7229 history_delete_duplicates is true.
7230
7231 2009-04-14 Eli Zaretskii <eliz@gnu.org>
7232
7233 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
7234
7235 2009-04-14 Kenichi Handa <handa@m17n.org>
7236
7237 * font.c (Ffont_info): Fix docstring. Fix the second element of
7238 the returned value (bug#2949).
7239
7240 2009-04-14 Chong Yidong <cyd@stupidchicken.com>
7241
7242 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
7243
7244 2009-04-14 Kenichi Handa <handa@m17n.org>
7245
7246 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
7247 encoding charset is ascii_compatible.
7248
7249 * charset.c (Fdefine_charset_internal): Make charset
7250 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
7251 code_offset is 0, and covers all ASCII characters.
7252
7253 2009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
7254
7255 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
7256 (ns_string_to_pasteboard_internal):
7257 * nsmenu.m (process_dialog):
7258 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
7259 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
7260 * lisp.h (Fx_load_color_file): Declare.
7261
7262 2009-04-13 Kenichi Handa <handa@m17n.org>
7263
7264 * font.c (font_delete_unmatched): Preserve the order of list elements.
7265 (font_select_entity): Suppress the code to optimize for the same
7266 kind of fonts.
7267 (font_load_for_lface): Get a font that supports at least ASCII
7268 characters.
7269
7270 * ftfont.c (Qja, Qko): New variables.
7271 (fc_charset_table): Delete uniquifier data for iso8859-1.
7272 (ftfont_get_latin1_charset): New function.
7273 (get_adstyle_property): New function.
7274 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
7275 bitmap fonts.
7276 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
7277 Delete iso-8859-1 range from the charset of fonts whose adstyle is
7278 `ko' or `ja'.
7279 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
7280 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
7281 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
7282 property.
7283 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
7284 (syms_of_ftfont): DEFSYM Qja and Qko.
7285
7286 2009-04-09 Kenichi Handa <handa@m17n.org>
7287
7288 * charset.c (map_charset_chars): For a charset of `superset'
7289 method, fix calculation of code range.
7290
7291 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
7292 from the list of extra properties.
7293 (font_clear_prop): Be sure to delete `:name' font property.
7294
7295 2009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7296
7297 * dispnew.c (redraw_overlapping_rows): Fix detection of
7298 overlapping for topmost and bottommost rows.
7299
7300 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
7301
7302 2009-04-06 Jason Rumney <jasonr@gnu.org>
7303
7304 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
7305
7306 2009-04-06 Kenichi Handa <handa@m17n.org>
7307
7308 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
7309
7310 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
7311
7312 2009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7313
7314 * ftfont.c (ftfont_open): Fix checking of the return value of
7315 FT_Load_Char. Fix setting font->underline_thickness.
7316
7317 2009-04-04 Chong Yidong <cyd@stupidchicken.com>
7318
7319 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
7320 (Fterminal_parameters, Fterminal_parameter)
7321 (Fset_terminal_parameter): In doc string, refer to terminal
7322 objects rather than terminal ids.
7323
7324 2009-04-04 Eli Zaretskii <eliz@gnu.org>
7325
7326 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
7327 ret_lim_data. (Bug#2867)
7328
7329 2009-04-03 Chong Yidong <cyd@stupidchicken.com>
7330
7331 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
7332 so they don't get wider than the window, matching 2006-01-23
7333 change to the partner function in xdisp.c (Bug#2800).
7334
7335 2009-04-03 Kenichi Handa <handa@m17n.org>
7336
7337 * print.c (print_object): Make each lowest sub_char_table start a
7338 new line (Bug#2866).
7339
7340 2009-04-02 Kenichi Handa <handa@m17n.org>
7341
7342 * fontset.c (fontset_font): Record no-font when a fontset
7343 explicitly tells not to try another font-specs.
7344
7345 2009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
7346
7347 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
7348
7349 2009-03-30 Kenichi Handa <handa@m17n.org>
7350
7351 * fontset.c (fontset_from_font): Specify only registry in a
7352 font-spec for all characters supported by that registry.
7353
7354 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
7355 even if HAVE_M17N_FLT is not defined.
7356
7357 2009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
7358
7359 * ftfont.c: Conditionalize prototyping and use of
7360 ftfont_variation_glyphs.
7361
7362 2009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
7363
7364 * frame.c (delete_frame): Work around compiler bug.
7365
7366 * editfns.c (general_insert_function): Adjust to insdel.c changes.
7367 * insdel.c (prepare_to_modify_buffer, signal_before_change):
7368 Some more EMACS_INT.
7369 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
7370
7371 * xdisp.c (dump_glyph): Fix typo.
7372
7373 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
7374 (adjust_markers_gap_motion, adjust_markers_for_delete)
7375 (adjust_markers_for_insert, adjust_point)
7376 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
7377 (make_gap, copy_text, count_size_as_multibyte, insert)
7378 (insert_and_inherit, insert_before_markers)
7379 (insert_before_markers_and_inherit, insert_1)
7380 (count_combining_before, count_combining_after, insert_1_both)
7381 (insert_from_string, insert_from_string_before_markers)
7382 (insert_from_string_1, insert_from_gap, insert_from_buffer)
7383 (insert_from_buffer_1, adjust_after_replace)
7384 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
7385 (replace_range_2, del_range, del_range_1, del_range_byte)
7386 (del_range_both, del_range_2, modify_region)
7387 (prepare_to_modify_buffer, signal_before_change)
7388 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
7389 for buffer positions and sizes.
7390 * lisp.h: Adjust prototypes accordingly.
7391
7392 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
7393 (non_regular_inserted, non_regular_nbytes, read_non_regular)
7394 (Finsert_file_contents): Use EMACS_INT for buffer positions.
7395
7396 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
7397
7398 2009-03-27 Jan Djärv <jan.h.d@swipnet.se>
7399
7400 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
7401 lines and columns so we keep the same pixel height and width.
7402
7403 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
7404 the property _NET_WM_STATE has changed.
7405 (x_handle_net_wm_state): New function to update frame parameter
7406 fullscreen.
7407 (x_term_init): Initialize atoms for _NET_WM_STATE.
7408
7409 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
7410
7411 2009-03-27 Kevin Ryde <user42@zip.com.au>
7412
7413 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
7414 Gpm_GetEvent as an error that justifies closing the filedescriptor.
7415 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
7416 (Fgpm_mouse_stop): Pass that new parameter.
7417 * termhooks.h (close_gpm): Adjust prototype.
7418
7419 2009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
7420
7421 * lisp.h (Fx_focus_frame): Declare.
7422
7423 * callint.c (Fcall_interactively): For '^' just delegate the work to
7424 handle-shift-selection.
7425 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
7426
7427 2009-03-24 Chong Yidong <cyd@stupidchicken.com>
7428
7429 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
7430
7431 * data.c (Qinteractive_form): New variable.
7432 (Finteractive_form): Use it.
7433
7434 * eval.c (Fcommandp): Use Qinteractive_form.
7435
7436 2009-03-24 Jason Rumney <jasonr@gnu.org>
7437
7438 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
7439 Calculate total size precisely. Decode environment variables
7440 before substituting. (Bug#38)
7441
7442 2009-03-24 Kenichi Handa <handa@m17n.org>
7443
7444 * font.c (find_font_encoding): Return Qnil for unsupported
7445 encoding (Bug#2722).
7446
7447 2009-03-23 Jan Djärv <jan.h.d@swipnet.se>
7448
7449 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
7450 that gdpy is set.
7451
7452 2009-03-22 Alan Mackenzie <acm@muc.de>
7453
7454 * callint.c (Finteractive): Clarify the doc string - even
7455 promptless elements need \n separators.
7456
7457 2009-03-22 Jason Rumney <jasonr@gnu.org>
7458
7459 * w32term.c (syms_of_w32term): Doc fix for
7460 x-use-underline-position-properties.
7461
7462 2009-03-21 Eli Zaretskii <eliz@gnu.org>
7463
7464 * w32.c (getpwuid): Change argument type to unsigned.
7465 (struct w32_id): Change type of `rid' member to unsigned.
7466 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
7467 argument ID to unsigned. All callers changed.
7468 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
7469
7470 2009-03-20 Eli Zaretskii <eliz@gnu.org>
7471
7472 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
7473 negative, produce a float value.
7474
7475 * dired.c (make_uid, make_gid): New functions.
7476 (Ffile_attributes): Use them to avoid negative UID and GID.
7477
7478 2009-03-20 Juanma Barranquero <lekktu@gmail.com>
7479
7480 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
7481 (syms_of_keyboard) <command-hook-internal, input-method-function>:
7482 Fix typos in docstrings.
7483
7484 2009-03-19 Kenichi Handa <handa@m17n.org>
7485
7486 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
7487 changed, use font_load_for_lface to get a new font object.
7488 Call free_realized_fontset after handling ASCII font change.
7489
7490 * frame.c (x_set_font): Handle the case that ARG is a cons.
7491
7492 2009-03-19 Glenn Morris <rgm@gnu.org>
7493
7494 * fileio.c (Fsubstitute_in_file_name): Doc fix.
7495
7496 2009-03-19 Chong Yidong <cyd@stupidchicken.com>
7497
7498 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
7499
7500 2009-03-19 Kenichi Handa <handa@m17n.org>
7501
7502 * charset.c (load_charset_map_from_file): When a mapfile can't be
7503 loaded, signal an error.
7504
7505 2009-03-18 Eli Zaretskii <eliz@gnu.org>
7506
7507 * dired.c (Ffile_attributes): Make sure UID and GID are always
7508 positive, even if the value is too large for a positive EMACS_INT.
7509 Doc fix.
7510
7511 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
7512
7513 2009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7514
7515 * xmenu.c (xdialog_show): Move Fredisplay call ...
7516 (Fx_popup_dialog): ... here.
7517
7518 2009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
7519
7520 * dired.c (file_name_completion): Disable the first optimization just
7521 installed, since it is not implemented correctly.
7522
7523 2009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
7524
7525 * dired.c (file_name_completion): Check completion-ignored-extensions
7526 only if the entry can affect bestmatch.
7527 Stop the search early, as Ftry_completion already does.
7528
7529 2009-03-17 Chong Yidong <cyd@stupidchicken.com>
7530
7531 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
7532
7533 2009-03-15 Chong Yidong <cyd@stupidchicken.com>
7534
7535 * keyboard.c (parse_menu_item): Don't display remappings as menu
7536 equivalent bindings (Bug#788).
7537
7538 2009-03-15 Jason Rumney <jasonr@gnu.org>
7539
7540 * w32term.h (WM_EMACS_PAINT): New message.
7541 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
7542 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
7543 before passing to lisp thread. (Bug#950)
7544
7545 2009-03-14 David Reitter <david.reitter@gmail.com>
7546
7547 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
7548 variable as it was never reset.
7549 (ns_term_init): Remove initialization of Lisp-settable defaults
7550 and ns_expand_space.
7551 (-setPanelFromDefaultValues): Remove ns_expand_space.
7552 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
7553 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
7554 i.e. no additional spacing, similar to Carbon port.
7555
7556 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
7557 * nsfns.m (ns-popup-prefs-panel): Remove.
7558
7559 2009-03-14 Jan Djärv <jan.h.d@swipnet.se>
7560
7561 * sound.c (alsa_configure): Remove call to deprecated
7562 snd_pcm_sw_params_set_xfer_align.
7563
7564 2009-03-14 Stephen Berman <stephen.berman@gmx.net>
7565
7566 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
7567 after clicking in a detached tool bar.
7568 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
7569
7570 2009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
7571
7572 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
7573 int/Lisp_Object mixup).
7574
7575 2009-03-13 Kenichi Handa <handa@m17n.org>
7576
7577 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
7578 Handle NAME nil and t correctly. Callers changed.
7579 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
7580 (set_fontset_font): Change ARG to a vector. Handle range_list in
7581 ARG correctly.
7582 (Fset_fontset_font): Fix the case that TARGET is both a script
7583 name and charset name. Adjust the arg to set_fontset_font for
7584 the above change.
7585 (fontset_from_font): Fix previous change.
7586 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
7587 entry. If FONTSET is the default fontset, don't set the extra
7588 slot of the returning char-table.
7589
7590 2009-03-12 Juanma Barranquero <lekktu@gmail.com>
7591
7592 * nsfns.m (Fx_close_connection): Doc fix.
7593 (Fns_do_applescript): Reflow docstring.
7594 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
7595 (Fx_display_pixel_width, Fx_display_pixel_height)
7596 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
7597 Fix typos in docstrings.
7598 (Fns_set_alpha): Fix typos in error messages.
7599
7600 2009-03-12 David Reitter <david.reitter@gmail.com>
7601
7602 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
7603 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
7604 were used for such events.
7605
7606 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
7607 (toggleToolbar, performDragOperation, runHelp): Use it.
7608
7609 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
7610 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
7611
7612 2009-03-11 Kenichi Handa <handa@m17n.org>
7613
7614 * font.h (font_open_by_spec): Extern it.
7615
7616 * font.c (font_open_by_spec): New function.
7617 (font_open_by_name): Use font_open_by_spec.
7618
7619 * frame.c (x_set_font): When ARG is a font-object, don't alter the
7620 fontset of the frame.
7621
7622 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
7623 modify the default font of frames that use this fontset.
7624 (num_auto_fontsets): New variable.
7625 (fontset_from_font): Use num_auto_fontsets to decide a fontset
7626 name. Be sure to set FONTSET_ASCII to the correct font name.
7627 (update_auto_fontset_alist): New function.
7628
7629 2009-03-11 Juanma Barranquero <lekktu@gmail.com>
7630
7631 * makefile.w32-in: Update dependencies.
7632
7633 2009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
7634
7635 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
7636
7637 2009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
7638
7639 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
7640
7641 2009-03-10 Chong Yidong <cyd@stupidchicken.com>
7642
7643 * lread.c (Feval_buffer): Doc fix.
7644
7645 2009-03-09 Kenichi Handa <handa@m17n.org>
7646
7647 * charset.c (Qfile_name_handler_alist): Extern it.
7648 (load_charset_map_from_file): Temporarily bind
7649 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
7650
7651 2009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
7652
7653 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
7654 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
7655
7656 2009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
7657
7658 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
7659 (x_set_window_size): Change back to calculated method of setting
7660 toolbar height under Cocoa. (Bug#2546)
7661 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
7662 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
7663
7664 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
7665
7666 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
7667 accelerator in parens under GNUstep.
7668
7669 2009-03-06 Kenichi Handa <handa@m17n.org>
7670
7671 These changes are to detect incorrect composition sequence without
7672 looking ahead the source. (Bug#2370)
7673
7674 * coding.h: Include "composite.h".
7675 (enum compisition_state): New enum.
7676 (struct compisition_status): New struct.
7677 (struct iso_2022_spec): New member cmp_status.
7678 (struct emacs_mule_spec): New struct.
7679 (struct coding_system): New members ctext_extended_segment_len and
7680 embedded_utf_8. Change the union member
7681 spec.emacs_mule_full_support to spec.emacs_mule.
7682
7683 * coding.c (CODING_ISO_CMP_STATUS): New macro.
7684 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
7685 (MAX_ANNOTATION_LENGTH): Define to 5.
7686 (ADD_COMPOSITION_DATA): New arg nbytes.
7687 (emacs_mule_char): New arg cmp_status.
7688 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
7689 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
7690 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
7691 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
7692 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
7693 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
7694 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
7695 (EMACS_MULE_COMPOSITION_END): New macro.
7696 (emacs_mule_finish_composition): New function.
7697 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
7698 (decode_coding_emacs_mule): Avoid long looking ahead while
7699 handling composition.
7700 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
7701 (ENCODE_COMPOSITION_RULE): New macro.
7702 (finish_composition): New function.
7703 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
7704 (DECODE_COMPOSITION_START): New implementation.
7705 (DECODE_COMPOSITION_END): Likewise.
7706 (STORE_COMPOSITION_RULE): New macro.
7707 (decode_coding_iso_2022): Avoid long looking ahead while handling
7708 composition, CTEXT extended segment, and embedded UTF-8.
7709 (setup_coding_system): For a coding of type iso-2022, reset
7710 CODING_ISO_EXTSEGMENT_LEN (coding) and
7711 CODING_ISO_EMBEDDED_UTF_8 (coding).
7712 (get_translation): Delete arguments last_block, from_nchars,
7713 to_nchars. Callers changed.
7714 (produce_chars): Don't modify charbuf. Adjusted for the change of
7715 get_translation.
7716 (produce_composition): Adjust for the new annotation sequence.
7717 (handle_composition_annotation): Likewise.
7718 (consume_chars): Adjust for the change of get_translation.
7719
7720 2009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
7721
7722 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
7723
7724 2009-03-05 Kenichi Handa <handa@m17n.org>
7725
7726 * font.c (font_select_entity): New function.
7727 (font_find_for_lface): Use font_select_entity to select a font.
7728
7729 * fontset.c (fontset_find_font): If a font found without
7730 restricting to the characters C doesn't support C, try to find a
7731 font with C restriction.
7732
7733 2009-03-04 Nikolaj Schumacher <me@nschum.de>
7734
7735 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
7736
7737 2009-03-04 Jason Rumney <jasonr@gnu.org>
7738
7739 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
7740 characters that have already been read. (Bug#2569)
7741
7742 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
7743 Log an error message if check_image_size failed.
7744 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
7745 (gs_load): Mention max-image-size in size error message. (Bug#2560)
7746
7747 2009-03-02 Eli Zaretskii <eliz@gnu.org>
7748
7749 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
7750 when decoding process output.
7751
7752 2009-03-01 Richard M Stallman <rms@gnu.org>
7753
7754 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
7755
7756 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
7757
7758 2009-02-28 Eli Zaretskii <eliz@gnu.org>
7759
7760 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
7761 (decode_coding_emacs_mule, decode_coding_iso_2022)
7762 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
7763 (decode_coding_raw_text, decode_coding_charset)
7764 (setup_coding_system, decode_eol, decode_coding, consume_chars):
7765 Honor inhibit-eol-conversion. (Bug #2186)
7766
7767 2009-02-28 Jason Rumney <jasonr@gnu.org>
7768
7769 * coding.c (detect_coding_charset): If not checking latin extra,
7770 fail on characters between 0x80 and 0xA0. (Bug#2354)
7771
7772 2009-02-28 Eli Zaretskii <eliz@gnu.org>
7773
7774 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
7775 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
7776
7777 2009-02-27 Glenn Morris <rgm@gnu.org>
7778
7779 * callint.c (Finteractive): Doc fix.
7780
7781 2009-02-27 Kenichi Handa <handa@m17n.org>
7782
7783 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
7784
7785 2009-02-27 Chong Yidong <cyd@stupidchicken.com>
7786
7787 * font.c (font_style_to_value): Set value for unknown symbols to
7788 100 instead of 255.
7789 (weight_table, slant_table, width_table): Treat "unspecified" as
7790 the default value.
7791
7792 2009-02-26 Juanma Barranquero <lekktu@gmail.com>
7793
7794 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
7795
7796 2009-02-25 Juanma Barranquero <lekktu@gmail.com>
7797
7798 * lread.c (Fload): Stop checking Vloads_in_progress and signal
7799 error as soon as a recursive load is detected.
7800
7801 2009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7802
7803 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
7804 before caching.
7805
7806 2009-02-24 Kenichi Handa <handa@m17n.org>
7807
7808 * fontset.c (fontset_find_font): Fix the condition for checking
7809 unavailable font.
7810
7811 2009-02-24 Glenn Morris <rgm@gnu.org>
7812
7813 * xfaces.c (Finternal_set_font_selection_order): Remove leading
7814 whitespace that confuses documentation.
7815
7816 2009-02-23 Miles Bader <miles@gnu.org>
7817
7818 * process.c (Flist_system_processes, Fprocess_attributes)
7819 (syms_of_process): Rename `system-process-attributes' to
7820 `process-attributes'.
7821
7822 2009-02-22 Andreas Schwab <schwab@linux-m68k.org>
7823
7824 * coding.h (struct coding_system): Make safe_charsets a pointer to
7825 unsigned char.
7826 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
7827 being 255.
7828 (SAFE_CHARSET_P): Likewise.
7829 (setup_iso_safe_charsets): Properly setup safe_charsets.
7830 (Fdefine_coding_system_internal): Likewise.
7831 (setup_coding_system): Likewise. Remove unneeded casts.
7832 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
7833 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
7834 unneeded casts.
7835
7836 * insdel.c (del_range_2): Don't modify gap contents when called
7837 from decode_coding_object. (Bug#1809)
7838
7839 2009-02-21 Chong Yidong <cyd@stupidchicken.com>
7840
7841 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
7842 Qfont_object.
7843 (Ftype_of): Recognize font objects.
7844
7845 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
7846
7847 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
7848 moved to data.c.
7849
7850 2009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7851
7852 * nsterm.m (x_make_frame_invisible): Unset async_visible,
7853 async_iconified. Based on a patch by Christian Lynbech
7854 <christian.lynbech@tieto.com>.
7855 (EmacsView-windowDidMiniaturize:): Unset async_visible.
7856
7857 2009-02-20 Glenn Morris <rgm@gnu.org>
7858
7859 * syntax.c (Fskip_chars_forward): Fix doc typo.
7860
7861 2009-02-20 Chong Yidong <cyd@stupidchicken.com>
7862
7863 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
7864
7865 2009-02-19 Chong Yidong <cyd@stupidchicken.com>
7866
7867 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
7868
7869 2009-02-19 Kenichi Handa <handa@m17n.org>
7870
7871 * coding.c (detect_coding): Preserve coding->mode.
7872 Don't overflow coding->carryover. (Bug#2370)
7873
7874 2009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
7875
7876 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
7877
7878 2009-02-18 Kenichi Handa <handa@m17n.org>
7879
7880 * font.c (font_check_otf_features): Fix handling of `nil' element.
7881 (Ffont_spec): Describe :lang and :otf in the docstring.
7882
7883 2009-02-16 Andreas Schwab <schwab@suse.de>
7884
7885 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
7886 string.
7887
7888 2009-02-16 Kenichi Handa <handa@m17n.org>
7889
7890 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
7891 (Bug#1723)
7892
7893 2009-02-14 Chong Yidong <cyd@stupidchicken.com>
7894
7895 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
7896
7897 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
7898 (handle_line_prefix): Suppress wrapping of wrap prefixes.
7899
7900 2009-02-14 Eli Zaretskii <eliz@gnu.org>
7901
7902 * msdos.c (MAX_SCREEN_BUF): New macro.
7903 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
7904 Encode the entire run of glyphs sharing the same face, instead of
7905 doing that one glyph at a time (fixes a bug with displaying
7906 double-size characters).
7907
7908 2009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
7909
7910 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
7911
7912 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
7913 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
7914 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
7915
7916 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
7917 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
7918
7919 2009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
7920
7921 * keyboard.c (adjust_point_for_property): Allow stopping between two
7922 invisible areas.
7923
7924 2009-02-12 Jason Rumney <jasonr@gnu.org>
7925
7926 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
7927 (add_font_entity_to_list): Call check_face_name even when family
7928 is unspecified.
7929
7930 * w32term.c (x_display_pixel_height, x_display_pixel_width):
7931 Release DC when finished. Use NULL window to refer to desktop.
7932 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
7933
7934 * w32font.c (add_font_entity_to_list): Fix check for substituted
7935 raster fonts. (Bug#2219)
7936
7937 2009-02-12 Kenichi Handa <handa@m17n.org>
7938
7939 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
7940 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
7941 (autocmp_chars): Use fast_looking_at. Don't compose more
7942 characters than MAX_COMPOSITION_COMPONENTS.
7943 (find_automatic_composition): While looking forward and backward,
7944 check static composition. Fix where to stop looking forward.
7945 (composition_adjust_point): Fix checking of static composition.
7946 (Fcomposition_get_gstring): Pay attention to
7947 MAX_COMPOSITION_COMPONENTS.
7948
7949 * lisp.h (fast_looking_at): Extern it.
7950
7951 * search.c (fast_looking_at): New function.
7952
7953 * term.c (encode_terminal_code): Adjust for the change of
7954 <struct glyph>.u.cmp.to.
7955 (append_composite_glyph): Likewise.
7956
7957 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
7958 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
7959 composition.
7960 (append_composite_glyph): Adjust for the change of
7961 <strcut glyph>.u.cmp.to.
7962
7963 2009-02-11 Juanma Barranquero <lekktu@gmail.com>
7964
7965 * casetab.c (init_casetab_once):
7966 * coding.c (ALLOC_CONVERSION_WORK_AREA):
7967 * font.c (font_update_lface):
7968 * fontset.c (Fnew_fontset):
7969 * ftfont.c (ftfont_drive_otf):
7970 * xfont.c (xfont_open):
7971 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
7972
7973 2009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
7974
7975 * fileio.c (Fwrite_region): !NILP -> CONSP.
7976
7977 2009-02-10 Andreas Schwab <schwab@suse.de>
7978
7979 * process.c (send_process): Properly relocate pointer into data
7980 when using encoded data. (Bug#2272)
7981
7982 2009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
7983
7984 * coding.c (detect_coding_charset): Fix previous change.
7985
7986 2009-02-08 Jason Rumney <jasonr@gnu.org>
7987
7988 * w32fns.c (w32_hide_hourglass): Handle case where frame
7989 disappeared while hourglass was displayed. (Bug #2193)
7990
7991 2009-02-07 Andreas Schwab <schwab@suse.de>
7992
7993 * unexelf.c (unexec): Fix error message.
7994
7995 2009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
7996
7997 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
7998 when modal window is active. (Bug #2152)
7999 (applicationShouldTerminate:): Remove now-unneeded while loop
8000 around NSRunAlertPanel.
8001
8002 * nsmenu.m (popupSession): New file-global variable.
8003 (pop_down_menu): End the popupSession before closing dialog.
8004 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
8005 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
8006 don't query NSApp for events (just sleep instead).
8007
8008 2009-02-07 Eli Zaretskii <eliz@gnu.org>
8009
8010 * coding.c (syms_of_coding) <translation-table-for-input>:
8011 Modify doc string to discourage use for character code unification.
8012
8013 2009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8014
8015 * atimer.c (run_timers): Update pending_atimers.
8016
8017 2009-02-06 Chong Yidong <cyd@stupidchicken.com>
8018
8019 * image.c (svg_load_image): Fix last change.
8020
8021 * xfns.c (Fx_create_frame): Signal an error if no font is
8022 found (Bug#2147).
8023
8024 2009-02-05 Juanma Barranquero <lekktu@gmail.com>
8025
8026 * character.c (syms_of_character) <script-representative-chars>:
8027 Fix typo in docstring.
8028
8029 2009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8030
8031 * nsmenu.m (pop_down_menu): New function.
8032 (ns_popup_dialog): Call it on unwind.
8033 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
8034 call timer_check() (Bug#2154).
8035 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
8036 handling_signal is set.
8037 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
8038
8039 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
8040
8041 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
8042
8043 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
8044
8045 * keyboard.c (poll_for_input_1, handle_async_input):
8046 Set handling_signal under HAVE_NS.
8047
8048 2009-02-04 Glenn Morris <rgm@gnu.org>
8049
8050 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
8051
8052 2009-02-04 Kenichi Handa <handa@m17n.org>
8053
8054 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
8055
8056 * charset.c (Fchar_charset): New optional arg restriction.
8057
8058 * coding.h (coding_system_charset_list): Extern it.
8059
8060 * coding.c (coding_system_charset_list): New function.
8061
8062 * composite.c: Include coding.h and termhooks.h.
8063 (composition_gstring_p): Fix for the terminal case.
8064 (composition_gstring_width): Likewise.
8065 (fill_gstring_body): Likewise.
8066 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
8067 the frame.
8068 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
8069 is within a composition.
8070 (Fcomposition_get_gstring): Fix the terminal case.
8071
8072 * term.c (encode_terminal_code): Fix handling of composition.
8073 (produce_composite_glyph): For static composition, get pixel_width
8074 from struct composition.
8075
8076 2009-02-02 Andreas Schwab <schwab@suse.de>
8077
8078 * unexelf.c (unexec): Handle unaligned bss offset.
8079
8080 2009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8081
8082 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
8083 XT,w32read_socket changes to ns_read_socket.
8084
8085 * keyboard.c (handle_interrupt): Don't call
8086 quit_throw_to_read_char() under NS.
8087
8088 * blockinput.h: Remove NS-specific code.
8089
8090 2009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
8091
8092 * dispnew.c (window_change_signal): Don't try to get the size of a
8093 suspended tty frame.
8094 * term.c (Fresume_tty): Resize if the size has changed while the
8095 tty was suspended.
8096
8097 * alloc.c (mark_stack): Properly conditionalize previous change.
8098
8099 2009-01-30 Juanma Barranquero <lekktu@gmail.com>
8100
8101 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
8102 * w32term.c (w32_read_socket) [SYNC_INPUT]:
8103 Remove; this code is not used on Windows.
8104
8105 2009-01-30 Eli Zaretskii <eliz@gnu.org>
8106
8107 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
8108 EOLs that also has stray ^M characters.
8109
8110 2009-01-30 Juanma Barranquero <lekktu@gmail.com>
8111
8112 * atimer.c (run_timers, alarm_signal_handler):
8113 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
8114 * w32inevt.c (w32_console_read_socket):
8115 * w32term.c (w32_read_socket):
8116 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
8117
8118 2009-01-30 Chong Yidong <cyd@stupidchicken.com>
8119
8120 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
8121 Initialize it as a relative filename pattern.
8122 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
8123 (Fcall_process_region): Simplify temp file creation using
8124 temporary-file-directory.
8125
8126 2009-01-29 Eli Zaretskii <eliz@gnu.org>
8127
8128 * msdos.c: Rename pending_signals to msdos_pending_signals.
8129 (sig_suspender, sigprocmask): Adjust.
8130
8131 2009-01-29 Chong Yidong <cyd@stupidchicken.com>
8132
8133 * keyboard.c (pending_signals): New var.
8134 (poll_for_input, input_available_signal, init_keyboard): Set it.
8135 (process_pending_signals): New function.
8136
8137 * lisp.h (QUIT): Check pending_signals instead of
8138 interrupt_input_pending. Use process_pending_signals.
8139
8140 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
8141
8142 * process.c (wait_reading_process_output): Use process_pending_signals.
8143
8144 * sysdep.c (emacs_write): Use process_pending_signals.
8145
8146 * xterm.c (XTread_socket): Update pending_signals.
8147
8148 * w32term.c (w32_read_socket): Update pending_signals.
8149
8150 * w32inevt.c (w32_console_read_socket): Update pending_signals.
8151
8152 2009-01-29 Kenichi Handa <handa@m17n.org>
8153
8154 * xftfont.c (xftfont_has_char): New function.
8155 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
8156
8157 2009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
8158
8159 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
8160 under GNUstep.
8161 (ns_query_color): New declaration.
8162
8163 * nsterm.m (ns_confirm_quit): New variable.
8164 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
8165 (EmacsApp-applicationShouldTerminate:): Use it.
8166 (EmacsPrefsController): Let user set it.
8167 (ns_query_color): New function.
8168 (ns_defined_color): Use it.
8169 (ns_initialize): Drop.
8170 (ns_term_init): Add two lines from ns_initialize(), and set
8171 input_interrupt_mode to nil.
8172
8173 * image.c (svg_load_image): Don't right-shift background RGB when
8174 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
8175
8176 2009-01-28 Kenichi Handa <handa@m17n.org>
8177
8178 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
8179 (fontset_get_font_group): Remember that no font-group is specified
8180 for C.
8181
8182 2009-01-27 Chong Yidong <cyd@stupidchicken.com>
8183
8184 * fns.c (concat): Check for string overflow (bug#1787).
8185
8186 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
8187 Quadruple undo limits (bug#1501).
8188
8189 2009-01-27 Kenichi Handa <handa@m17n.org>
8190
8191 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
8192 directly use GT_Get_Char_index.
8193
8194 * xftfont.c (struct xftfont_info): New member `index'.
8195
8196 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
8197 (Ffontset_font): Adjust for the change of fontset entry.
8198
8199 2009-01-26 Kenichi Handa <handa@m17n.org>
8200
8201 * fontset.c (fontset_find_font): Fix handling of non-cons return
8202 value of fontset_get_font_group.
8203 (fontset_font): Revert last change.
8204
8205 2009-01-26 Jason Rumney <jasonr@gnu.org>
8206
8207 * w32font.c (w32font_list_internal): Return quickly if registry is
8208 unknown. Simplify final return.
8209 (add_font_entity_to_list): Break complex logic down into more
8210 manageable chunks. Move unknown registry check to
8211 w32font_list_internal.
8212
8213 2009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
8214
8215 Changes to remove Feval calls from GUI under NS.
8216
8217 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
8218 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8219 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
8220
8221 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
8222 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
8223 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
8224 instead of NON_ASCII_KEYSTROKE_EVENT.
8225 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
8226 (EmacsApp-applicationShouldTerminate:): Query user.
8227 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
8228 instead of Feval.
8229
8230 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
8231
8232 * keyboard.c (kbd_buffer_get_event): Check for it.
8233 (keys_of_keyboard): Define lispy keys for
8234 ns-put/unput-working-text.
8235
8236 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
8237 versions.
8238 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
8239
8240 2009-01-25 Chong Yidong <cyd@stupidchicken.com>
8241
8242 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
8243 setting current_buffer directly. (Bug#2044)
8244
8245 2009-01-24 Chong Yidong <cyd@stupidchicken.com>
8246
8247 * fontset.c (fontset_font): If we know there is no font, don't do
8248 any work. (Bug#1952, bug#1990).
8249
8250 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
8251
8252 2009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
8253
8254 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
8255 (ns_no_defaults): New declaration.
8256 (main): Use it.
8257
8258 * nsterm.h (ns_no_defaults): New declaration.
8259
8260 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
8261
8262 * nsterm.m (ns_no_defaults): New variable.
8263 (ns_initialize): Don't read defaults when ns_no_defaults.
8264 (EmacsView-readSelectionFromPasteboard:)
8265 (writeSelectionToPasteboard:types:): New stubbed-out methods for
8266 NSServicesRequests protocol. (Bug#1435)
8267 (ns_dumpglyphs_stretch): New function.
8268 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
8269 of 2008-11-15 to other terms. (Bug#615)
8270
8271 * nsimage.m (setPixmapData:): Set to ignore image DPI.
8272
8273 2009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
8274
8275 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
8276 call for Sparc64.
8277
8278 2009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
8279
8280 * nsfns.m:
8281 * nsgui.h:
8282 * nsmenu.m:
8283 * nsselect.m:
8284 * nsterm.h:
8285 * nsterm.m: Remove '23' comments that indicated code added during
8286 update from emacs-20 -> emacs-23.
8287
8288 2009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
8289
8290 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
8291 ns_alternate_modifier. (Bug#1217)
8292
8293 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
8294 Display all shortcuts, including those w/o super modifier.
8295
8296 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
8297
8298 2009-01-22 Chong Yidong <cyd@stupidchicken.com>
8299
8300 * fileio.c (Vwrite_region_post_annotation_function)
8301 (Vwrite_region_annotation_buffers): New vars.
8302 (build_annotations_unwind): Just reset
8303 Vwrite_region_annotation_buffers.
8304 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
8305 Call write-region-post-annotation-function.
8306 (build_annotations): Add to Vwrite_region_annotation_buffers if
8307 buffer changes.
8308
8309 2009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
8310
8311 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
8312 Tiger.
8313 * nsfns.m (ns_do_applescript):
8314 Conditionalize typeUTF16ExternalRepresentation on Tiger.
8315
8316 2009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
8317
8318 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
8319
8320 2009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
8321
8322 * nsmenu.m (NSMENUPROFILE): Change #if style.
8323
8324 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
8325
8326 * nsterm.m (x_set_frame_alpha): Add prototype.
8327 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
8328 handle Ctrl-tab. (Bug#1841)
8329 (ns_get_color): Use unsigned long long for scanned hex string value.
8330 (ns_term_shutdown): Abort on non SIGTERM signals.
8331 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
8332 (EmacsPrefsController-setPanelFromDefaultValues): New function.
8333 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
8334 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
8335 (ns_defined_color): Fix settings of the XColor variable fields:
8336 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
8337
8338 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
8339 DPI. (Bug#1316)
8340 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
8341 values in onTiger section.
8342
8343 2009-01-19 Chong Yidong <cyd@stupidchicken.com>
8344
8345 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
8346 Check return value of font_spec_from_name.
8347 (Fx_list_fonts): Doc fix. (Bug#1951)
8348
8349 * font.c (font_spec_from_name): Return Qnil if font name could not
8350 be parsed.
8351 (font_parse_name): Treat a `?' character as part of an XLFD.
8352
8353 * fns.c (Fsubstring): Doc fix.
8354
8355 2009-01-19 Kenichi Handa <handa@m17n.org>
8356
8357 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
8358 (ftfont_list): Likewise.
8359
8360 2009-01-18 Juanma Barranquero <lekktu@gmail.com>
8361
8362 * dbusbind.c (Fdbus_register_signal):
8363 * process.c (conv_sockaddr_to_lisp):
8364 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
8365
8366 * callproc.c (Fgetenv_internal): Doc fix.
8367
8368 2009-01-16 Chong Yidong <cyd@stupidchicken.com>
8369
8370 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
8371 it is not even used.
8372
8373 2009-01-16 Glenn Morris <rgm@gnu.org>
8374
8375 * font.c (Ffont_variation_glyphs): Silence compiler.
8376
8377 2009-01-15 Juanma Barranquero <lekktu@gmail.com>
8378
8379 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
8380 Reported by David Robinow <drobinow@gmail.com>.
8381
8382 2009-01-15 Kenichi Handa <handa@m17n.org>
8383
8384 * coding.c (detect_coding_system): Fix handling of null_byte_found.
8385
8386 2009-01-14 Jason Rumney <jasonr@gnu.org>
8387
8388 * frame.c (x_set_font): Always store a font to the font parameter,
8389 never a fontset. (Bug#1562)
8390
8391 2009-01-14 Kenichi Handa <handa@m17n.org>
8392
8393 * coding.c (TWO_MORE_BYTES): New macro.
8394 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
8395
8396 2009-01-13 Chong Yidong <cyd@stupidchicken.com>
8397
8398 * font.c (font_clear_prop): If clearing the family, clear the font
8399 width index too.
8400
8401 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
8402
8403 2009-01-12 Juanma Barranquero <lekktu@gmail.com>
8404
8405 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
8406 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
8407 functions, use sizeof.
8408
8409 2009-01-12 Martin Rudalics <rudalics@gmx.at>
8410
8411 * keyboard.c (read_char): Fix case where last_nonmenu_event
8412 returned a bad value with submenus. (Bug#447)
8413
8414 2009-01-12 Chong Yidong <cyd@stupidchicken.com>
8415
8416 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
8417 family, clear the font width index too.
8418
8419 2009-01-11 Jason Rumney <jasonr@gnu.org>
8420
8421 * keyboard.c (cmd_error_internal): Exit when errors occur before
8422 frame creation and not in daemon mode. (Bug#1836)
8423
8424 2009-01-10 Chong Yidong <cyd@stupidchicken.com>
8425
8426 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
8427 of a display vector, backtrack.
8428 (try_window_reusing_current_matrix): Check glyph type before
8429 referencing charpos member.
8430
8431 2009-01-10 Eli Zaretskii <eliz@gnu.org>
8432
8433 Fix Bug #876:
8434
8435 * coding.c (inhibit_null_byte_detection): New variable.
8436 (detect_coding, detect_coding_system): Don't pay attention to null
8437 bytes if inhibit_null_byte_detection is non-zero.
8438 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
8439 <inhibit-iso-escape-detection>: Doc fix.
8440
8441 2009-01-09 Jason Rumney <jasonr@gnu.org>
8442
8443 * w32font.c (add_font_entity_to_list): Don't report unknown
8444 Windows charset as any unrecognized registry. (Bug#1548)
8445 Only report Unicode Plane 2 fonts as unicode-sip.
8446
8447 2009-01-09 Chong Yidong <cyd@stupidchicken.com>
8448
8449 * xfaces.c (Fx_font_family_list): Delete function.
8450 Move compatibility version to faces.el.
8451
8452 * font.c (Ffont_family_list): Return a list of strings, not symbols.
8453
8454 2009-01-09 Martin Rudalics <rudalics@gmx.at>
8455
8456 * frame.c (x_set_frame_parameters): Remember requested value for
8457 fullscreen before it's reset by the parameter handler.
8458
8459 2009-01-09 Glenn Morris <rgm@gnu.org>
8460
8461 * keyboard.c (last_command_char): For clarity, rename to...
8462 (last_command_event): ... and update all users.
8463 (last_input_char): For clarity, rename to...
8464 (last_input_event): ... and update all users.
8465 (last-command-char, last-input-char): Move to subr.el as aliases.
8466 * cmds.c, commands.h: Update for last_command_char rename.
8467
8468 2009-01-08 Chong Yidong <cyd@stupidchicken.com>
8469
8470 * font.c (font_open_for_lface): Handle unspecified height attribute.
8471
8472 2009-01-08 Jason Rumney <jasonr@gnu.org>
8473
8474 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
8475 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
8476 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
8477 Don't declare.
8478 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
8479 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
8480
8481 2009-01-07 Kenichi Handa <handa@m17n.org>
8482
8483 * fileio.c (Finsert_file_contents): In the case of replace,
8484 remember the coding system used for decoding in
8485 coding_system (Bug#1039).
8486
8487 * coding.c (decode_coding_utf_8): Check byte_after_cr before
8488 breaking the loop. (Bug#870)
8489 (decode_coding_utf_16, decode_coding_emacs_mule)
8490 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
8491 (decode_coding_charset): Likewise.
8492
8493 2009-01-05 Martin Rudalics <rudalics@gmx.at>
8494
8495 * frame.c (x_set_frame_parameters): Make sure height (width) get
8496 applied when fullwidth (fullheight) is set. (Bug#1522)
8497
8498 2009-01-04 Juanma Barranquero <lekktu@gmail.com>
8499
8500 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
8501 (utc_base): Declare as ULONGLONG, not long double.
8502 (convert_time_raw): Delete.
8503 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
8504 (initialize_utc_base): New function.
8505 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
8506 (convert_from_time_t): Use initialize_utc_base; compute result with
8507 64-bit arithmetic.
8508 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
8509
8510 2009-01-03 Eli Zaretskii <eliz@gnu.org>
8511
8512 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
8513 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
8514 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
8515 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
8516 [!subprocesses]: Define.
8517 (syms_of_process) [!subprocesses]: Intern and staticpro them.
8518 (Flist_system_processes, Fsystem_process_attributes)
8519 [!subprocesses]: Call list_system_processes and
8520 system_process_attributes instead of returning Qnil.
8521
8522 * dosfns.c (system_process_attributes, list_system_processes):
8523 New functions.
8524
8525 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
8526
8527 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
8528 Don't use the default (no-op) implementation.
8529
8530 2009-01-03 Jason Rumney <jasonr@gnu.org>
8531
8532 * keyboard.c (parse_modifiers_uncached): Wheel events are
8533 clicks (bug#687).
8534
8535 * w32term.c (x_query_colors, x_query_color): New functions.
8536
8537 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
8538 (svg_load_image): Cast returned pointers from dynamically loaded
8539 functions. Eliminate W32 specific code.
8540
8541 2009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
8542
8543 * nsfns.m (x_set_foreground_color, x_set_background_color)
8544 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
8545 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
8546 x_ prefix instead of ns_. Update references.
8547 (syms_of_nsfns): Add a FIXME comment.
8548
8549 * nsterm.m (x_set_cursor_type): New prototype.
8550 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
8551
8552 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
8553 for Solaris instead of incorrectly providing Qutime and Qcutime.
8554
8555 2009-01-02 Eli Zaretskii <eliz@gnu.org>
8556
8557 * w32.c (process_times): Compute sum of utime and stime.
8558 (system_process_attributes): Add Qtime to the alist.
8559
8560 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
8561 and add them to the alist.
8562
8563 * process.c (top level) <Qtime, Qctime>: New variables.
8564 (syms_of_process): staticpro them.
8565 (Fsystem_process_attributes): Add their documentation to the doc
8566 string.
8567
8568 * process.h: Declare Qtime and Qctime.
8569
8570 2009-01-02 Jason Rumney <jasonr@gnu.org>
8571
8572 * image.c (Qgobject): New symbol.
8573 (syms_of_image): Initialize it.
8574 (init_svg_functions): Load some functions from gobject library.
8575
8576 2009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
8577
8578 * frame.c (make_terminal_frame): Remove redundant code and useless
8579 block.
8580
8581 2009-01-01 Andreas Schwab <schwab@suse.de>
8582
8583 * process.c (conv_sockaddr_to_lisp): Add workaround for
8584 getsockname bug on BSD.
8585
8586 2009-01-01 Chong Yidong <cyd@stupidchicken.com>
8587
8588 * xfns.c (x_create_tip_frame): Set border width of the X window.
8589
8590 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
8591
8592 2009-01-01 Jason Rumney <jasonr@gnu.org>
8593
8594 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
8595 Don't block input, as per earlier xterm.c changes.
8596
8597 2008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
8598
8599 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
8600 (ns_appkit_version_int): New function.
8601 (x-server-version): Use ns_appkit_version_int and follow 21+
8602 convention of returning 3 integers.
8603
8604 2008-12-30 Kenichi Handa <handa@m17n.org>
8605
8606 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
8607 (CHAR_SURROGATE_PAIR_P): New macro.
8608
8609 * font.h (struct font_driver): New member get_variation_glyphs.
8610
8611 * font.c (font_range): Don't require a font for a variation selector.
8612 (Ffont_variation_glyphs): New function.
8613 (syms_of_font): Defsubr it.
8614
8615 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
8616 ftfont_variation_glyphs.
8617 (setup_otf_gstring): New function.
8618 (ftfont_drive_otf): Use it.
8619 (ftfont_shape_by_flt): Handle variation selector.
8620 (ftfont_variation_glyphs): New function.
8621
8622 2008-12-30 Martin Rudalics <rudalics@gmx.at>
8623
8624 * frame.c (Vemacs_iconified): Remove.
8625
8626 2008-12-30 Jason Rumney <jasonr@gnu.org>
8627
8628 * frame.c (store_frame_param, x_get_arg): Enable newer code on
8629 WINDOWSNT too, as related changes have already been synced. (Bug#117)
8630
8631 2008-12-30 Chong Yidong <cyd@stupidchicken.com>
8632
8633 * indent.c (Fvertical_motion): Don't advance iterator if we have
8634 reseated to the desired position.
8635
8636 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
8637 checking for pos match.
8638
8639 2008-12-30 Kenichi Handa <handa@m17n.org>
8640
8641 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
8642 just get the low 8-bit of the code.
8643
8644 * font.c (font_intern_prop): Validate str as multibyte.
8645
8646 2008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
8647
8648 * dispextern.h (struct face): Move lface and hash from the middle
8649 of bitfields.
8650
8651 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
8652
8653 2008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
8654
8655 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
8656 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
8657 instead of intervals.h.
8658
8659 2008-12-26 Andreas Schwab <schwab@suse.de>
8660
8661 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
8662 cons.
8663
8664 2008-12-26 Martin Rudalics <rudalics@gmx.at>
8665
8666 * textprop.c (Qminibuffer_prompt): New variable.
8667 (syms_of_textprop): Initialize it.
8668 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
8669 in minibuffer-prompt face. (Bug#1662)
8670
8671 2008-12-25 Jason Rumney <jasonr@gnu.org>
8672
8673 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
8674
8675 2008-12-24 Jason Rumney <jasonr@gnu.org>
8676
8677 * ralloc.c (r_alloc_reset_variable): New function.
8678
8679 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
8680 record of what points where. (Bug#716)
8681
8682 2008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
8683
8684 * minibuf.c (read_minibuf): Follow the non-interactive case when
8685 running as a daemon, before detaching.
8686
8687 2008-12-22 Andreas Schwab <schwab@suse.de>
8688
8689 * buffer.c (init_buffer): Use realloc instead of xrealloc.
8690 * gtkutil.c (free_widget_value): Use xfree instead of free.
8691
8692 2008-12-22 Martin Rudalics <rudalics@gmx.at>
8693
8694 * frame.c (delete_frame): New function derived from
8695 Fdelete_frame to handle Qnoelisp value for FORCE argument.
8696 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
8697 (Fdelete_frame): Call delete_frame. Remove line from doc-string
8698 saying that FORCE non-nil doesn't run `delete-frame-functions'.
8699 * frame.h: Extern delete_frame.
8700 * window.c (window_loop):
8701 * terminal.c (delete_terminal):
8702 * xterm.c (x_connection_closed):
8703 * xfns.c (Fx_hide_tip):
8704 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
8705
8706 2008-12-21 Jason Rumney <jasonr@gnu.org>
8707
8708 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
8709 when character maps to .notdef character.
8710
8711 2008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
8712
8713 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
8714
8715 2008-12-20 Jason Rumney <jasonr@gnu.org>
8716
8717 * frame.c (Fmake_terminal_frame): Raise an error when called from
8718 a graphical frame on Windows. (Bug#1325)
8719
8720 2008-12-20 Jan Djärv <jan.h.d@swipnet.se>
8721
8722 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
8723
8724 2008-12-20 Chong Yidong <cyd@stupidchicken.com>
8725
8726 * minibuf.c (Fread_buffer): Doc fix.
8727
8728 2008-12-20 Jason Rumney <jasonr@gnu.org>
8729
8730 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
8731 server name in UNC paths. (Bug#719)
8732
8733 * coding.c (decode_coding): Clear chars_at_source flag when using
8734 charbuf. (Bug#1035)
8735
8736 2008-12-19 Daniel Engeler <engeler@gmail.com>
8737
8738 * sysdep.c (serial_configure): Fix typo.
8739
8740 2008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
8741
8742 * sysdep.c: Include alloca.h.
8743 (system_process_attributes): Add implementation for Solaris.
8744
8745 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
8746
8747 2008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
8748
8749 Reorganize implementation of Flist_system_processes and
8750 Fsystem_process_attributes. No functional changes.
8751 * process.c: Don't #include pwd.h, grp.h and limits.h.
8752 (Flist_system_processes): Just call list_system_processes.
8753 (Fsystem_process_attributes): Just call system_process_attributes.
8754 (procfs_list_system_processes, time_from_jiffies)
8755 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
8756 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
8757
8758 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
8759 (list_system_processes): Rename from
8760 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
8761 Provide a do nothing implementation.
8762 (system_process_attributes): Rename from
8763 procfs_list_system_processes.
8764 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
8765 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
8766
8767 * w32.c (list_system_processes): Rename from
8768 w32_list_system_processes.
8769 (system_process_attributes): Rename from
8770 w32_system_process_attributes.
8771
8772 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
8773
8774 * process.h (w32_list_system_processes)
8775 (w32_system_process_attributes): Remove.
8776 (list_system_processes, system_process_attributes):
8777 New prototypes.
8778
8779 2008-12-19 Kenichi Handa <handa@m17n.org>
8780
8781 * xfont.c (xfont_decode_coding_xlfd): New function.
8782 (xfont_encode_coding_xlfd): New function.
8783 (xfont_list_pattern): Decode XLFD by iso-8859-1.
8784 (xfont_list): Decode and encode XLFD by iso-8859-1.
8785 (xfont_match): Likewise.
8786 (xfont_list_family): Likewise.
8787 (xfont_open): Likewise.
8788
8789 * ftfont.c (ftfont_open): Generate a multibyte string if given
8790 names are utf-8.
8791
8792 * xftfont.c (xftfont_open): Generate a multibyte string if given
8793 names are utf-8.
8794
8795 2008-12-18 Jan Djärv <jan.h.d@swipnet.se>
8796
8797 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
8798 changed.
8799 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
8800 clicked on a detached tool bar button.
8801
8802 2008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
8803
8804 * emacs.c (main): Print and error and exit when no data is read
8805 from the pipe.
8806
8807 2008-12-17 Jason Rumney <jasonr@gnu.org>
8808
8809 * w32font.c (w32font_has_char): Always return -1.
8810
8811 2008-12-16 Kenichi Handa <handa@m17n.org>
8812
8813 * font.c (font_open_entity): Fix previous change.
8814
8815 2008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
8816
8817 * process.c: Include <limits.h>.
8818
8819 2008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
8820
8821 * font.c (font_update_drivers): Fix mistake in reconstructing the
8822 driver list.
8823
8824 2008-12-16 Chong Yidong <cyd@stupidchicken.com>
8825
8826 * font.c (font_clear_cache): Fix format of font cache data.
8827
8828 2008-12-15 Chong Yidong <cyd@stupidchicken.com>
8829
8830 * xftfont.c (xftfont_open): Free Xft font pattern if
8831 XftFontOpenPattern fails.
8832
8833 * xterm.c (x_free_frame_resources): Remove extraneous call to
8834 free_frame_faces.
8835
8836 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
8837
8838 * xterm.c (x_delete_display): Move xim_close_dpy call to
8839 x_delete_terminal.
8840 (x_delete_terminal): Call xim_close_dpy.
8841
8842 2008-12-13 Jason Rumney <jasonr@gnu.org>
8843
8844 * w32font.c (intern_font_name): New function.
8845 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
8846 (w32font_open_internal, Fx_select_font): Decode font name.
8847 (fill_in_logfont, list_all_matching_fonts): Encode font name.
8848
8849 * w32font.h (intern_font_name): Declare new function.
8850
8851 * w32uniscribe.c (add_opentype_font_name_to_list):
8852 Use intern_font_name.
8853
8854 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
8855
8856 * frame.c (Fdelete_frame): Call free_font_driver_list.
8857
8858 * font.c (free_font_driver_list): Implement missing function.
8859
8860 * w32term.c (w32_term_init): Don't initialize the image cache
8861 here; it will be done in init_frame_faces.
8862
8863 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
8864 (struct x_display_info): Remove unused member null_pixel. New
8865 member xim_callback_data.
8866
8867 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
8868 (xim_initialize): Save pointer to callback function data.
8869 (xim_close_dpy): Free callback function data. Call XCloseIM,
8870 reverting 2008-11-04 change by David Smith.
8871 (x_term_init): Don't initialize the image cache here; it will be
8872 done in init_frame_faces. Remove ancient "null_pixel" cruft.
8873 (x_delete_display): Free x_dnd_atoms member.
8874
8875 2008-12-13 Kenichi Handa <handa@m17n.org>
8876
8877 * font.c (font_rescale_ratio): Moved from xfaces.c.
8878 Argument type changed. Handle a font-spec too.
8879 (font_score): Check Vface_font_rescale_alist.
8880 (font_open_entity): Likewise. (Bug#1547)
8881
8882 * xfaces.c (font_rescale_ratio): Moved to font.c.
8883
8884 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
8885
8886 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
8887
8888 2008-12-12 Jason Rumney <jasonr@gnu.org>
8889
8890 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
8891 Vwindow_system_version to the real w32 major version.
8892
8893 2008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
8894
8895 * term.c (init_tty): Move setting the terminal name before the
8896 potential user: maybe_fatal.
8897
8898 2008-12-11 Chong Yidong <cyd@stupidchicken.com>
8899
8900 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
8901 all callers changed. Call free_frame_faces to free the face cache.
8902
8903 2008-12-11 Jason Rumney <jasonr@gnu.org>
8904
8905 * w32font.c (fill_in_logfont): Don't assume symbol script means
8906 SYMBOL_CHARSET. (Bug#547)
8907
8908 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
8909 size for surrogates. (Bug#1096, bug#872)
8910
8911 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
8912
8913 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
8914
8915 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
8916
8917 * process.c (Fsystem_process_attributes, syms_of_process):
8918 Fix typo in name of Ssystem_process_attributes.
8919 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
8920
8921 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
8922
8923 * syntax.c (Fmodify_syntax_entry): Doc fix.
8924
8925 2008-12-10 Juanma Barranquero <lekktu@gmail.com>
8926
8927 * font.c (Ffont_spec): Move usage to end of docstring.
8928
8929 2008-12-10 Jason Rumney <jasonr@gnu.org>
8930
8931 * w32font.c (Qcham): New symbol.
8932 (font_supported_scripts): Add cham, and comments for other new
8933 scripts in bitfield from OpenType spec.
8934 (add_font_entity_to_list): Limit unicode-sip fonts to those that
8935 contain characters beyond the bmp.
8936
8937 2008-12-10 Kenichi Handa <handa@m17n.org>
8938
8939 * ftfont.c (fc_charset_table): Add "unicode-sip".
8940 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
8941 Qunicode_sip.
8942
8943 2008-12-10 Juanma Barranquero <lekktu@gmail.com>
8944
8945 * coding.c (QCdefault_char): Rename from QCdefalut_char.
8946 (Fcoding_system_put): Use QCdefault_char.
8947 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
8948
8949 2008-12-09 Chong Yidong <cyd@stupidchicken.com>
8950
8951 * xftfont.c (syms_of_xftfont): Fix typo.
8952
8953 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
8954
8955 2008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
8956
8957 * emacs.c (main): Close daemon_pipe on exec.
8958
8959 2008-12-08 Chong Yidong <cyd@stupidchicken.com>
8960
8961 * termchar.h (struct tty): New members termcap_term_buffer and
8962 termcap_strings_buffer.
8963
8964 * term.c (encode_terminal_code): Free any previous memory blocks
8965 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
8966 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
8967 All callers changed.
8968 (init_tty): Store termcap data and string buffers in new struct
8969 tty members termcap_term_buffer and termcap_strings_buffer.
8970 (delete_tty): Free them.
8971 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
8972
8973 2008-12-07 Seiji Zenitani <zenitani@mac.com>
8974
8975 * nsfns.m (ns_set_background_color): Remove code duplication.
8976 It was a substitute for face-transparency on OS X 10.3.
8977
8978 2008-12-06 Chong Yidong <cyd@stupidchicken.com>
8979
8980 * coding.c (make_conversion_work_buffer): Disable buffer
8981 modification hooks in the work buffer.
8982
8983 2008-12-05 Eli Zaretskii <eliz@gnu.org>
8984
8985 * process.c (procfs_system_process_attributes): If `nread' has a
8986 negative value, assign zero to it.
8987
8988 2008-12-05 Chong Yidong <cyd@stupidchicken.com>
8989
8990 * eval.c (Vdebug_on_error): Doc fix.
8991
8992 2008-12-05 Kenichi Handa <handa@m17n.org>
8993
8994 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
8995 second character is a combining character.
8996
8997 2008-12-05 Eli Zaretskii <eliz@gnu.org>
8998
8999 * process.c (procfs_system_process_attributes): Don't use cmd,
9000 cmdsize, and q without initializing them first.
9001
9002 2008-12-04 Jason Rumney <jasonr@gnu.org>
9003
9004 * w32font.c (w32font_draw): Initialize orig_clip before getting
9005 it, and delete it when finished.
9006
9007 2008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
9008
9009 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
9010 case when running as a daemon before detaching.
9011
9012 2008-12-03 Juanma Barranquero <lekktu@gmail.com>
9013
9014 * w32.c (init_environment): Don't unload library shell32.dll.
9015
9016 2008-12-03 Kenichi Handa <handa@m17n.org>
9017
9018 * font.c (font_at): Set `multibyte' at first.
9019
9020 * coding.c (decode_coding_charset): Check type of an element of
9021 vector VALIDS.
9022 (encode_coding_emacs_mule): Be sure to set `code'.
9023
9024 * fontset.c (face_for_char): Handle invalid charset property correctly.
9025 (font_for_char): Likewise.
9026
9027 2008-12-03 Chong Yidong <cyd@stupidchicken.com>
9028
9029 * font.c (Fopen_font): Compute pixel size correctly.
9030 (font_update_lface): Handle fonts with corrupted size specs,
9031 i.e. non-int and non-float.
9032
9033 * ftfont.c (ftfont_match): Initialize entity variable.
9034 (ftfont_resolve_generic_family): Avoid using uninitialized var.
9035 (ftfont_list_family): Initialize list var earlier.
9036
9037 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
9038
9039 * xterm.c (x_draw_glyph_string): Fall back on
9040 underline_minimum_offset for underline position.
9041
9042 2008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
9043
9044 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
9045
9046 * character.c (c_string_width): Specify the type for LEN.
9047
9048 2008-12-03 Kenichi Handa <handa@m17n.org>
9049
9050 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
9051 (decode_coding_utf_8): Likewise.
9052 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
9053 (produce_chars): Initialize consumed_chars to 0.
9054
9055 2008-12-02 Chong Yidong <cyd@stupidchicken.com>
9056
9057 * keyboard.c (make_lispy_position): Only use PT if the selected
9058 window is current.
9059
9060 2008-12-02 Andreas Schwab <schwab@suse.de>
9061
9062 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
9063
9064 * doprnt.c (doprnt1): Fix size of charbuf.
9065
9066 2008-12-02 Chong Yidong <cyd@stupidchicken.com>
9067
9068 * keyboard.c (timer_check): Revert last change.
9069
9070 2008-12-02 Juanma Barranquero <lekktu@gmail.com>
9071
9072 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
9073
9074 2008-12-01 Juanma Barranquero <lekktu@gmail.com>
9075
9076 * makefile.w32-in: Update dependencies.
9077 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
9078
9079 2008-12-01 Andreas Schwab <schwab@suse.de>
9080
9081 * font.c (register_font_driver): Use xmalloc.
9082 (font_put_frame_data): Likewise.
9083
9084 2008-12-01 Chong Yidong <cyd@stupidchicken.com>
9085
9086 * xfaces.c (realize_x_face): Make abort condition clearer.
9087
9088 * gtkutil.c (update_frame_tool_bar): Initialize variable.
9089
9090 2008-11-30 Chong Yidong <cyd@stupidchicken.com>
9091
9092 * keyboard.c (timer_check): After a timer runs, ensure that the
9093 selected window's buffer is current.
9094
9095 2008-11-30 Juanma Barranquero <lekktu@gmail.com>
9096
9097 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
9098 It was accidentally restored by the Unicode merge.
9099
9100 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
9101
9102 2008-11-29 Juanma Barranquero <lekktu@gmail.com>
9103
9104 * w32proc.c: Include "coding.h".
9105 (Fw32_short_file_name): Encode filename passed to Windows API.
9106 (Fw32_long_file_name): Encode filename passed to Windows API and
9107 decode back the result. (Bug#1433)
9108
9109 2008-11-29 Kenichi Handa <handa@m17n.org>
9110
9111 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
9112 not before accessing it.
9113
9114 * charset.c (Fdefine_charset_internal): After calculating
9115 min_char, max_char, and fastmap, copy the charset structure again.
9116 (encode_char): Fix the previous change.
9117
9118 2008-11-28 Seiji Zenitani <zenitani@mac.com>
9119
9120 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
9121
9122 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
9123
9124 * nsterm.m (x_set_frame_alpha): New function.
9125
9126 2008-11-27 Eli Zaretskii <eliz@gnu.org>
9127
9128 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
9129
9130 2008-11-27 Juanma Barranquero <lekktu@gmail.com>
9131
9132 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
9133 pointer to check_face_name.
9134
9135 2008-11-27 Kenichi Handa <handa@m17n.org>
9136
9137 * category.h (SET_CATEGORY_SET): Call set_category_set.
9138 (set_category_set): Extern it.
9139
9140 * category.c (hash_get_category_set): New function.
9141 (Fmodify_category_entry): Adjusted for the change of
9142 char_table_ref_and_range. Call hash_get_category_set to get a
9143 category set to store in the table.
9144
9145 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
9146 Funify_charset.
9147
9148 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
9149 (DECODE_CHAR): Check if the decoder vector is ready.
9150 (ENCODE_CHAR): Check if the encoder char-table is ready.
9151 (maybe_unify_char): Extern it.
9152
9153 * charset.c (Vchar_unified_charset_table): Delete it.
9154 (inhibit_load_charset_map): New variable.
9155 (temp_charset_work): New variable.
9156 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
9157 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
9158 New macros.
9159 (load_charset_map): Meaning of control_flag changed. If
9160 inhibit_load_charset_map is nonzero, setup a table in
9161 temp_charset_work.
9162 (load_charset): New argument control_flag.
9163 (map_charset_for_dump): New function.
9164 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
9165 map_charset_for_dump.
9166 (Fdefine_charset_internal): If the charset method is MAP, load
9167 mapping tables by calling load_charset.
9168 (Funify_charset): Don't load a mapping table but directly set
9169 Vchar_unify_table.
9170 (maybe_unify_char): New function.
9171 (decode_char): Don't handle the deleted method MAP_DEFERRED.
9172 Handle the case of inhibit_load_charset_map being nonzero.
9173 (encode_char): Don't handle the deleted method MAP_DEFERRED.
9174 Handle the case of inhibit_load_charset_map being nonzero.
9175 (Fclear_charset_maps): Just free temp_charset_work.
9176 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
9177 variable.
9178
9179 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
9180 change of char_table_ref_and_range.
9181 (char_table_ref_and_range): Change the meaning of argument FROM
9182 and TO. Now the caller must provide initial values for *FROM
9183 and *TO.
9184
9185 * fontset.c (fontset_add): Adjusted for the change of
9186 char_table_ref_and_range.
9187 (fontset_get_font_group): Likewise.
9188 (Ffontset_info): Likewise.
9189
9190 * keymap.c (describe_vector): Adjusted for the change of
9191 char_table_ref_and_range. For char-table, put boundary between
9192 non-ASCII and 8-bit characters.
9193
9194 * print.c (print_object): For bool-vector, delete unnecessary
9195 check of ASCII_BYTE_P.
9196
9197 2008-11-26 Jason Rumney <jasonr@gnu.org>
9198
9199 * w32font.c (w32font_open_internal): Don't include external
9200 leading in font height. (Bug#879)
9201
9202 2008-11-26 Glenn Morris <rgm@gnu.org>
9203
9204 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
9205 redefinition with ifdef. (Bug#1383)
9206
9207 2008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
9208
9209 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
9210
9211 2008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
9212
9213 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
9214 New EmacsView methods.
9215 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
9216 Fixes bug #1048,1357,1414.
9217
9218 2008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
9219
9220 Fix bug #1362.
9221 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
9222 is not an indexed color.
9223 * nsterm.m (free_indexed_color): Add argument checking.
9224 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
9225
9226 2008-11-24 Chong Yidong <cyd@stupidchicken.com>
9227
9228 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
9229 Document confirm-after-completion value for
9230 minibuffer-completion-confirm.
9231
9232 2008-11-24 Jason Rumney <jasonr@gnu.org>
9233
9234 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
9235 warning.
9236
9237 2008-11-23 Jason Rumney <jasonr@gnu.org>
9238
9239 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
9240 restored before returning.
9241
9242 * w32font.c (check_face_name): New function.
9243 (add_font_entity_to_list): Use it to filter out common substituted
9244 fonts. (Bug#642)
9245
9246 2008-11-22 Martin Rudalics <rudalics@gmx.at>
9247
9248 * buffer.c (Fswitch_to_buffer): Reword and mention new option
9249 confirm-nonexistent-file-or-buffer in doc-string.
9250
9251 2008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
9252
9253 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
9254 Fix copy/paste typo. Add checks.
9255
9256 2008-11-21 Kenichi Handa <handa@m17n.org>
9257
9258 * coding.c (detect_coding_iso_2022): Reject invalid composition
9259 sequence.
9260 (DECODE_COMPOSITION_START): If the current source is the last
9261 block, and the current composition doesn't end, regard this
9262 sequence as invalid.
9263 (decode_coding_iso_2022): Handle invalid composition sequence.
9264
9265 2008-11-20 Martin Rudalics <rudalics@gmx.at>
9266
9267 * window.c (coordinates_in_window): Don't return
9268 ON_VERTICAL_BORDER for the rightmost position of a mode/header
9269 line when the window is not the rightmost one. (Bug#1372)
9270
9271 2008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
9272
9273 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
9274
9275 2008-11-15 Eli Zaretskii <eliz@gnu.org>
9276
9277 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
9278 and bright_bg if noninteractive is non-zero.
9279
9280 2008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9281
9282 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
9283 x_draw_glyph_string_background.
9284
9285 * w32term.c (x_draw_glyph_string): Likewise.
9286
9287 2008-11-15 Chong Yidong <cyd@stupidchicken.com>
9288
9289 * xterm.c (x_draw_glyph_string): Stop drawing the background of
9290 the next glyph string once past the overhang width.
9291
9292 * nsterm.m (ns_draw_glyph_string): Likewise.
9293
9294 * w32term.c (x_draw_glyph_string): Likewise.
9295
9296 2008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
9297
9298 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
9299 double file close.
9300
9301 2008-11-14 Martin Rudalics <rudalics@gmx.at>
9302
9303 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
9304 dedicated status of window before attempting to display another
9305 buffer in it.
9306
9307 2008-11-14 Juanma Barranquero <lekktu@gmail.com>
9308
9309 * msdos.c (Fmsdos_long_file_names):
9310 (syms_of_msdos) <dos-unsupported-char-glyph>:
9311 * dosfns.c (Fint86): Fix typos in docstrings.
9312
9313 2008-11-14 Eli Zaretskii <eliz@gnu.org>
9314
9315 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
9316
9317 2008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
9318
9319 * puresize.h (BASE_PURESIZE): Increase to 1260000.
9320
9321 2008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
9322
9323 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
9324
9325 * frame.h: Negative alpha means "don't touch".
9326
9327 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
9328
9329 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
9330
9331 2008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
9332
9333 * hftctl.c:
9334 * chpdef.h:
9335 * acldef.h: Remove files used only for systems no longer supported.
9336
9337 * Makefile.in: Fix .o alphabetical ordering.
9338 (hftctl.o): Remove dependency, file removed.
9339 (keymap.o, print.o): Depend on charset.h.
9340
9341 2008-11-10 Kenichi Handa <handa@m17n.org>
9342
9343 * character.c (Fget_byte): Fix and make it faster for unibyte target.
9344
9345 2008-11-08 Chong Yidong <cyd@stupidchicken.com>
9346
9347 * dired.c (file_name_completion): If completion_ignore_case is
9348 enabled, ignore case when checking completion-regexp-list.
9349
9350 2008-11-08 Eli Zaretskii <eliz@gnu.org>
9351
9352 * vm-limit.c (get_lim_data): Fix last change.
9353
9354 2008-11-08 Kenichi Handa <handa@m17n.org>
9355
9356 * character.c (Fget_byte): New function.
9357 (syms_of_character): Defsubr Fget_byte.
9358
9359 2008-11-07 Chong Yidong <cyd@stupidchicken.com>
9360
9361 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
9362 cursor position is valid after scrolling.
9363
9364 2008-11-06 Juanma Barranquero <lekktu@gmail.com>
9365
9366 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
9367
9368 2008-11-06 Glenn Morris <rgm@gnu.org>
9369
9370 * xterm.c (handle_one_xevent): Don't let popup menus cause
9371 mouse-autoselect-window related window switching. (Bug#1261)
9372
9373 2008-11-04 David Smith <davidsmith@acm.org> (tiny change)
9374
9375 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
9376
9377 2008-11-04 Andreas Schwab <schwab@suse.de>
9378
9379 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
9380
9381 2008-11-03 Chong Yidong <cyd@stupidchicken.com>
9382
9383 * xfns.c (Fx_wm_set_size_hint): New function.
9384
9385 2008-11-03 Martin Rudalics <rudalics@gmx.at>
9386
9387 * textprop.c (Fprevious_single_char_property_change): Return 0
9388 when there's no change in a string. (Bug#1301)
9389
9390 2008-11-02 Martin Rudalics <rudalics@gmx.at>
9391
9392 * frame.c (do_switch_frame): New argument NORECORD passed to
9393 Fselect_window.
9394 (Fselect_frame): New argument NORECORD passed to
9395 do_switch_frame.
9396 (Fset_frame_selected_window): New argument NORECORD passed to
9397 Fselect_frame.
9398 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
9399 in call of do_switch_frame.
9400 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
9401 Handle NORECORD argument in call of Fselect_frame.
9402 * lisp.h (do_switch_frame, Fselect_frame)
9403 (Fset_frame_selected_window): Adjust declarations.
9404 * window.c (select_frame_norecord): New function.
9405 (run_window_configuration_change_hook): Use it and call
9406 Fselect_frame with NORECORD set.
9407 (Fselect_window): Pass NORECORD to Fselect_frame.
9408 (Fset_window_configuration): Handle NORECORD argument in call of
9409 do_switch_frame.
9410 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
9411 Fset_frame_selected_window.
9412 * keyboard.c (command_loop_1): Handle NORECORD in call of
9413 Fselect_frame (currently ifdefd).
9414
9415 2008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
9416
9417 * emacs.c (USAGE2): Untabify.
9418
9419 2008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
9420
9421 * composite.c (fill_gstring_header): Fix copy/paste typo.
9422
9423 2008-10-31 Martin Rudalics <rudalics@gmx.at>
9424
9425 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
9426 (Fother_window): Rename argument and rewrite doc-string.
9427 (select_window_norecord): Fix return value. (Bug#1276)
9428
9429 2008-10-30 Juanma Barranquero <lekktu@gmail.com>
9430
9431 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
9432 new frames overriding foreground for tooltips. Based on similar patch
9433 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
9434
9435 2008-10-29 Chong Yidong <cyd@stupidchicken.com>
9436
9437 * emacs.c (Fdaemon_initialized): Initialize nfd.
9438
9439 2008-10-29 Martin Rudalics <rudalics@gmx.at>
9440
9441 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
9442 (Fwindow_text_height): Clarify doc-strings.
9443 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
9444 doc-string of window-scroll-functions.
9445
9446 2008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
9447
9448 * category.c (syms_of_category): Fix typo in docstring.
9449
9450 2008-10-28 Juanma Barranquero <lekktu@gmail.com>
9451
9452 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
9453 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
9454 Fix typos in docstrings.
9455
9456 2008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
9457
9458 * emacs.c (daemon_pipe): Make non-static.
9459 (IS_DAEMON): Move definition ...
9460 * lisp.h (IS_DAEMON): ... here.
9461 (daemon_pipe): Declare.
9462 (is_daemon): Remove.
9463 * dispnew.c (init_display): Use IS_DAEMON.
9464
9465 2008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
9466
9467 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
9468 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
9469
9470 * emacs.c (is_daemon): Remove.
9471 (main): Don't set is_daemon.
9472 (IS_DAEMON): New macro.
9473 (Fdaemonp, Fdaemon_initialized): Use it.
9474 (Fdaemon_initialized): Write a char into the pipe to make sure the
9475 parent exits.
9476 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
9477
9478 2008-10-27 Chong Yidong <cyd@stupidchicken.com>
9479
9480 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
9481 over-sized glyph, draw it with the default glyph width.
9482
9483 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
9484 glyph, draw it with the default glyph width.
9485
9486 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
9487 glyph, draw it with the default glyph width.
9488
9489 * xdisp.c (try_scrolling): When computing the distance from the
9490 scroll margin to PT, try moving some distance past the window
9491 bottom before giving up.
9492
9493 2008-10-27 Martin Rudalics <rudalics@gmx.at>
9494
9495 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
9496 (Fset_window_buffer): Explain in doc-string that a window can be
9497 "strongly" dedicated to its buffer.
9498
9499 2008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
9500
9501 * emacs.c (daemon_name): New variable.
9502 (main): Deal with --daemon=SERVER_NAME.
9503 (Fdaemonp): Return a name if one was passed to --daemon.
9504
9505 2008-10-26 Romain Francoise <romain@orebokech.com>
9506
9507 * emacs.c (daemon_pipe): New variable.
9508 (main): Create a pipe before forking, make the parent exit only after
9509 the child has closed its end of the pipe. Move closing the
9510 descriptors ...
9511 (Fdaemon_initialized): ... here. New function.
9512
9513 2008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
9514
9515 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
9516 the previous unoptimized table.
9517
9518 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
9519 the distinction between non-nil and non-t value of `dedicated'.
9520
9521 2008-10-25 Chong Yidong <cyd@stupidchicken.com>
9522
9523 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
9524 read_char_minibuf_menu_text is large enough to hold the menu string.
9525
9526 2008-10-25 Martin Rudalics <rudalics@gmx.at>
9527
9528 * window.c (Fget_buffer_window, Fdelete_windows_on)
9529 (Freplace_buffer_in_windows): Make buffer argument optional and
9530 rename to buffer_or_name.
9531
9532 2008-10-24 Chong Yidong <cyd@stupidchicken.com>
9533
9534 * xdisp.c (handle_single_display_spec, handle_display_prop):
9535 Undo 2005-05-16 change.
9536 (handle_stop): Pop iterator if it's loaded with an empty string.
9537 (get_overlay_strings_1): Don't save iterator if it's loaded with
9538 an empty string (bug#1201).
9539
9540 2008-10-24 Kenichi Handa <handa@m17n.org>
9541
9542 * ftfont.c (ftfont_otf_features): Fix previous change.
9543 (ftfont_otf_capability): Check FeatureList.FeatureCount before
9544 calling ftfont_otf_features.
9545
9546 2008-10-24 Kenichi Handa <handa@m17n.org>
9547
9548 * font.c (font_match_p): Fix for the case that a vector of
9549 characters is in script-representative-chars.
9550
9551 2008-10-24 Michael Albinus <michael.albinus@gmx.de>
9552
9553 * dbusbind.c (xd_in_read_queued_messages): New variable.
9554 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
9555 (xd_read_queued_messages): Catch Qdbus_error from the macros.
9556 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
9557 macro. (Bug#1186)
9558
9559 2008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9560
9561 * s/sol2-10.h: New file.
9562
9563 2008-10-23 Juanma Barranquero <lekktu@gmail.com>
9564
9565 * xdisp.c (fill_glyph_string): Fix typo in source (though the
9566 poor beast has survived 9+ years and the jump from xterm.c!).
9567
9568 2008-10-23 Martin Rudalics <rudalics@gmx.at>
9569
9570 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
9571 Reword doc-string.
9572 (Fbury_buffer): In doc-string say what happens to the buffer's window.
9573
9574 2008-10-23 Juanma Barranquero <lekktu@gmail.com>
9575
9576 * character.c (syms_of_character) <script-representative-chars>:
9577 <unicode-category-table>: Doc fixes.
9578
9579 2008-10-23 Noah Friedman <friedman@splode.com>
9580
9581 * coding.c (make_conversion_work_buffer): Check that
9582 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
9583 Fget_buffer_create.
9584
9585 2008-10-23 Kenichi Handa <handa@m17n.org>
9586
9587 * font.c (font_add_log): Check the values of extra properties.
9588
9589 2008-10-22 Martin Rudalics <rudalics@gmx.at>
9590
9591 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
9592 Reword doc-string.
9593 (Fset_window_parameter): Use NILP.
9594 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
9595 (Frecenter): Use "selected" instead of "current" window in doc-strings.
9596
9597 2008-10-22 Juanma Barranquero <lekktu@gmail.com>
9598
9599 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
9600
9601 2008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9602
9603 * nsfns.m (ns_appkit_version): New function.
9604 (x-server-version): Use it.
9605 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
9606 (x-server-vendor): Don't check_ns().
9607
9608 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
9609
9610 2008-10-22 Juanma Barranquero <lekktu@gmail.com>
9611
9612 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
9613 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
9614
9615 2008-10-22 Kenichi Handa <handa@m17n.org>
9616
9617 * syntax.c (scan_words): Call word_boundary_p instead of comparing
9618 scripts.
9619
9620 * category.c (word_boundary_p): Check scripts instead of charset.
9621 Handle nil value in word-separating-categories and
9622 word-combining-categories.
9623 (syms_of_category): Fix docstrings of word-separating-categories
9624 and word-combining-categories.
9625
9626 2008-10-21 Eli Zaretskii <eliz@gnu.org>
9627
9628 * coding.c (Fencode_coding_region, Fdecode_coding_region)
9629 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
9630
9631 2008-10-21 Martin Rudalics <rudalics@gmx.at>
9632
9633 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
9634 Rename arg "buffer" to "buffer_or_name".
9635 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
9636 it optional.
9637 (no_switch_window): Remove since the return value is not used.
9638 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
9639 Consider window as dedicated when Fwindow_dedicated_p returns a
9640 non-nil value.
9641 * lisp.h: Remove prototype for no_switch_window.
9642
9643 2008-10-21 Jan Djärv <jan.h.d@swipnet.se>
9644
9645 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
9646 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
9647
9648 2008-10-21 Kenichi Handa <handa@m17n.org>
9649
9650 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
9651 check Vlatin_extra_code_table.
9652
9653 2008-10-20 Eli Zaretskii <eliz@gnu.org>
9654
9655 * fileio.c (Fset_file_modes): Doc fix.
9656
9657 2008-10-19 Michael Albinus <michael.albinus@gmx.de>
9658
9659 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
9660 in arrays.
9661
9662 2008-10-19 Martin Rudalics <rudalics@gmx.at>
9663
9664 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
9665 Mention kill-buffer in doc-string.
9666 (Fset_window_buffer): Reinsert tem check removed in last commit.
9667 (Fenlarge_window, Fshrink_window): Have argument names and
9668 doc-string follow Elisp manual more closely.
9669
9670 2008-10-18 Eli Zaretskii <eliz@gnu.org>
9671
9672 * fileio.c (Fset_file_modes): Doc fix.
9673
9674 2008-10-18 Martin Rudalics <rudalics@gmx.at>
9675
9676 * window.c (Fwindow_width, Fset_window_start)
9677 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
9678 (Fdelete_windows_on, Freplace_buffer_in_windows):
9679 Make doc-strings follow code and Elisp manual more closely.
9680 (Fwindow_dedicated_p): Make window argument optional.
9681 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
9682 (Fset_window_buffer): Respect any non-nil dedicated value for
9683 window. Rename "buffer" argument to "buffer_or_name".
9684
9685 2008-10-18 Ulrich Mueller <ulm@gentoo.org>
9686
9687 * m/sh3.h: New file, machine description for SuperH.
9688
9689 2008-10-17 Martin Rudalics <rudalics@gmx.at>
9690
9691 * window.c (Fsplit_window): Rename arg horflag to horizontal.
9692
9693 2008-10-17 Kenichi Handa <handa@m17n.org>
9694
9695 * ftfont.c (ftfont_otf_features): Fix indexing
9696 gsub_gpos->FeatureList.Feature. Check the validity of indices.
9697
9698 2008-10-16 Magnus Henoch <mange@freemail.hu>
9699
9700 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
9701 (Fdbus_call_method_asynchronously): Ditto.
9702 This change makes C-h f display the argument list.
9703
9704 2008-10-16 Chong Yidong <cyd@stupidchicken.com>
9705
9706 * fileio.c (Fexpand_file_name): Doc fix.
9707
9708 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
9709 of :foreground and :background equivalent to unspecified (20.x
9710 compatibility).
9711
9712 2008-10-15 Eli Zaretskii <eliz@gnu.org>
9713
9714 * buffer.c (syms_of_buffer): Doc fix.
9715
9716 2008-10-14 Kenichi Handa <handa@m17n.org>
9717
9718 * font.c (font_clear_prop): When clearing font width, clear the
9719 average width field too.
9720
9721 2008-10-12 Andreas Schwab <schwab@suse.de>
9722
9723 * ftfont.c (ftfont_shape_by_flt): Make static.
9724 * ftfont.h (ftfont_shape_by_flt): Don't declare.
9725
9726 * font.c: Don't include <m17n-flt.h>.
9727
9728 2008-10-10 Eli Zaretskii <eliz@gnu.org>
9729
9730 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
9731
9732 2008-10-09 Eli Zaretskii <eliz@gnu.org>
9733
9734 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
9735 away code.
9736
9737 2008-10-09 Chong Yidong <cyd@stupidchicken.com>
9738
9739 * dispnew.c (update_text_area): Avoid looping due to large glyph
9740 overhangs (bug#1070).
9741
9742 2008-10-09 Kenichi Handa <handa@m17n.org>
9743
9744 * fontset.c (face_for_char): If face->fontset is negative, just
9745 return ascii_face.
9746
9747 * font.c (font_delete_unmatched): Fix previous change.
9748 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
9749
9750 2008-10-09 Martin Rudalics <rudalics@gmx.at>
9751
9752 * frame.c (Fraise_frame): On text-only terminals select frame in
9753 order to make it visible. (Bug#1061)
9754
9755 2008-10-08 Chong Yidong <cyd@stupidchicken.com>
9756
9757 * fontset.c (fontset_find_font): Check frame validity.
9758
9759 2008-10-07 Chong Yidong <cyd@stupidchicken.com>
9760
9761 * gtkutil.c (xg_display_open): Reset default display if none exists.
9762 (xg_display_close): Allow Emacs to close all displays (bug#985).
9763
9764 2008-10-06 Andreas Schwab <schwab@suse.de>
9765
9766 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
9767
9768 2008-10-06 Chong Yidong <cyd@stupidchicken.com>
9769
9770 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
9771
9772 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
9773
9774 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
9775 during initialization.
9776
9777 2008-10-04 Eli Zaretskii <eliz@gnu.org>
9778
9779 * xdisp.c (redisplay_internal): If frame switched, redisplay the
9780 whole thing on MSDOS frames as well as on a TTY.
9781
9782 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
9783 well as for TTY.
9784 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
9785 well as on a TTY.
9786
9787 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
9788 as well as for TTY.
9789
9790 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
9791
9792 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
9793 MSDOS frames as well.
9794
9795 2008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
9796
9797 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
9798 correct arguments.
9799 * menu.c (find_and_return_menu_selection): Add cast.
9800
9801 2008-10-03 Glenn Morris <rgm@gnu.org>
9802
9803 * emacs.c (USAGE1): Add --daemon.
9804
9805 2008-10-02 Eli Zaretskii <eliz@gnu.org>
9806
9807 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
9808 100, so it's in percents as advertised.
9809
9810 2008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
9811
9812 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
9813 (ns_output.current_cursor, ns_output.desired_cursor)
9814 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
9815 (FRAME_NEW_CURSOR_COLOR): Remove.
9816
9817 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
9818 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
9819 enumeration (HOLLOW_BOX_CURSOR, etc.).
9820
9821 * nsterm.m (ns_frame_rehighlight): Remove commented code.
9822 (draw_window_cursor): Simplify code.
9823 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
9824 Don't change cursor type. In latter, call rehighlight instead of doing
9825 updates manually.
9826 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
9827 Use core Emacs cursor types.
9828
9829 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
9830
9831 2008-10-02 Martin Rudalics <rudalics@gmx.at>
9832
9833 * process.c (Faccept_process_output): Fix doc-string.
9834
9835 2008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
9836
9837 * gmalloc.c (__sbrk): Also define for uClibc.
9838
9839 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
9840 for uClibc.
9841
9842 2008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9843
9844 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
9845 styles.
9846 (nsfont_open): Reenable the cache.
9847
9848 2008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9849
9850 * font.c (font_matching_entity): Reflect ATTRS in font selection.
9851 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
9852
9853 2008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
9854
9855 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
9856 a suspended terminal.
9857
9858 2008-09-30 Michael Albinus <michael.albinus@gmx.de>
9859
9860 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
9861
9862 2008-09-30 Eli Zaretskii <eliz@gnu.org>
9863
9864 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
9865
9866 2008-09-30 Chong Yidong <cyd@stupidchicken.com>
9867
9868 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
9869 in a continued line coincides with a line beginning.
9870
9871 2008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
9872
9873 * nsfont.m (nsfont_trait_distance): Fix bug.
9874 (nsfont_list): Return a list rather than a vector (syncs with Handa
9875 changes of 2008-05-14).
9876 (nsfont_open): Improve logging.
9877
9878 2008-09-29 Andreas Schwab <schwab@suse.de>
9879
9880 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
9881
9882 2008-09-28 Martin Rudalics <rudalics@gmx.at>
9883
9884 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
9885 name as char-resolve-modifiers.
9886 Reported by: Markus Triska <markus.triska@gmx.at>
9887
9888 2008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
9889
9890 * dispnew.c (init_display): Return earlier when running as a daemon.
9891
9892 2008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9893
9894 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
9895
9896 2008-09-27 Eli Zaretskii <eliz@gnu.org>
9897
9898 * composite.c (Fcomposition_get_gstring)
9899 (Fcompose_region_internal, Fcompose_string_internal)
9900 (Ffind_composition_internal): Doc fix.
9901 (syms_of_composite) <compose-chars-after-function>: Doc fix.
9902 (syms_of_composite) <auto-composition-function>: Doc fix.
9903 (syms_of_composite) <composition-function-table>: Doc fix.
9904
9905 2008-09-25 Chong Yidong <cyd@stupidchicken.com>
9906
9907 * search.c (wordify): New argument for lax word-ends.
9908 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
9909
9910 2008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
9911
9912 * lisp.h (is_daemon): Declare.
9913 * dispnew.c (init_display): Do not try to initialize the terminal
9914 when running as a daemon.
9915
9916 2008-09-22 Chong Yidong <cyd@stupidchicken.com>
9917
9918 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
9919 x_display_pixel_height.
9920
9921 2008-09-22 Martin Rudalics <rudalics@gmx.at>
9922
9923 * undo.c (record_point): Don't call Fundo_boundary for first
9924 change. (Bug#731)
9925
9926 2008-09-22 Juanma Barranquero <lekktu@gmail.com>
9927
9928 * emacs.c (Fdaemonp): Doc fix.
9929
9930 2008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
9931
9932 * emacs.c (main): Place #ifdef in the proper place.
9933
9934 2008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
9935
9936 * emacs.c (standard_args): Add --daemon.
9937 (main): Disconnect from the terminal when --daemon is passed.
9938 (is_daemon): New variable.
9939 (Fdaemonp): New function.
9940 (syms_of_emacs): Defsubr it.
9941
9942 2008-09-20 Chong Yidong <cyd@stupidchicken.com>
9943
9944 * xdisp.c (get_next_display_element): Handle string display
9945 correctly when checking for the end of a box run.
9946
9947 2008-09-20 Glenn Morris <rgm@gnu.org>
9948
9949 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
9950 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
9951 (Frename_file): Avoid copying to trash if a rename involves
9952 a delete. (Bug#964).
9953
9954 2008-09-20 Eli Zaretskii <eliz@gnu.org>
9955
9956 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
9957 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
9958 frames as well as termcap frames.
9959 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
9960 get_named_tty.
9961
9962 2008-09-19 Eli Zaretskii <eliz@gnu.org>
9963
9964 * process.c (procfs_system_process_attributes): Fix cmdline in
9965 case /proc/PID/cmdline is empty.
9966
9967 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
9968 x_display_pixel_height.
9969
9970 2008-09-19 Juanma Barranquero <lekktu@gmail.com>
9971
9972 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
9973
9974 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
9975 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
9976
9977 2008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
9978
9979 * dispextern.h (struct it): Move line_wrap away from the middle of
9980 bitfields. Move voffset in struct iterator_stack_entry after the
9981 bitfields. Move tab_width near after another short.
9982
9983 2008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
9984
9985 * frame.h (struct frame): Move alpha from the middle of bitfields.
9986
9987 * window.h (struct window): Move frozen_window_start_p after the
9988 rest of the bitfields to reduce padding.
9989
9990 2008-09-18 Chong Yidong <cyd@stupidchicken.com>
9991
9992 * xterm.h (x_display_info): Remove `height' and `width' members.
9993
9994 * nsterm.h (ns_display_info): Remove `height' and `width' members.
9995
9996 * w32term.h (w32_display_info): Remove `height', `width',
9997 `height_in', and `width_in' members.
9998
9999 * xterm.c (x_display_pixel_height, x_display_pixel_width):
10000 New functions.
10001 (x_calc_absolute_position): Use them.
10002 (x_term_init): Omit removed `height' and `width' members.
10003
10004 * w32term.c (x_display_pixel_height, x_display_pixel_width):
10005 New functions.
10006 (w32_read_socket, x_calc_absolute_position): Use them.
10007 (w32_initialize_display_info, w32_term_init): Omit removed members
10008 of w32_display_info.
10009
10010 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
10011 New functions.
10012 (ns_initialize_display_info): Omit removed members of ns_display_info.
10013
10014 * xterm.c (x_display_pixel_height, x_display_pixel_width):
10015 New functions.
10016 (x_calc_absolute_position): Use them.
10017 (x_term_init): Omit removed `height' and `width' members.
10018
10019 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
10020 (compute_tip_xy):
10021 * frame.c (x_fullscreen_adjust):
10022 * xmenu.c (menu_position_func): Use x_display_pixel_height and
10023 x_display_pixel_width.
10024
10025 2008-09-18 Kenichi Handa <handa@m17n.org>
10026
10027 * composite.c (fill_gstring_header): Don't check FROM and TO here.
10028 (composition_compute_stop_pos): Fix handling of static composition.
10029 (Fcomposition_get_gstring): Check FROM and TO at first.
10030
10031 2008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
10032
10033 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
10034 mixup (YAILOM).
10035
10036 2008-09-17 Chong Yidong <cyd@stupidchicken.com>
10037
10038 * indent.c (Fvertical_motion): Use position reported by iterator
10039 instead of PT for determining screen motion (bug#943).
10040
10041 2008-09-17 Romain Francoise <romain@orebokech.com>
10042
10043 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
10044
10045 2008-09-17 Kenichi Handa <handa@m17n.org>
10046
10047 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
10048
10049 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
10050 if necessary.
10051
10052 2008-09-16 Kenichi Handa <handa@m17n.org>
10053
10054 * coding.c (make_conversion_work_buffer): Avoid calling
10055 Fget_buffer_create if it is not necessary.
10056
10057 2008-09-15 Martin Rudalics <rudalics@gmx.at>
10058
10059 * window.c (Fselect_window): Don't update window_select_count and
10060 use_time when norecord is not nil.
10061
10062 2008-09-14 Kenichi Handa <handa@m17n.org>
10063
10064 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
10065 specpdl_ptr.
10066
10067 2008-09-12 Kenichi Handa <handa@m17n.org>
10068
10069 * indent.c (scan_for_column): Don't handle automatic composition
10070 if the current buffer is not associated with a window.
10071
10072 * composite.c (composition_reseat_it): If the current buffer is
10073 not associated with a window, ignore the automatic composition.
10074 (find_automatic_composition): Likewise.
10075
10076 2008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
10077
10078 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
10079 (Fgpm_mouse_stop): Use it.
10080 * termhooks.h (close_gpm): Declare.
10081 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
10082 connection if Gpm_GetEvent fails.
10083
10084 * window.c (set_window_buffer): Always preserve current-buffer.
10085
10086 2008-09-12 Glenn Morris <rgm@gnu.org>
10087
10088 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
10089
10090 2008-09-11 Glenn Morris <rgm@gnu.org>
10091
10092 * charset.c (charset-map-path): Doc fix.
10093
10094 2008-09-10 Kenichi Handa <handa@m17n.org>
10095
10096 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
10097
10098 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
10099 compose a grapheme cluster with the preceding base glyph.
10100
10101 * composite.c (composition_compute_stop_pos): Fix previous change.
10102 Reset cmp_it->id to -1 at first.
10103
10104 2008-09-10 Glenn Morris <rgm@gnu.org>
10105
10106 * Makefile.in (character.o, chartab.o): Fix config.h typo.
10107
10108 2008-09-09 Chong Yidong <cyd@stupidchicken.com>
10109
10110 * keyboard.c (read_key_sequence): Reapply translation maps when
10111 switching keyboards.
10112
10113 2008-09-09 Kenichi Handa <handa@m17n.org>
10114
10115 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
10116 characters.
10117
10118 * composite.c (FORWARD_CHAR): Fix calculation
10119 of (POSITION).pos_byte.
10120 (composition_compute_stop_pos): Limit the search of composition to
10121 at most 500 characters ahead. If we reach the limit or find a
10122 newline, set cmp_it->ch to -2 and return 0.
10123 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
10124
10125 2008-09-08 Kenichi Handa <handa@m17n.org>
10126
10127 * indent.c (Fvertical_motion): Be sure to set
10128 it_overshoot_expected if it.cmp_it.id is non-negative.
10129
10130 2008-09-07 Andreas Schwab <schwab@suse.de>
10131
10132 * callproc.c (Fcall_process): Don't hold references to string data
10133 across garbage collection. Move initialisation of new_argv down
10134 to avoid compiler bug.
10135
10136 2008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
10137
10138 * process.c (Fsystem_process_attributes): Doc fix.
10139
10140 2008-09-07 Chong Yidong <cyd@stupidchicken.com>
10141
10142 * callproc.c (Fcall_process): Canonicalize current directory name.
10143
10144 * xdisp.c (move_it_to): When moving by vpos, ensure that the
10145 iterator advances to the next line if the current line ends in a
10146 continued tab.
10147
10148 2008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
10149
10150 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
10151 member to point to cmp_from.
10152
10153 * xdisp.c: Doc fix for references to gidx data member.
10154
10155 2008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
10156
10157 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
10158
10159 2008-09-07 Kenichi Handa <handa@m17n.org>
10160
10161 * composite.c (FORWARD_CHAR): Check STOP after
10162 incrementing (POSITION).pos.
10163
10164 2008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
10165
10166 * process.c (Fsystem_process_attributes): Doc fix.
10167
10168 2008-09-06 Chong Yidong <cyd@stupidchicken.com>
10169
10170 * keyboard.c (Ftop_level): Doc fix.
10171
10172 2008-09-06 Eli Zaretskii <eliz@gnu.org>
10173
10174 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
10175 minibuffer, don't let lower part of menu invade the echo area.
10176
10177 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
10178 "char *q" to access menu text and advance through it. Revert the
10179 change that displayed ">" instead of ASCII character 0x10.
10180
10181 2008-09-05 Eli Zaretskii <eliz@gnu.org>
10182
10183 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
10184 toggle boxes and radio buttons on MS-DOS as well.
10185
10186 2008-09-05 Kenichi Handa <handa@m17n.org>
10187
10188 * composite.c (autocmp_chars): Check lookback count.
10189 (composition_compute_stop_pos): Set cmp_it->lookback.
10190 (composition_reseat_it): Check lookback count.
10191 (struct position_record): New struct.
10192 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
10193 (find_automatic_composition): New function.
10194 (composition_adjust_point): Use find_automatic_composition.
10195
10196 * dispextern.h (struct composition_it): New member lookback.
10197
10198 2008-09-02 Chong Yidong <cyd@stupidchicken.com>
10199
10200 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
10201 if moving by a single line.
10202
10203 2008-09-02 Andreas Schwab <schwab@suse.de>
10204
10205 * xterm.c (x_delete_display): Fix merge error.
10206
10207 * fileio.c (Fexpand_file_name): Remove unused variables.
10208
10209 2008-09-02 Eli Zaretskii <eliz@gnu.org>
10210
10211 * fileio.c (Fexpand_file_name): Copy argument `name' into local
10212 storage on all platforms, not just on DOS_NT.
10213
10214 2008-09-02 Jason Rumney <jasonr@gnu.org>
10215
10216 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
10217 Ensure mouse is not grabbed after menu is finished.
10218
10219 2008-09-01 Chong Yidong <cyd@stupidchicken.com>
10220
10221 * xfaces.c (Finternal_set_alternative_font_family_alist)
10222 (Finternal_set_alternative_font_registry_alist): Properly copy
10223 entire alist structure.
10224
10225 2008-09-01 Kenichi Handa <handa@m17n.org>
10226
10227 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
10228 representative chars of the script is a vector.
10229 (ftfont_list): Handle the case where the representative chars of
10230 the script is a vector.
10231
10232 * character.c (syms_of_character): Docstring of
10233 script-representative-chars fixed.
10234
10235 2008-08-31 Eli Zaretskii <eliz@gnu.org>
10236
10237 * msdos.c (BUILD_CHAR_GLYPH): New macro.
10238 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
10239 the menu. Allocate larger buffer for `text', to account for
10240 possible ^C characters.
10241
10242 2008-08-31 Martin Rudalics <rudalics@gmx.at>
10243
10244 * xdisp.c (prepare_menu_bars): Don't call
10245 Vwindow_size_change_functions with arg Qt.
10246
10247 2008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
10248
10249 * font.h (font_range):
10250 * fileio.c (report_file_error):
10251 * composite.c (composition_update_it): Yet another int/Lisp_Object
10252 mixup (YAILOM).
10253
10254 2008-08-30 Glenn Morris <rgm@gnu.org>
10255
10256 * data.c (Fmake_variable_frame_local): Doc fix.
10257
10258 * frame.c (Fmodify_frame_parameters): Doc fix.
10259
10260 2008-08-30 Eli Zaretskii <eliz@gnu.org>
10261
10262 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
10263 needed by GetTokenInformation.
10264 (w32_system_process_attributes): Check return values of all system
10265 APIs.
10266
10267 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
10268 only when the state changes.
10269 (IT_update_begin, IT_update_end): Add termscript trace.
10270
10271 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
10272 clipboard is unavailable. Set dst to NULL if it doesn't point to
10273 malloc'ed data.
10274 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
10275 passing random values to xfree.
10276
10277 * dispnew.c (init_display): Set `tty's association in frame's
10278 parameters alist to the name of the terminal device, if that is known.
10279
10280 2008-08-29 Jason Rumney <jasonr@gnu.org>
10281
10282 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
10283
10284 2008-08-29 Eli Zaretskii <eliz@gnu.org>
10285
10286 * composite.c (fill_gstring_body): Avoid compiler warnings.
10287
10288 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
10289 LGLYPH_SET_CODE to avoid compiler warnings.
10290
10291 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
10292
10293 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
10294
10295 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
10296 LGLYPH_SET_CODE.
10297
10298 2008-08-29 Kenichi Handa <handa@m17n.org>
10299
10300 * fileio.c (report_file_error): Don't downcase the first character
10301 of errstring if it is still unibyte.
10302
10303 2008-08-29 Kenichi Handa <handa@m17n.org>
10304
10305 These changes are to re-implement the automatic composition so
10306 that it doesn't use text properties.
10307
10308 * Makefile.in (ftfont.o): Depend on composite.h.
10309 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
10310
10311 * character.h (Vunicode_category_table): Extern it.
10312
10313 * character.c (Vunicode_category_table): New variable.
10314 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
10315
10316 * chartab.c (optimize_sub_char_table): Perform more greedy
10317 optimization.
10318
10319 * composite.h (enum composition_method):
10320 Delete COMPOSITION_WITH_GLYPH_STRING.
10321 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
10322 (Vcomposition_function_table): Extern it.
10323 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
10324 (composition_gstring_put_cache, composition_gstring_from_id)
10325 (composition_gstring_p, composition_gstring_width)
10326 (composition_compute_stop_pos, composition_reseat_it)
10327 (composition_update_it, composition_adjust_point): Extern them.
10328 (Fcomposition_get_gstring): EXFUN it.
10329
10330 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
10331 (Vcomposition_function_table)
10332 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
10333 (gstring_hash_table, gstring_work, gstring_work_headers):
10334 New variables.
10335 (gstring_lookup_cache, composition_gstring_put_cache)
10336 (composition_gstring_from_id, composition_gstring_p)
10337 (composition_gstring_width, fill_gstring_header)
10338 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
10339 (composition_reseat_it, composition_update_it)
10340 (composition_adjust_point, Fcomposition_get_gstring): New functions.
10341 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
10342 and gstring_work_headers. DEFVAR_LISP composition-function-table.
10343 Defsubr composition_get_gstring.
10344
10345 * dispextern.h (struct glyph): New union u.cmp. Delete the member
10346 cmp_id.
10347 (struct glyph_string): Delete the member gidx. New members
10348 cmp_id, cmp_from, and cmp_to.
10349 (enum it_method): Delete GET_FROM_COMPOSITION.
10350 (struct composition_it): New struct.
10351 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
10352 Delete c, len, cmp_id, cmp_len in u.comp.
10353
10354 * font.h (enum lgstring_indices): Delete it.
10355 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
10356 (enum lglyph_indices): Likewise.
10357 (font_range): Adjust extern.
10358 (font_fill_lglyph_metrics): Extern it.
10359
10360 * font.c (QCf): New variable.
10361 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
10362 (font_prepare_composition): Delete this function.
10363 (font_range): Type and arguments changed.
10364 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
10365 (font_fill_lglyph_metrics): New function.
10366 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
10367 (syms_of_font): DEFSYM QCf. Delete defsubr for
10368 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
10369 Defsubr Sfont_shape_gstring.
10370
10371 * fontset.h (font_for_char): Extern it.
10372
10373 * fontset.c (font_for_char): New function.
10374
10375 * ftfont.c: Include composite.h.
10376 (ftfont_resolve_generic_family): Add langset "en" to pattern.
10377 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
10378
10379 * indent.c: Include composite.h and dispextern.h.
10380 (check_composition): Delete this function.
10381 (scan_for_column): Handle composition by
10382 composition_compute_stop_pos, composition_reseat_it, and
10383 composition_update_it.
10384 (compute_motion): Likewise.
10385 (Fvertical_motion): Fix checking of composition.
10386
10387 * keyboard.c (adjust_point_for_property): Check composition by
10388 composition_adjust_point.
10389
10390 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
10391 struct glyph_string.
10392
10393 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
10394 (append_composite_glyph): Adjust for the change of struct it and
10395 struct glyph.
10396 (produce_composite_glyph): Likewise.
10397
10398 * w32term.c (x_draw_composite_glyph_string_foreground):
10399 Adjust for the change of struct glyph_string.
10400 (x_draw_glyph_string): Likewise.
10401
10402 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
10403 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
10404
10405 * xdisp.c: Include font.h.
10406 (it_props): Delete the entry for Qauto_composed.
10407 (init_iterator): Initialize it->cmp_it.id to -1.
10408 (compute_stop_pos): Call composition_compute_stop_pos.
10409 (face_before_or_after_it_pos): Adjust for the change of struct it.
10410 (handle_auto_composed_prop): Delete it.
10411 (handle_composition_prop): Handle only static composition.
10412 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
10413 from xassert. Initialize it->cmp_it.stop_pos.
10414 (push_it): Adjust for the change of struct it.
10415 (pop_it): Likewise.
10416 (get_next_element): Delete next_element_from_composition.
10417 (CHAR_COMPOSED_P): New macro.
10418 (get_next_display_element): For automatic composition, get a face
10419 from the font in the glyph-string.
10420 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
10421 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
10422 (next_element_from_string): Check if the character at the current
10423 position is composed by CHAR_COMPOSED_P.
10424 (next_element_from_buffer): Likewise.
10425 (next_element_from_composition): Adjust for the change of struct it.
10426 Update it->cmp_it.
10427 (dump_glyph): Adjust for the change of struct glyph.
10428 (fill_composite_glyph_string): Adjust for the change of struct
10429 it and struct glyph. Don't handle automatic composition here.
10430 (fill_gstring_glyph_string): New function.
10431 (x_get_glyph_overhangs): Handle automatic composition.
10432 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
10433 (BUILD_GSTRING_GLYPH_STRING): New macro.
10434 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
10435 automatic composition.
10436 (append_composite_glyph): Adjust for the change of struct it and
10437 struct glyph.
10438 (x_produce_glyphs): Adjust for the change of struct it.
10439
10440 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
10441 the change of struct glyph_string.
10442 (x_draw_glyph_string): Likewise.
10443
10444 2008-08-29 Glenn Morris <rgm@gnu.org>
10445
10446 * buffer.c (word-wrap): Doc fix.
10447 * xdisp.c (truncate-partial-width-windows): Doc fix.
10448 Increase default to 50.
10449
10450 2008-08-29 Chong Yidong <cyd@stupidchicken.com>
10451
10452 * xdisp.c (update_tool_bar_unwind): New function.
10453 (update_tool_bar): Temporarily set selected frame before building
10454 tool-bar items.
10455
10456 2008-08-28 Michael Albinus <michael.albinus@gmx.de>
10457
10458 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
10459 snprintf, respectively.
10460 (xd_append_arg): Convert strings with Fstring_make_unibyte.
10461
10462 2008-08-28 Chong Yidong <cyd@stupidchicken.com>
10463
10464 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
10465 LDFLAGS to GNUstep CC invocation.
10466
10467 2008-08-27 Chong Yidong <cyd@stupidchicken.com>
10468
10469 * indent.c (Fvertical_motion): Revert last change. Handle the
10470 general case where we are moving forward, and PT spans multiple
10471 screen lines.
10472
10473 * eval.c (find_handler_clause): Temporarily increase
10474 max-lisp-eval-depth while printing the backtrace buffer, to
10475 guarantee that help-mode code can run.
10476
10477 2008-08-27 Eli Zaretskii <eliz@gnu.org>
10478
10479 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
10480 colors under -rv.
10481 (IT_set_frame_parameters): Don't swap foreground and background
10482 colors if `(reverse . t)' is present in the frame properties.
10483 (internal_terminal_init): Call init_frame_faces only for the
10484 initial frame.
10485
10486 2008-08-27 Andreas Schwab <schwab@suse.de>
10487
10488 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
10489
10490 2008-08-27 Andreas Schwab <schwab@suse.de>
10491
10492 * search.c (search_buffer): Set char_base to zero only at the end.
10493
10494 2008-08-27 Kenichi Handa <handa@m17n.org>
10495
10496 * fileio.c (report_file_error): Fix handling of multibyte error string.
10497
10498 2008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
10499
10500 * xterm.c (x_term_init): Temporarily hide the partially
10501 initialized terminal while calling vendor-specific-keysyms.
10502
10503 2008-08-26 Eli Zaretskii <eliz@gnu.org>
10504
10505 * msdos.c (internal_terminal_init): Most initializations done only
10506 once, especially initial_screen_colors[] and termscript open.
10507
10508 2008-08-26 Chong Yidong <cyd@stupidchicken.com>
10509
10510 * eval.c (Fcondition_case): Doc fix.
10511
10512 * widgetprv.h (EmacsFramePart): Change font member to the new font
10513 struct.
10514
10515 * widget.c: Include character.h and font.h for XSETFONT.
10516 (setup_frame_gcs): Compute X font id from font struct, just once.
10517
10518 2008-08-26 Eli Zaretskii <eliz@gnu.org>
10519
10520 * term.c (get_named_tty): Fix last change.
10521
10522 2008-08-26 Chong Yidong <cyd@stupidchicken.com>
10523
10524 * indent.c (Fvertical_motion): If moving forward starting from a
10525 multi-line string, move the iterator to the last line of that string.
10526
10527 2008-08-25 Eli Zaretskii <eliz@gnu.org>
10528
10529 * frame.c (do_switch_frame): Mark previously displayed frame as
10530 obscured for FRAME_MSDOS_P frames as well.
10531
10532 2008-08-24 Eli Zaretskii <eliz@gnu.org>
10533
10534 * frame.c (make_terminal_frame): Initialize f->terminal,
10535 f->terminal->reference_count, and scroll bars on MS-DOS as well.
10536 Set the top frame to newly created frame.
10537 (Fmake_terminal_frame): Reuse the_only_display_info.
10538
10539 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
10540 estimating available memory.
10541
10542 2008-08-23 David Reitter <david.reitter@gmail.com>
10543
10544 * nsterm.m (ns_draw_window_cursor): Don't call
10545 NSDisableScreenUpdates and NSEnableScreenUpdates on
10546 non-NS_IMPL_COCOA systems.
10547
10548 2008-08-23 Andreas Schwab <schwab@suse.de>
10549
10550 * process.c (procfs_system_process_attributes): Fix use of
10551 uninitialized variables.
10552
10553 2008-08-23 Eli Zaretskii <eliz@gnu.org>
10554
10555 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
10556
10557 * dispnew.c (init_display): Remove MS-DOS specific conditions for
10558 calling tty-set-up-initial-frame-faces.
10559
10560 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
10561 Allow MSDOS frames along with X frames.
10562
10563 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
10564 addition to output_termcap.
10565
10566 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
10567
10568 * termchar.h (FRAME_TTY): Support output_msdos_raw.
10569 (struct tty_display_info) [MSDOS]: Add fields related to mouse
10570 highlight.
10571
10572 * process.c [!subprocesses]: Define QCname.
10573 (syms_of_process): Intern and staticpro it.
10574
10575 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
10576 Adjust for changes in encoding/decoding routines.
10577 Use encode_coding_object and decode_coding_object instead of
10578 encode_coding and decode_coding.
10579
10580 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
10581
10582 * dosfns.c: Include frame.h before termhooks.h.
10583 (dos_cleanup): Use CURTTY ()->termscript instead of a global
10584 variable termscript.
10585
10586 * s/msdos.h (USER_FULL_NAME): Define.
10587 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
10588
10589 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
10590 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
10591 pw->pw_gecos.
10592
10593 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
10594 SELECTED_FRAME as additional (1st) argument.
10595 (tty_read_avail_input): Handle output_msdos_raw in
10596 addition to output_termcap.
10597
10598 * msdos.c: Include frame.h before termhooks.h.
10599 (mouse_on, mouse_off, mouse_moveto, mouse_init)
10600 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
10601 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
10602 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
10603 (IT_set_terminal_modes, IT_reset_terminal_modes)
10604 (IT_set_frame_parameters): Use tty->termscript instead of a global
10605 variable termscript.
10606 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
10607 global variable terminal_coding. Don't refer to
10608 Vnonascii_translation_table.
10609 (internal_terminal_init): Set Vwindow_system in current_kboard.
10610 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
10611 Announce date and time of session start, if termscript is open.
10612 Don't zero out the_only_display_info (it is done in
10613 term.c:init_tty). Open termscript only of not already open.
10614 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
10615 here instead of dos_ttraw. Don't initialize display if this is an
10616 initial tty. Don't set FRAME_FONT.
10617 (Vwindow_system_version): Bump to 23.
10618 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
10619 is available, set up mouse_position_hook.
10620 (dos_ttraw, IT_set_terminal_modes): If called with initial
10621 terminal, do nothing.
10622 (IT_set_frame_parameters): Handle the Qtty_type frame
10623 parameter by calling internal_terminal_init.
10624 (dos_set_window_size, show_mouse_face)
10625 (clear_mouse_face, IT_note_mode_line_highlight)
10626 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
10627 (dos_rawgetc): Use tty_display_info instead of x_display_info.
10628 (initialize_msdos_display): New function.
10629 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
10630 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
10631 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
10632 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
10633 Accept additional argument: a pointer to a frame. Update all callers.
10634 (request_sigio, unrequest_sigio): Don't define, now defined on
10635 sysdep.c.
10636 (IT_write_glyphs): Rewrite to use encode_terminal_code.
10637
10638 * term.c [MSDOS]: Include msdos.h.
10639 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
10640 conditional to DOS_NT. Allow only one call to this function in a
10641 session. Don't allocate a new struct tty_display_info; instead,
10642 reuse the_only_display_info. Call get_tty_size to get screen
10643 dimensions. Call init_baud_rate to set bad_rate.
10644 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
10645 (Fsuspend_tty) [MSDOS]: Don't close input and output.
10646 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
10647 (get_tty_terminal, get_named_tty, Ftty_type)
10648 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
10649 output_termcap.
10650 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
10651 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
10652 only when subprocesses are supported.
10653
10654 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
10655 f->output_data.x.
10656 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
10657 terminal devices.
10658
10659 * msdos.h: Remove definition of struct x_display_info and struct
10660 x_output.
10661 (FRAME_FONT): Use output_data.tty.
10662 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
10663 (struct x_display_info): Rename from display_info. Update all users in
10664 msdos.c.
10665 (struct x_output): Remove background_pixel and foreground_pixel.
10666 (the_only_display_info): Rename from the_only_x_display.
10667 (dos_ttraw): Update prototype.
10668
10669 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
10670 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
10671
10672 2008-08-23 Jason Rumney <jasonr@gnu.org>
10673
10674 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
10675 (fn_TIFFSetDirectory): New library function used.
10676 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
10677 (tiff_load): Use :index to select among multiple images. Set count
10678 property when multiple images exist.
10679 (gif_format): Use :index, not :image.
10680
10681 2008-08-23 Chong Yidong <cyd@stupidchicken.com>
10682
10683 * xdisp.c (try_scrolling): Check INT_MAX instead of
10684 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
10685 to obtain INT_MAX.
10686
10687 2008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
10688
10689 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
10690
10691 2008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
10692
10693 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
10694 GNUstep library location.
10695
10696 2008-08-21 Chong Yidong <cyd@stupidchicken.com>
10697
10698 * xfaces.c (x_update_menu_appearance): Check validity of menu font
10699 before using it.
10700
10701 * puresize.h (BASE_PURESIZE): Increase to 1250000.
10702
10703 2008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
10704
10705 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
10706 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
10707 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
10708 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
10709 (EmacsApp-cursor_blink_handler): Remove declaration.
10710 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
10711 match 01 Feb 2008 changes in xterm.c.
10712 (ns_read_socket): Add cast to avoid warning.
10713 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
10714 GNUstep.
10715
10716 2008-08-20 Chong Yidong <cyd@stupidchicken.com>
10717
10718 * xselect.c (x_get_foreign_selection): Return nil if desired
10719 selection could not be obtained, instead of signalling an error.
10720
10721 2008-08-20 David Reitter <david.reitter@gmail.com>
10722
10723 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
10724 * nsterm.m: Remove ns-specific code for cursor blinking.
10725 (ns_draw_window_cursor): Clear cursor properly rather than
10726 redrawing the area. Respect width of bar cursors.
10727 These changes enable the use of generic blink-cursor-mode and
10728 generic cursor types in NS and support smooth cursor movements (do
10729 not blink off after command).
10730 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
10731 Nextstep, too.
10732
10733 2008-08-19 Kenichi Handa <handa@m17n.org>
10734
10735 * font.c (Vfont_log_deferred): New variable.
10736 (font_add_log): Check Vfont_log_deferred.
10737 (font_deferred_log): New function.
10738
10739 * font.h (font_deferred_log): Extern it.
10740
10741 * fontset.c (reorder_font_vector): Use encoding charset of fonts
10742 for sorting.
10743 (face_for_char): Use deferred log.
10744
10745 2008-08-18 Kenichi Handa <handa@m17n.org>
10746
10747 * fontset.c (face_for_char): Add font log.
10748
10749 * font.c (font_add_log): Add the font properties :script, :lang,
10750 and :otf in the log.
10751
10752 2008-08-17 Chong Yidong <cyd@stupidchicken.com>
10753
10754 * xdisp.c: Remove dead code.
10755 (handle_invisible_prop, next_overlay_string): Defer call to
10756 setup_for_ellipsis.
10757 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
10758
10759 2008-08-15 Chong Yidong <cyd@stupidchicken.com>
10760
10761 * xfaces.c (lookup_derived_face): Properly handle possible zero
10762 return value of get_lface_attributes.
10763 (merge_faces): Don't tell lookup_derived_face to signal an error
10764 if face is not found.
10765
10766 * dired.c (Fdirectory_files): Doc fix.
10767
10768 * process.c (make_process): Initialize kill_without_query struct
10769 member.
10770
10771 2008-08-15 Eli Zaretskii <eliz@gnu.org>
10772
10773 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
10774 Alternative calculation of totphys for Visual Studio 6.
10775
10776 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
10777
10778 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
10779 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
10780 All users changed.
10781 (stat): Only root directory passed to GetDriveType. Allow RAM
10782 disk as well as local fixed disk when w32-get-true-file-attributes
10783 is set to `local'.
10784 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
10785 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
10786 (w32_cached_id, w32_add_to_cache): New functions.
10787 (get_name_and_id): Look account names in the cache before calling
10788 lookup_account_sid.
10789 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
10790 New initialization flags.
10791 (globals_of_w32): Initialize them to zero.
10792 (w32_system_process_attributes): Use w32_cached_id and
10793 w32_add_to_cache.
10794
10795 2008-08-14 Lawrence Mitchell <wence@gmx.li>
10796
10797 * lread.c (Fread_char, Fread_char_exclusive): If no character
10798 event is read before timeout is reached, return nil, rather than
10799 converting to a number.
10800
10801 2008-08-14 Chong Yidong <cyd@stupidchicken.com>
10802
10803 * fns.c (use_dialog_box): Doc fix.
10804
10805 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
10806 on OS X.
10807
10808 2008-08-13 Chong Yidong <cyd@stupidchicken.com>
10809
10810 * frame.c (Qns_parse_geometry): New var.
10811 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
10812
10813 2008-08-11 Chong Yidong <cyd@stupidchicken.com>
10814
10815 * xdisp.c (x_produce_glyphs): Handle the case when font has no
10816 space character in calculating tabs.
10817
10818 2008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
10819
10820 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
10821
10822 2008-08-10 Glenn Morris <rgm@gnu.org>
10823
10824 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
10825 silence gcc "limited range of data type" warnings in some
10826 make_fixnum_or_float calls.
10827
10828 2008-08-09 Eli Zaretskii <eliz@gnu.org>
10829
10830 * w32.c (w32_system_process_attributes): If the process does not
10831 exist, return nil.
10832
10833 * w32.c: Include thelp32.h, psapi.h and coding.h.
10834 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
10835 declarations.
10836 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
10837 (Process32Next_Proc): New typedefs.
10838 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
10839 (g_b_init_process32_next, g_b_init_open_thread_token)
10840 (g_b_init_impersonate_self, g_b_init_revert_to_self)
10841 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
10842 (g_b_init_get_process_working_set_size)
10843 (g_b_init_global_memory_status_ex): New static variables.
10844 (globals_of_w32): Initialize them.
10845 (create_toolhelp32_snapshot, process32_first, process32_next)
10846 (open_thread_token, impersonate_self, revert_to_self)
10847 (get_process_memory_info, get_process_working_set_size)
10848 (global_memory_status, global_memory_status_ex): New wrapper
10849 functions.
10850 (w32_list_system_processes, w32_system_process_attributes)
10851 (enable_privilege, restore_privilege, ltime, process_times):
10852 New functions.
10853 (convert_time_raw): New function.
10854 (convert_time): Remove conversion of FILETIME into time in 100
10855 nsec units, call convert_time_raw instead.
10856
10857 * process.h (w32_list_system_processes, w32_system_process_attributes):
10858 Add prototypes.
10859 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
10860 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
10861 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
10862 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
10863
10864 * process.c (Fsystem_process_attributes): Doc fix.
10865
10866 2008-08-08 Chong Yidong <cyd@stupidchicken.com>
10867
10868 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
10869 a continued multi-char glyph; if so, advance to the actual glyph.
10870
10871 2008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
10872
10873 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
10874
10875 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
10876 (.m.o): Use it.
10877 * config.in: Regenerate.
10878
10879 2008-08-07 Chong Yidong <cyd@stupidchicken.com>
10880
10881 * xdisp.c (redisplay_window): Revert last change.
10882 (try_window): Check bottom scroll margin too.
10883
10884 2008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
10885
10886 * config.in: Regenerate.
10887
10888 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
10889 -list-load-path-shadows'.
10890 (nsgui.h): Reduce number of things depending on it.
10891
10892 2008-08-06 Chong Yidong <cyd@stupidchicken.com>
10893
10894 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
10895 instead of window-end which does the wrong thing at eob.
10896 (try_cursor_movement): Minor optimization.
10897 (redisplay_window): If scroll margin is defined, don't assume
10898 window doesn't need scrolling.
10899
10900 2008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
10901
10902 * config.in: Regenerate.
10903
10904 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
10905 (mostlyclean): Don't delete *.d under NS.
10906
10907 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
10908
10909 2008-08-06 Kenichi Handa <handa@m17n.org>
10910
10911 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
10912
10913 2008-08-06 Andreas Schwab <schwab@suse.de>
10914
10915 * config.in: Regenerate.
10916
10917 2008-08-05 Chong Yidong <cyd@stupidchicken.com>
10918
10919 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
10920 forcing a window start.
10921
10922 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
10923 (auto_save_1): Update modtime when auto-save-list-file-name is on.
10924
10925 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
10926
10927 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
10928 argument.
10929
10930 2008-08-05 Juanma Barranquero <lekktu@gmail.com>
10931
10932 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
10933 <scroll-down-aggressively, before-change-functions>:
10934 <after-change-functions>: Reflow docstrings.
10935
10936 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
10937 Ken Raeburn <raeburn@gnu.org>
10938
10939 Dock menu customization, based on a patch by Ken Raeburn, plus some
10940 other fixes.
10941 * nsmenu.m (dockMenu): New variable.
10942 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
10943
10944 * nsterm.h (dockMenu): Declare.
10945
10946 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
10947 (ns_term_init): Initialize dockMenu.
10948 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
10949 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
10950 left.
10951
10952 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
10953
10954 2008-08-04 Chong Yidong <cyd@stupidchicken.com>
10955
10956 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
10957
10958 * config.in: Regenerate.
10959
10960 2008-08-04 Seiji Zenitani <zenitani@mac.com>
10961
10962 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
10963
10964 2008-08-04 Chong Yidong <cyd@stupidchicken.com>
10965
10966 * nsterm.h (find_and_call_menu_selection): Fix prototype.
10967
10968 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
10969
10970 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
10971
10972 * keyboard.h: Comment an #endif.
10973
10974 * lisp.h (have_menus_p): Adjust comment.
10975
10976 * menu.c (find_and_return_menu_selection): Fix comparison with
10977 client_data.
10978
10979 * nsmenu.m (popup_activated_flag): New variable.
10980 (popup_activated): New function.
10981 (menu-or-popup-active-p): New exported lisp definition.
10982 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
10983 when popup done.
10984 (ns_popup_dialog): Set popup_activated_flag.
10985
10986 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
10987 version for GNUstep (handled by conditional typedef in nsterm.m).
10988 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
10989 in rgb.txt).
10990
10991 * process.c (init_process): Use DARWIN_OS, not DARWIN.
10992
10993 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
10994
10995 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
10996
10997 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
10998 shortcircuit if popup_activated like GTK and X toolkit.
10999
11000 * m/inter386.h: Change DARWIN to DARWIN_OS.
11001
11002 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
11003 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
11004 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
11005 comment on NO_SOCK_SIGIO.
11006
11007 2008-08-03 Chong Yidong <cyd@stupidchicken.com>
11008
11009 * nsterm.m (windowDidResize): Remove stopModal call.
11010
11011 2008-08-03 Andreas Schwab <schwab@suse.de>
11012
11013 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
11014 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
11015
11016 2008-08-02 Chong Yidong <cyd@stupidchicken.com>
11017
11018 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
11019 Don't use uninitialized pointer variable when using getrlimit.
11020
11021 2008-08-02 Jason Rumney <jasonr@gnu.org>
11022
11023 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
11024
11025 2008-08-02 Eli Zaretskii <eliz@gnu.org>
11026
11027 * alloc.c (NSTATICS): Bump to 0x640.
11028
11029 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
11030
11031 * lisp.h: Add prototype for directory_files_internal.
11032
11033 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
11034 New functions.
11035 (syms_of_process): Defsubr them. Add initializations for various
11036 Q* symbols used in procfs_system_process_attributes.
11037 (procfs_list_system_processes, procfs_system_process_attributes)
11038 [HAVE_PROCFS]: New functions.
11039 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
11040 (procfs_get_total_memory): New functions.
11041
11042 2008-08-01 Juanma Barranquero <lekktu@gmail.com>
11043
11044 * xfaces.c (Fx_load_color_file): Fix previous change;
11045 it is #ifdef WINDOWSNT, not WINDOWS_NT.
11046
11047 2008-08-01 Michael Albinus <michael.albinus@gmx.de>
11048
11049 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
11050
11051 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
11052
11053 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
11054
11055 2008-08-01 Chong Yidong <cyd@stupidchicken.com>
11056
11057 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
11058
11059 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
11060 define NSApplicationDelegateReplySuccess.
11061 (EmacsView -converstationIdentifier): Use long instead of
11062 NSInteger for GNUstep, since it doesn't have NSInteger.
11063
11064 * xmenu.c: Revert last change.
11065
11066 * keyboard.h: Fix last change.
11067
11068 2008-08-01 Juanma Barranquero <lekktu@gmail.com>
11069
11070 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
11071 on Windows.
11072
11073 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
11074
11075 Warning clearing and clean-up in NS port.
11076 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
11077 Add prototypes.
11078 * nsgui.h (FACE_DEFAULT): Remove, unused.
11079 (XGCValues): Change colors to unsigned long.
11080 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
11081 nsterm.m.
11082 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
11083 (ns_list_fonts): Remove, unused.
11084 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
11085 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
11086 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
11087 (nsfont_draw): Compare face colors to 0, not nil.
11088 * nsmenu.m (struct widget_value): Drop unneeded declaration.
11089 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
11090 (-addSubmenuWithTitle:): Use NSMenuItem class.
11091 (ns_popup_menu): Use NO, not NULL, for enabled setting.
11092 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
11093 (ns_clip_to_row): Make gc arg a BOOL.
11094 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
11095 ns_clip_to_row() call.
11096 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
11097 used). Cast FRAME_FONT assignments.
11098 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
11099 (ns_string_to_lispmod): Change arg to const char.
11100 (ns_term_init): Use NSMenuItem class.
11101 (EmacsApp -openFile:): Move to different section of file.
11102 (EmacsApp -application:openFiles:): Don't return a value, call
11103 -replyToOpenOrPrint:.
11104 (EmacsView -keyDown:): Fix up cast.
11105 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
11106 (EmacsView -menuDown:): Cast tag in call to
11107 find_and_call_menu_selection().
11108 (ns_list_fonts): Remove, unused.
11109 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
11110 (ns_fontname_to_xlfd): Make static.
11111 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
11112 Remove prototypes (now in keyboard.h).
11113 (next_menubar_widget_id): Remove, unused.
11114 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
11115 Remove prototypes (now in keyboard.h).
11116 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
11117
11118 2008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
11119
11120 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
11121 (floatfns.o): Depend on syssignal.h.
11122 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
11123
11124 * systty.h: Fix previous change that removed BSD_TERMIOS.
11125 Add comments to #ifdefs.
11126
11127 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
11128
11129 * w32fns.c (w32-load-color-file): Remove.
11130 (x-open-connection): Use renamed Fx_load_color_file.
11131 * xfaces.c (x-load-color-file): Add.
11132 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
11133 Emacs.clr.
11134 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
11135
11136 2008-07-31 Michael Albinus <michael.albinus@gmx.de>
11137
11138 * dbusbind.c (Fdbus_call_method_asynchronously)
11139 (Fdbus_method_error_internal): New defuns.
11140 (xd_read_message): Handle also reply messages.
11141 (Vdbus_registered_functions_table): Extend docstring.
11142
11143 2008-07-31 Juanma Barranquero <lekktu@gmail.com>
11144
11145 * keyboard.c (gobble_input): Fix previous change.
11146
11147 2008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
11148
11149 * bitmaps/README:
11150 * xfns.c:
11151 * termcap.c:
11152 * term.c:
11153 * syswait.h:
11154 * systty.h:
11155 * systime.h:
11156 * syssignal.h:
11157 * sysdep.c:
11158 * process.h:
11159 * process.c:
11160 * print.c:
11161 * ndir.h:
11162 * lread.c:
11163 * keyboard.c:
11164 * getpagesize.h:
11165 * floatfns.c:
11166 * fileio.c:
11167 * emacs.c:
11168 * doc.c:
11169 * dispnew.c:
11170 * dired.c:
11171 * data.c:
11172 * callproc.c:
11173 * buffer.c:
11174 * README:
11175 * Makefile.in:
11176 * s/template.h:
11177 * s/msdos.h:
11178 * m/vax.h: Remove VMS support.
11179 * s/vms.h:
11180 * vlimit.h:
11181 * uaf.h:
11182 * temacs.opt:
11183 * param.h:
11184 * ioctl.h: Remove file.
11185
11186 2008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
11187
11188 * s/ms-w32.h (MULTI_KBOARD): Remove.
11189 * xterm.c:
11190 * xselect.c:
11191 * xfns.c:
11192 * window.c:
11193 * w32term.c:
11194 * w32fns.c:
11195 * terminal.c:
11196 * termhooks.h:
11197 * term.c:
11198 * sysdep.c:
11199 * keyboard.h:
11200 * keyboard.c:
11201 * frame.h:
11202 * frame.c:
11203 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
11204 * config.in: Regenerate.
11205
11206 2008-07-30 Jason Rumney <jasonr@gnu.org>
11207
11208 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
11209
11210 * w32font.c (w32font_encode_char): Leave as unicode if in range.
11211 (w32font_open_internal): Get unicode version of textmetrics.
11212 Don't enable or disable glyph indices here.
11213 (w32font_open): Disable use of glyph indices.
11214
11215 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
11216
11217 2008-07-30 Chong Yidong <cyd@stupidchicken.com>
11218
11219 * minibuf.c (Vread_buffer_function): Doc fix.
11220
11221 2008-07-30 John Paul Wallington <jpw@pobox.com>
11222
11223 * minibuf.c (read_buffer_completion_ignore_case): New var.
11224 (Fread_buffer): Use it.
11225
11226 2008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
11227
11228 * systty.h (sensemode): Remove empty #if. Remove reference to
11229 BSD_TERMIOS, unused.
11230
11231 * sysdep.c: Remove reference to DGUX.
11232 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
11233
11234 * config.in: Regenerate.
11235
11236 2008-07-30 Jason Rumney <jasonr@gnu.org>
11237
11238 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
11239
11240 2008-07-29 Jason Rumney <jasonr@gnu.org>
11241
11242 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
11243 is populated.
11244 (uniscribe_encode_char): Always use uniscribe.
11245 Avoid using context if cache is populated.
11246
11247 2008-07-29 Jan Djärv <jan.h.d@swipnet.se>
11248
11249 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
11250 open menu.
11251
11252 * gtkutil.c (menu_nav_ended): Remove.
11253 (create_menus): Remove signal connect for menu_nav_ended.
11254
11255 2008-07-28 Chong Yidong <cyd@stupidchicken.com>
11256
11257 * xdisp.c (redisplay_window): Check return value of
11258 compute_window_start_on_continuation_line before forcing a window
11259 start.
11260
11261 2008-07-28 Jason Rumney <jasonr@gnu.org>
11262
11263 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
11264
11265 * w32term.c (w32_enable_unicode_output, cleartype_active):
11266 Remove obsolete display options.
11267 (x_draw_glyph_string_background): Don't use old cleartype_active
11268 workaround.
11269 (w32_initialize): Remove cleartype_active initialization.
11270 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
11271
11272 2008-07-28 Andreas Schwab <schwab@suse.de>
11273
11274 * lisp.h (init_weak_hash_tables, syms_of_font)
11275 (xd_read_queued_messages, syms_of_dbusbind): Declare.
11276 (remove_hash_entry): Don't declare.
11277 * eval.c (maybe_call_debugger): Make static and move before use.
11278 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
11279 * xdisp.c: Include "gtkutil.h" if USE_GTK.
11280 * xterm.h (x_set_frame_alpha): Declare.
11281
11282 2008-07-28 Jan Djärv <jan.h.d@swipnet.se>
11283
11284 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
11285 (create_menus): Connect selection-done to menu_nav_ended.
11286
11287 2008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
11288
11289 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
11290 Set Vx_resource_name to a fallback. Replace read of 'buffered'
11291 parameter with read of 'alpha' one.
11292 (Qns_frame_parameter): Remove.
11293 * nsselect.m (selection-coding-system)
11294 (next-selection-coding-system, Vselection_coding_system)
11295 (Vnext_selection_coding_system): Drop.
11296
11297 2008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
11298
11299 * nsfns.m (do-applescript, do_applescript): Rename to
11300 ns-do-applescript, ns_do_applescript, and move within file.
11301
11302 2008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
11303
11304 Remove support for Mac Carbon.
11305 * mactoolbox.c:
11306 * macterm.h:
11307 * macterm.c:
11308 * macselect.c:
11309 * macmenu.c:
11310 * macgui.h:
11311 * macfns.c:
11312 * mac.c: Remove file.
11313 * s/darwin.h:
11314 * m/intel386.h:
11315 * xfaces.c:
11316 * xdisp.c:
11317 * window.c:
11318 * tparam.c:
11319 * termhooks.h:
11320 * termcap.c:
11321 * term.c:
11322 * syssignal.h:
11323 * sysselect.h:
11324 * sysdep.c:
11325 * process.c:
11326 * lread.c:
11327 * lisp.h:
11328 * keyboard.c:
11329 * image.c:
11330 * fringe.c:
11331 * frame.h:
11332 * frame.c:
11333 * fontset.c:
11334 * font.h:
11335 * font.c:
11336 * fns.c:
11337 * fileio.c:
11338 * emacs.c:
11339 * dispnew.c:
11340 * dispextern.h:
11341 * config.in:
11342 * atimer.c:
11343 * Makefile.in: Remove code for Carbon.
11344
11345 2008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11346
11347 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
11348
11349 2008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11350
11351 * macterm.h (kCGBitmapByteOrder32Host): New define for
11352 non-universal SDKs.
11353
11354 * image.c (mac_create_cg_image_from_image, image_load_image_io)
11355 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
11356
11357 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
11358 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
11359
11360 2008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
11361
11362 * w32inevt.c: Include dispextern.h.
11363
11364 2008-07-26 Andreas Schwab <schwab@suse.de>
11365
11366 * print.c (print_object): Fix off-by-one in last change.
11367
11368 2008-07-25 Juanma Barranquero <lekktu@gmail.com>
11369
11370 * term.c (syms_of_term): Don't initialize default_orig_pair,
11371 default_set_foreground and default_set_background on Windows.
11372
11373 2008-07-25 Jason Rumney <jasonr@gnu.org>
11374
11375 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
11376 ScriptItemize. Clean up return value checking. Remove unused
11377 variables.
11378 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
11379 shaping engine.
11380
11381 * w32font.c (w32font_has_char): Handle the case where we can't
11382 determine the script for a character.
11383
11384 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
11385
11386 * term.c (syms_of_term): Initialize default_orig_pair,
11387 default_set_foreground, and default_set_background.
11388
11389 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
11390 clash (bug#86).
11391 (getloadavg): Callers changed.
11392
11393 * image.c (svg_load_image): Fix last change.
11394 (svg_load_image): Use rsvg_handle_get_dimensions to check that
11395 image size is valid. Use g_object_unref instead of deprecated
11396 rsvg_handle_free to free rsvg handle.
11397 (x_from_xcolors): Don't initialize pixmap (silence compiler).
11398
11399 2008-07-25 Jason Rumney <jasonr@gnu.org>
11400
11401 * w32font.c (w32font_encode_char): Encode characters outside BMP as
11402 surrogates before looking up glyph index.
11403 (w32font_text_extents): Encode as surrogates if falling back to
11404 functions that need UTF-16 wide chars.
11405
11406 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
11407 BMP as surrogates before looking up glyph index.
11408
11409 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
11410
11411 * image.c (svg_load_image): Check for failure in return value of
11412 rsvg_handle_get_pixbuf. Free rsvg handle when done.
11413
11414 2008-07-25 Jason Rumney <jasonr@gnu.org>
11415
11416 * w32font.c (Fx_select_font): Reverse sense of second arg.
11417
11418 2008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
11419
11420 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
11421 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
11422
11423 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
11424 (PURESIZE): Use it.
11425
11426 2008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
11427
11428 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
11429 * m/alpha.h (TEXT_END):
11430 * m/ibmrs6000.h (TEXT_END):
11431 * m/macppc.h (TEXT_END):
11432 * s/darwin.h (TEXT_END):
11433 * s/msdos.h (TEXT_END): Remove, unused.
11434 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
11435 * s/cygwin.h: Remove comment.
11436
11437 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
11438 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
11439 * m/intel386.h (DOT_GLOBAL_START):
11440 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
11441 (USG): Remove, file not used on USG platforms.
11442
11443 * Makefile.in (HAVE_X11): Remove empty #else.
11444
11445 2008-07-24 Andreas Schwab <schwab@suse.de>
11446
11447 * fileio.c (Finsert_file_contents): Properly adjust undo list
11448 after format conversion.
11449
11450 2008-07-24 Jan Djärv <jan.h.d@swipnet.se>
11451
11452 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
11453 (menu_nav_ended): Remove.
11454 (create_menus): Remove signal connect for menu_nav_ended.
11455 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
11456 create_menus.
11457 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
11458
11459 2008-07-23 Jason Rumney <jasonr@gnu.org>
11460
11461 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
11462 with opened font.
11463 (w32font_open): Set font type to gdi.
11464
11465 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
11466
11467 2008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
11468
11469 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
11470 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
11471 defines it.
11472 * unexec.c (ADDR_CORRECT): Define unconditionally.
11473
11474 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
11475
11476 * unexec.c: Remove code depending on !COFF and USG, the file is
11477 not used for such systems.
11478
11479 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
11480 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
11481 (LD_SWITCH_SYSTEM_1): Remove, update users.
11482
11483 * s/darwin.h (DATA_END):
11484 * m/intel386.h (DATA_END):
11485 * m/ibmrs6000.h (DATA_END):
11486 * m/alpha.h (DATA_END): Remove, unused.
11487
11488 * config.in: Regenerate.
11489 * s/ms-w32.h (subprocesses): Define unconditionally.
11490 * s/template.h (subprocesses): Update comment.
11491 * s/vms.h (subprocesses):
11492 * s/usg5-4.h (subprocesses):
11493 * s/hpux10-20.h (subprocesses):
11494 * s/gnu-linux.h (subprocesses):
11495 * s/cygwin.h (subprocesses):
11496 * s/bsd-common.h (subprocesses):
11497 * s/aix4-2.h (subprocesses):
11498 * s/darwin.h (subprocesses): Do not define, defined by default now.
11499
11500 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
11501 Remove all references.
11502 (temacs): Add GNUstep specific ld flags.
11503
11504 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
11505 similarly to what X does.
11506
11507 2008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
11508
11509 * nsfns.m (x-list-fonts): Remove.
11510 (syms_of_nsfns): Drop the x-list-fonts declaration.
11511 * nsterm.m: Get rid of remaining "//" comments.
11512
11513 2008-07-22 Chong Yidong <cyd@stupidchicken.com>
11514
11515 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
11516
11517 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
11518 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
11519 (Fns_own_selection_internal, Fx_disown_selection_internal)
11520 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
11521
11522 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
11523 ... */' style of docstrings. Doc fixes.
11524
11525 2008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
11526
11527 * terminfo.c (UP, BC, PC): Undo previous change.
11528
11529 * nsfns.m: Rename ns prefixed functions/variables to the
11530 corresponding x versions. Update references.
11531
11532 2008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
11533
11534 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
11535
11536 2008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
11537
11538 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
11539 Remove forwarding functions.
11540 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
11541 non-static.
11542 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
11543 non-static.
11544 (ns_frame_parm_handlers): Use the new names.
11545 (syms_of_nsfns): Move to the end of file.
11546
11547 * nsterm.m (syms_of_nsterm): Move to the end of file.
11548
11549 * dispnew.c (init_display): Remove code for X10.
11550
11551 2008-07-22 Jason Rumney <jasonr@gnu.org>
11552
11553 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
11554 bare drive.
11555
11556 2008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
11557
11558 * nsterm.m (syms_of_nsterm): Remove debugging println.
11559
11560 2008-07-22 David Reitter <david.reitter@gmail.com>
11561
11562 * nsfns.m (do_applescript, F_do_applescript): NS version of the
11563 Carbon implementation of the same functionality: execute arbitrary
11564 AppleScript code.
11565
11566 2008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
11567
11568 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
11569 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
11570 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
11571 (Fx_display_mm_height, Fx_display_mm_width)
11572 (Fx_display_backing_store, Fx_display_visual_class)
11573 (Fx_display_save_under, Fx_open_connection)
11574 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
11575 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
11576 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
11577 (Fx_display_pixel_width, Fx_display_pixel_height)
11578 (Fx_display_usable_bounds, Fx_display_planes)
11579 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
11580 ... */' style of docstrings.
11581
11582 2008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
11583
11584 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
11585 on this platform.
11586 (mips):
11587 * m/iris4d.h (mips): Do not define.
11588 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
11589
11590 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
11591
11592 * image.c:
11593 * nsfns.m:
11594 * nsselect.m:
11595 * nsterm.h:
11596 * nsterm.m: Rename ns prefixed functions/variables to the
11597 corresponding x versions. Update references.
11598
11599 * m/ibms390x.h (NO_REMAP): Do not undefine.
11600
11601 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
11602
11603 2008-07-21 Chong Yidong <cyd@stupidchicken.com>
11604
11605 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
11606 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
11607 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
11608 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
11609 (Fns_display_mm_height, Fns_display_mm_width)
11610 (Fns_display_backing_store, Fns_display_visual_class)
11611 (Fns_display_save_under, Fns_open_connection)
11612 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
11613 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
11614 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
11615 (Fns_display_pixel_width, Fns_display_pixel_height)
11616 (Fns_display_usable_bounds, Fx_display_planes)
11617 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
11618
11619 2008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
11620
11621 * print.c (print_object): Check print_depth before searching for
11622 circularities.
11623
11624 2008-07-21 Michael Albinus <michael.albinus@gmx.de>
11625
11626 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
11627 only sprintf.
11628
11629 2008-07-21 Kenichi Handa <handa@m17n.org>
11630
11631 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
11632
11633 2008-07-20 Andreas Schwab <schwab@suse.de>
11634
11635 * syntax.c (find_start_pos, find_start_value)
11636 (find_start_value_byte, find_start_begv, find_defun_start)
11637 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
11638
11639 2008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
11640
11641 * s/sol2-3.h: Insert contents of s/sol2.h.
11642 (LD_SWITCH_SYSTEM): Remove redundant definition.
11643 * s/sol2.h: Remove, unused.
11644
11645 2008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
11646
11647 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
11648
11649 2008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
11650
11651 * Makefile.in (ns_appdir): Fix typo in find command.
11652
11653 2008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
11654
11655 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
11656
11657 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
11658 added not supported anymore.
11659
11660 * s/usg5-4-2.h (LIBS_SYSTEM):
11661 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
11662
11663 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
11664 * s/lynxos.h (GETPGRP_NO_ARG):
11665 * s/hpux10-20.h (NO_SIOCTL_H):
11666 * s/gnu.h (GETPGRP_NO_ARG):
11667 * s/gnu-linux.h (NO_SIOCTL_H):
11668 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
11669 * s/cygwin.h (GETPGRP_NO_ARG):
11670 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
11671 (C_DEBUG_SWITCH): Remove duplicate definition.
11672
11673 * m/ibms390.h: Remove boilerplate comments.
11674
11675 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
11676
11677 * process.c (HAVE_SERIAL): Consolidate ifdefs.
11678 (wait_reading_process_output): Remove code for SunOS, platform not
11679 supported anymore. Use SOLARIS2 instead of sun.
11680
11681 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
11682
11683 * font.c (font_open_by_name): Under NS, default lface height to zero.
11684 (font_open_for_lface): Under NS, set size based on frame fontsize.
11685 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
11686 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
11687
11688 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
11689
11690 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
11691 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
11692 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
11693 YES/NO.
11694 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
11695 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
11696 * Makefile.in (clean): Clear out build destination dir.
11697
11698 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
11699
11700 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
11701 xterm, xselect.
11702 * lisp.h: Remove declaration of hash_remove.
11703 * nsgui.h: Remove redefinitions of hash_remove.
11704 * fns.c (hash_remove): Rename to hash_remove_from_table.
11705
11706 2008-07-19 Seiji Zenitani <zenitani@mac.com>
11707
11708 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
11709 strdup() the family UTF8String before modifying it.
11710
11711 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
11712
11713 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
11714 NS_FACE_BACKGROUND with 0 instead of nil.
11715 * nsfont.m (nsfont_draw): Same.
11716
11717 2008-07-19 Chong Yidong <cyd@stupidchicken.com>
11718
11719 * nsfns.m (ns_set_background_color): Fix crash.
11720
11721 2008-07-18 Chong Yidong <cyd@stupidchicken.com>
11722
11723 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
11724
11725 2008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
11726
11727 * puresize.h (BASE_PURESIZE): Increase to 1240000.
11728
11729 2008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11730
11731 * gtkutil.c: Include <config.h> instead of "config.h".
11732
11733 * lisp.h (Foverlay_buffer): Add EXFUN.
11734
11735 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
11736 child process to complete child_setup. Undo 2005-09-21 change.
11737
11738 * s/darwin.h: Mention setsid after vfork.
11739
11740 2008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11741
11742 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
11743 Depend on macgui.h.
11744
11745 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
11746 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
11747
11748 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
11749 and f19.
11750 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
11751
11752 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
11753 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
11754 Remove enumerators.
11755
11756 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
11757 Check if FACE_FROM_ID returns NULL.
11758
11759 2008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
11760
11761 * w32inevt.c (change_frame_size): Remove extern declaration.
11762 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
11763 change_frame_size.
11764
11765 2008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
11766
11767 * getloadavg.c: Revert last change (2008-07-15).
11768
11769 2008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
11770
11771 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
11772 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
11773 from configure.
11774
11775 2008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
11776
11777 * s/sol2.h:
11778 * s/sol2-4.h: Reorganize conditionals.
11779
11780 * ecrt0.c: Remove code depending on m68000, not used anymore.
11781
11782 * fns.c (hash_remove): Make static.
11783 * lisp.h (hash_remove): Don't prototype.
11784
11785 * m/ibmrs6000.h:
11786 * m/ibms390x.h:
11787 * m/macppc.h: Remove boilerplate comments.
11788
11789 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
11790 Solaris, which does not need them.
11791
11792 * m/vax.h: Remove comments about unsupported systems.
11793
11794 * s/darwin.h: Reorganize ifdefs.
11795
11796 2008-07-17 Andreas Schwab <schwab@suse.de>
11797
11798 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
11799
11800 2008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
11801
11802 Use SDATA. Follow coding convention of placing operators at
11803 beginning of next line rather than end of previous line, and placing
11804 spaces around infix operators.
11805
11806 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
11807 in case it was defined already.
11808 USE @GNUSTEP_MAKEFILES@ rather than envvars.
11809 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
11810 ns_default.
11811 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
11812 Lisp_Objects.
11813 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
11814 (ns_defined_color, ns_color_to_lisp): Declare.
11815 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
11816 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
11817 it's accepted even with USE_LISP_UNION_TYPE.
11818 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
11819 (update_frame_tool_bar): Remove apparently obsolete tests for
11820 non-integerness of f->tool_bar_lines.
11821 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
11822 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
11823 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
11824 (nsfont_open): Don't confuse NULL for Qnil.
11825 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
11826 * menu.h (find_and_call_menu_selection):
11827 * menu.c (find_and_call_menu_selection): Use just int for vector size.
11828 (find_and_return_menu_selection): Always return something.
11829 * frame.h: Include dispextern.h for Display_Info.
11830 (display_x_get_resource): Declare.
11831
11832 2008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
11833
11834 * syntax.c: Remove stdio.h include accidentally introduced in
11835 Emacs.app commit.
11836 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
11837 NS_IMPL_COCOA.
11838 * keyboard.c (handle_async_input, input_available_signal): Remove
11839 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
11840
11841 2008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
11842
11843 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
11844 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
11845 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
11846 Use SDATA.
11847
11848 * keymap.c: Remove all NS-specific code.
11849 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
11850 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
11851 where_is_preferred_modifier, return a different value depending on how
11852 preferred is the binding.
11853 (where_is_internal): Adjust accordingly.
11854 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
11855 Adjust to new preferred_sequence_p.
11856 (syms_of_keymap): Declare `where-is-preferred-modifier'.
11857 * keyboard.c (parse_solitary_modifier): Not static any more.
11858 * keyboard.h (parse_solitary_modifier): Declare.
11859
11860 2008-07-16 Andreas Schwab <schwab@suse.de>
11861
11862 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
11863 of easymenu.
11864
11865 2008-07-16 Chong Yidong <cyd@stupidchicken.com>
11866
11867 * xdisp.c (move_it_in_display_line): Account for word wrap, so
11868 that we don't move off the line.
11869
11870 2008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
11871
11872 * keyboard.c (Qsuper): Remove.
11873 (parse_menu_item): Don't call where_is_internal specially for NS.
11874
11875 2008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
11876
11877 * s/gnu-linux.h: Remove boilerplate comments.
11878
11879 * m/alpha.h (__ELF__): Consolidate conditions.
11880
11881 * m/m68k.h (linux): Use GNU_LINUX instead.
11882 Remove boilerplate comments.
11883
11884 * m/intel386.h: Undo refactoring from previous change.
11885 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
11886 too, remove dead code.
11887 (linux): Use GNU_LINUX instead.
11888
11889 2008-07-16 Jason Rumney <jasonr@gnu.org>
11890
11891 * w32gui.h: Repeat 26 June changes lost by last change.
11892
11893 2008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
11894
11895 * systty.h: Remove code for Aix on 386, unsupported platform.
11896
11897 * s/ms-w32.h: Remove boilerplate comments.
11898 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
11899
11900 * s/gnu-linux.h (TERM): Remove support.
11901 (HAVE_SYSVIPC): Remove, unused.
11902 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
11903 for this system.
11904
11905 * process.c: Remove support for IRIS, unused.
11906 Remove support for TERM, not relevant anymore.
11907
11908 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
11909 used with the definition.
11910
11911 * s/aix4-2.h (static): Do not undef.
11912
11913 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
11914 only used on Aix.
11915 (HAVE_SYSVIPC): Remove, unused.
11916
11917 * m/hp800.h (CANNOT_DUMP): Do not undef.
11918
11919 * m/alpha.h: Fix comment.
11920
11921 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
11922 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
11923 used by this configuration.
11924 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
11925 * unexec.c: Remove code depending on HPUX and
11926 USG_SHARED_LIBRARIES, not used with this file. Remove code
11927 depending on IRIS, unused. Remove if 0-ed code.
11928
11929 * s/template.h: Remove comments about static.
11930
11931 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
11932 Remove if 0-ed code.
11933 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
11934 were the same as the default.
11935 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
11936 Remove boilerplate comments.
11937 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
11938 (HAVE_SYSVIPC): Remove, unused.
11939 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
11940
11941 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
11942 Remove boilerplate comments.
11943 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
11944 Remove boilerplate comments.
11945 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
11946 Remove boilerplate comments.
11947 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
11948
11949 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
11950 USG systems which do not use DATA_SEG_BITS.
11951 Refactor code. Remove boilerplate comments.
11952
11953 * m/ibms390.h:
11954 * m/m68k.h:
11955 * s/bsd-common.h:
11956 * s/cygwin.h:
11957 * s/darwin.h:
11958 * s/freebsd.h:
11959 * s/gnu.h:
11960 * s/msdos.h: Remove boilerplate comments.
11961
11962 * m/iris4d.h: Remove boilerplate comments and code for systems that
11963 do not use this file.
11964 (IRIS_4D): Remove, unused.
11965
11966 * m/mips.h: Remove boilerplate comments and code for systems that
11967 do not use this file.
11968 (SIGN_EXTEND_CHAR):
11969 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
11970 * unexmips.c: Remove file, unused.
11971
11972 * editfns.c (Fuser_full_name): Replace the only use of
11973 USER_FULL_NAME with its value.
11974 * config.in: Regenerate.
11975
11976 2008-07-16 David Reitter <david.reitter@gmail.com>
11977
11978 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
11979 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
11980
11981 2008-07-16 Glenn Morris <rgm@gnu.org>
11982
11983 * emacs.c (system-type): Doc fix.
11984
11985 2008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
11986
11987 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
11988 If the cache doesn't work, let's fix it, rather than work around it.
11989
11990 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
11991
11992 * Makefile.in: Correct additions for nsfont.o in last commit.
11993 * nsfont.m: New file (forgot last commit).
11994
11995 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
11996
11997 * callproc.c (set_initial_environment): Initialize
11998 Vprocess_environment under CANNOT_DUMP (fixes crash when
11999 batch-compiling for bootstrap).
12000
12001 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
12002 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12003
12004 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
12005 fix crash due to different init order.
12006
12007 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
12008
12009 Changes and additions for NeXTstep windowing system (Cocoa and
12010 GNUstep) support.
12011
12012 * Makefile.in:
12013 * config.in: Support defines and build commands for NS port.
12014 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
12015 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
12016 * dispextern.h: Include nsgui.h and add needed typedefs under NS
12017 windowing.
12018 (struct face): Add synth_ital field.
12019 * dispnew.c: Include nsterm.h when compiling under NS windowing.
12020 (init_display): Initialize Vinitial_window_system to "ns" when so
12021 compiled.
12022 * emacs.c: Include GSConfig.h when compiling under GNUstep.
12023 (display_arg): Use under NS.
12024 (main): Under NS, allocate autorelease pool and handle command line
12025 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
12026 (standard_args): Add NS-specific args.
12027 (shut_down_emacs): Shut down NS terminal if compiled under NS.
12028 * font.c (DEFAULT_ENCODING): New variable.
12029 (font_find_for_lface): Use it.
12030 (syms_of_font): Load syms_of_nsfont under NS.
12031 * font.h: Declare nsfont_driver when compiled under NS.
12032 * fontset.c: When compiling under NS, include nsterm.h.
12033 (fontset_from_font): Autoconstruct fontset under NS.
12034 * frame.c (various): Under NS, include nsterm.h, add Qns window system
12035 symbol, document and use it.
12036 (do_switch_frame): When for_deletion under Cocoa, add
12037 Fraise_frame(Qnil).
12038 (x_set_frame_parameters): Ensure font attribute changes are picked up.
12039 (x_get_arg): Allow "yes" and "no" as boolean values.
12040 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
12041 Qright under Cocoa.
12042 (focus-follows-mouse): Default to 0 under NS.
12043 * frame.h (enum output_method): Add output_ns.
12044 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
12045 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
12046 (FRAME_WINDOW_P): NS-specific definition.
12047 * fringe.c (max_used_fringe_bitmap): Make public.
12048 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
12049 (getloadavg): Use NeXT code under descendant OS's.
12050 * image.c (includes and header section, x_create_bitmap_from_data)
12051 (x_create_bitmap_from_file, free_bitmap_record, image_background)
12052 (image_background_transparent, x_clear_image_1)
12053 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
12054 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
12055 (x_to_xcolors, x_from_xcolors, x_disable_image)
12056 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
12057 other GUIs, including XPM support using code originally written for
12058 Carbon GUI.
12059 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
12060 using NS API.
12061 (image_ascent): Use font metrics macros instead of direct struct field
12062 access.
12063 * keyboard.c (includes): Add nsterm.h when compiling under NS.
12064 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
12065 Also, handle NS as GTK for menu bar purposes.
12066 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
12067 toolkit where they differ.
12068 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
12069 use cachelist, still needed under NS.
12070 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
12071 (struct widget_value): Define it here for menu.c.
12072 * keymap.c (includes): Include modifier internals.
12073 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
12074 NS.
12075 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
12076 support for preferring sequences using certain modifiers, specified by
12077 the FIRSTONLY argument.
12078 * lisp.h (hash_remove): Rename to avoid name clash when compiling
12079 under NS GNUstep implementation.
12080 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
12081 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
12082 * menu.c: Include nsterm.h under NS.
12083 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
12084 (free_menubar_widget_tree_value, update_submenu_strings)
12085 (find_and_call_menu_selection): Treat NS as X and NT.
12086 (find_and_return_menu_selection): New function, used for popup menus.
12087 * nsgui.h:
12088 * nsterm.h:
12089 * nsfns.m:
12090 * nsimage.m:
12091 * nsmenu.m:
12092 * nsselect.m:
12093 * nsterm.m: New files.
12094 * process.c (wait_reading_process_output): Under NS, call ns_select()
12095 instead of plain select().
12096 * syntax.c (char_quoted): Under NS, avoid a crash when called near
12097 beginning of buffer.
12098 * sysselect.h (init_process): Rename when compiling under Cocoa to
12099 avoid name conflict.
12100 * termhooks.h (display_info): Add ns_display_info to union.
12101 * terminal.c (Fterminal_live_p): Add ns to terminal types.
12102 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
12103 COCOA environment.
12104 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
12105 unexec() signature. (Note, this will dump, but the resulting file
12106 crashes; unexosx is used instead; keeping around for reference and
12107 possible aid in getting dump working under GNUstep.)
12108 * w32gui.h (button_type, widget_value): Remove definitions (now in
12109 keyboard.h).
12110 * window.c: Include nsterm.h when compiling under NS.
12111 * xdisp.c (includes): Include nsterm.h when compiling under NS.
12112 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
12113 other GUI windowing systems.
12114 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
12115 GTK.
12116 (x_consider_frame_title): Under NS, set icon type and frame
12117 modified-state indicator; use ns_set_name_as_filename() when using
12118 formatted title.
12119 (update_window_cursor): Make public when compiling under NS.
12120 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
12121 (hourglass_atimer, Vhourglass_delay
12122 * xfaces.c (header section, init_frame_faces, clear_font_table)
12123 (defined_color, unload_color, x_face_list_fonts)
12124 (prepare_face_for_display): Add NS support parallel to other GUIs.
12125 Emulate GCs like other non-X GUIs.
12126 (split_font_name): Don't lowercase font name under NS.
12127 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
12128 under NS.
12129 * s/darwin.h: Add support for compilation under NS.
12130
12131 2008-07-15 Jason Rumney <jasonr@gnu.org>
12132
12133 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
12134 (w32_show_hourglass): Rename from show_hourglass.
12135 (w32_hide_hourglass): Rename from hide_hourglass.
12136 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
12137 (Vhourglass_delay): Declare extern.
12138 (hourglass_started): Remove.
12139
12140 * xdisp.c (Vhourglass_delay): Remove static.
12141 (hourglass_started, start_hourglass, cancel_hourglass):
12142 Don't include these versions on WINDOWSNT.
12143
12144 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
12145
12146 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
12147 variables (formerly in xfns.c).
12148 (show_hourglass, hide_hourglass): New prototypes (same).
12149 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
12150 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
12151 in xfns.c).
12152 (syms_of_xdisp): Declare/initialize display-hourglass,
12153 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
12154 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
12155 formerly in xfns.c.
12156 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
12157 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
12158 (start_hourglass, cancel_hourglass): Remove.
12159 (show_hourglass, hide_hourglass): Remove prototypes and static
12160 modifiers.
12161 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
12162 hourglass_atimer, hourglass_shown_p declaration/initialization.
12163 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
12164 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
12165 (start_hourglass, cancel_hourglass): Remove.
12166 (show_hourglass, hide_hourglass): Remove prototypes and static
12167 modifiers.
12168 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
12169 hourglass_atimer, hourglass_shown_p declaration/initialization.
12170 * w32fns.c (display_hourglass_p, Vhourglass_delay)
12171 (DEFAULT_HOURGLASS_DELAY): Remove.
12172 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
12173 hourglass_shown_p declaration/initialization.
12174
12175 2008-07-14 Jason Rumney <jasonr@gnu.org>
12176
12177 * w32fns.c (w32_get_arg): Remove wrapper function.
12178 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
12179 directly.
12180 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
12181
12182 2008-07-14 Kenichi Handa <handa@m17n.org>
12183
12184 * xfont.c (xfont_open): Add workaround for X's bug.
12185
12186 2008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
12187
12188 * fontset.c: Include <stdio.h> unconditionally.
12189
12190 2008-07-13 Michael Albinus <michael.albinus@gmx.de>
12191
12192 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
12193 for filtering.
12194
12195 2008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
12196
12197 * s/vms.h: Use __GNUC__ instead of _GNUC_.
12198
12199 * m/macppc.h:
12200 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
12201
12202 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
12203 (SPECIAL_EMACS_INT):
12204 * m/ia64.h (SPECIAL_EMACS_INT):
12205 * m/amdx86-64.h (SPECIAL_EMACS_INT):
12206 * s/gnu.h (NLIST_STRUCT):
12207 * s/aix4-2.h (X11R5_INHIBIT_I18N):
12208 * s/gnu-linux.h (LINUX):
12209 * s/msdos.h (HAVE_FACES):
12210 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
12211
12212 * systty.h:
12213 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
12214 anymore.
12215
12216 2008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
12217
12218 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
12219 always defined as int.
12220
12221 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
12222 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
12223 * s/gnu-linux.h (HAVE_WAIT_HEADER):
12224 * s/freebsd.h (HAVE_WAIT_HEADER):
12225 * s/bsd-common.h (HAVE_UNION_WAIT):
12226 * s/aix4-2.h (HAVE_WAIT_HEADER):
12227 * m/mips.h (HAVE_UNION_WAIT):
12228 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
12229 (COFF, static): Do not define, they are undefined later in the file.
12230
12231 * process.c (update_status): Don't use a union.
12232 (status_convert):
12233 (sigchld_handler): Use int instead of WAITTYPE.
12234
12235 2008-07-12 Chong Yidong <cyd@stupidchicken.com>
12236
12237 * indent.c (Fvertical_motion): Restore hscroll before moving to
12238 goal column.
12239
12240 2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
12241
12242 * lisp.h: Remove left over code.
12243
12244 2008-07-11 Andreas Schwab <schwab@suse.de>
12245
12246 * lisp.h: Fix logic in last change.
12247
12248 * menu.h: New file.
12249 * menu.c: Include it.
12250 * xmenu.c: Likewise.
12251 * Makefile.in: Update dependencies.
12252
12253 2008-07-11 Kenichi Handa <handa@m17n.org>
12254
12255 * fontset.c (fontset_from_font): Cancel the previous change.
12256
12257 2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
12258
12259 * lisp.h:
12260 * w32heap.c:
12261 * emacs.c:
12262 * alloc.c: Replace all references of NO_UNION_TYPE with
12263 USE_LISP_UNION_TYPE.
12264
12265 * m/xtensa.h (NO_UNION_TYPE):
12266 * m/vax.h (NO_UNION_TYPE):
12267 * m/template.h (NO_UNION_TYPE):
12268 * m/sparc.h (NO_UNION_TYPE):
12269 * m/mips.h (NO_UNION_TYPE):
12270 * m/macppc.h (NO_UNION_TYPE):
12271 * m/m68k.h (NO_UNION_TYPE):
12272 * m/iris4d.h (NO_UNION_TYPE):
12273 * m/intel386.h (NO_UNION_TYPE):
12274 * m/ibms390x.h (NO_UNION_TYPE):
12275 * m/ibms390.h (NO_UNION_TYPE):
12276 * m/ibmrs6000.h (NO_UNION_TYPE):
12277 * m/ia64.h (NO_UNION_TYPE):
12278 * m/hp800.h (NO_UNION_TYPE):
12279 * m/arm.h (NO_UNION_TYPE):
12280 * m/amdx86-64.h (NO_UNION_TYPE):
12281 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
12282 defining it the same.
12283
12284 2008-07-10 Chong Yidong <cyd@stupidchicken.com>
12285
12286 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
12287
12288 2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
12289
12290 * fileio.c:
12291 * sysdep.c:
12292 * systty.h:
12293 * m/ibmrs6000.h:
12294 * m/iris4d.h:
12295 * s/aix4-2.h:
12296 * s/freebsd.h:
12297 * s/gnu-linux.h:
12298 * s/hpux10-20.h:
12299 * s/hpux11.h:
12300 * s/netbsd.h:
12301 * s/sol2-3.h:
12302 * s/sol2-4.h:
12303 * s/sol2.h:
12304 * s/usg5-4.h:
12305 * s/vms.h: Remove references to unused variables.
12306
12307 2008-07-10 Andreas Schwab <schwab@suse.de>
12308
12309 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
12310 pattern before matching the generic family.
12311
12312 2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
12313
12314 * unexec.c:
12315 * s/vms.h:
12316 * s/usg5-4-2.h:
12317 * s/sol2-5.h:
12318 * s/freebsd.h:
12319 * s/darwin.h: Remove dead code.
12320
12321 * m/template.h:
12322 * m/sparc.h:
12323 * m/mips.h:
12324 * m/m68k.h:
12325 * m/iris4d.h:
12326 * m/intel386.h:
12327 * m/ibms390x.h:
12328 * m/ibms390.h:
12329 * m/ia64.h:
12330 * m/hp800.h:
12331 * m/arm.h:
12332 * m/amdx86-64.h: Remove dead code and references to unused
12333 and compiler defined symbols.
12334
12335 * unexmips.c:
12336 * unexelf.c: Remove references to desupported systems.
12337
12338 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
12339
12340 * m/powermac.h: Remove boilerplate comments.
12341 (NO_REMAP): Remove unused definition.
12342
12343 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
12344 define them.
12345
12346 2008-07-10 Kenichi Handa <handa@m17n.org>
12347
12348 * xfont.c (xfont_open): Log the reason of failure.
12349
12350 2008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
12351
12352 * fontset.c (fontset_get_font_group):
12353 * font.c (font_check_otf): Specify argument types.
12354
12355 2008-07-09 Kenichi Handa <handa@m17n.org>
12356
12357 * coding.c (detect_coding_utf_8): Set detect_info->found only when
12358 non-ASCII char is found.
12359
12360 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
12361 (reorder_font_vector): Change the arg preferred_family to font.
12362 Prefer the spec matching with font.
12363 (fontset_get_font_group): New function.
12364 (fontset_find_font): Change the format of an element of a realized
12365 fontset. Use fontset_get_font_group.
12366 (fontset_font): Try the current fontset, the default fontset, the
12367 fallbacks of the current fontset, and the fallbacks of the default
12368 fontset in this order.
12369 (face_for_char): Delete the shortcut to use the current font.
12370 (fontset_from_font): Don't set fonts for Latin in the fontset.
12371
12372 * font.h (font_make_object, font_match_p): Adjust prototypes.
12373
12374 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
12375
12376 * font.c (font_make_object): New arg entity and pixelsize.
12377 (font_check_otf_features, font_check_otf): New functions.
12378 (font_match_p): Check :lang, :script, and :otf properties.
12379
12380 * xfont.c (xfont_open): Adjust it for the change of
12381 font_make_object.
12382 (xfont_text_extents): Fix initial setting of metrics.
12383
12384 * ftfont.c (struct ftfont_info): New member index, delete member
12385 fc_charset_idx. Make the member order compatible with struct
12386 xftfont_info.
12387 (fc_charset_table): Change charset names to registry names.
12388 (ftfont_pattern_entity): Delete the args registry and
12389 fc_charset_idx. Change the value of :font-entity property
12390 to (FONTNAME . INDEX). Always set :registry property to
12391 `iso10646-1'.
12392 (struct ftfont_cache_data): New struct.
12393 (ftfont_lookup_cache): New arg for_face.
12394 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
12395 (ftfont_driver): Set the member otf_capability.
12396 (ftfont_get_charset): Adjust it for the change of
12397 fc_charset_table.
12398 (OTF_TAG_SYM): New macro.
12399 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
12400 for the change of fc_charset_table.
12401 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
12402 ftfont_pattern_entity. Add FC_INDEX to objset.
12403 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
12404 and ftfont_pattern_entity.
12405 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
12406 font_make_object, struct ftfont_info.
12407 (ftfont_has_char): Use ftfont_get_fc_charset.
12408 (ftfont_otf_features, ftfont_otf_capability): New functions.
12409 (ftfont_shape): Use ftfont_get_otf.
12410 (ftfont_text_extents): Fix initial setting of metrics.
12411
12412 * xftfont.c (struct xftfont_info): New member ft_size. Make the
12413 member order compatible with struct ftfont_info.
12414 (xftfont_open): Add FC_CHARSET to the pattern. Set
12415 xftfont_info->ft_size. Don't unlock the face. Check BDF
12416 properties if appropriate.
12417 (xftfont_close): Unlock the face.
12418 (xftfont_anchor_point, xftfont_shape): Deleted.
12419 (syms_of_xftfont): Don't set members anchor_point and shape of
12420 xftfont_driver.
12421
12422 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
12423 font_make_object.
12424
12425 * w32font.c (w32font_open): Adjust it for the change of
12426 font_make_object.
12427 (w32font_open_internal): Don't set properties of font_object here.
12428
12429 2008-07-08 Chong Yidong <cyd@stupidchicken.com>
12430
12431 * macfns.c (x_create_tip_frame):
12432 * w32fns.c (x_create_tip_frame):
12433 * xfns.c (x_create_tip_frame): Pass parameter argument to
12434 face-set-after-frame-default.
12435
12436 * xfaces.c (Finternal_merge_in_global_face): Save merged
12437 attributes for the default face back into the face vector.
12438
12439 2008-07-08 Andreas Schwab <schwab@suse.de>
12440
12441 * fontset.h: Declare fontset_from_font. Don't declare
12442 new_fontset_from_font and fontset_from_font_name.
12443 * xterm.c: Include "fontset.h".
12444 * Makefile.in (xterm.o): Update dependencies.
12445
12446 2008-07-08 Glenn Morris <rgm@gnu.org>
12447
12448 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
12449 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
12450
12451 2008-07-07 Chong Yidong <cyd@stupidchicken.com>
12452
12453 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
12454 (x_set_frame_parameters): Don't bind it.
12455
12456 2008-07-07 Juanma Barranquero <lekktu@gmail.com>
12457
12458 * w32fns.c (map_w32_filename): Declare extern.
12459
12460 2008-07-07 Jason Rumney <jasonr@gnu.org>
12461
12462 * w32term.c (WS_EX_LAYERED): Define if not already.
12463
12464 2008-07-06 Chong Yidong <cyd@stupidchicken.com>
12465
12466 * xfaces.c (set_font_frame_param): Don't try to set the font
12467 parameter if it is still unspecified in the lface.
12468
12469 2008-07-05 Chong Yidong <cyd@stupidchicken.com>
12470
12471 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
12472 face if it didn't already exist.
12473
12474 * xdisp.c (try_window_id): Give up if word-wrapping is on.
12475
12476 2008-07-05 Andreas Schwab <schwab@suse.de>
12477
12478 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
12479
12480 2008-07-05 Chong Yidong <cyd@stupidchicken.com>
12481
12482 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
12483 word-wrapping.
12484 (IT_DISPLAYING_WHITESPACE): New macro.
12485 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
12486 when word-wrapping. Simplify word-wrapping logic. Use correct
12487 pixel positions when saving copies of the iterator.
12488 (display_line): Use proper wrap point if the last character on a
12489 line was preceded by whitespace.
12490
12491 2008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
12492
12493 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
12494
12495 2008-07-04 Kenichi Handa <handa@m17n.org>
12496
12497 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
12498
12499 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
12500
12501 2008-07-02 Jason Rumney <jasonr@gnu.org>
12502
12503 * xfns.c (syms_of_xfns): Only define x-select-font when both
12504 HAVE_FREETYPE and USE_GTK.
12505
12506 * xdisp.c (next_element_from_display_vector): Move assignment out
12507 of if statement.
12508
12509 2008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
12510
12511 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
12512
12513 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
12514 (syms_of_fileio): Initialize and export them.
12515 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
12516
12517 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
12518 (Fsystem_move_file_to_trash): New function.
12519 (syms_of_w32fns): Export it to lisp.
12520
12521 2008-07-01 Jason Rumney <jasonr@gnu.org>
12522
12523 * w32font.c (w32font_text_extents): Don't count overhang as part
12524 of width.
12525
12526 2008-06-30 Miles Bader <miles@gnu.org>
12527
12528 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
12529 Add `avoid_cursor_p' field.
12530
12531 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
12532 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
12533 (append_glyph, append_composite_glyph, produce_image_glyph)
12534 (append_stretch_glyph): Initialize avoid_cursor_p.
12535 (get_it_property): Rename from `get_line_height_property'.
12536 (x_produce_glyphs): Use get_it_property.
12537 (handle_line_prefix, push_display_prop): New functions.
12538 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
12539 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
12540 New variables.
12541 (syms_of_xdisp): Initialize them.
12542
12543 2008-06-30 Kenichi Handa <handa@m17n.org>
12544
12545 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
12546 XftDefaultSubstitute (they are called in XftFontMatch).
12547 (xftfont_open): Fix args to ftfont_font_format.
12548
12549 * ftfont.c (fc_charset_table): New member lang.
12550 (ftfont_resolve_generic_family): New arg pattern.
12551 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
12552 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
12553 (ftfont_open): Fix args to ftfont_font_format.
12554 (ftfont_font_format): New arg filename.
12555
12556 2008-06-30 Chong Yidong <cyd@stupidchicken.com>
12557
12558 * xfaces.c (Finternal_merge_in_global_face): If default face was
12559 modified, realize it again. Update the font face attribute.
12560
12561 2008-06-29 Jason Rumney <jasonr@gnu.org>
12562
12563 * w32term.c (x_set_frame_alpha): Fix logic.
12564
12565 2008-06-29 Kenichi Handa <handa@m17n.org>
12566
12567 * fontset.c (Finternal_char_font): Return font-object instead of
12568 font-name.
12569
12570 * composite.c (get_composition_id): Fix the width calculation for TAB.
12571
12572 2008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
12573
12574 * indent.c (Fvertical_motion): Properly handle float column arg.
12575
12576 2008-06-28 Jason Rumney <jasonr@gnu.org>
12577
12578 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
12579 (pfnSetLayeredWindowAttributes): New function pointer.
12580 (w32_initialize): Initialize it when supported.
12581 (x_set_frame_alpha): New function.
12582
12583 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
12584 (w32_frame_parm_handlers): Set alpha handler.
12585
12586 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
12587
12588 2008-06-27 Jason Rumney <jasonr@gnu.org>
12589
12590 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
12591 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
12592 (w32_to_x_charset, x_to_w32_charset)
12593 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
12594 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
12595 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
12596 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
12597 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
12598 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
12599 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
12600 (Qw32_charset_unicode): Remove.
12601 (syms_of_w32fns): Update for above changes.
12602
12603 * w32font.c (w32_to_x_charset, x_to_w32_charset)
12604 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
12605 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
12606 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
12607 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
12608 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
12609 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
12610 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
12611 (syms_of_w32font): Update for above changes.
12612
12613 2008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
12614
12615 * s/usg5-4.h: Fix previous change: keep the correct branch of a
12616 removed #if.
12617 (USG_SHARED_LIBRARIES): Remove duplicate definition.
12618
12619 2008-06-26 Juanma Barranquero <lekktu@gmail.com>
12620 Eli Zaretskii <eliz@gnu.org>
12621
12622 * makefile.w32-in (LOCAL_FLAGS):
12623 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
12624
12625 * sysdep.c (_spawnlp, _getpid):
12626 Declare with explicit _cdecl instead of _CRTAPI1.
12627
12628 * editfns.c (Fget_internal_run_time):
12629 Check for WINDOWSNT with #ifdef, not #if.
12630
12631 2008-06-26 Jason Rumney <jasonr@gnu.org>
12632
12633 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
12634
12635 * w32term.c (x_draw_glyph_string_foreground)
12636 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
12637 Use FONT_HANDLE macro.
12638 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
12639
12640 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
12641 (uniscribe_encode_char): Use FONT_HANDLE macro.
12642
12643 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
12644 (w32font_text_extents): Use precast w32_font.
12645 (w32font_close): Free cached metrics.
12646 (w32font_open_internal): Allocate space for name on stack.
12647
12648 2008-06-26 Chong Yidong <cyd@stupidchicken.com>
12649
12650 * xdisp.c (extend_face_to_end_of_line): Fix last change.
12651
12652 2008-06-26 Jason Rumney <jasonr@gnu.org>
12653
12654 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
12655 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
12656
12657 2008-06-26 Juanma Barranquero <lekktu@gmail.com>
12658
12659 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
12660
12661 2008-06-26 Jason Rumney <jasonr@gnu.org>
12662
12663 * w32bdf.c, w32bdf.h: Remove obsolete files.
12664
12665 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
12666
12667 * w32gui.h: Don't include w32bdf.h.
12668 (XCharStruct, enum w32_char_font_type, W32FontStruct):
12669 Remove obsolete font support.
12670
12671 * w32font.h (struct w32font_info): Remove compat_w32_font.
12672 Add hfont member.
12673 (FONT_COMPAT): Remove obsolete macro.
12674
12675 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
12676 (w32font_encode_char, w32font_text_extents): Use new hfont member.
12677 (w32font_open_internal): Remove compat code. Set new hfont member.
12678 (Fx_select_font): Use new hfont member.
12679
12680 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
12681 (uniscribe_encode_char): Use new hfont member.
12682
12683 * w32term.c (x_draw_glyph_string_foreground)
12684 (x_draw_composite_glyph_string_foreground): Use new hfont member.
12685 (x_draw_glyph_string): Use metrics in w32font_info.
12686
12687 2008-06-26 Kenichi Handa <handa@m17n.org>
12688
12689 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
12690
12691 2008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
12692
12693 * unexnext.c:
12694 * m/ews4800.h:
12695 * m/hp9000s300.h:
12696 * m/ibm370aix.h:
12697 * m/mips-siemens.h:
12698 * m/ncr386.h:
12699 * m/next.h:
12700 * m/pmax.h:
12701 * m/powerpcle.h:
12702 * m/tandem-s2.h:
12703 * s/386bsd.h:
12704 * s/bsd386.h:
12705 * s/bsd4-1.h:
12706 * s/bsd4-2.h:
12707 * s/bsdos2-1.h:
12708 * s/bsdos2.h:
12709 * s/bsdos3.h:
12710 * s/bsdos4.h:
12711 * s/nextstep.h:
12712 * s/ultrix4-3.h:
12713 * s/usg5-0.h:
12714 * s/usg5-2-2.h:
12715 * s/usg5-2.h:
12716 * s/usg5-4-3.h:
12717 * s/ux4800.h:
12718 * s/uxpds.h:
12719 * s/uxpv.h: Remove support for obsolete systems.
12720 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
12721 Remove, insert contents in s/hpux10-20.h.
12722 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
12723 Remove, insert contents in s/aix4-2.h.
12724 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
12725 * s/bsd4-3.h: Rename to ...
12726 * s/bsd-common.h: ... this.
12727 * data.c:
12728 * doc.c:
12729 * ecrt0.c:
12730 * emacs.c:
12731 * fileio.c:
12732 * floatfns.c:
12733 * keyboard.c:
12734 * mem-limits.h:
12735 * print.c:
12736 * process.c:
12737 * sysdep.c:
12738 * syssignal.h:
12739 * systty.h:
12740 * syswait.h:
12741 * term.c:
12742 * unexec.c:
12743 * unexelf.c:
12744 * unexhp9k800.c:
12745 * m/hp800.h:
12746 * m/ibmrs6000.h:
12747 * m/mips.h:
12748 * m/vax.h:
12749 * s/darwin.h:
12750 * s/freebsd.h:
12751 * s/gnu.h:
12752 * s/ms-w32.h:
12753 * s/msdos.h:
12754 * s/netbsd.h:
12755 * s/template.h: Remove references to obsolete variables.
12756
12757 * Makefile.in: Add dependencies for all unexec files.
12758 (admindir): Remove unused variable.
12759 (UNEXEC_SRC): Remove references.
12760
12761 2008-06-25 Chong Yidong <cyd@stupidchicken.com>
12762
12763 * xfns.c (x_default_font_parameter): If Xft is available, first
12764 try Monospace-12 for the default font.
12765
12766 2008-06-25 Jason Rumney <jasonr@gnu.org>
12767
12768 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
12769
12770 2008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
12771
12772 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
12773
12774 * buffer.c (syms_of_buffer): Remove default-word-wrap.
12775
12776 2008-06-25 Juanma Barranquero <lekktu@gmail.com>
12777
12778 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
12779 <scroll-conservatively>: Fix typo in docstring.
12780
12781 * xselect.c (Fx_send_client_event): Doc fix.
12782
12783 2008-06-25 Kenichi Handa <handa@m17n.org>
12784
12785 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
12786
12787 * font.c (font_parse_fcname): Remove unused variables.
12788 (font_sort_entites): Delete the arg SPEC. Caller changed.
12789 Fix for the case of ! best_only.
12790 (font_delete_unmatched): Check DPI and AVGWIDTH too.
12791
12792 * lisp.h (Fstring_to_unibyte): EXFUN it.
12793
12794 * character.h (str_to_unibyte): Extern it.
12795
12796 * character.c (str_to_unibyte): New function.
12797
12798 * fns.c (Fstring_to_unibyte): New function.
12799 (syms_of_fns): Defsubr it.
12800
12801 2008-06-24 Kenichi Handa <handa@m17n.org>
12802
12803 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
12804 DPI too.
12805 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
12806
12807 2008-06-24 Andreas Schwab <schwab@suse.de>
12808
12809 * Makefile.in (${lispsource}loaddefs.el): Rename from
12810 ../lisp/loaddefs.el.
12811 (bootstrap-clean): Do what distclean does but don't remove
12812 Makefile.
12813 (distclean): Depend on bootstrap-clean and remove Makefile.
12814
12815 2008-06-24 Chong Yidong <cyd@stupidchicken.com>
12816
12817 * buffer.h (struct buffer): New member word_wrap.
12818
12819 * buffer.c (syms_of_buffer): New variables default-word-wrap and
12820 word-wrap.
12821 (init_buffer_once): Initialize them.
12822
12823 * dispextern.h (struct it): Replace bool truncate_lines_p with a
12824 line_wrap enum possessing three possible values.
12825
12826 * termopts.h: Replace truncate_partial_width_windows with
12827 Vtruncate_partial_width_windows.
12828
12829 * dispnew.c (direct_output_for_insert): Avoid direct output when
12830 inserting a space with word wrap on.
12831
12832 * indent.c (compute_motion): Obey integer values of
12833 truncate-partial-width-windows.
12834
12835 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
12836 replacing truncate_partial_width_windows.
12837 (init_iterator): If Vtruncate_partial_width_windows is an integer,
12838 truncate only if the window width is below that integer.
12839 (start_display, resize_mini_window, produce_stretch_glyph)
12840 (display_string, move_it_in_display_line_to): Use line_wrap.
12841 (back_to_previous_visible_line_start, reseat_1): Reset
12842 string_from_display_prop_p.
12843 (display_line): Extend default face to end of line when wrapping.
12844
12845 2008-06-24 Kim F. Storm <storm@cua.dk>
12846
12847 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
12848 to wrap continued lines at word boundaries.
12849
12850 2008-06-24 Jason Rumney <jasonr@gnu.org>
12851
12852 * font.c (Ffont_face_attributes): Multiply pixel size before point
12853 conversion to avoid multiplying rounding error.
12854
12855 2008-06-23 Jason Rumney <jasonr@gnu.org>
12856
12857 * w32term.c (x_draw_glyph_string_background)
12858 (x_draw_glyph_string): Remove old bdf font code.
12859
12860 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
12861
12862 2008-06-22 Kenichi Handa <handa@m17n.org>
12863
12864 * font.c (font_find_for_lface): Try the adstyle specified in
12865 the property of LFACE_FONT of LFACE (if any).
12866
12867 2008-06-21 Seiji Zenitani <zenitani@mac.com>
12868 Ryo Yoshitake <ryo@shiftmode.net>
12869
12870 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
12871
12872 2008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
12873
12874 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
12875 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
12876 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
12877 (witness-emacs): Remove.
12878 (lisp, shortlisp): Move loaddefs.el earlier.
12879 (mostlyclean): Forget about witness-emacs.
12880
12881 2008-06-22 Glenn Morris <rgm@gnu.org>
12882
12883 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
12884 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
12885
12886 2008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
12887
12888 * Makefile.in (PRECOMP): Remove.
12889 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
12890 (witness-emacs): Run `compile-first'.
12891 (.el.elc): Use the new compile-onefile target.
12892
12893 2008-06-21 Kenichi Handa <handa@m17n.org>
12894
12895 * xftfont.c (xftfont_open): Handle QCembolden only when
12896 FC_EMBOLDEN is defined.
12897
12898 2008-06-21 Andreas Schwab <schwab@suse.de>
12899
12900 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
12901 (.el.elc): Likewise.
12902
12903 2008-06-21 Miles Bader <miles@gnu.org>
12904
12905 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
12906 build dir, not the lisp source dir.
12907
12908 2008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
12909
12910 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
12911 (bootstrapclean): Remove.
12912 (.el.elc): New rule.
12913 (PRECOMP): New var.
12914 (../lisp/subdirs.el): Remove.
12915 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
12916 (witness-emacs): New target.
12917 (mostlyclean): Remove witness-emacs as well.
12918 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
12919 Add witness-emacs dependency.
12920
12921 2008-06-20 Chong Yidong <cyd@stupidchicken.com>
12922
12923 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
12924 defined by the font.
12925
12926 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
12927
12928 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
12929 (bootstrap-clean): New target that keeps TAGS around.
12930 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
12931 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
12932
12933 2008-06-20 Jason Rumney <jasonr@gnu.org>
12934
12935 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
12936 Remove obsolete font code.
12937
12938 * w32font.c (font_matches_spec): Use csb bitfield from font signature
12939 to determine language support.
12940
12941 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
12942
12943 * sysdep.c (cfsetspeed): New fun extracted from the code.
12944 (cfmakeraw): Move before first use.
12945
12946 2008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
12947
12948 * sysdep.c (cfmakeraw): Provide fallback implementation.
12949 (serial_configure): Provide fallback implementation of cfsetspeed.
12950
12951 2008-06-20 Kenichi Handa <handa@m17n.org>
12952
12953 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
12954 the pattern.
12955
12956 * fontset.c (fontset_from_font): Copy font_spec before changing
12957 the elements.
12958
12959 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
12960
12961 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
12962
12963 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
12964 for explicit `font' parameters.
12965
12966 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
12967
12968 2008-06-19 Kenichi Handa <handa@m17n.org>
12969
12970 * frame.c: Include <ctype.h>.
12971 (x_set_font_backend): Allow spacing characters in the X resource
12972 for FontBackend.
12973
12974 2008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
12975
12976 * w32fns.c, xfns.c (Qfont_param): New var.
12977 (syms_of_w32fns): Initialize it.
12978 (x_default_font_parameter): Record explicit `font' into
12979 `font-parameter'.
12980
12981 2008-06-18 Kenichi Handa <handa@m17n.org>
12982
12983 * font.c (font_parse_xlfd): Fix previous change.
12984 (font_parse_fcname): Don't use :fc-unknown-spec.
12985 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
12986 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
12987 (font_add_log): Prepend the driver name to the resulting fonts.
12988
12989 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
12990 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
12991 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
12992
12993 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
12994 (QCembolden): New variables.
12995 (syms_of_xftfont): DEFSYM them.
12996 (xftfont_open): Call XftFontMatch. Don't trust the result of
12997 XftTextExtents8 if the pixel_size is less than 5.
12998
12999 2008-06-18 Andreas Schwab <schwab@suse.de>
13000
13001 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
13002 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
13003
13004 2008-06-18 Jason Rumney <jasonr@gnu.org>
13005
13006 * w32font.c (w32font_list, w32font_match): Add logging.
13007
13008 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
13009
13010 2008-06-17 Chong Yidong <cyd@stupidchicken.com>
13011
13012 * font.c (font_parse_fcname): Store divider characters for
13013 unknown-spec list. For known key symbols, intern using correct
13014 symbol name.
13015
13016 2008-06-17 Kenichi Handa <handa@m17n.org>
13017
13018 * xfaces.c (realize_default_face): If the frame is not on window
13019 system, set the fontset of face to nil.
13020
13021 2008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
13022
13023 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
13024
13025 2008-06-16 Juanma Barranquero <lekktu@gmail.com>
13026
13027 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
13028 (build_font_name_from_vector): Delete externs.
13029
13030 * xfaces.c (struct font_name): Don't declare.
13031
13032 2008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
13033
13034 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
13035
13036 2008-06-16 Chong Yidong <cyd@stupidchicken.com>
13037
13038 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
13039
13040 2008-06-16 Juanma Barranquero <lekktu@gmail.com>
13041
13042 * font.c (Ffont_spec): Fix usage in docstring.
13043 (Ffont_face_attributes): Doc fix.
13044
13045 2008-06-16 Andreas Schwab <schwab@suse.de>
13046
13047 * font.c (Ffont_face_attributes): Fix definition.
13048
13049 2008-06-16 Jason Rumney <jasonr@gnu.org>
13050
13051 * font.h (font_style_symbolic_from_value): Remove.
13052
13053 * font.c (font_style_symbolic_from_value): Remove.
13054 (font_style_symbolic): Revert to pre 2008-06-13 version.
13055
13056 * w32font.c (w32_to_fc_weight): New function.
13057 (w32font_full_name, logfont_to_fcname): Use it.
13058
13059 2008-06-16 Kenichi Handa <handa@m17n.org>
13060
13061 * font.c (font_check_object): Delete it.
13062 (font_clear_cache): Check if a font-object is alive.
13063 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
13064 font-object to nil.
13065 (font_close_object): Don't check FONT_CLOSE_OBJECT.
13066 (font_at): Don't call font_check_object.
13067 (Ffont_get): Return a symbol for :weight, :slant, and :width.
13068
13069 2008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
13070
13071 * puresize.h (BASE_PURESIZE): Increase to 1230000.
13072
13073 2008-06-16 Chong Yidong <cyd@stupidchicken.com>
13074
13075 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
13076
13077 2008-06-15 Chong Yidong <cyd@stupidchicken.com>
13078
13079 * font.c (font_parse_fcname): Only one decimal point.
13080 (font_unparse_fcname): Handle data in family and foundry indices
13081 as symbols, not strings.
13082 (font_unparse_gtkname, Ffont_face_attributes): New functions.
13083
13084 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
13085
13086 * font.h (font_unparse_gtkname): Add prototype.
13087
13088 2008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
13089
13090 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
13091
13092 2008-06-15 Andreas Schwab <schwab@suse.de>
13093
13094 * font.c (font_update_drivers): Fix crash when no drivers match.
13095
13096 2008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
13097
13098 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
13099 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
13100
13101 2008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
13102
13103 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
13104
13105 2008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
13106
13107 * process.c (Fserial_process_configure, Fprocess_send_eof):
13108 Use EQ to compare Lisp_Objects.
13109
13110 2008-06-13 Jason Rumney <jasonr@gnu.org>
13111
13112 * w32fns.c (Fw32_select_font): Remove old font API function.
13113
13114 * w32font.c (logfont_to_fcname): New function.
13115 (Fx_select_font): New font dialog function compatible with
13116 GTK/fontconfig version.
13117
13118 * font.c (font_style_symbolic_from_value): New function.
13119 (font_style_symbolic): Use it.
13120
13121 * font.h (font_style_symbolic_from_value): Declare new function.
13122
13123 2008-06-13 Juanma Barranquero <lekktu@gmail.com>
13124
13125 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
13126 <font-width-table>: Fix typos in docstrings.
13127
13128 2008-06-13 Daniel Engeler <engeler@gmail.com>
13129
13130 These changes add serial port access.
13131 * process.c: Add HAVE_SERIAL.
13132 (Fdelete_process, Fprocess_status, Fset_process_buffer)
13133 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
13134 (list_processes_1, select_wrapper, Fstop_process)
13135 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
13136 (status_notify): Modify to handle serial processes.
13137 [HAVE_SERIAL] (Fserial_process_configure)
13138 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
13139 New functions.
13140 * process.h (struct Lisp_Process): Add `type'.
13141 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
13142 New functions.
13143 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
13144 serial ports.
13145 (serial_open, serial_configure): New functions.
13146 * w32.h: Add FILE_SERIAL.
13147 (struct _child_process): Add ovl_read, ovl_write.
13148
13149 2008-06-13 Kenichi Handa <handa@m17n.org>
13150
13151 * dispextern.h (enum lface_attribute_index): New member
13152 LFACE_FOUNDRY_INDEX.
13153
13154 * font.c (font_score): Delete arg alternate_families. Check only
13155 weight, slant, width, and size. Ignore the difference of alias
13156 style symbols.
13157 (font_sort_entites): Adjust for the above change. Reflect the
13158 order of font-driver to scores.
13159 (font_list_entities): Don't check alternate_familes here.
13160 (font_clear_prop): Handle foundry.
13161 (font_update_lface): Don't parse "foundry-family" form here.
13162 Handle FONT_FOUNDRY_INDEX.
13163 (font_find_for_lface): Likewise. Handle alternate families here.
13164 If registry is nil, try iso8859-1 and ascii-0.
13165 (font_open_for_lface): Pay attention to size in ENTITY.
13166 (font_open_by_name): Simplify by calling font_load_for_lface.
13167 (free_font_driver_list): Delete it.
13168 (font_update_drivers): Preserve the order of backends.
13169 (syms_of_font): Setting of sort_shift_bits adjusted for the change
13170 of font_score and font_sort_entites.
13171 (font_update_sort_order): Likewise.
13172
13173 * xfaces.c (LFACE_FOUNDRY): New macro.
13174 (check_lface_attrs): Check foundry.
13175 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
13176 (merge_face_vectors): Check foundry.
13177 (merge_face_ref): Likewise.
13178 (Finternal_set_lisp_face_attribute): Likewise.
13179 (x_update_menu_appearance): Likewise.
13180 (Finternal_get_lisp_face_attribute): Likewise.
13181 (lface_hash): Likewise.
13182 (lface_same_font_attributes_p): Likewise.
13183 (x_supports_face_attributes_p): Likewise.
13184 (tty_supports_face_attributes_p): Likewise.
13185 (Finternal_set_alternative_font_family_alist): Intern strings.
13186 (Finternal_set_alternative_font_registry_alist): Downcase strings.
13187 (realize_default_face): Set LFACE_FOUNDRY (lface).
13188
13189 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
13190 font-driver at first.
13191
13192 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
13193
13194 2008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
13195
13196 * lread.c (Fload): Use xfree, not free on saved_doc_string.
13197
13198 2008-06-12 Jim Meyering <meyering@redhat.com>
13199
13200 Make unexec_free handle NULL the same way free does.
13201 * unexmacosx.c (unexec_free): Ignore a NULL argument.
13202
13203 2008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
13204
13205 * character.h (CHAR_TO_BYTE_SAFE): New macro.
13206 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
13207 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
13208 (WEAK_ALIAS): Simplify.
13209 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
13210 when searching a unibyte buffer.
13211
13212 2008-06-12 Chong Yidong <cyd@stupidchicken.com>
13213
13214 * xfns.c (Fx_select_font): Rename from x-font-dialog.
13215
13216 2008-06-12 Juanma Barranquero <lekktu@gmail.com>
13217
13218 * w32font.c: Include ctype.h.
13219
13220 2008-06-11 Jason Rumney <jasonr@gnu.org>
13221
13222 * w32font.c (w32font_encode_char): Detect missing glyphs that are
13223 misreported as space.
13224 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
13225 as aliases for registry iso10646-1.
13226
13227 2008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
13228
13229 * buffer.c (clone_per_buffer_values): Skip `name'.
13230
13231 2008-06-11 Chong Yidong <cyd@stupidchicken.com>
13232
13233 * font.c (font_parse_fcname): Fix last change; accept decimal
13234 points in font size.
13235
13236 2008-06-10 Jason Rumney <jasonr@gnu.org>
13237
13238 * w32uniscribe.c (add_opentype_font_name_to_list):
13239 Skip non unicode fonts.
13240
13241 2008-06-10 Chong Yidong <cyd@stupidchicken.com>
13242
13243 * xfns.c (Fx_font_dialog): New function.
13244
13245 * gtkutil.c (xg_dialog_response_cb): Rename from
13246 xg_file_response_callback.
13247 (pop_down_dialog): Rename from pop_down_file_dialog.
13248 (xg_get_file_name): Callers changed.
13249 (xg_get_font_name): New function.
13250
13251 * gtkutil.h (xg_get_font_name): Insert prototype.
13252
13253 2008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
13254
13255 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
13256 x_underline_minimum_display_offset.
13257 (syms_of_xdisp): Declare it here rather than in xterm.c.
13258 * dispextern.h (underline_minimum_offset): Declare it.
13259 * w32term.c (x_draw_glyph_string): Use it.
13260 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
13261 (syms_of_xterm): Don't declare it any more.
13262 (x_draw_glyph_string): Adjust to the new name.
13263
13264 2008-06-10 David De La Harpe Golden <david@harpegolden.net>
13265
13266 * xterm.c (x_underline_minimum_display_offset): New var.
13267 (x_draw_glyph_string): Use it.
13268 (syms_of_xterm): Declare it.
13269
13270 2008-06-10 Chong Yidong <cyd@stupidchicken.com>
13271
13272 * font.c (font_parse_fcname): Accept GTK-style font names too.
13273
13274 2008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
13275
13276 * dired.c (file_name_completion): Don't return t if the match is exact
13277 but with different capitalization.
13278 * minibuf.c (Ftry_completion): Simplify.
13279
13280 * window.c (Vwindow_point_insertion_type): New var.
13281 (set_window_buffer): Use it.
13282 (syms_of_window): Init and export it to Lisp.
13283
13284 2008-06-10 Kenichi Handa <handa@m17n.org>
13285
13286 * font.h (font_intern_prop): Prototype adjusted.
13287
13288 * font.c (font_intern_prop): New arg force_symbol.
13289 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
13290 Adjust for the change of font_intern_prop.
13291
13292 * ftfont.c (ftfont_pattern_entity):
13293 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
13294 (w32_registry):
13295 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
13296 the change of font_intern_prop.
13297
13298 2008-06-09 Juanma Barranquero <lekktu@gmail.com>
13299
13300 * w32menu.c (digest_single_submenu): Declare extern.
13301
13302 2008-06-09 Jason Rumney <jasonr@gnu.org>
13303
13304 * w32term.c (x_make_frame_visible): Use alternate restore flags.
13305
13306 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
13307 (parse_single_submenu): Remove.
13308 (digest_single_submenu): Remove.
13309 (syms_of_w32menu): Don't initialise variables that have moved
13310 to menu.c.
13311 (set_frame_menubar): Sync with version in xmenu.c.
13312 (w32_menu_show): Sync with xmenu_show in xmenu.c.
13313
13314 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
13315 Make static again.
13316
13317 2008-06-09 Jason Rumney <jasonr@gnu.org>
13318
13319 Changes to w32 files related to the move of common menu code
13320 to menu.c on 2008-06-08 by Chong Yidong.
13321
13322 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
13323 defs to w32gui.h.
13324 (single_keymap_panes, push_menu_item, push_menu_pane):
13325 Make globally visible.
13326
13327 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
13328 (local_free, malloc_widget_value, free_widget_value)
13329 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
13330 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
13331 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
13332 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
13333 (menu_items, menu_items_allocated, menu_items_used)
13334 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
13335 (init_menu_items, finish_menu_items, discard_menu_items)
13336 (grow_menu_items, push_submenu_start, push_submenu_end)
13337 (push_left_right_boundary, push_menu_pane, push_menu_item)
13338 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
13339 (free_menubar_widget_tree_value, parse_single_submenu)
13340 (update_submenu_strings): Remove functions.
13341 (xmalloc_widget_value): Remove and declare extern.
13342
13343 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
13344 (OBJ1): Build it.
13345
13346 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
13347 (local_heap, local_alloc, local_free, malloc_widget_value)
13348 (free_widget_value): Define here.
13349
13350 2008-06-09 Kenichi Handa <handa@m17n.org>
13351
13352 * font.h (Qascii_0): Extern it.
13353
13354 * font.c (Qascii_0): New variable.
13355 (syms_of_font): DEFSYM it.
13356 (font_open_by_name): If the registry "iso8859-1" fails, try also
13357 "ascii-0".
13358
13359 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
13360
13361 2008-06-08 Kenichi Handa <handa@m17n.org>
13362
13363 * .gdbinit (xfont): New command.
13364
13365 2008-06-08 Andreas Schwab <schwab@suse.de>
13366
13367 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
13368 * Makefile.in (menu.o): Update dependencies.
13369
13370 * Makefile.in (obj): Always add menu.o.
13371 * emacs.c (main): Always call syms_of_menu.
13372 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
13373
13374 2008-06-08 Chong Yidong <cyd@stupidchicken.com>
13375
13376 * Makefile.in: Compile menu.c.
13377
13378 * lisp.h: Declare syms_of_menu.
13379
13380 * emacs.c (main): Call syms_of_menu.
13381
13382 * keyboard.h: Relocate platform-independent menu definitions from
13383 xmenu.c.
13384
13385 * menu.c: New file. Relocate platform-independent menu
13386 definitions from xmenu.c. Suggested by Adrian Robert.
13387
13388 * xmenu.c: Remove platform-independent menu definitions.
13389 (menu_items, menu_items_inuse, menu_items_allocated)
13390 (menu_items_used, menu_items_n_panes)
13391 (menu_items_submenu_depth): Move to keyboard.h.
13392 (init_menu_items, finish_menu_items, unuse_menu_items)
13393 (discard_menu_items, restore_menu_items, save_menu_items)
13394 (grow_menu_items, push_submenu_start, push_submenu_end)
13395 (push_left_right_boundary, push_menu_pane, push_menu_item)
13396 (keymap_panes, single_keymap_panes, single_menu_item)
13397 (list_of_panes, list_of_items, find_and_call_menu_selection)
13398 (xmalloc_widget_value, free_menubar_widget_value_tree)
13399 (parse_single_submenu, digest_single_submenu)
13400 (update_submenu_strings): Move to menu.c.
13401
13402 2008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
13403
13404 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
13405
13406 2008-06-06 Miles Bader <miles@gnu.org>
13407
13408 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
13409 face, not frame default.
13410
13411 2008-06-05 Martin Rudalics <rudalics@gmx.at>
13412
13413 * window.c (pop_up_windows, pop_up_frames)
13414 (display_buffer_reuse_frames, Vpop_up_frame_function)
13415 (Vdisplay_buffer_function, Veven_window_heights)
13416 (Vspecial_display_buffer_names, Vspecial_display_regexps)
13417 (Vspecial_display_function, Vsame_window_buffer_names)
13418 (Vsame_window_regexps, split_height_threshold)
13419 (Vsplit_window_preferred_function): Move those vars to window.el.
13420 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
13421 (Fdisplay_buffer): Move those functions to window.el.
13422 (syms_of_window): Remove corresponding declarations.
13423 (display_buffer): New function.
13424 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
13425 * dispnew.c (Flast_nonminibuf_frame): New function.
13426 * buffer.c (Fpop_to_buffer): Move to window.el.
13427
13428 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
13429
13430 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
13431
13432 2008-06-05 Kenichi Handa <handa@m17n.org>
13433
13434 * coding.c (detect_coding): Fix previous change.
13435 (detect_coding_system): Likewise.
13436
13437 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
13438
13439 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
13440
13441 * keymap.c (Vminibuffer_local_filename_must_match_map):
13442 Rename from Vminibuffer_local_must_match_filename_map.
13443 (syms_of_keymap):
13444 * minibuf.c (Fcompleting_read): Adjust accordingly.
13445 * commands.h: Rename declaration as well.
13446
13447 2008-06-05 Kenichi Handa <handa@m17n.org>
13448
13449 * font.c (Ffont_spec): Don't use font_parse_family_registry for
13450 family name.
13451 (Ffont_put): Likewise.
13452
13453 * fontset.c (fontset_find_font): Call font_open_for_lface with the
13454 current font-spec.
13455
13456 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
13457 is unspecified.
13458
13459 * xfaces.c (realize_x_face): If the font-related face attributes
13460 are the same as those of default face, realize a new fontset from
13461 default->fontset.
13462 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
13463
13464 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
13465
13466 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
13467 (move_it_in_display_line): New wrapper.
13468
13469 * window.c (window_scroll_pixel_based_preserve_x)
13470 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
13471 (window_scroll_pixel_based, window_scroll_line_based):
13472 Use them to preserve column positions.
13473 (syms_of_window): Initialize them.
13474
13475 * indent.c (Fvertical_motion): Extend first arg to allow passing an
13476 (HPOS . VPOS) pair.
13477
13478 * dispextern.h (move_it_in_display_line): Declare.
13479
13480 2008-06-05 Juanma Barranquero <lekktu@gmail.com>
13481
13482 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
13483 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
13484 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
13485
13486 2008-06-04 Juanma Barranquero <lekktu@gmail.com>
13487
13488 * window.c (Fset_window_parameter): Doc fix.
13489 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
13490
13491 2008-06-04 Joakim Verona <joakim@verona.se>
13492
13493 * window.h (struct window): Add new member window_parameters.
13494
13495 * window.c (Fwindow_parameters, Fwindow_parameter)
13496 (Fset_window_parameter): New defuns.
13497 (syms_of_window): Defsubr the new defuns.
13498 (make_window): Initialize window_parameters to nil.
13499
13500 2008-06-04 John Paul Wallington <jpw@pobox.com>
13501
13502 * eval.c (Fdefmacro): Doc fix.
13503
13504 2008-06-04 Kenichi Handa <handa@m17n.org>
13505
13506 * coding.c (detect_coding): Fix handling of coding->head_ascii.
13507 Be sure to call setup_coding_system when we find a proper coding system.
13508 (detect_coding_system): Fix handling of coding->head_ascii.
13509
13510 2008-06-03 Andreas Schwab <schwab@suse.de>
13511
13512 * font.c (font_prop_validate_spacing): Fix last change.
13513
13514 2008-06-03 Kenichi Handa <handa@m17n.org>
13515
13516 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
13517 (font_parse_fcname): Fix handling of unknown key.
13518
13519 * xfont.c (xfont_list): Try an alias.
13520
13521 * charset.c (char_charset): Return NULL if the arg charset_list is
13522 specified and C doesn't belong to any of them.
13523
13524 2008-06-02 Chip Coldwell <coldwell@redhat.com>
13525
13526 * font.c (font_pixel_size): Don't take cdr of an integer.
13527
13528 2008-06-02 Jim Meyering <meyering@redhat.com>
13529
13530 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
13531 * alloc.c (xfree): Return right away for a NULL arg.
13532 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
13533 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
13534 * mac.c (create_apple_event_from_event_ref): Likewise.
13535 (create_apple_event_from_drag_ref, cfstring_create_normalized):
13536 Likewise.
13537 * doprnt.c (doprnt1): Likewise.
13538 * frame.c (frame): Likewise.
13539 * keyboard.c (wipe_kboard): Likewise.
13540 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
13541 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
13542 * term.c (tty_default_color_capabilities, maybe_fatal)
13543 (delete_tty): Likewise.
13544 * w16select.c (string): Likewise.
13545 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
13546 * w32bdf.c (w32_free_bdf_font): Likewise.
13547 * w32fns.c (w32_unload_font): Likewise.
13548 * w32font.c (w32font_close): Likewise.
13549 * window.c (size_window): Likewise.
13550 * xselect.c (receive_incremental_selection): Likewise.
13551 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
13552 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
13553 * w32.c (stat): Likewise.
13554
13555 Remove useless if-before-free tests.
13556 * editfns.c (Fset_time_zone_rule): Likewise.
13557 * lread.c (nosuffix): Likewise.
13558 * ralloc.c (get_bloc): Likewise.
13559 * regex.c (reg_free): Likewise.
13560 * xftfont.c (xftfont_open, xftfont_close): Likewise.
13561 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
13562 * xsmfns.c (smc_save_yourself_CB): Likewise.
13563
13564 2008-06-02 Kenichi Handa <handa@m17n.org>
13565
13566 * font.c (font_find_for_lface): Handle float font size.
13567 (font_open_for_lface): Likewise.
13568
13569 * xfaces.c (x_supports_face_attributes_p): Check face->font before
13570 comparing the properties.
13571
13572 2008-06-01 Jason Rumney <jasonr@gnu.org>
13573
13574 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
13575 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
13576 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
13577 Don't add empty script list.
13578 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
13579
13580 2008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
13581
13582 * Makefile.in (dot, dotdot): Remove, update users.
13583 ".." has been used elsewhere in the file for a long time.
13584 (LIBXT_STATIC): Remove conditional based on unused variable.
13585
13586 2008-06-01 Miles Bader <miles@gnu.org>
13587
13588 * xfaces.c (Vface_remapping_alist): New variable.
13589 (syms_of_xfaces): Initialize it.
13590 (enum named_merge_point_kind): New type.
13591 (struct named_merge_point): Add `named_merge_point_kind' field.
13592 (push_named_merge_point): Make cycle detection respect different
13593 named-merge-point kinds.
13594 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
13595 Remove face-name alias resolution.
13596 (lface_from_face_name): New definition using
13597 `lface_from_face_name_no_resolve'.
13598 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
13599 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
13600 (get_lface_attributes): New definition that layers face-remapping on
13601 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
13602 (lookup_basic_face): New function.
13603 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
13604 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
13605 `get_lface_attributes'.
13606 (face_at_buffer_position): Use `lookup_basic_face' to lookup
13607 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
13608 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
13609
13610 * xdisp.c (init_iterator): Pass base_face_id through
13611 `lookup_basic_face' when we actually use it as a face-id.
13612 (handle_single_display_prop): Use `lookup_basic_face' to lookup
13613 DEFAULT_FACE_ID.
13614
13615 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
13616 lookup the initial face-id.
13617
13618 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
13619
13620 2008-06-01 Juanma Barranquero <lekktu@gmail.com>
13621
13622 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
13623 (Fremove_text_properties): Fix typos in docstrings.
13624
13625 2008-05-31 Kenichi Handa <handa@m17n.org>
13626
13627 * font.c (font_list_entities): Fix the car part of data to be
13628 stored in the cache.
13629
13630 * ftfont.c (ftfont_font_format): Don't use strcasestr.
13631
13632 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
13633
13634 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
13635 Add a `test' argument so another predicate than `equal' can be used.
13636 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
13637 (map_char_table): Remove unused vars `c' and `i'.
13638 * lisp.h (Foptimize_char_table): Adjust declaration.
13639 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
13640
13641 2008-05-30 Kenichi Handa <handa@m17n.org>
13642
13643 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
13644 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
13645 defined.
13646
13647 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
13648
13649 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
13650 (Fmake_variable_frame_local): Disallow mixing buffer-local and
13651 frame-local settings for the same variable.
13652
13653 2008-05-30 Kenichi Handa <handa@m17n.org>
13654
13655 * fontset.c (Ffont_info): Move to font.c.
13656 (syms_of_fontset): Delete defsubr of Sfont_info.
13657
13658 * font.c (font_style_to_value, font_score): Delete casting of the
13659 args to xstcasecmp.
13660 (register_font_driver): Increment num_font_drivers only when
13661 registering the driver globally.
13662 (Ffont_info): Move from fontset.c. Handle a font object too.
13663 (syms_of_font): Defsubr Sfont_info.
13664
13665 2008-05-29 Kenichi Handa <handa@m17n.org>
13666
13667 * coding.h (enum define_coding_utf8_arg_index): New enum.
13668 (enum coding_attr_index): Change coding_attr_utf_16_bom to
13669 coding_attr_utf_bom.
13670 (enum utf_bom_type): Rename from utf_16_bom_type.
13671 (struct utf_16_spec): Adjust for the above change.
13672 (struct coding_system): Add utf_8_bom in `spec' union.
13673
13674 * coding.c (CODING_UTF_8_BOM): New macro.
13675 (enum coding_category): Delete coding_category_utf_8, add
13676 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
13677 coding_category_utf_8_sig.
13678 (CATEGORY_MASK_UTF_8): Delete it.
13679 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
13680 (CATEGORY_MASK_UTF_8_SIG): New macros.
13681 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
13682 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
13683 CATEGORY_MASK_UTF_8_SIG.
13684 (CATEGORY_MASK_UTF_8): New macro.
13685 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
13686 (detect_coding_utf_8): Check BOM.
13687 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
13688 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
13689 (encode_coding_utf_16): Likewise.
13690 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
13691 (detect_coding, detect_coding_system): Handle utf-8-auto.
13692 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
13693 (syms_of_coding): Fix setting up of Vcoding_category_table.
13694
13695 2008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
13696
13697 * process.c (Faccept_process_output): If `millisec' is non-nil,
13698 `seconds' default to 0.
13699 (wait_reading_process_output): Also return non-nil if we read output
13700 from a non-running process.
13701
13702 2008-05-29 Jason Rumney <jasonr@gnu.org>
13703
13704 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
13705 `raster' specified.
13706 (add_font_entity_to_list): Allow non-opentype truetype fonts back
13707 in the uniscribe backend, but disallow any font that has no
13708 unicode subrange support.
13709
13710 2008-05-29 Juanma Barranquero <lekktu@gmail.com>
13711
13712 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
13713 Fix typos in docstrings.
13714
13715 2008-05-29 Kenichi Handa <handa@m17n.org>
13716
13717 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
13718 (Fx_family_fonts): Set frame correctly.
13719
13720 2008-05-28 Jason Rumney <jasonr@gnu.org>
13721
13722 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
13723
13724 2008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
13725
13726 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
13727 calling build_annotations.
13728
13729 2008-05-28 Juanma Barranquero <lekktu@gmail.com>
13730
13731 * coding.c (Fdecode_coding_region, Fencode_coding_region)
13732 (Fencode_coding_string):
13733 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
13734 <latin-extra-code-table>: Fix typos in docstrings.
13735 (syms_of_coding) <coding-system-alist>: Doc fix.
13736 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
13737
13738 2008-05-28 Kenichi Handa <handa@m17n.org>
13739
13740 * fontset.c (Ffont_info): Don't call font_close_object.
13741
13742 * font.c (font_parse_family_registry): Use Ffont_put to validate
13743 foundry and family.
13744 (font_delete_unmatched): Don't check spacing.
13745 (font_list_entities): Add spacing to the spec to list fonts.
13746
13747 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
13748 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
13749
13750 * coding.c (encode_coding_raw_text): Fix previous change.
13751 (encode_coding_object): When the dst_object is a buffer and is
13752 different from src_object, move gap to PT.
13753
13754 2008-05-27 Chong Yidong <cyd@stupidchicken.com>
13755
13756 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
13757
13758 2008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
13759
13760 * coding.c (encode_coding_raw_text): Set coding->produced_char for
13761 all branches. Compute it differently.
13762
13763 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
13764
13765 2008-05-27 Juanma Barranquero <lekktu@gmail.com>
13766
13767 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
13768 into "else if () ... else ...".
13769
13770 2008-05-27 Jason Rumney <jasonr@gnu.org>
13771
13772 * w32font.c (w32font_open_internal): Determine if glyph indices
13773 are likely to work here.
13774
13775 2008-05-27 Chong Yidong <cyd@stupidchicken.com>
13776
13777 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
13778 draw overlap glyphs with appropriate highlighting.
13779
13780 2008-05-27 Kenichi Handa <handa@m17n.org>
13781
13782 * xfont.c (xfont_open): Fix calculation of font->average_width.
13783
13784 2008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
13785
13786 * casefiddle.c (casify_object): Try to guess better whether the
13787 argument is a byte or a char.
13788
13789 2008-05-26 Andreas Schwab <schwab@suse.de>
13790
13791 * xselect.c (x_reply_selection_request): Properly handle format == 32.
13792 Always send multiples of format size.
13793
13794 * xterm.c (x_set_frame_alpha): Fix type mismatch.
13795
13796 2008-05-26 Jason Rumney <jasonr@gnu.org>
13797
13798 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
13799 (compute_metrics): Don't set failure if we just cleared the cache.
13800 (w32_weight_table): Remove unused variable.
13801 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
13802 backwards compatibility.
13803
13804 2008-05-25 Kenichi Handa <handa@m17n.org>
13805
13806 * w32term.c (x_draw_glyph_string):
13807 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
13808
13809 * xfaces.c: Delete unused function prototypes.
13810 (xstrlwr, font_frame): Delete them.
13811 (clear_face_cache): Delete unused variable.
13812
13813 * xftfont.c (xftfont_open): Delete unused variable.
13814 If underline_thickness is not 1, adjust underline_position.
13815
13816 * ftxfont.c (ftxfont_open): Delete unused variable.
13817
13818 * fontset.c (face_for_char): Optimize for the case of no charset
13819 property.
13820
13821 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
13822 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
13823 (otf_open, font_otf_capability, generate_otf_features)
13824 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
13825 Comment out by surrounding "#if 0" and "#endif" for the moment.
13826 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
13827 (syms_of_font): Codes for accessing above commented out.
13828
13829 2008-05-24 Eli Zaretskii <eliz@gnu.org>
13830
13831 * w32proc.c: Include dispextern.h.
13832
13833 * w32.c: Include dispextern.h.
13834
13835 2008-05-23 Juanma Barranquero <lekktu@gmail.com>
13836
13837 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
13838 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
13839 Fix typos in docstrings.
13840
13841 2008-05-23 Jason Rumney <jasonr@gnu.org>
13842
13843 * xsmfns.c: Remove includes that are already included by config.h.
13844
13845 2008-05-23 Kenichi Handa <handa@m17n.org>
13846
13847 * charset.c (Qemacs, charset_emacs): New variables.
13848 (char_charset): Fix for non-Unicode characters.
13849 (syms_of_charset): Define charset_emacs.
13850
13851 * w32term.c (x_draw_glyph_string): Be sure to update
13852 s->underline_thickness and s->underline_position. Be sure to draw
13853 underline within the current line area.
13854
13855 * xterm.c (x_draw_glyph_string): Be sure to update
13856 s->underline_thickness and s->underline_position. Be sure to draw
13857 underline within the current line area.
13858
13859 * fontset.c: Delete unused variables and add casting for char *
13860 throughout the file.
13861 (fontset_font): Try the fallback fonts of the current fontset
13862 before consulting the default fontset.
13863
13864 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
13865
13866 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
13867
13868 2008-05-22 Jason Rumney <jasonr@gnu.org>
13869
13870 * font.c: Don't include strings.h.
13871
13872 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
13873
13874 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
13875 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
13876 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
13877 to call xstrcasecmp.
13878
13879 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
13880
13881 * fontset.c (fs_query_fontset): Use xstrcasecmp.
13882
13883 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
13884
13885 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
13886
13887 2008-05-22 Kenichi Handa <handa@m17n.org>
13888
13889 * puresize.h (BASE_PURESIZE): Increase to 1220000.
13890
13891 * font.c (font_prop_validate_style): Adjust for the format
13892 change of font_style_table.
13893
13894 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
13895 two args.
13896
13897 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
13898 two args.
13899
13900 2008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
13901
13902 * minibuf.c (keys_of_minibuf): Delete.
13903 * lisp.h (keys_of_minibuf): Delete.
13904 * emacs.c (main): Don't call keys_of_minibuf.
13905
13906 2008-05-22 Kenichi Handa <handa@m17n.org>
13907
13908 * ftfont.c (ftfont_resolve_generic_family): Rename from
13909 ftfont_list_generic_family. Return a single family for each
13910 generic family.
13911 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
13912 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
13913 Call font_add_log.
13914 (ftfont_match): Call font_add_log.
13915
13916 * font.h (Ffont_xlfd_name): EXFUN adjusted.
13917 (FONT_DEBUG): Define it.
13918 (font_add_log): Extern it.
13919 (font_assert): Rename from xassert.
13920
13921 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
13922 (xfont_list_family): Call font_add_log.
13923 (xfont_match): Likewise.
13924 (memq_no_quit): Delete.
13925
13926 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
13927 call of Ffont_xlfd_name.
13928
13929 * xfaces.c (struct table_entry, slant_table, weight_table)
13930 (swidth_table): Move to font.c.
13931
13932 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
13933 xassert are changed to font_assert. Delete many unused variables.
13934 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
13935 New variables.
13936 (struct table_entry): Move from xfaces.c and modified.
13937 (weight_table, slant_table, width_table): Move from xfaces.c and
13938 contents adjusted for the change of struct table_entry.
13939 (font_style_to_value, font_style_symbolic): Adjust for the
13940 format change of font_style_table.
13941 (font_parse_family_registry): Don't overwrite existing foundry and
13942 family of font_spec.
13943 (font_score): Fix calculation of diff for sizes.
13944 (font_sort_entites): Call font_add_log.
13945 (font_delete_unmatched): Return a newly created list.
13946 (font_list_entities): Fix previous change. Call font_add_log.
13947 (font_matching_entity, font_open_entity, font_close_entity):
13948 Call font_add_log.
13949 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
13950 (Finternal_set_font_style_table): Delete.
13951 (BUILD_STYLE_TABLE): New macro.
13952 (build_style_table): New function.
13953 (Vfont_log, font_log_env_checked): New variables.
13954 (font_add_log): New function.
13955 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
13956 Declare Lisp variables "font-weight-table", "font-slant-table",
13957 "font-width-table", and "font-log". Initialize font_style_table.
13958
13959 2008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
13960
13961 * xterm.c (x_set_frame_alpha): Move declarations before statements.
13962
13963 2008-05-21 Seiji Zenitani <zenitani@mac.com>
13964 Ryo Yoshitake <ryo@shiftmode.net>
13965
13966 * frame.c (Qalpha): Add a new frame parameter `alpha'.
13967 (Vframe_alpha_lower_limit): New variable.
13968 (x_set_alpha): New function.
13969
13970 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
13971
13972 * xfns.c (x-create-frame, Qalpha):
13973 Initialize the frame parameter `alpha'.
13974 * xterm.c (OPAQUE, OPACITY): New.
13975 (x_set_frame_alpha): New function.
13976 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
13977
13978 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
13979 * w32fns.c (w32_frame_parm_handlers): Likewise.
13980
13981 2008-05-20 Jason Rumney <jasonr@gnu.org>
13982
13983 * w32font.c (add_font_entity_to_list): Don't add non-opentype
13984 truetype fonts to opentype list.
13985
13986 2008-05-20 Juanma Barranquero <lekktu@gmail.com>
13987
13988 * fontset.c (Ffontset_info): Doc fix.
13989 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
13990 <ignore-relative-composition>: Fix typos in docstrings.
13991
13992 * font.c (syms-of-font) <font-encoding-alist>:
13993 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
13994 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
13995 (Ffont_otf_alternates): Doc fixes.
13996
13997 2008-05-20 Kenichi Handa <handa@m17n.org>
13998
13999 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
14000 font.h through out the file.
14001 (FONT_DRIVERS): Rename from FONTOBJ.
14002 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
14003 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
14004
14005 * emacs.c (main): Call syms_of_font unconditionally.
14006
14007 * font.h (find_font_encoding): Extern it.
14008
14009 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
14010 fontset.c.
14011 (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
14012 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
14013 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
14014 only when HAVE_WINDOW_SYSTEM is defined.
14015 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
14016 when HAVE_WINDOW_SYSTEM is defined.
14017
14018 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
14019 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
14020
14021 * xfaces.c: Include font.h unconditionally.
14022 (merge_face_ref, merge_face_vectors)
14023 (Finternal_set_lisp_face_attribute): Cancel the previous change.
14024
14025 2008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
14026
14027 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
14028 indirect_variable.
14029 * eval.c (lisp_indirect_variable): New fun.
14030 (Fuser_variable_p): Use it.
14031
14032 2008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
14033
14034 * lisp.h (indirect_variable):
14035 * data.c (indirect_variable, let_shadows_buffer_binding_p):
14036 Use Lisp_Symbol pointers rather than Lisp_Object.
14037 Adjust callers.
14038 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
14039 To this end, change calling-convention.
14040
14041 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
14042 if some non-hidden buffers are selected by string&pred.
14043
14044 2008-05-19 Chong Yidong <cyd@stupidchicken.com>
14045
14046 * process.c (wait_reading_process_output): Always check status
14047 when in batch mode.
14048
14049 2008-05-19 Kenichi Handa <handa@m17n.org>
14050
14051 * font.c (font_list_entities): Fix handling of cache.
14052 (font_matching_entity): Likewise.
14053
14054 * ftfont.c (cs_iso8859_1): Delete.
14055 (ft_face_cache): New variable.
14056 (struct ftfont_info): New member fc_charset_idx.
14057 (ftfont_build_basic_charsets): Delete.
14058 (fc_charset_table): New variable.
14059 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
14060 . FC_CHARSET_IDX) as :font-entity property in the font entity.
14061 Callers changed.
14062 (ftfont_lookup_cache, ftfont_get_charset): New functions.
14063 (ftfont_spec_pattern): New argument fc_charset_idx.
14064 Check registry more rigidly. Change callers.
14065 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
14066 change of :font-entity property of the font.
14067
14068 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
14069 property of the font.
14070
14071 2008-05-18 Juanma Barranquero <lekktu@gmail.com>
14072
14073 * coding.c (Fcoding_system_p): Rename argument to match docstring.
14074 (Funencodable_char_position, Fcheck_coding_systems_region)
14075 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
14076 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
14077 (Ffind_operation_coding_system, Fset_coding_system_priority)
14078 (Fcoding_system_eol_type): Doc fixes.
14079
14080 2008-05-17 Glenn Morris <rgm@gnu.org>
14081
14082 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
14083
14084 2008-05-16 Eli Zaretskii <eliz@gnu.org>
14085
14086 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
14087 and st_gid.
14088
14089 * frame.c (Fdelete_frame): Don't call font_update_drivers if
14090 HAVE_WINDOW_SYSTEM is not defined.
14091
14092 * xfaces.c (merge_face_ref, merge_face_vectors)
14093 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
14094 HAVE_WINDOW_SYSTEM is defined.
14095 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
14096
14097 2008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
14098
14099 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
14100
14101 2008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14102
14103 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
14104
14105 2008-05-15 Kenichi Handa <handa@m17n.org>
14106
14107 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
14108 preference.
14109
14110 2008-05-15 Glenn Morris <rgm@gnu.org>
14111
14112 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
14113
14114 2008-05-15 Chong Yidong <cyd@stupidchicken.com>
14115
14116 * fns.c (init_fns): Don't initialize weak_hash_tables here.
14117 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
14118
14119 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
14120
14121 2008-05-15 Kenichi Handa <handa@m17n.org>
14122
14123 * ftfont.c (ftfont_list): Downcase family name to check generic
14124 families.
14125
14126 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
14127 font-spec for QCfont value.
14128
14129 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
14130 buffer. Check the return value of it.
14131
14132 2008-05-14 Jason Rumney <jasonr@gnu.org>
14133
14134 * w32term.c (w32_get_glyph_overhangs): Remove.
14135 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
14136
14137 2008-05-14 Kenichi Handa <handa@m17n.org>
14138
14139 * font.c (font_prop_validate): Make nil a valid value.
14140 (font_clear_cache): Check if the cached vector of entities is nil
14141 or not.
14142
14143 2008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14144
14145 * emacs.c (main_thread): Conditionalize on
14146 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
14147 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
14148
14149 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
14150 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
14151 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
14152
14153 2008-05-14 Kenichi Handa <handa@m17n.org>
14154
14155 * coding.c (detect_coding_iso_2022): Ignore a coding category that
14156 has no corresponding coding system.
14157
14158 2008-05-14 Jason Rumney <jasonr@gnu.org>
14159
14160 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
14161
14162 * w32font.h (w32font_open_internal): Update declaration.
14163
14164 * w32font.c (w32font_open_internal): Change last argument from
14165 w32font_info struct to font object. Fill in font object from
14166 font_entity. Get Outline metrics if possible. Use them to
14167 calculate underline position and thickness. Use xlfd name as name
14168 property. Don't set codepage.
14169 (w32font_open): Pass font_object to w32font_open_internal. Don't
14170 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
14171 (w32font_draw): Use s->font.
14172 (clear_cached_metrics): Don't clear non-existent blocks.
14173
14174 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
14175 font was not found.
14176 (x_draw_glyph_string): Use underline position and thickness from font.
14177
14178 * w32uniscribe.c (uniscribe_open): Pass font_object to
14179 w32font_open_internal.
14180
14181 2008-05-14 Kenichi Handa <handa@m17n.org>
14182
14183 These changes are to delete all legacy font-handling codes, and
14184 make Emacs use only font-backends.
14185
14186 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
14187 (frame.o, image.o, print.o): Depend on $(FONTSRC).
14188
14189 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
14190
14191 * charset.h (Vcharset_non_preferred_head)
14192 (Vcurrent_iso639_language): Extern them.
14193
14194 * charset.c (Vcharset_non_preferred_head): New variable.
14195 (Vcurrent_iso639_language): New variable.
14196 (syms_of_charset): Declare it as a Lisp variable.
14197 (char_charset): Don't check non preferred charsets. As a last
14198 resort, return charset_unicode.
14199 (Fset_charset_priority): Update Vcharset_non_preferred_head.
14200
14201 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
14202 conditionals. Don't check enable_font_backend. Delete all codes
14203 used only when USE_FONT_BACKEND is not defined.
14204
14205 * dispextern.h (struct glyph_string): Change type of `font' to
14206 `struct font *'.
14207 (struct glyph_string): New member underline_position and
14208 underline_thickness.
14209 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
14210 (struct face): Change type of `font' to `struct font *'. Remove
14211 members `font_name', `font_info_id'.
14212 (per_char_metric, encode_char): Delete externs.
14213 (calc_pixel_width_or_height): Adjust the prototype.
14214
14215 * emacs.c (enable_font_backend): Delete extern.
14216 (main): Don't set enable_font_backend. Don't check the command
14217 line argument "-disable-font-backend".
14218
14219 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
14220 (enum font_property_index): New members FONT_DPI_INDEX,
14221 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
14222 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
14223 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
14224 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
14225 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
14226 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
14227 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
14228 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
14229 (struct font_spec, struct font_entity): New structs.
14230 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
14231 (struct font): Many members from old "struct font_info" moved to
14232 here. Members font and entity deleted.
14233 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
14234 the new font-related objects.
14235 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
14236 (CHECK_FONT_GET_OBJECT): Likewise.
14237 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
14238 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
14239 (struct font_driver): New members case_sensitive anc check. Type
14240 of the member list and open changed.
14241 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
14242 (font_symbolic_width, font_find_object, font_get_spec)
14243 (font_set_lface_from_name): Delete extern.
14244 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
14245
14246 * font.c: Include <strings.h>.
14247 (enable_font_backend): Delete it.
14248 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
14249 (CHECK_VALIDATE_FONT_SPEC): Delete it.
14250 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
14251 (null_string): Delete it.
14252 (null_vector): Make it static.
14253 (font_family_alist): Delete it.
14254 (Qnormal): Extern it.
14255 (QCextra, QClanguage): Delete it.
14256 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
14257 (font_make_spec, font_make_entity, font_make_object)
14258 (font_intern_prop): Renamed from intern_downcase. Don't downcase
14259 the string. Callers changed.
14260 (font_pixel_size): Adjusted for the format change of font-related
14261 objects.
14262 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
14263 (font_style_to_value, font_style_symbolic): New function.
14264 (build_font_family_alist): Delete it.
14265 (font_registry_charsets): Use Fassoc_string instead of
14266 assq_no_quit.
14267 (font_prop_validate_symbol): Don't return null_string.
14268 (font_prop_validate_style): Adjusted for the change of
14269 style-related values in a font vector.
14270 (font_property_table): Delete entries for QClanguage and
14271 QCantialias, add entries for QCavgwidth.
14272 (get_font_prop_index): Delete the 2nd argument FROM.
14273 (font_prop_validate): Arguments changed.
14274 (font_put_extra): Adjusted for the change of font-related objects.
14275 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
14276 (font_parse_fcname, font_unparse_fcname)
14277 (font_prepare_composition): Likewise.
14278 (font_parse_family_registry): Renamed from font_merge_old_spec.
14279 (otf_open): Delete the 1st arg entity.
14280 (font_otf_capability): Adjusted for the above change.
14281 (font_score): New arg alternate_families. Adjusted for the change
14282 of font-related objects.
14283 (font_sort_entites): New arg best_only.
14284 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
14285 Delete them.
14286 (font_match_p): Check alternate families.
14287 (font_find_object): Delete it.
14288 (font_check_object): New function.
14289 (font_clear_cache): Adjusted for the change of font-related objects.
14290 (font_delete_unmatched): New arg.
14291 (font_list_entities): Call font_driver->list with a spec that
14292 doesn't specify style-related properties.
14293 (font_matching_entity): Arguments changed. Caller changed.
14294 (font_open_entity): Adjusted for the change of font-related objects.
14295 (font_close_object, font_has_char, font_encode_char)
14296 (font_get_name, font_get_spec): Likewise.
14297 (font_spec_from_name, font_clear_prop, font_update_lface):
14298 New functions.
14299 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
14300 (font_prepare_for_face, font_done_for_face, font_open_by_name)
14301 (font_at): Adjusted for the change of font-related objects.
14302 (font_range): New function.
14303 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
14304 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
14305 (Fcopy_font_spec, Fmerge_font_spec): New function.
14306 (Ffont_family_list): Renamed from list-families.
14307 (Finternal_set_font_style_table): Arguments changed.
14308 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
14309 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
14310 change of font-related objects.
14311 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
14312
14313 * fontset.h (struct font_info): Delete it. Most members go to
14314 struct font.
14315 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
14316 (enum FONT_SPEC_INDEX): Delete it.
14317 (font_info, list_fonts_func, load_font_func, query_font_func)
14318 (set_frame_fontset_func, find_ccl_program_func)
14319 (get_font_repertory_func, new_fontset_from_font_name): Delete
14320 externs.
14321 (fontset_from_font_name): Extern it.
14322 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
14323 (FONT_INFO_FROM_FACE): Deleted.
14324 (face_for_font): Adjust prototype.
14325
14326 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
14327 conditionals. Don't check enable_font_backend. Delete all codes
14328 used only when USE_FONT_BACKEND is not defined.
14329 (get_font_info_func, list_font_func, load_font_func)
14330 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
14331 (get_font_repertory_func): Delete them.
14332 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
14333 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
14334 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
14335 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
14336 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
14337 (fontset_compare_rfontdef): New function.
14338 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
14339 rfont-defs by qsort. Adjusted for the change of font-group vector.
14340 (load_font_get_repertory): Deleted.
14341 (fontset_find_font): Use new macros to ref/set elements of
14342 font-def and rfont-def.
14343 (fontset_font): Fix the timing of remembering that no font for C.
14344 (free_face_fontset): Do nothing if the face has no fontset.
14345 (face_suitable_for_char_p): Use new macros to ref/set elements of
14346 rfont-def.
14347 (face_for_char): Likewise. Call face_for_char with font_object.
14348 (fs_load_font): Delete. Delete #pragma surrounding it.
14349 (fs_query_fontset): Use strcasecmp instead of strcmp.
14350 (generate_ascii_font_name): Adjusted for the format change of
14351 font-spec.
14352 (Fset_fontset_font): Likewise. Use new macros to set elements of
14353 font-def.
14354 (Fnew_fontset): Use font_unparse_xlfd to generate
14355 FONTSET_ASCII (fontset).
14356 (new_fontset_from_font_name): Deleted.
14357 (fontset_from_font): Renamed from new_fontset_from_font. Check if
14358 a fontset is already created for the font. FIx updating of
14359 Vfontset_alias_alist.
14360 (fontset_ascii_font): Deleted.
14361 (Ffont_info): Adjusted for the format change of font-spec.
14362 (Finternal_char_font): Likewise.
14363 (Ffontset_info): Likewise.
14364 (syms_of_fontset): Don't check load_font_func.
14365
14366 * fns.c (internal_equal): Handle PREV_FONT.
14367
14368 * frame.h: Delete USE_FONT_BACKEND conditional.
14369
14370 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
14371 conditionals. Don't check enable_font_backend. Delete all codes
14372 used only when USE_FONT_BACKEND is not defined.
14373 (x_set_font): Call x_new_font, not x_new_fontset2.
14374 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
14375 already set for the frame.
14376
14377 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
14378 a font-entity by font_make_entity. Use font_intern_prop instead
14379 of intern_downcase. Use FONT_SET_STYLE to set a style-related
14380 font property. If a font is scalable, set avgwidth property to 0.
14381 Set font-entity property by font_put_extra.
14382 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
14383 (ffont_driver): Adjusted for the change of struct font_driver.
14384 (ftfont_spec_pattern): New function.
14385 (ftfont_list): Return a list, not vector.
14386 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
14387 (ftfont_list_family): Don't downcase names.
14388 (ftfont_free_entity): Deleted.
14389 (ftfont_open): Return a font-object. Adjusted for the change of
14390 struct font. Get underline_thickness and underline_position from
14391 font property. Don't update dpyinfo->smallest_font_height and
14392 dpyinfo->smallest_char_width.
14393 (ftfont_close): Don't free `struct font'.
14394 (ftfont_has_char): Adjusted for the format change of font-entity.
14395 (ftfont_encode_char, ftfont_text_extents): Likewise.
14396
14397 * ftxfont.c (ftxfont_list): Return a list, not vector.
14398 (ftxfont_open): Return a font-object. Adjusted for the change of
14399 struct font. Get underline_thickness and underline_position from
14400 font property. Don't update dpyinfo->smallest_font_height and
14401 dpyinfo->smallest_char_width.
14402 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
14403 (ftxfont_draw): Adjusted for the change of struct font.
14404
14405 * image.c (image_ascent): Don't include "charset.h". Include
14406 "character.h" and "font.h".
14407
14408 * lisp.h (enum pvec_type): New member PREV_FONT.
14409 (Fassoc_string): EXFUN it.
14410
14411 * print.c: Include font.h.
14412 (print_object): Handle font-related objects.
14413
14414 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
14415 conditionals. Don't check enable_font_backend. Delete all codes
14416 used only when USE_FONT_BACKEND is not defined.
14417 (handle_auto_composed_prop): Do nothing if it->f is not on a
14418 window system. Check how many following characters can be
14419 displayed by the same font.
14420 (calc_pixel_width_or_height): Type of the 4th arg is changed to
14421 'struct font *'.
14422 (get_char_face_and_encoding): Assign the whole encoding task to
14423 the `encode-char' method of a font driver.
14424 (fill_composite_glyph_string): Adjusted for the change of `struct
14425 face' and `struct glyph_string'.
14426 (fill_glyph_string): Likewise.
14427 (get_per_char_metric): Arguments changed.
14428 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
14429 and `struct glyph_string'.
14430 (produce_stretch_glyph, calc_line_height_property)
14431 (x_produce_glyphs): Likewise.
14432
14433 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
14434 conditionals. Don't check enable_font_backend. Delete all codes
14435 used only when USE_FONT_BACKEND is not defined. Use
14436 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
14437 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
14438 (Qp): Extern them.
14439 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
14440 Deleted.
14441 (struct font_name): Deleted.
14442 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
14443 (compare_fonts_by_sort_order): New function.
14444 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
14445 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
14446 Deleted.
14447 (Fx_family_fonts): Use font_list_entities, and sort fonts by
14448 compare_fonts_by_sort_order.
14449 (Fx_font_family_list): Call Ffont_family_list.
14450 (face_numeric_value, face_numeric_weight, face_numeric_slant)
14451 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
14452 (face_symbolic_slant, face_symbolic_swidth)
14453 (split_font_name_into_vector, build_font_name_from_vector)
14454 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
14455 (font_rescale_ratio, split_font_name, build_font_name)
14456 (free_font_names, sort_fonts, x_face_list_fonts)
14457 (face_font_available_p, sorted_font_list, cmp_font_names)
14458 (font_list_1, concat_font_list, font_list, remove_duplicates):
14459 Deleted.
14460 (Fx_list_fonts): Use Ffont_list.
14461 (LFACE_AVGWIDTH): Deleted.
14462 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
14463 by FONTP.
14464 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
14465 (set_lface_from_font_name): Delete it.
14466 (set_lface_from_font): Renamed from
14467 set_lface_from_font_and_fontset. Caller changed. Don't set
14468 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
14469 for face.
14470 (merge_face_vectors): Copy font-spec if necessary.
14471 Clear properties of the font-spec if necessary.
14472 (merge_face_ref): Clear properties of the font-spec if necessary.
14473 (Finternal_set_lisp_face_attribute): Likewise.
14474 (set_font_frame_param): Use font_load_for_lface to load a
14475 font-object, and call Fmodify_frame_parameters with it.
14476 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
14477 font name by Ffont_xlfd_name.
14478 (Finternal_lisp_face_attribute_values): Don't check QCweight,
14479 QCslant, and QCwidth.
14480 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
14481 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
14482 Compare fonts by EQ.
14483 (lookup_non_ascii_face): Deleted.
14484 (face_for_font): The 2nd argument changed.
14485 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
14486 Check atomic font properties by case insensitive.
14487 (realize_non_ascii_face): Set face->overstrike correctly.
14488 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
14489 (dump_realized_face): Get font name from
14490 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
14491
14492 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
14493 conditionals. Don't check enable_font_backend. Delete all codes
14494 used only when USE_FONT_BACKEND is not defined.
14495 (xic_create_xfontset): Original code deleted and renamed from
14496 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
14497 (x_make_gc): Don't set GCFont in GCs.
14498 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
14499 opened by "fixed".
14500 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
14501 find_ccl_program_func, query_font_func, set_frame_fontset_func,
14502 get_font_repertory_func.
14503
14504 * xfont.c: Include <stdlib.h> and "ccl.h".
14505 (struct xfont_info): New structure.
14506 (xfont_query_font): Deleted.
14507 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
14508 moved from xterm.c.
14509 (xfont_driver): Adjusted for the change of struct font_driver.
14510 (compare_font_names): New function.
14511 (xfont_list_pattern): Sort font names case insensitively. Make
14512 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
14513 (xfont_list): Return a list, not vector.
14514 (xfont_match): If the font doesn't have QCname property, generate
14515 a name from the other font properties.
14516 (xfont_open): Return a font-object. Adjusted for the change of
14517 struct font. Get underline_thickness and underline_position from
14518 font property. Don't update dpyinfo->smallest_font_height and
14519 dpyinfo->smallest_char_width.
14520 (xfont_close): Don't free struct font.
14521 (xfont_prepare_face): Adjusted for the change of struct font.
14522 (xfont_done_face): Deleted.
14523 (xfont_has_char): Adjusted for the change of struct font.
14524 (xfont_encode_char, xfont_draw): Likewise.
14525 (xfont_check): New function.
14526
14527 * xftfont.c (xftfont_list): Adjusted for the change of `list'
14528 callback function.
14529 (xftfont_match): Adjusted for the format change of font-entity.
14530 (xftfont_open): Adjusted for the format change of font-entity and
14531 font-object. Adjusted for the change of struct font. Return a
14532 font-object. Don't update dpyinfo->smallest_font_height and
14533 dpyinfo->smallest_char_width.
14534 (xftfont_close): Block input while calling XftFontClose.
14535 (xftfont_prepare_face): Don't block input while calling
14536 xftfont_get_colors. Adjusted for the change of struct font.
14537 (xftfont_shape): Return value of error case fixed.
14538
14539 * xrdb.c (x_load_resources): Don't setup a fontset resource.
14540
14541 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
14542 conditionals.
14543 (FONT_WIDTH): Return (f)->max_width.
14544 (struct x_display_info): Delete member `font'.
14545 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
14546 (x_find_ccl_program, x_get_font_repertory): Delete externs.
14547 (struct x_output): Change type of `font' to `struct font *'.
14548
14549 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
14550 conditionals. Don't check enable_font_backend. Delete all codes
14551 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
14552 (x_per_char_metric, x_encode_char): Deleted.
14553 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
14554 (x_compute_glyph_string_overhangs): Adjusted for the change of
14555 `struct face'.
14556 (x_draw_glyph_string_foreground)
14557 (x_draw_composite_glyph_string_foreground): Likewise.
14558 (x_draw_glyph_string): Likewise. Use font->underline_position and
14559 font->underline_thickness.
14560 (x_new_font): Renamed from x_new_fontset2.
14561 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
14562 (x_check_font): Call `check' method of a font driver.
14563 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
14564 (x_query_font, x_get_font_repertory): Deleted.
14565 (x_find_ccl_program): Renamed and moved to xfont.c.
14566 (x_redisplay_interface): Adjusted for the change of `struct
14567 redisplay_interface'.
14568
14569 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
14570 conditionals. Don't check enable_font_backend. Delete all codes
14571 used only when USE_FONT_BACKEND is not defined. Surround non-used
14572 code by "#ifdef OLD_FONT" and "endif".
14573 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
14574
14575 * w32font.h (struct w32font_info): New member.
14576 (FONT_COMPAT): New macro.
14577 (w32font_open_internal): Prototype adjusted.
14578
14579 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
14580 OLD_FONT" and "endif".
14581
14582 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
14583 conditionals. Don't check enable_font_backend. Delete all codes
14584 used only when USE_FONT_BACKEND is not defined.
14585 (w32font_open): Return a font-object. Make a font-object by
14586 font_make_object. Adjusted for the change of struct w32font_info.
14587 (w32font_close): Don't free struct font. Adjusted for the change
14588 of struct w32font_info.
14589 (w32font_encode_char, w32font_text_extents, w32font_draw):
14590 Adjusted for the change of struct w32font_info.
14591 (w32font_draw): Likewise.
14592 (w32font_list_internal): Return a list, not vector.
14593 (w32font_open_internal): Change the 4th arg to font-object.
14594 Adjusted for the change of struct w32font_info and font-object format.
14595 (add_font_name_to_list): Don't downcase names.
14596 (w32_enumfont_pattern_entity): Make a font-entity by
14597 font_make_entity. Adjusted for the format change of font-entity.
14598 Use FONT_SET_STYLE to set a style-related font property. If a
14599 font is scalable, set avgwidth property to 0. Set font-entity
14600 property by font_put_extra.
14601 (font_matches_spec): Adjusted for the format change of font-entity.
14602 (w32_weight_table, w32_decode_weight): New variables.
14603 (w32_encode_weight): New function.
14604 (fill_in_logfont): Adjusted for the format change of font-spec.
14605 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
14606 weight value.
14607 (w32font_driver): Adjusted for the change of struct font_driver.
14608
14609 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
14610 conditionals. Don't check enable_font_backend. Surround non-used
14611 code by "#ifdef OLD_FONT" and "endif".
14612 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
14613 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
14614
14615 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
14616 conditionals. Don't check enable_font_backend. Delete all codes
14617 used only when USE_FONT_BACKEND is not defined. Surround non-used
14618 code by "#ifdef OLD_FONT" and "endif".
14619
14620 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
14621 (uniscribe_open): Return value changed to font-object.
14622 Adjusted for the format change of font-object.
14623 (uniscribe_otf_capability): Adjusted for the change of struct font.
14624 (add_opentype_font_name_to_list): Don't downcase names.
14625 (uniscribe_font_driver): Adjusted for the change of struct
14626 font_driver.
14627
14628 2008-05-13 Chong Yidong <cyd@stupidchicken.com>
14629
14630 * dispnew.c (update_frame_1): Check if tty output is still valid
14631 before flushing it.
14632
14633 2008-05-13 Jan Djärv <jan.h.d@swipnet.se>
14634
14635 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
14636 to Gtk+ menus.
14637
14638 2008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
14639
14640 * dired.c (file_name_completion): Tweak the code so as to always do it
14641 in a single pass. Tighten the scope of some variables.
14642
14643 * dired.c (Qdefault_directory): New var.
14644 (file_name_completion): Use it instead of Fexpand_file_name.
14645 (syms_of_dired): Initialize it.
14646
14647 2008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
14648
14649 * fileio.c (double_dollars): Remove dead code.
14650
14651 2008-05-10 Eli Zaretskii <eliz@gnu.org>
14652
14653 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
14654 Mention w32-get-true-file-attributes in doc string.
14655
14656 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
14657
14658 2008-05-09 Glenn Morris <rgm@gnu.org>
14659
14660 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
14661 2008-04-23.
14662
14663 2008-05-09 Eli Zaretskii <eliz@gnu.org>
14664
14665 Support for reporting owner and group of each file on MS-Windows:
14666 * dired.c (stat_uname, stat_gname): New functions, with special
14667 implementation for w32.
14668 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
14669
14670 * w32.c: Rename the_passwd_* to dflt_passwd_*.
14671 (dflt_group_name): New static variable.
14672 (dflt_group): Rename from the_group.
14673 (init_user_info): Init dflt_group fields. Get user's group name
14674 from LookupAccountSid.
14675 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
14676 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
14677 New initialization states.
14678 (globals_of_w32): Initialize them to zero. Initialize the default
14679 group name to "None".
14680 (GetFileSecurity_Name): New global var, the name of the function
14681 to call for GetFileSecurity.
14682 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
14683 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
14684 (get_file_security, get_security_descriptor_owner)
14685 (get_security_descriptor_group, is_valid_sid)
14686 (get_file_security_desc, get_rid, get_name_and_id)
14687 (get_file_owner_and_group): New functions.
14688 (stat): Use get_file_security_desc and get_file_owner_and_group to
14689 report the owner and primary group of each file. Don't ignore the
14690 high 32 bits of file's size, now that st_size is 64-bit wide.
14691 Fix test when to get true file attributes.
14692 (init_user_info): Use get_rid instead of equivalent inline code.
14693 (fstat): Don't ignore the high 32 bits of file's size.
14694
14695 2008-05-09 Chong Yidong <cyd@stupidchicken.com>
14696
14697 * image.c (png_load): Use correct bit-depth for setting background
14698 color.
14699
14700 2008-05-08 Eli Zaretskii <eliz@gnu.org>
14701
14702 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
14703 epa-hook.elc.
14704
14705 2008-05-08 Juanma Barranquero <lekktu@gmail.com>
14706
14707 * font.c (Ffont_match_p): Don't use `iff' in docstring.
14708
14709 2008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
14710
14711 * macfns.c (Fx_create_frame): Make a copy of frame parameters
14712 because the original parameters are in pure storage now.
14713 (mac_window): Remove unused params. Update callers.
14714
14715 2008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
14716
14717 * lread.c (substitute_object_recurse): Use lower-level primitives.
14718 Don't signal errors when traversing sub-char-tables.
14719 Don't loop over all the possible characters when traversing char-tables.
14720
14721 * print.c (print_preprocess): Add sub-char-tables to the print-table,
14722 just like we do in print.c.
14723
14724 2008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
14725
14726 * minibuf.c (Ftry_completion): Remove code left over from when we used
14727 scmp instead of Fcompare_strings.
14728
14729 2008-05-04 Juanma Barranquero <lekktu@gmail.com>
14730
14731 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
14732
14733 2008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14734
14735 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
14736 Create bitmap context in native byte order.
14737
14738 * macterm.c (XDrawLine)
14739 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
14740 context in native byte order.
14741
14742 2008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14743
14744 * config.in: Regenerate.
14745
14746 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
14747 New definitions for Image I/O support.
14748 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
14749 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
14750 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
14751 (mac_data_provider_release_data, image_load_image_io)
14752 [USE_MAC_IMAGE_IO]: New functions.
14753 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
14754 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
14755 (init_image_func_pointer) [MAC_OSX]: Remove function.
14756 (image_load_quartz2d) [MAC_OSX]: Check availability of
14757 CGImageCreateWithPNGDataProvider at compile time.
14758 Use lowercase `false' for boolean constant.
14759 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
14760 Use image_load_image_io.
14761 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
14762 Don't check MyCGImageCreateWithPNGDataProvider.
14763 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
14764 Don't call init_image_func_pointer.
14765
14766 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
14767
14768 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
14769 Make variable non-static.
14770 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
14771 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
14772
14773 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
14774 (RED_FROM_ULONG): Mask off higher bits.
14775 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
14776
14777 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
14778 Include AvailabilityMacros.h.
14779 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
14780 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
14781
14782 2008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
14783
14784 * chartab.c (Fset_char_table_range): If range is t, really set all
14785 chars to that value.
14786
14787 2008-05-03 Eli Zaretskii <eliz@gnu.org>
14788
14789 * dired.c (Ffile_attributes): Don't allow the device number become
14790 negative.
14791
14792 2008-05-02 Daiki Ueno <ueno@unixuser.org>
14793
14794 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
14795
14796 2008-05-02 Juri Linkov <juri@jurta.org>
14797
14798 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
14799 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
14800 DEFAULT argument as a list of default values in docstrings.
14801
14802 2008-05-01 Chong Yidong <cyd@stupidchicken.com>
14803
14804 * puresize.h (BASE_PURESIZE): Increase to 1210000.
14805
14806 2008-05-01 Martin Rudalics <rudalics@gmx.at>
14807
14808 * dispnew.c (change_frame_size_1): Preserve small windows when
14809 shrinking frames by calling set_window_height|width with third
14810 arg 2.
14811
14812 * window.h (struct window): Replace field too_small_ok by field
14813 resize_proportionally.
14814
14815 * window.c (make_window): Initialize resize_proportionally.
14816 (enlarge_window): Temporarily set resize_proportionally to make
14817 sure that shrink_windows does scale the window proportionally.
14818 (shrink_windows): When window has resize_proportionally set try
14819 to shrink it proportionally by stealing from other windows.
14820 (struct saved_window, Fset_window_configuration)
14821 (compare_window_configurations): Handle resize_proportionally.
14822 (WINDOW_TOTAL_SIZE): New macro.
14823 (window_min_size, shrink_windows, size_window): Use it.
14824 (check_min_window_sizes): Remove. Invalid values of
14825 window-min-height|width are handled by window_min_size_2 now.
14826 (size_window, Fsplit_window, enlarge_window)
14827 (adjust_window_trailing_edge, grow_mini_window): Don't call
14828 check_min_window_sizes.
14829 (window_min_size_2, window_min_size_1, window_min_size):
14830 New argument safe_p for retrieving "safe" minimum sizes.
14831 (Fdisplay_buffer, Fsplit_window, enlarge_window)
14832 (adjust_window_trailing_edge, grow_mini_window):
14833 Adjust arguments of window_min_size... functions.
14834 (shrink_windows): Argument min_size removed. New argument
14835 safe_p allows shrinking windows to their safe minimum sizes.
14836 Calculate minimum size and decide whether a window shall be
14837 deleted for each window individually.
14838 (size_window): When nodelete_p equals 2, tell shrink_windows to
14839 delete windows only if their new minimum size is no more safe.
14840 (shrink_window_lowest_first): Call window_min_size_1 to make
14841 sure to preserve modeline of bottom-most window when resizing
14842 the minibuffer.
14843 (Fset_window_configuration, Fcurrent_window_configuration)
14844 (compare_window_configurations): Do not handle
14845 window-min-height|width any more.
14846 (syms_of_window): Clarify window-min-height|width doc-strings.
14847
14848 2008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
14849
14850 * dired.c (file_name_completion): Fix up the encoding/decoding issue
14851 some more. Copy some of the code from Ftry_completions.
14852 Remove special case code that dates back to initial revision when the
14853 slash was only added when necessary and that can't trigger nowadays.
14854
14855 2008-04-27 Kenichi Handa <handa@m17n.org>
14856
14857 * font.c (font_prop_validate): Signal `error' instead of `font'.
14858
14859 2008-04-29 Jason Rumney <jasonr@gnu.org>
14860
14861 * w32fns.c (Fw32_battery_status): New defun.
14862 (syms_of_w32fns): Defsubr it.
14863
14864 2008-04-28 Andreas Schwab <schwab@suse.de>
14865
14866 * dired.c (file_name_completion): Fix another mixing of encoded
14867 and decoded names.
14868
14869 2008-04-28 Juanma Barranquero <lekktu@gmail.com>
14870
14871 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
14872
14873 2008-04-27 Juanma Barranquero <lekktu@gmail.com>
14874
14875 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
14876
14877 2008-04-27 Andreas Schwab <schwab@suse.de>
14878
14879 * dired.c (file_name_completion): Fix inappropriate mixing of
14880 encoded and decoded names.
14881
14882 * xterm.c (XTread_socket): Fix use of uninitialized variable.
14883
14884 * puresize.h (BASE_PURESIZE): Increase to 1200000.
14885
14886 2008-04-26 Eli Zaretskii <eliz@gnu.org>
14887
14888 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
14889 2008-03-31, it's not needed anymore with `struct stat' definition
14890 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
14891 for the same reasons.
14892
14893 2008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
14894
14895 * m/sparc.h: Additional redefinitions for GNU/Linux.
14896
14897 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14898
14899 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
14900 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
14901 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
14902 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
14903 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
14904 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
14905 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
14906 Likewise.
14907
14908 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
14909 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
14910 (mac_ax_number_of_characters): Add externs.
14911 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
14912 [USE_MAC_TSM]: Likewise.
14913 (mac_handle_text_input_event) [MAC_OSX]:
14914 Handle kEventTextInputOffsetToPos for no active input area case.
14915 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
14916 (mac_handle_document_access_event)
14917 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
14918 (install_application_handler) [MAC_OSX]: Register handlers for
14919 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
14920 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
14921 Register mac_handle_document_access_event.
14922
14923 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
14924 Make functions non-static.
14925
14926 2008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
14927
14928 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
14929 (read_file_name_completion_ignore_case, insert_default_directory)
14930 (Qdefault_directory): Move to minibuffer.el.
14931 (Fread_file_name): Call the new `read-file-name' instead.
14932
14933 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14934
14935 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
14936 Make function non-static.
14937 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
14938 Remove function.
14939 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
14940 Move to mactoolbox.c.
14941 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
14942
14943 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
14944 (mac_rect_make): New macro.
14945
14946 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
14947 instead of float.
14948 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
14949 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
14950 (XSetBackground) [USE_CG_DRAWING]: Likewise.
14951 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
14952 CGRectMake.
14953 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
14954 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
14955 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
14956 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
14957 instead of WindowRef in argument type.
14958 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
14959 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
14960 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
14961 instead of DISPLAY. All uses changed.
14962 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
14963 (x_calc_absolute_position): Simplify so as not to use
14964 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
14965
14966 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
14967 instead of WindowRef in argument type.
14968 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
14969 [TARGET_API_MAC_CARBON]: Remove externs.
14970 (create_apple_event, mac_event_parameters_to_lisp)
14971 [TARGET_API_MAC_CARBON]: Add externs.
14972
14973 * mactoolbox.c (Vmac_ts_script_language_on_focus)
14974 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
14975 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
14976 is clicked.
14977 (x_activate_menubar): Remove extern for saved_menu_event_location.
14978 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
14979 Move from mac.c.
14980
14981 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14982
14983 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
14984 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
14985
14986 2008-04-23 Jason Rumney <jasonr@gnu.org>
14987
14988 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
14989 attributes only for local files.
14990
14991 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
14992 default to Qlocal.
14993
14994 2008-04-22 Juri Linkov <juri@jurta.org>
14995
14996 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
14997 read-buffer-to-switch instead of using the letter "B".
14998
14999 2008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
15000
15001 * fileio.c (Qdefault_directory): New variable.
15002 (Fread_file_name): Use it to pass `dir' to the completion functions.
15003
15004 2008-04-20 Chong Yidong <cyd@stupidchicken.com>
15005
15006 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
15007
15008 2008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
15009
15010 * keyboard.c (Vpre_help_message): Remove.
15011 (show_help_echo): Remove default C code.
15012
15013 * dired.c (directory_files_internal, file_name_completion):
15014 Only call ENCODE_FILE if the string is indeed decoded.
15015
15016 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
15017
15018 * Makefile.in (TOOLKIT_DEFINES): Remove.
15019 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
15020
15021 2008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15022
15023 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
15024 (mactoolbox.o): New target.
15025
15026 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
15027 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
15028
15029 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
15030 Use mac_set_frame_window_background instead of XSetWindowBackground.
15031 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
15032 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
15033 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
15034 instead of SetWindowTitleWithCFString.
15035 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
15036 Move function to mactoolbox.c.
15037 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
15038 Use mac_set_window_modified instead of SetWindowModified.
15039 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
15040 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
15041 (Fx_focus_frame): Use mac_front_non_floating_window instead of
15042 FrontNonFloatingWindow. Use mac_activate_window instead of
15043 ActivateWindow. Use mac_active_non_floating_window instead of
15044 ActiveNonFloatingWindow.
15045 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
15046 Use mac_show_hourglass and mac_hide_hourglass.
15047 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
15048 instead of GetGlobalMouse.
15049 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
15050 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
15051 Use mac_bring_window_to_front instead of BringToFront.
15052 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
15053 mactoolbox.c.
15054 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
15055 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
15056 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
15057 mactoolbox.c.
15058
15059 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
15060 (XtPointer): Move typedef from macmenu.c.
15061 (enum button_type): Move enum from macmenu.c.
15062 (widget_value): Move typedef from macmenu.c.
15063 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
15064 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
15065 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
15066 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
15067 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
15068 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
15069 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
15070 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
15071 (Selection): Move typedef from macselect.c.
15072 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
15073 macterm.c.
15074 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
15075 (mac_is_window_collapsed, mac_bring_window_to_front)
15076 (mac_send_window_behind, mac_hide_window, mac_show_window)
15077 (mac_collapse_window, mac_front_non_floating_window)
15078 (mac_active_non_floating_window, mac_activate_window)
15079 (mac_move_window_structure, mac_move_window, mac_size_window)
15080 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
15081
15082 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
15083 (enum mac_menu_kind): Move enum to mactoolbox.c.
15084 (min_menu_id): Move variable to mactoolbox.c.
15085 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
15086 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
15087 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
15088 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
15089 [TARGET_API_MAC_CARBON]: Likewise.
15090 (XtPointer): Move typedef to macgui.h.
15091 (enum button_type): Move enum to macgui.h.
15092 (widget_value): Move typedef to macgui.h.
15093 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
15094 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
15095 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
15096 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
15097 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
15098 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
15099 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
15100 (popup_activated_flag): Make variable non-static.
15101 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
15102 (add_menu_item, fill_menu, dispose_menus):
15103 Move functions to mactoolbox.c.
15104 (restore_show_help_function, menu_target_item_handler)
15105 (install_menu_target_item_handler, mac_handle_dialog_event)
15106 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
15107 [TARGET_API_MAC_CARBON]: Likewise.
15108 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
15109 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
15110 (find_and_call_menu_selection, name_is_separator): Make function
15111 non-static.
15112 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
15113 to mactoolbox.c.
15114 (set_frame_menubar): Don't call install_menu_quit_handler.
15115 (menu_item_selection): New variable.
15116 (mac_menu_show): Use create_and_show_popup_menu.
15117 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
15118 selection but set variable menu_item_selection. All uses changed.
15119 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
15120 Call install_menu_quit_handler. Move to mactoolbox.c.
15121
15122 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
15123 (Selection): Move typedef to macgui.h.
15124 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
15125 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
15126 Make variables non-static.
15127 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
15128 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
15129 Make functions non-static.
15130 (Vmac_service_selection) [MAC_OSX]: Likewise.
15131 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
15132 (mac_valid_selection_target_p, mac_clear_selection)
15133 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
15134 (mac_put_selection_value, mac_selection_has_target_p)
15135 (mac_get_selection_value, mac_get_selection_target_list)
15136 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
15137 Move functions to mactoolbox.c.
15138 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
15139 Likewise.
15140 (copy_scrap_flavor_data, mac_handle_service_event)
15141 (install_service_handler) [MAC_OSX]: Likewise.
15142 (syms_of_macselect) <Vmac_dnd_known_types>:
15143 Use mac_dnd_default_known_types.
15144
15145 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
15146 Move to mactoolbox.c.
15147 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
15148 (Fx_selection_owner_p): Add EXFUN.
15149 (install_window_handler, remove_window_handler, XSetWindowBackground):
15150 Remove externs.
15151 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
15152 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
15153 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
15154 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
15155 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
15156 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
15157 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
15158 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
15159 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
15160 (create_and_show_popup_menu, mac_get_selection_from_symbol)
15161 (mac_valid_selection_target_p, mac_clear_selection)
15162 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
15163 (mac_put_selection_value, mac_selection_has_target_p)
15164 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
15165 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
15166 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
15167 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
15168 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
15169 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
15170 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
15171 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
15172 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
15173
15174 * mactoolbox.c: New file.
15175
15176 2008-04-18 Jason Rumney <jasonr@gnu.org>
15177
15178 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
15179
15180 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
15181
15182 * character.c (Fmultibyte_char_to_unibyte):
15183 Return latin1 chars unchanged.
15184
15185 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
15186 relocated if it points to `name'.
15187
15188 2008-04-17 Kenichi Handa <handa@m17n.org>
15189
15190 * data.c (Faset): Allow setting a multibyte character in an
15191 ASCII-only unibyte string.
15192
15193 * lisp.h (STRING_SET_MULTIBYTE): New macro.
15194
15195 2008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
15196
15197 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
15198 done in config.h.
15199
15200 2008-04-16 Juanma Barranquero <lekktu@gmail.com>
15201
15202 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
15203 (Fchar_direction): Add usage in the docstring.
15204
15205 2008-04-15 Chong Yidong <cyd@stupidchicken.com>
15206
15207 * keyboard.c (read_key_sequence): Remove always-true checks.
15208
15209 2008-04-14 Jason Rumney <jasonr@gnu.org>
15210
15211 * w32font.c (w32font_open_internal): Set max_bounds.descent in
15212 compatibility struct, for better underline positioning.
15213
15214 2008-04-13 David Hansen <david.hansen@gmx.net>
15215
15216 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
15217 string.
15218
15219 2008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
15220
15221 * m/hp800.h (XUINT, XSET): Remove.
15222
15223 2008-04-12 Juanma Barranquero <lekktu@gmail.com>
15224
15225 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
15226 previous change.
15227
15228 2008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
15229
15230 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
15231 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
15232
15233 2008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
15234
15235 * keymap.h (map_keymap_canonical): Declare.
15236 * xmenu.c (single_keymap_panes): Use it.
15237
15238 2008-04-11 Glenn Morris <rgm@gnu.org>
15239
15240 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
15241 set the target's value to that of the alias.
15242
15243 2008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
15244
15245 * term.c (set_tty_color_mode): Left over typo.
15246
15247 2008-04-10 Michael Albinus <michael.albinus@gmx.de>
15248
15249 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
15250 only after check for file name handler functions. Signal, when
15251 native functionality is not supported.
15252 (syms_of_fileio): Declare it unconditionally.
15253
15254 2008-04-10 Jason Rumney <jasonr@gnu.org>
15255
15256 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
15257 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
15258
15259 * w32.c (logon_network_drive): Also logon to remote drives that
15260 are mapped to drive letters.
15261
15262 2008-04-10 Glenn Morris <rgm@gnu.org>
15263
15264 * xdisp.c (truncate-partial-width-windows): Doc fix.
15265
15266 2008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
15267
15268 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
15269 Move functions to minibuffer.el.
15270 (syms_of_fileio): Don't declare them.
15271
15272 2008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
15273
15274 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
15275 (syms_of_minibuf): Remove its initialization.
15276
15277 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
15278
15279 2008-04-09 Juanma Barranquero <lekktu@gmail.com>
15280
15281 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
15282
15283 2008-04-09 Jason Rumney <jasonr@gnu.org>
15284
15285 * makefile.w32-in (distclean): Delete makefile too.
15286 (maintainer-clean): New target.
15287
15288 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
15289
15290 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
15291 for new font backend and composite cases.
15292
15293 2008-04-09 Jan Djärv <jan.h.d@swipnet.se>
15294
15295 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
15296 Most of the code moved to run_timers.
15297 (do_pending_atimers): Call run_timers.
15298 (run_timers): New function.
15299
15300 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
15301 run atimers.
15302
15303 * process.c (wait_reading_process_output): The same as above.
15304
15305 2008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
15306
15307 * minibuf.c (last_exact_completion): Remove variable.
15308 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
15309 (complete_and_exit_1, complete_and_exit_2)
15310 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
15311 (Fdisplay_completion_list, display_completion_list_1)
15312 (Fminibuffer_completion_help, Fself_insert_and_exit)
15313 (Fexit_minibuffer, Fminibuffer_message): Move functions to
15314 minibuffer.el.
15315 (syms_of_minibuf): Remove corresponding initializations.
15316
15317 * keyboard.c (Qdeactivate_mark): New var.
15318 (command_loop_1): Use it to call `deactivate-mark'.
15319 (syms_of_keyboard): Initialize it.
15320
15321 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
15322 to another frame.
15323 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
15324 Don't call set_tty_color_mode.
15325 (store_frame_param): Reset previous_frame rather than call
15326 set_tty_color_mode.
15327 * term.c (set_tty_color_mode): Rewrite.
15328 * dispextern.h (set_tty_color_mode): New type.
15329 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
15330
15331 2008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
15332
15333 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
15334 for generic chars, which do not exist any more in emacs-unicode.
15335
15336 2008-04-08 Michael Albinus <michael.albinus@gmx.de>
15337
15338 * coding.c (detect_coding_emacs_mule)
15339 (Ffind_operation_coding_system): Fix typo.
15340
15341 2008-04-08 Jason Rumney <jasonr@gnu.org>
15342
15343 * w32uniscribe.c (SNAME): Extract only symbol name.
15344
15345 * w32font.h (struct w32_metric_cache): New struct.
15346 (w32font_info): Use it.
15347 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
15348 (CACHE_BLOCKSIZE): New constants.
15349
15350 * w32font.c (Qja, Qko, Qzh): New symbols.
15351 (syms_of_w32font): Initialise them.
15352 (font_matches_spec): Use them to filter by language.
15353 (recompute_cached_metrics): Remove function.
15354 (compute_metrics, clear_cached_metrics): New functions.
15355 (w32font_encode_char): Use them to manage metric cache.
15356 (w32font_text_extents): Cache metrics for all glyphs on demand.
15357 Delay converting glyph indices to WORD until needed.
15358 (w32font_open_internal): Initialize metric cache to empty.
15359 (registry_to_w32_charset): Charset should always be a symbol.
15360 (fill_in_logfont, list_all_matching_fonts): Family should
15361 always be a symbol.
15362
15363 2008-04-06 Jason Rumney <jasonr@gnu.org>
15364
15365 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
15366 Give up if glyph indices not supported. Use uniscribe obtained
15367 ABC widths for individual metrics. Map glyph clusters back to
15368 characters using fClusterStart flag. Return number of glyphs
15369 produced, not chars processed.
15370 (uniscribe_shape): Map char at FROM to current glyph.
15371
15372 2008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15373
15374 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
15375 Use SetMenuItemHierarchicalMenu.
15376
15377 2008-04-05 Jason Rumney <jasonr@gnu.org>
15378
15379 * image.c (pbm_load): Allow color values up to 65535.
15380 Throw an error if max_color_idx is outside the supported range.
15381 Report an error when image size is invalid.
15382 Read two bytes at a time when raw images have max_color_idx above 255.
15383
15384 2008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
15385
15386 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
15387 append "CCL: Quitted" when the CCL program is quitted.
15388 (setup_ccl_program): Initialize ccl->quit_silently to zero.
15389
15390 * ccl.h (struct ccl_program): New member quit_silently.
15391
15392 2008-04-05 Chong Yidong <cyd@stupidchicken.com>
15393
15394 * search.c (compile_pattern_1): Treat non-nil and non-string of
15395 search-spaces-regexp as nil.
15396
15397 * minibuf.c (Fassoc_string): Tweak docstring.
15398
15399 2008-04-05 Eli Zaretskii <eliz@gnu.org>
15400
15401 * dired.c (Ffile_attributes): Support inode numbers wider than 32
15402 bits. Remove ugly WINDOWSNT-specific kludge introduced on
15403 2008-03-14 to force inode be positive.
15404
15405 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
15406 _S_* ones, since we now use our own sys/stat.h.
15407 (stat, fstat): Don't mangle the inode number.
15408 (init_user_info): Don't restrict UID and GID to 0-60000 range.
15409
15410 2008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
15411
15412 * frame.h (struct frame): Give one more bit to `visible' since we use
15413 values larger than 1 to indicate obscured frames on ttys.
15414
15415 * keymap.c (Qkeymap_canonicalize): New var.
15416 (Fmap_keymap_internal): New fun.
15417 (describe_map): Use keymap-canonicalize.
15418
15419 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
15420 (Fundo_boundary): Set them.
15421 (syms_of_undo): Initialize them.
15422 (record_point): Use them instead of last_point_position*.
15423 (last_undo_buffer): Change type.
15424
15425 2008-04-04 Jason Rumney <jasonr@gnu.org>
15426
15427 * w32font.c (w32font_text_extents): Use font's ascent and descent.
15428 (recompute_cached_metrics): Don't set ascent and descent per char.
15429
15430 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
15431 (uniscribe_check_otf): Add GC protection before consing.
15432 Rearrange loop for counting features.
15433
15434 2008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
15435
15436 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
15437 buffer with byte-size of source buffer.
15438
15439 2008-04-03 Chong Yidong <cyd@stupidchicken.com>
15440
15441 * callint.c (Fcall_interactively): Handle temporary region even
15442 when shift-select-mode is off.
15443
15444 2008-04-03 Jason Rumney <jasonr@gnu.org>
15445
15446 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
15447
15448 2008-04-03 Kenichi Handa <handa@m17n.org>
15449
15450 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
15451 (CATEGORY_MASK_UTF_16): Likewise.
15452 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
15453 binary file.
15454 (detect_coding): Add null-byte detection for a binary file.
15455 (detect_coding_system): Likewise.
15456
15457 2008-04-03 Jason Rumney <jasonr@gnu.org>
15458
15459 * w32uniscribe.c: New file.
15460
15461 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
15462
15463 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
15464
15465 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
15466 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
15467 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
15468 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
15469 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
15470 (Qphonetic): New symbols.
15471 (syms_of_w32font): Initialize them.
15472 (font_supported_scripts): Use them.
15473 (w32font_list_family): List all charsets.
15474 (w32font_text_extents, recompute_cached_metrics): Fix metric
15475 calculations.
15476 (w32_enumfont_pattern_entity): Make full_type a DWORD.
15477 Give opentype fonts their own format.
15478 (font_matches_spec): New arguments backend and logfont.
15479 Handle :otf spec for uniscribe backend.
15480 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
15481 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
15482
15483 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
15484 font backend.
15485 (globals_of_w32fns): Initialize uniscribe font backend.
15486
15487 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
15488 dependencies.
15489 (w32uniscribe.$(O)): New file to build.
15490 (FONT_OBJ): Include w32uniscribe.$(O).
15491 (LIBS): Add uniscribe libraries.
15492
15493 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
15494
15495 2008-04-02 Chong Yidong <cyd@stupidchicken.com>
15496
15497 * callint.c (Vshift_select_mode): New var.
15498 (Finteractive): Document new ^ spec.
15499 (Fcall_interactively): Call handle-shift-selection if the ^ spec
15500 is present.
15501
15502 * keyboard.c (Vthis_command_keys_shift_translated): New var.
15503 (command_loop_1): Avoid running the direct display versions of
15504 forward-char and backward-char if shift-selection may occur.
15505 (read_key_sequence): Set Vthis_command_keys_shift_translated if
15506 shift-translation takes place.
15507
15508 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
15509 avoid clobbering by define-minor-mode.
15510
15511 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
15512 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
15513
15514 * syntax.c (Fforward_word): Add ^ interactive spec.
15515
15516 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
15517 (Fscroll_right): Add ^ interactive spec.
15518
15519 2008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
15520
15521 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
15522
15523 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
15524
15525 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
15526
15527 2008-03-31 Juri Linkov <juri@jurta.org>
15528
15529 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
15530
15531 2008-03-30 Jan Djärv <jan.h.d@swipnet.se>
15532
15533 * gtkutil.c (xg_set_geometry): Fix indentation.
15534 (xg_resize_outer_widget): Remove.
15535 (x_wm_size_hint_off): Fix indentation.
15536 (xg_frame_set_char_size): Call flush_and_sync after
15537 gtk_window_resize.
15538 (x_wm_set_size_hint): Pass NULL as geometry window to
15539 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
15540 Add menu bar and tool bar height to base height.
15541 (xg_update_frame_menubar, free_frame_menubar)
15542 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
15543 (update_frame_tool_bar, free_frame_tool_bar):
15544 Change xg_resize_outer_widget to xg_frame_set_char_size.
15545
15546 2008-03-30 Michael Albinus <michael.albinus@gmx.de>
15547
15548 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
15549 (Fdbus_call_method): New parameter TIMEOUT.
15550 (dbus-send-signal): Optimize UNGCPRO call.
15551
15552 2008-03-29 Juri Linkov <juri@jurta.org>
15553
15554 * window.c (Fdisplay_buffer): Move call to
15555 Vsplit_window_preferred_function out of conditions that check
15556 if window is eligible for vertical splitting.
15557 When Vsplit_window_preferred_function is non-nil, call it and use
15558 its non-nil return value as window. Otherwise, continue doing
15559 vertical splitting using Fsplit_window with arg horflag=nil.
15560 (syms_of_window) <Vsplit_window_preferred_function>: Change the
15561 default value from `split-window' to nil.
15562
15563 2008-03-29 Juri Linkov <juri@jurta.org>
15564
15565 * callint.c (Fcall_interactively): Revert 2008-03-16 change
15566 for interactive code letters 'b' and 'B'.
15567
15568 2008-03-29 Eli Zaretskii <eliz@gnu.org>
15569
15570 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
15571 multibyte string.
15572
15573 2008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
15574
15575 * keyboard.c (pending_funcalls): New var.
15576 (timer_check): Run it.
15577 (syms_of_keyboard): Initialize it.
15578 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
15579 (Vdelete_terminal_functions): New vars.
15580 (syms_of_terminal): Initialize them.
15581 (Fdelete_terminal): Run delete-terminal-functions.
15582 * xdisp.c (safe_eval): Rewrite.
15583 (safe_call2): New fun.
15584 * frame.c (Qdelete_frame_functions): New var.
15585 (syms_of_frame): Initialize it.
15586 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
15587 * lisp.h (safe_call2, pending_funcalls): Declare.
15588
15589 2008-03-28 Andreas Schwab <schwab@suse.de>
15590
15591 * indent.c (Fmove_to_column): Move declaration before statements.
15592
15593 2008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
15594
15595 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
15596 (struct frame): Use bit fields for boolean vars.
15597
15598 * process.c (server_accept_connection): Simplify naming.
15599 (emacs_get_tty_pgrp): Use SDATA.
15600
15601 * coding.c (decode_coding_object): Fix last change.
15602
15603 2008-03-27 Jason Rumney <jasonr@gnu.org>
15604
15605 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
15606
15607 2008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
15608
15609 * charset.c (Fdefine_charset_internal): Change the way of
15610 registering charsets in Vcharset_order_list.
15611 (syms_of_charset): Make the charset `eight-bit' supplementary.
15612
15613 2008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
15614
15615 * regex.c (EXTEND_BUFFER): Change order of pointer addition
15616 operations, to avoid having the difference between pointers
15617 overflow.
15618
15619 2008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
15620
15621 * indent.c (check_display_width): New fun.
15622 (scan_for_column): Use it.
15623
15624 * data.c (syms_of_data): Mark most-positive-fixnum and
15625 most-negative-fixnum as constants.
15626
15627 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
15628
15629 * indent.c (scan_for_column): Extract from current_column_1.
15630 Merge with the same code from Fmove_to_column.
15631 (current_column_1, Fmove_to_column): Use it.
15632
15633 2008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
15634
15635 * keymap.c (map_keymap_internal): New fun.
15636 (map_keymap): Use it.
15637 (Fmap_keymap_internal): New fun.
15638 (Fmap_keymap): Remove left-out test from before make_save_value.
15639
15640 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
15641
15642 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
15643 Use XCAR/XCDR.
15644
15645 * process.h (struct Lisp_Process): Remove filter_multibyte.
15646 * process.c (QCfilter_multibyte): Remove.
15647 (setup_process_coding_systems): Don't use filter_multibyte.
15648 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
15649 (read_process_output): Don't adjust multibyteness to filter_multibyte.
15650 (Fset_process_filter_multibyte): Change the coding-system to
15651 approximate the previous behavior.
15652 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
15653 coding-system.
15654
15655 * coding.c (decode_coding_object): When not decoding into a buffer,
15656 obey the coding system's preference of (uni|multi)byte.
15657
15658 2008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
15659
15660 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
15661 every char is changed and has a different byte-length.
15662 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
15663 Fix int -> EMACS_INT.
15664
15665 2008-03-23 David Hansen <david.hansen@gmx.net>
15666
15667 * dbusbind.c (xd_read_message): Remove extra copying of message
15668 strings. Check for NULL `interface' or `member'.
15669
15670 2008-03-22 Eli Zaretskii <eliz@gnu.org>
15671
15672 * w32.c (readdir): If FindFirstFile/FindNextFile return in
15673 cFileName a file name that includes `?' characters, use the 8+3
15674 alias in cAlternateFileName instead.
15675
15676 2008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
15677
15678 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
15679
15680 2008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
15681
15682 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
15683 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
15684 work on current_buffer only instead (that was already the case
15685 for some of the code anyway).
15686 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
15687 (temp_set_point, temp_set_point_both): Use EMACS_INT.
15688 (SET_PT, SET_PT_BOTH): Adjust.
15689 * intervals.h (set_point, temp_set_point, set_point_both)
15690 (temp_set_point_both): Remove redundant declarations.
15691
15692 2008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
15693
15694 * fileio.c (Finsert_file_contents):
15695 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
15696 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
15697 when buffer != current_buffer anyway.
15698
15699 2008-03-20 Andreas Schwab <schwab@suse.de>
15700
15701 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
15702 as default.
15703
15704 2008-03-19 Jason Rumney <jasonr@gnu.org>
15705
15706 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
15707 (syms_of_w32fns): Initialize them.
15708 (HOURGLASS_ID): New constant.
15709 (x_window_to_frame): Don't check hourglass_window.
15710 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
15711 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
15712 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
15713 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
15714 Only change the cursor if hourglass is not active.
15715 (Fx_create_frame): Initialize frame's current_cursor.
15716 (hourglass_atimer): Remove.
15717 (hourglass_started): New function.
15718 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
15719 (show_hourglass): Adapt to w32, changing argument to frame.
15720
15721 * w32term.h (struct w32_output): Remove hourglass_window.
15722 Add current_cursor.
15723
15724 * eval.c (call_debugger, Fsignal):
15725 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
15726 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
15727 (Fexecute_extended_command, cancel_hourglass_unwind):
15728 * minibuf.c (read_minibuf):
15729 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
15730
15731 2008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
15732
15733 * window.c (run_funs): New fun.
15734 (run_window_configuration_change_hook): Use it to run the buffer-local
15735 and the global part of the hook.
15736
15737 * xdisp.c (format_mode_line_unwind_data): Add window argument.
15738 (unwind_format_mode_line): Restore selected window.
15739 (x_consider_frame_title, Fformat_mode_line): Set selected window.
15740
15741 2008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
15742
15743 * editfns.c (Fchar_equal): Check they are valid characters.
15744
15745 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
15746
15747 2008-03-17 Andreas Schwab <schwab@suse.de>
15748
15749 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
15750 against a charset.
15751
15752 * lisp.h (Fbuffer_list): Declare.
15753
15754 2008-03-17 Jan Djärv <jan.h.d@swipnet.se>
15755
15756 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
15757 handlebox_widget is != 0.
15758
15759 2008-03-16 Juri Linkov <juri@jurta.org>
15760
15761 * callint.c (Fcall_interactively): For interactive code letters
15762 'b' and 'B' put the buffer list into the list of default "future"
15763 values of the minibuffer.
15764
15765 2008-03-16 Andreas Schwab <schwab@suse.de>
15766
15767 * keyboard.c (read_key_sequence): Fix downcasing of letters with
15768 modifiers.
15769
15770 * regex.c (re_match_2_internal): Correct matching of a charset
15771 against latin-1 characters.
15772
15773 2008-03-16 Kenichi Handa <handa@m17n.org>
15774
15775 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
15776 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
15777 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
15778 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
15779 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
15780 CHAR_STRING_ADVANCE.
15781 (produce_chars): Fix for the case that the source and the
15782 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
15783 instead of CHAR_STRING_ADVANCE.
15784 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
15785 STRING_CHAR_ADVANCE.
15786
15787 2008-03-15 Andreas Schwab <schwab@suse.de>
15788
15789 * regex.c (re_match_2_internal): Correct matching of eight bit
15790 characters in unibyte strings.
15791
15792 2008-03-15 Martin Rudalics <rudalics@gmx.at>
15793
15794 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
15795 at end of range when it coincides with the end of the buffer.
15796
15797 2008-03-14 Eli Zaretskii <eliz@gnu.org>
15798
15799 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
15800
15801 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
15802
15803 2008-03-14 Jason Rumney <jasonr@gnu.org>
15804
15805 * editfns.c (initial_tz): New variable.
15806 (syms_of_editfns): Initialize it.
15807 (Fset_time_zone_rule): Set it when first called.
15808 Use it when TZSTRING is nil.
15809
15810 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
15811 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
15812 (monitor_from_point_fn, get_monitor_info_fn): New globals.
15813 (globals_of_w32fns): Initialize them.
15814 (compute_tip_xy): Use them to position tooltips.
15815
15816 2008-03-14 Glenn Morris <rgm@gnu.org>
15817
15818 * emacs.c (main): Revert previous change.
15819 (standard_args): Revert -internal-script back to -scriptload,
15820 and remove the long-option form.
15821
15822 2008-03-13 Glenn Morris <rgm@gnu.org>
15823
15824 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
15825 Remove option -enable-font-backend.
15826
15827 2008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
15828
15829 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
15830
15831 2008-03-11 Jan Djärv <jan.h.d@swipnet.se>
15832
15833 * xterm.c (x_connection_closed): For GTK: If this is the last
15834 terminal just exit without closing the display.
15835
15836 2008-03-11 Jason Rumney <jasonr@gnu.org>
15837
15838 * w32font.c (w32font_full_name): Use floor to round.
15839
15840 2008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
15841
15842 * sound.c (alsa_configure): Declare vol at beginning of block.
15843
15844 * fontset.c (Ffontset_info): Remove extra semicolon.
15845
15846 2008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
15847
15848 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
15849 size of resulting string.
15850
15851 2008-03-10 Jason Rumney <jasonr@gnu.org>
15852
15853 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
15854
15855 2008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15856
15857 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
15858 Don't pretend as if characters with display property haven't been
15859 consumed for string-replacing-string case.
15860
15861 2008-03-08 Kim F. Storm <storm@cua.dk>
15862
15863 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
15864 (get_next_display_element, next_element_from_string)
15865 (next_element_from_ellipsis, next_element_from_buffer): Use it.
15866
15867 2008-03-08 Andreas Schwab <schwab@suse.de>
15868
15869 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
15870
15871 2008-03-06 Jason Rumney <jasonr@gnu.org>
15872
15873 * w32font.c (w32_registry): Take font_type argument. Use ANSI
15874 when charset not specified. Only translate ANSI to unicode when
15875 font_type is truetype.
15876 (w32font_coverage_ok): New function.
15877 (add_font_entity_to_list): Use it to filter unsuitable fonts.
15878
15879 2008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
15880
15881 * lread.c (Fread_char): Resolve modifiers.
15882 (Fread_char_exclusive): Likewise.
15883
15884 * character.c (char_resolve_modifier_mask): New function.
15885 (char_string): Use char_resolve_modifier_mask.
15886 (Fchar_resolve_modifiers): New function.
15887 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
15888 function.
15889
15890 2008-03-04 Jason Rumney <jasonr@gnu.org>
15891
15892 * makefile.w32-in: Always include w32font.c in the build.
15893 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
15894
15895 2008-03-04 Andreas Schwab <schwab@suse.de>
15896
15897 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
15898 (versionclean): Likewise.
15899
15900 2008-03-04 Juanma Barranquero <lekktu@gmail.com>
15901
15902 * .cvsignore: Add oo.
15903
15904 2008-03-03 Andreas Schwab <schwab@suse.de>
15905
15906 * coding.c (decode_coding_object): Inhibit gap shrinking while
15907 decoding in place.
15908
15909 2008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
15910
15911 * w32term.c: Remove unused include "gnu.h".
15912 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
15913
15914 * gnu.h: Rename to ...
15915 * emacs-icon.h: ... this.
15916 * xterm.c: Use emacs-icon.h instead of gnu.h.
15917 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
15918
15919 2008-03-03 Juanma Barranquero <lekktu@gmail.com>
15920
15921 * w32font.c: Include math.h.
15922
15923 2008-03-03 Jason Rumney <jasonr@gnu.org>
15924
15925 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
15926 Compute options separately.
15927 (w32font_open_internal): Set glyph_idx before caching metrics.
15928
15929 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
15930 Define if system headers don't.
15931 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
15932 (w32font_encode_char): Don't declare here.
15933
15934 * w32font.c (Quniscribe, QCformat): New symbols.
15935 (syms_of_w32font): Define them.
15936 (w32font_has_char): Indicate uncertainty.
15937 (w32font_encode_char): Encode as glyph point. Make static.
15938 (recompute_cached_metrics): New function.
15939 (w32font_open_internal): Use it. Set font to use glyph points
15940 initially. Set format based on type of font.
15941 (w32font_text_extents, w32font_draw): Optionally use glyph points.
15942 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
15943 on it. Set format based on information available here.
15944 (add_font_entity_to_list): Identify backend based on opentype_only.
15945
15946 2008-03-02 Andreas Schwab <schwab@suse.de>
15947
15948 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
15949
15950 * coding.c (decode_coding_big5, produce_chars):
15951 Fix typos in last change.
15952
15953 2008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
15954
15955 * gnu.h: New icon.
15956
15957 2008-03-02 Kenichi Handa <handa@m17n.org>
15958
15959 * coding.c (decode_coding_utf_8): When eol-type of CODING is
15960 `dos', don't decode '\r' if that is the last in the source.
15961 (decode_coding_utf_16, decode_coding_emacs_mule)
15962 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
15963 (decode_coding_raw_text, decode_coding_charset): Likewise.
15964 (produce_chars): Don't decode EOL here. Use EMACS_INT.
15965
15966 2008-03-01 Jason Rumney <jasonr@gnu.org>
15967
15968 * w32font.c (w32font_full_name): Report point size for scalable fonts.
15969
15970 2008-03-01 Kim F. Storm <storm@cua.dk>
15971
15972 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
15973
15974 2008-03-01 Jason Rumney <jasonr@gnu.org>
15975
15976 * w32font.c (w32font_full_name): New function.
15977 (w32font_open_internal): Use it.
15978
15979 2008-03-01 Kim F. Storm <storm@cua.dk>
15980
15981 * dispnew.c (line_draw_cost): Fix invalid glyph check.
15982
15983 2008-03-01 Jason Rumney <jasonr@gnu.org>
15984
15985 * font.c (font_unparse_fcname): Increase len when style is a symbol.
15986
15987 2008-03-01 Jan Djärv <jan.h.d@swipnet.se>
15988
15989 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
15990 xg_frame_resized when the event is for the edit widget.
15991
15992 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
15993
15994 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
15995 set_char_size.
15996 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
15997 operations on widgets here. Just set frame size if needed.
15998 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
15999 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
16000 (x_wm_set_size_hint): Set size hints on the edit widget only, not
16001 the whole frame.
16002 (xg_create_tool_bar): Move attachment of the tool bar to
16003 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
16004 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
16005
16006 2008-03-01 Jason Rumney <jasonr@gnu.org>
16007
16008 * w32fns.c (w32_msg_pump): Disable debug code.
16009
16010 2008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16011
16012 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
16013
16014 2008-02-29 Chong Yidong <cyd@stupidchicken.com>
16015
16016 * xdisp.c (next_overlay_string): Don't set
16017 overlay_strings_at_end_processed_p if we're currently reading from
16018 a display string.
16019
16020 2008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
16021
16022 * xdisp.c (get_overlay_strings_1): Fix typo.
16023
16024 2008-02-29 Chong Yidong <cyd@stupidchicken.com>
16025
16026 * xdisp.c (get_overlay_strings_1): Add missing argument type.
16027
16028 2008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
16029
16030 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
16031
16032 * xdisp.c (display_mode_element): Cancel the previous change.
16033 (decode_mode_spec): Likewise.
16034 (handle_auto_composed_prop): Don't make composition if it->string
16035 is a string.
16036
16037 2008-02-27 Kim F. Storm <storm@cua.dk>
16038
16039 * lisp.h (GLYPH): Change type from int to struct with separate char
16040 and face_id members.
16041 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
16042 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
16043 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
16044 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
16045 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
16046 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
16047 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
16048 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
16049 handle new Lisp glyph code encoding, either an integer or a cons.
16050
16051 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
16052 (GLYPH_ALIAS): Delete.
16053 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
16054 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
16055 (GLYPH_FROM_CHAR): Replace macro by ...
16056 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
16057
16058 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
16059 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
16060 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
16061 (GLYPH_INVALID_P): New macro.
16062 (spec_glyph_lookup_face): Update prototype.
16063
16064 * dispnew.c (line_draw_cost): Adapt to new glyph type.
16065 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
16066 new glyph code encoding.
16067 (spec_glyph_lookup_face): No return value; update passed glyph instead.
16068 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
16069
16070 * xdisp.c (get_next_display_element, next_element_from_display_vector):
16071 Adapt to new glyph type and new glyph code encoding.
16072
16073 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
16074
16075 * indent.c (current_column, current_column_1, Fmove_to_column)
16076 (compute_motion): Adapt to new glyph code encoding.
16077
16078 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
16079
16080 2008-02-27 Chong Yidong <cyd@stupidchicken.com>
16081
16082 * process.c (wait_reading_process_output): Check for window
16083 changes caused by timers.
16084 Suggested by Johan Bockgård.
16085
16086 2008-02-27 Glenn Morris <rgm@gnu.org>
16087
16088 * emacs.c (USAGE1): Add `--disable-font-backend'.
16089
16090 2008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
16091
16092 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
16093 is made to the buffer.
16094
16095 2008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
16096
16097 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
16098 (face_at_string_position):
16099 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
16100 (face_at_string_position):
16101 * xdisp.c (display_string, next_overlay_change):
16102 * buffer.h (overlays_at):
16103 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
16104 Update callers.
16105
16106 2008-02-26 Chong Yidong <cyd@stupidchicken.com>
16107
16108 * editfns.c (Fformat): Doc fix.
16109
16110 2008-02-26 Juanma Barranquero <lekktu@gmail.com>
16111
16112 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
16113 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
16114 (Ffont_otf_alternates, Fquery_font): Doc fixes.
16115
16116 2008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
16117
16118 * buffer.c (Fbuffer_swap_text): New function.
16119 (syms_of_buffer): Defsubr it.
16120
16121 2008-02-25 Chong Yidong <cyd@stupidchicken.com>
16122
16123 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
16124
16125 2008-02-25 Jason Rumney <jasonr@gnu.org>
16126
16127 * w32font.c (w32font_draw): Draw one character at a time when padding.
16128
16129 2008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
16130
16131 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
16132 Handle a nil arg. Use run_window_configuration_change_hook.
16133 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
16134 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
16135 Use run_window_configuration_change_hook.
16136
16137 2008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
16138
16139 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
16140 1-pixel width.
16141
16142 2008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
16143
16144 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
16145 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
16146 if the glyph in the font is zero pixel with.
16147
16148 * dispextern.h (struct glyph_string): New member padding_p.
16149
16150 * w32font.c (w32font_draw): Pay attention to s->padding_p.
16151
16152 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
16153
16154 * xfont.c (xfont_draw): Pay attention to s->padding_p.
16155
16156 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
16157
16158 * font.c: If the font driver doesn't have `shape' function, return Qnil.
16159
16160 2008-02-25 Jason Rumney <jasonr@gnu.org>
16161
16162 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
16163
16164 2008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
16165
16166 Allow fine-grained image-cache flushing.
16167 * dispextern.h (struct image): Add `dependencies' field.
16168 (clear_image_caches): Change arg to Lisp_Object.
16169 * image.c (make_image): Initialize `dependencies' field.
16170 (clear_image_cache): Change arg to allow fine-grained flushing.
16171 Perform the flush even if image-cache-eviction-delay is nil.
16172 (clear_image_caches): Change arg to Lisp_Object.
16173 (Fclear_image_cache): Expand meaning of the argument.
16174 (mark_image): Mark `dependencies' field.
16175 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
16176 (lface_hash): Use XHASH rather than XFASTINT.
16177 (face_at_buffer_position): Fix int -> EMACS_INT position.
16178 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
16179 (select_frame_for_redisplay): Remove code duplication.
16180 (redisplay_internal): Adapt arg to call to clear_image_caches.
16181
16182 2008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
16183
16184 * s/vms4-0.h:
16185 * s/vms4-2.h:
16186 * s/vms4-4.h:
16187 * s/vms5-5.h: Remove, unused.
16188
16189 * s/irix5-2.h:
16190 * s/irix6-0.h:
16191 * s/riscos5.h:
16192 * s/mach-bsd4-3.h:
16193 * m/mips4.h: Remove files for obsolete systems.
16194
16195 * Makefile.in:
16196 * filelock.c:
16197 * unexmips.c:
16198 * m/hp9000s300.h:
16199 * m/iris4d.h:
16200 * s/aix3-1.h:
16201 * s/hpux.h:
16202 * s/msdos.h:
16203 * s/usg5-0.h:
16204 * s/usg5-2-2.h:
16205 * s/usg5-2.h:
16206 * s/usg5-3.h: Remove references to obsolete variables.
16207
16208 * s/irix5-0.h: Remove, move all the contents ...
16209 * s/irix6-5.h: ... here. Simplify.
16210 * config.in: Regenerate.
16211
16212 2008-02-24 Jason Rumney <jasonr@gnu.org>
16213
16214 * w32term.c (x_draw_glyph_string_background): Clear the background
16215 manually when cleartype is in use.
16216 (x_draw_glyph_string_foreground): Draw text transparently when
16217 cleartype is in use.
16218
16219 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
16220 a font into it unless we have to.
16221
16222 2008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
16223
16224 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
16225 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
16226
16227 2008-02-18 Jason Rumney <jasonr@gnu.org>
16228
16229 * w32fns.c (Fw32_shell_execute): Encode parameters.
16230
16231 2008-02-09 Eli Zaretskii <eliz@gnu.org>
16232
16233 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
16234
16235 2008-02-05 Juanma Barranquero <lekktu@gmail.com>
16236
16237 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
16238
16239 2008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
16240
16241 * xterm.c (x_set_offset): Don't change the gravity if
16242 CHANGE_GRAVITY is -1.
16243
16244 2008-02-23 Chong Yidong <cyd@stupidchicken.com>
16245
16246 * fileio.c (auto_save_error_occurred): New var.
16247 (auto_save_error): Set it.
16248 (Fdo_auto_save): Don't overwrite the error message if an auto-save
16249 error occurred.
16250
16251 2008-02-23 Eli Zaretskii <eliz@gnu.org>
16252
16253 * w32.c (globals_of_w32): Add initializations for
16254 g_b_init_get_sid_sub_authority and
16255 g_b_init_get_sid_sub_authority_count.
16256
16257 2008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
16258
16259 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
16260 (font_parse_xlfd): Use them for sanity check.
16261 (Finternal_set_font_style_table): Make sure the table is bijective.
16262
16263 Consolidate the image_cache to the terminal struct.
16264 * termhooks.h (P_): Remove redundant def.
16265 (struct terminal): New field `image_cache'.
16266 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
16267 of FRAME_X_IMAGE_CACHE.
16268 * xterm.h (struct x_display_info): Remove image_cache field.
16269 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
16270 * w32term.h (struct w32_display_info): Remove image_cache field.
16271 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
16272 * macterm.h (struct mac_display_info): Remove image_cache field.
16273 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
16274 * xterm.c (x_term_init):
16275 * w32term.c (w32_term_init):
16276 * macterm.c (mac_term_init): Set the image_cache in the terminal.
16277 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
16278 Remove declarations.
16279 (clear_image_caches, mark_image_cache): New declarations.
16280 * xfaces.c (clear_face_cache):
16281 * xdisp.c (redisplay_internal): Use clear_image_caches.
16282 * image.c (clear_image_cache): Don't check that a frame is on
16283 a window-system before checking if it shares the same cache.
16284 (clear_image_caches): New function.
16285 (Fclear_image_cache): Use it.
16286 (mark_image): Move from allo.c.
16287 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
16288 * alloc.c (mark_image, mark_image_cache): Move to image.c.
16289 (mark_object): Don't call mark_image_cache for frames.
16290 (mark_terminals): Call mark_image_cache.
16291
16292 * lisp.h (Fdelete_terminal): Declare.
16293
16294 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
16295 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
16296 wrong_type_argument.
16297
16298 2008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
16299
16300 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
16301 malayalam.el, and tamil.el. Add sinhala.el.
16302
16303 2008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
16304
16305 * xterm.c (x_connection_closed): Consolidate identical tests.
16306 (x_delete_terminal): Don't crash if called via x_connection_closed.
16307
16308 2008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
16309
16310 * xdisp.c (decode_mode_spec): New arg string.
16311 (display_mode_element): Adjust for the above change.
16312
16313 2008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
16314
16315 * callint.c (Fcall_interactively): Use AREF.
16316
16317 2008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
16318
16319 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
16320
16321 2008-02-18 Jan Djärv <jan.h.d@swipnet.se>
16322
16323 * xfns.c (Fx_show_tip): Set string to " " if empty.
16324
16325 2008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
16326
16327 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
16328 with Qt.
16329
16330 2008-02-17 Kenichi Handa <handa@m17n.org>
16331
16332 * ftfont.c (ftfont_shape): Return Lispy number.
16333
16334 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
16335 for GCs.
16336 (Finternal_set_font_selection_order): Call font_update_sort_order
16337 only when enable_font_backend is set.
16338 (realize_x_face): Set face->font_info to that of default face only
16339 when enable_font_backend is set.
16340
16341 * xdisp.c (handle_composition_prop): Set it->c to the fist
16342 character of the composed region.
16343 (fill_composite_glyph_string): Set base_face->font_info to
16344 s->font_info. Get a face for ascii from base_face->ascii_face.
16345 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
16346 with a face already decided.
16347 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
16348 non-negative.
16349 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
16350 call font_prepare_composition unconditionally.
16351
16352 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
16353
16354 * xterm.h (struct x_display_info): New member font.
16355
16356 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
16357 (x_set_mouse_face_gc, x_new_font): Likewise.
16358 (x_term_init): Setup display_info->font.
16359 (x_delete_terminal): Free display_info->font.
16360
16361 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
16362
16363 * ftxfont.c (ftxfont_default_fid): Delete it.
16364 (ftxfont_open): Set xfont->fid to 0.
16365 (ftxfont_end_for_frame): Clear data specific to the frame and the
16366 font-driver.
16367
16368 * xftfont.c (xftfont_default_fid): Delete it.
16369 (xftfont_open): Set xfont->fid to 0.
16370
16371 * fontset.c (FONTSET_OBJLIST): New macro.
16372 (fontset_find_font): Update font-object list of the fontset.
16373 (free_realized_fontset): New function.
16374 (free_face_fontset): Call free_realized_fontset.
16375 (Ffont_info): Call font_close_object only when enable_font_backend
16376 is set.
16377
16378 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
16379 [HAVE_NTGUI]: Include w32term.h.
16380 [MAC_OS]: Include macterm.ch.
16381 (font_otf_ValueRecord): Use make_number.
16382 (font_finish_cache): Fix handling of reference count.
16383 (font_clear_cache): Update num_fonts.
16384 (font_open_entity): Update smallest_char_width and
16385 smallest_font_height of the frame.
16386 (font_close_object): Update num_fonts.
16387 (Fclear_font_cache): Fix finding the target cache data.
16388
16389 2008-02-16 Glenn Morris <rgm@gnu.org>
16390
16391 * fontset.c (Finternal_char_font): Fix compilation warning.
16392
16393 2008-02-16 Eli Zaretskii <eliz@gnu.org>
16394
16395 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
16396 instead of char arrays. Enlarge the size of array passed to
16397 get_token_information.
16398
16399 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
16400 warnings.
16401
16402 2008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
16403
16404 * .gdbinit: Don't set `args', it breaks gdb --args.
16405
16406 2008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
16407
16408 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
16409 within a narrowed buffer.
16410
16411 2008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
16412
16413 * coding.c (decode_coding_object, encode_coding_object):
16414 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
16415
16416 2008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
16417
16418 * coding.c (coding_set_destination): Use BEG_BYTE rather than
16419 hardcoding 1.
16420 (detect_coding_system):
16421 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
16422 (string_char_to_byte, string_byte_to_char, insert_from_gap):
16423 * insdel.c (insert_from_gap):
16424 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
16425 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
16426 (string_to_multibyte):
16427 * character.c (chars_in_text, multibyte_chars_in_text):
16428 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
16429
16430 * character.h (FETCH_STRING_CHAR_ADVANCE)
16431 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
16432 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
16433 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
16434
16435 * casefiddle.c (casify_region): Only call after-change and composition
16436 functions on the part of the region that was changed.
16437
16438 * keyboard.c (read_avail_input):
16439 * frame.c (Fdelete_frame): Call Fdelete_terminal.
16440
16441 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
16442
16443 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
16444 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
16445
16446 2008-02-11 Juanma Barranquero <lekktu@gmail.com>
16447
16448 * w32menu.c (push_submenu_start, push_submenu_end)
16449 (push_left_right_boundary, push_menu_pane, push_menu_item):
16450 * keyboard.c (read_key_sequence): Don't pass args with side effects
16451 to AREF, it fails when compiling with -DENABLE_CHECKING.
16452
16453 2008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
16454
16455 * Makefile.in (${lispsource}international/charprop.el):
16456 Delete this target.
16457
16458 * search.c (boyer_moore): Fix incorrect synching of the trunk and
16459 emacs-unicode-2.
16460
16461 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
16462
16463 * terminal.c (Fdelete_terminal): Clean up the `force' path.
16464
16465 2008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
16466
16467 * frame.c (Qnoelisp): New symbol.
16468 (syms_of_frame): Initialize it.
16469 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
16470 harmless Elisp code, from a strong `force' from x_connection_closed.
16471 * frame.h (Qnoelisp): Declare.
16472 * xterm.c (x_connection_closed): Pass `noelisp'.
16473
16474 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
16475 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
16476 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
16477 rather than `int' for the type of `type'.
16478
16479 2008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
16480
16481 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
16482
16483 * Makefile.in (GNUC): Remove support for gcc-1.x.
16484
16485 2008-02-10 Richard Stallman <rms@gnu.org>
16486
16487 * lisp.h (ASET): Use AREF, not ASLOT.
16488
16489 2008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
16490
16491 * lisp.h (ASET): Check bounds.
16492
16493 2008-02-10 Glenn Morris <rgm@gnu.org>
16494
16495 * buffer.c (mode-name): Doc fix.
16496
16497 2008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
16498
16499 * Makefile.in:
16500 * emacs.c:
16501 * gmalloc.c:
16502 * keyboard.c:
16503 * lisp.h:
16504 * m/ibm370aix.h:
16505 * process.c:
16506 * regex.c:
16507 * s/hpux.h:
16508 * sysdep.c:
16509 * sysselect.h:
16510 * systty.h:
16511 * unexec.c:
16512 * w32term.c:
16513 * xsmfns.c:
16514 * xterm.c: Remove code that deals with obsolete variables.
16515
16516 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
16517
16518 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
16519 nothing else needs it anymore.
16520
16521 2008-02-09 Eli Zaretskii <eliz@gnu.org>
16522
16523 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
16524 instead of unibyte_char_to_multibyte.
16525
16526 2008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
16527
16528 * s/gnu-linux.h: Remove commented out code.
16529
16530 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
16531
16532 * Makefile.in: Update what RMS says about using autoconf.
16533 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
16534 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
16535 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
16536 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
16537
16538 2008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
16539
16540 * keymap.c (Fkey_description): Move side effect outside of macro call.
16541
16542 * xfaces.c (Finternal_make_lisp_face):
16543 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
16544
16545 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
16546 (syms_of_fontset): Use ASET.
16547
16548 * fns.c (concat): Move side effect outside of macro call.
16549 (hash_clear): Use ASET.
16550
16551 2008-02-08 Richard Stallman <rms@gnu.org>
16552
16553 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
16554 If FORCE, and frame has a surrogate minibuffer for another frame,
16555 delete the other frame first.
16556
16557 2008-02-07 Timo Savola <timo.savola@iki.fi>
16558
16559 * xterm.c (x_detect_focus_change): Handle embed client message.
16560 (handle_one_xevent): Ditto.
16561 (handle_one_xevent): If embedded and we get a button press/release,
16562 request focus.
16563 (xembed_set_info, xembed_send_message): New functions.
16564 (x_make_frame_visible): Call xembed_set_info if embedded.
16565 (x_make_frame_invisible): Call xembed_set_info if embedded.
16566 (x_term_init): Initialize Xatom_XEMBED.
16567 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
16568 (x_iconify_frame): Ditto.
16569
16570 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
16571 (enum xembed_info, enum xembed_message, enum xembed_focus)
16572 (enum xembed_modifier, enum xembed_accelerator): New.
16573 (xembed_set_info, xembed_send_message): Declare.
16574 (FRAME_X_EMBEDDED_P): New.
16575
16576 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
16577 gtk_plug_new.
16578
16579 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
16580 window ID of a frame.
16581 (x_window): Reparent frame if embedded.
16582 (Fx_create_frame): Don't set border width if embedded.
16583
16584 * emacs.c (USAGE3): Add --parent-id.
16585 (standard_args): Ditto.
16586
16587 2008-02-07 Jan Djärv <jan.h.d@swipnet.se>
16588
16589 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
16590
16591 2008-02-07 Jim Meyering <meyering@redhat.com>
16592
16593 Use "do...while (0)", not "if (1)...else" in macro definitions.
16594 The latter provokes a warning from gcc about the empty else, when
16595 followed by ";". Also, without that trailing semicolon, it would
16596 silently swallow up any following statement.
16597 * syntax.h (SETUP_SYNTAX_TABLE)
16598 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
16599 * buffer.h (DECODE_POSITION): Likewise.
16600 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
16601 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
16602 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
16603 (FETCH_CHAR_ADVANCE): Likewise.
16604 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
16605
16606 2008-02-07 Jim Meyering <meyering@redhat.com>
16607
16608 * lread.c [lint]: Don't include <sys/inode.h>.
16609
16610 2008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
16611
16612 * xselect.c (x_handle_dnd_message):
16613 * xmenu.c (digest_single_submenu, xmenu_show):
16614 * xdisp.c (with_echo_area_buffer_unwind_data)
16615 (format_mode_line_unwind_data, unwind_format_mode_line)
16616 (display_menu_bar):
16617 * eval.c (Ffetch_bytecode):
16618 * doc.c (store_function_docstring):
16619 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
16620 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
16621 * buffer.c (add_overlay_mod_hooklist): Use ASET.
16622
16623 2008-02-07 Kenichi Handa <handa@m17n.org>
16624
16625 * ftxfont.c (ftxfont_open): Don't set
16626 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
16627
16628 * ftfont.c (ftfont_open): Fix previous change.
16629
16630 2008-02-06 Jason Rumney <jasonr@gnu.org>
16631
16632 * w32font.c (w32font_text_extents): Fill in lbearing metric.
16633 Use cached metrics for ASCII characters.
16634 (w32font_open_internal): Don't set font's owning_frame.
16635 Cache metrics for ASCII characters.
16636
16637 * w32font.h (struct w32font_info): Add ascii_metrics.
16638 Remove owning_frame.
16639
16640 2008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
16641
16642 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
16643 to negative value.
16644
16645 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
16646
16647 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
16648
16649 * charset.c (syms_of_charset): Set QCtest and Qeq.
16650
16651 2008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
16652
16653 * process.c (Fstart_process):
16654 * callproc.c (Fcall_process): Handle the case where
16655 Funhandled_file_name_directory returns nil.
16656
16657 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
16658 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
16659 * font.c (check_gstring): Use them and AREF to access the vector before
16660 we know it's really a gstring.
16661 (Ffont_shape_text): Fix typo.
16662 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
16663
16664 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
16665 Declare.
16666
16667 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
16668
16669 2008-02-05 Jason Rumney <jasonr@gnu.org>
16670
16671 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
16672 Set smallest_font_height and smallest_char_width in display info.
16673
16674 2008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
16675
16676 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
16677
16678 2008-02-05 Miles Bader <miles@gnu.org>
16679
16680 * xfaces.c (get_lface_attributes, merge_named_face)
16681 (lookup_named_face, lookup_derived_face, realize_named_face):
16682 Revert 2008-02-01 change by cyd@stupidchicken.com.
16683
16684 2008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
16685
16686 * fontset.c (Ffontset_info): Handle the case of inhibitting the
16687 fallback fonts.
16688 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
16689
16690 2008-02-04 Jason Rumney <jasonr@gnu.org>
16691
16692 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
16693 set full_name.
16694 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
16695
16696 2008-02-03 Jason Rumney <jasonr@gnu.org>
16697
16698 * makefile.w32-in (OBJ1): Include font.o here.
16699 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
16700
16701 2008-02-02 Jason Rumney <jasonr@gnu.org>
16702
16703 * makefile.w32-in (temacs): Bump EMHEAP to 21.
16704
16705 2008-02-01 Jason Rumney <jasonr@gnu.org>
16706
16707 * s/cygwin.h: Define VIRT_ADDR_VARIES.
16708
16709 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
16710
16711 2008-02-01 Andreas Schwab <schwab@suse.de>
16712
16713 * Makefile.in (shortlisp, lisp): Update for rename of
16714 ../lisp/language/myanmar.el.
16715
16716 2008-02-01 Chong Yidong <cyd@stupidchicken.com>
16717
16718 * xfaces.c (get_lface_attributes): Delete function.
16719 (merge_named_face, lookup_named_face, lookup_derived_face)
16720 (realize_named_face): Call lface_from_face_name directly, and use
16721 the fact that merge_face_vectors does not alter its FROM argument.
16722
16723 2008-02-01 Jason Rumney <jasonr@gnu.org>
16724
16725 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
16726 input in the default locale. Handle non-Unicode multibyte input.
16727
16728 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16729
16730 * fontset.c (reorder_font_vector): Exclude nil elements from the
16731 font group. Don't try multiple fonts.
16732 (fontset_font): Adjust for the above change.
16733 (Finternal_char_font): Return nil if the found font doesn't
16734 contain the character ch.
16735
16736 * Makefile.in (lisp, shortlisp): Add cham.el.
16737
16738 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16739
16740 * font.h (FONTP): Make it return 1 also for a font-object.
16741
16742 * .gdbinit (xfontset): New function.
16743
16744 * font.c (font_find_for_lface): Check if the character C is
16745 supported or not only for the first font.
16746
16747 * fontset.c (reorder_font_vector): Fix typo.
16748 (fontset_find_font): Don't add a font-spec specifying a script.
16749 Use 0 (not Qt) for the indication of empty font-group. Change the
16750 format of RFONT-DEF. Return Qt if no font in the font-group
16751 support the character.
16752 (fontset_font): Adjust for the above change. If no font was
16753 found the character, remember that.
16754 (face_for_char): Adjust for the change of RFONT-DEF.
16755 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
16756 no font for the target.
16757 (Finternal_char_font): Adjust for the change of RFONT-DEF.
16758
16759 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16760
16761 * font.c (font_load_for_face): Handle the case that the font in
16762 face->lface is a string.
16763
16764 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16765
16766 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
16767
16768 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16769
16770 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
16771 Fix previous change. If the frame is not on a window system,
16772 signal an error.
16773
16774 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16775
16776 * coding.c (decode_coding_object, encode_coding_object): Adjust
16777 marker positions after conversion.
16778
16779 * lisp.h (struct Lisp_Marker): New member need_adjustment.
16780
16781 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16782
16783 * font.c (font_find_for_lface): Fix the handling of the return
16784 value of font_has_char.
16785 (Ffont_shape_text): Fix previous change.
16786
16787 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
16788 (fontset_ref_and_range): Delete it.
16789 (fontset_find_font): Call char_table_ref_and_range instead of
16790 FONTSET_REF_AND_RANGE.
16791 (make_fontset): Don't setup font groups of Latin here.
16792 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
16793 (new_fontset_from_font): Make the specified font the default for
16794 all Latin characters.
16795
16796 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16797
16798 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
16799 is on a window system before accessing the fontset of the frame.
16800
16801 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16802
16803 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
16804
16805 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
16806 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
16807
16808 * font.c (Ffont_shape_text): If the font driver doesn't have a
16809 shaper function, make zero-width glyphs to have at least one-pixel
16810 width. Fix setting of `to' field of glyphs.
16811
16812 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16813
16814 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
16815 glyphs.
16816
16817 * font.h (struct font_driver): Improve docstring of member `shape'.
16818
16819 2008-02-01 Kenichi Handa <handa@m17n.org>
16820
16821 * composite.c (syms_of_composite): Fix docstring of
16822 auto-composition-function.
16823
16824 * font.h (LGLYPH_SIZE): New macro.
16825
16826 * font.c (Ffont_fill_gstring): Stop filling when a character not
16827 supported by the font is found.
16828 (Ffont_shape_text): When a shape callback function returns nil,
16829 try at most two more times with larger gstring.
16830 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
16831
16832 * xdisp.c (handle_auto_composed_prop): Change the argument to
16833 auto-composition-function.
16834
16835 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
16836 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
16837 Lispy glyph and store it in the lgstring.
16838
16839 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
16840
16841 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
16842
16843 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16844
16845 * font.c (Ffont_shape_text): Avoid unnecessary composition.
16846
16847 * fontset.c (Vfont_encoding_charset_alist): New variable.
16848 (syms_of_fontset): DEFVAR it.
16849 (reorder_font_vector, fontset_find_font): Optimize for the case of
16850 no need of reordering.
16851 (face_for_char): Map the charset property by
16852 Vfont_encoding_charset_alist.
16853
16854 2008-02-01 Jason Rumney <jasonr@gnu.org>
16855
16856 * w32font.c (logfonts_match): Don't check adstyle here.
16857 (font_matches_spec): Check here against physical font instead.
16858 (add_font_entity_to_list): Avoid some substitutions.
16859
16860 * font.c (font_parse_fcname): Default weight and slant to normal.
16861 (font_score): Prefer normal fonts if weight or slant unspecified.
16862 (font_score) [WINDOWSNT]: Scale weight difference down to closer
16863 match freetype scores.
16864
16865 2008-02-01 Jason Rumney <jasonr@gnu.org>
16866
16867 * w32font.c (w32font_text_extents): Don't use the frame stored in the
16868 font, as it may have been deleted.
16869 (w32_enumfont_pattern_entity): Map generic family to adstyle using
16870 most common hyphenless variation.
16871 (logfonts_match): Check generic family.
16872 (font_matches_spec): Don't check generic family here.
16873 (fill_in_logfont): Set generic family based on adstyle.
16874
16875 * w32font.h (w32font_get_cache): Update declaration.
16876
16877 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16878
16879 * ftfont.c (ftfont_get_cache): Adjust the argument type.
16880
16881 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
16882 If none of the new drivers are available, call font_update_drivers
16883 with the old drivers.
16884
16885 * w32font.c (w32font_get_cache): Adjust the argument type.
16886
16887 * xfont.c (xfont_get_cache): Adjust the argument type.
16888
16889 * font.h (struct font_driver): Change argument type of get_cache.
16890
16891 * xftfont.c (xftfont_start_for_frame): Delete prototype.
16892
16893 * font.c (Ffont_get): Fix arguments to Fassoc.
16894 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
16895 (font_clear_cache): New function.
16896 (font_list_entities, font_matching_entity): Use font_get_cache.
16897 (font_update_drivers): Call font_clear_cache when finishing a driver.
16898
16899 * fontset.c (fontset_find_font): Fix previous change.
16900
16901 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16902
16903 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
16904 dpyinfo->font_table.
16905 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
16906 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
16907
16908 * font.c (font_at): Handle the case that the arg C is negative.
16909 Handle the unibyte case.
16910 (Ffont_at): Call font_at with the arg C -1.
16911
16912 * xdisp.c (handle_auto_composed_prop): Don't get a character at
16913 the position here, and call font_at with the arg C -1.
16914 Don't check the range of the existing composition at the point.
16915
16916 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16917
16918 * fontset.c (fontset_add): New args charset_id and family.
16919 Change caller.
16920 (load_font_get_repertory, fontset_find_font): Assume that
16921 font_spec is always a font-spec object.
16922 (Fset_fontset_font): Always store a font-spec object in a fontset.
16923
16924 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
16925 instead of get_property_and_range.
16926
16927 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16928
16929 * xftfont.c (struct xftfont_info): Delete the member ft_face.
16930 (xftfont_open): Don't keep locking face.
16931 (xftfont_close): Don't unlock face.
16932 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
16933
16934 * fontset.c (fontset_find_font): Don't prefer a font of
16935 supplementary charset.
16936
16937 2008-02-01 Kenichi Handa <handa@m17n.org>
16938
16939 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
16940 script, langsys_tag to langsys, new member script.
16941 (OTF_TAG_STR): Terminate by '\0'.
16942 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
16943 listing to the script specified in that property. Fix arg to
16944 OTF_check_features.
16945
16946 2008-02-01 Jason Rumney <jasonr@gnu.org>
16947
16948 * w32font.h: New file.
16949
16950 * w32font.c: Include it.
16951 (struct w32font_info): Add owning_frame field. Move to w32font.h.
16952 (w32font_open): Set owning_frame.
16953 (w32font_text_extents): Use owning_frame.
16954 (struct font_callback_data): Add opentype_only field.
16955 (add_font_entity_to_list): Use it to filter fonts.
16956 Don't check against full name.
16957 (w32font_list_internal): New function.
16958 (w32font_list): Use it.
16959 (w32font_match_internal): New function.
16960 (w32font_match): Use it.
16961 (w32font_open_internal): New function.
16962 (w32font_open): Use it.
16963 (w32font_get_cache, w32font_close, w32font_has_char)
16964 (w32font_encode_char, w32font_text_extents, w32font_draw):
16965 Make non-static.
16966
16967 * makefile.w32-in (w32font.o): Depend on w32font.h.
16968
16969 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16970
16971 * charset.c (Fdefine_charset_internal): Record a supplementary
16972 charset at the tail of Vcharset_order_list.
16973
16974 * font.c (Ffont_shape_text): Fix the return value.
16975
16976 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
16977
16978 * xdisp.c (handle_auto_composed_prop): Fix previous change.
16979
16980 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16981
16982 * ftfont.c (struct OpenTypeSpec): New struct.
16983 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
16984 (ftfont_get_open_type_spec): New function.
16985 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
16986
16987 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
16988
16989 2008-02-01 Jason Rumney <jasonr@gnu.org>
16990
16991 * w32font.c (add_font_entity_to_list): Compare only the beginning
16992 of full name.
16993
16994 2008-02-01 Kenichi Handa <handa@m17n.org>
16995
16996 * xdisp.c (handle_auto_composed_prop): Simplify the code.
16997 Never return HANDLED_RECOMPUTE_PROPS.
16998
16999 2008-02-01 Kenichi Handa <handa@m17n.org>
17000
17001 * font.c (font_gstring_produce): Delete it.
17002
17003 * composite.h (COMPOSITION_METHOD):
17004 Handle COMPOSITION_WITH_GLYPH_STRING.
17005
17006 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17007
17008 * xfont.c (Qx): Delete.
17009 (syms_of_xfont): Don't initialize Qx.
17010
17011 * composite.h (enum composition_method):
17012 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
17013
17014 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17015
17016 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
17017 (choose_face_font): Accept new form of font-spec.
17018
17019 * frame.h (font_driver_list): Declare it unconditionally.
17020 (struct frame): Define members font_driver_list and font_data_list
17021 unconditionally.
17022
17023 * fontset.c: Include "font.h" unconditionally.
17024 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
17025 (Fset_fontset_font): Accept a font-spec object.
17026
17027 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
17028 PIXEL_SIZE part a wild card.
17029
17030 * dispextern.h (struct glyph_string): Define members clip and
17031 num_clips unconditionally.
17032 (struct face): Define members font_info and extra unconditionally.
17033
17034 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
17035 ftfont_info only when HAVE_LIBOTF is defined.
17036
17037 2008-02-01 Andreas Schwab <schwab@suse.de>
17038
17039 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
17040 and end.
17041
17042 2008-02-01 Jason Rumney <jasonr@gnu.org>
17043
17044 * w32font.c (w32font_driver): Add new fields.
17045
17046 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17047
17048 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
17049 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
17050 (LIBES): Add @M17N_FLT_CFLAGS@.
17051
17052 * composite.c (compose_text): Don't treat the new style
17053 composition specially.
17054
17055 * emacs.c (main): Call syms_of_font unconditionally.
17056
17057 * font.h (FONT_ENTITY_NOT_LOADABLE)
17058 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
17059 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
17060 (struct font_driver): New member shape.
17061 (font_registry_charsets): Extern it.
17062 (font_find_for_lface, font_prepare_composition): Adjust prototype.
17063 (font_otf_capability, font_drive_otf): Delete their externs.
17064
17065 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
17066 (font_charset_alist, font_registry_charsets): Move from xfont.c
17067 and rename.
17068 (font_prop_validate_otf): New function.
17069 (font_property_table): Register it for QCotf.
17070 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
17071 (font_drive_otf): Delete.
17072 (font_prepare_composition): New arg F. Adjust for the change of
17073 lispy gstring.
17074 (font_find_for_lface): New arg C.
17075 (font_load_for_face): Adjust for the change of font_find_for_lface.
17076 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
17077 lispy gstring.
17078 (Ffont_shape_text): New function.
17079 (Fopen_font): If the font size is not given, use 12-pixel.
17080 (Ffont_at): New arg STRING.
17081 (syms_of_font): Initalize font_charset_alist.
17082 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
17083 conditionally.
17084
17085 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
17086 fonts of the same font-spec. Change the format of RFONT-DEF.
17087 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
17088 Adjust for the change of RFONT-DEF.
17089 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
17090
17091 * ftfont.h: New file.
17092
17093 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
17094 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
17095 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
17096 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
17097 font_otf_capability and font_drive_otf, set ftfont_shape.
17098 (ftfont_list): Adjust for the change of :otf property value.
17099 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
17100 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
17101 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
17102 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
17103 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
17104 (otf_gstring, gstring, m17n_flt_initialized): New variables.
17105
17106 * w32term.c (x_draw_composite_glyph_string_foreground):
17107 Adjust for the change of lispy gstring.
17108
17109 * xdisp.c (handle_composition_prop): Adjust for the change of
17110 lispy gstring. Call a function for auto-composition with the
17111 third arg it->window.
17112 (fill_composite_glyph_string): Adjust for the change of lispy string.
17113 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
17114
17115 * xfaces.c (set_font_frame_param): Adjust for the change of
17116 font_find_for_lface.
17117
17118 * xfont.c (x_font_charset_alist): Move to font.c and rename.
17119 (xfont_registry_charsets): Likewise. Change caller.
17120 (syms_of_xfont): Don't handle x_font_charset_alist.
17121
17122 * xftfont.c: Include "ftfont.h".
17123 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
17124 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
17125 (xftfont_close) [HAVE_LIBOTF]: Close otf.
17126 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
17127 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
17128 Set xftfont_driver.shape to xftfont_shape.
17129
17130 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
17131 the change of lispy gstring.
17132
17133 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17134
17135 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
17136
17137 2008-02-01 Jason Rumney <jasonr@gnu.org>
17138
17139 * w32font.c (w32font_draw): Fill background manually.
17140
17141 2008-02-01 Jason Rumney <jasonr@gnu.org>
17142
17143 * font.c (Qfontp): Remove unused symbol.
17144 (QCantialias): New symbol.
17145 (syms_of_font): Define it.
17146 (font_property_table): Set a validator for QCantialias.
17147
17148 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
17149 Define if not already.
17150 (QCfamily): Share with xfaces.c.
17151 (Qstandard, Qsubpixel, Qnatural): New symbols.
17152 (syms_of_w32font): Define them. Don't define QCfamily here.
17153 (w32_antialias_type, lispy_antialias_type): New functions.
17154 (w32_enumfont_pattern_entity): New arg requested_font.
17155 Set antialias parameter if non-default was requested.
17156 (fill_in_logfont): Fill in lfQuality if :antialias specified.
17157
17158 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17159
17160 * lread.c (read1): Undo the previous change.
17161
17162 2008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
17163
17164 * frame.c (Fdelete_frame): Call font_update_drivers only when
17165 USE_FONT_BACKEND is defined.
17166
17167 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17168
17169 * font.h (struct font_bitmap): New member bits_per_pixel.
17170 (struct font_driver): New members start_for_frame and end_for_frame.
17171 (struct font_data_list): New struct.
17172 (font_put_frame_data, font_get_frame_data): Extern them.
17173
17174 * frame.h (struct frame): New member font_data_list.
17175
17176 * font.c (font_update_drivers): Call driver->start_for_frame and
17177 driver->end_for_frame at proper timings.
17178 (font_put_frame_data, font_get_frame_data): New functions.
17179 (Ffont_spec): Add usage in the docstring.
17180
17181 * frame.c (make_frame): Initialize f->font_data_list to NULL.
17182 (Fdelete_frame): Call font_update_drivers.
17183
17184 * xftfont.c (struct xftface_info): Delete the member xft_draw.
17185 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
17186 (xftfont_get_xft_draw): New function.
17187 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
17188 (xftfont_end_for_frame): New function.
17189 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
17190
17191 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
17192 Change argument. Cache GCs in the per-frame data.
17193 (struct ftxfont_frame_data): New struct.
17194 (ftxfont_draw_bitmap): New arg gc_fore and flush.
17195 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
17196 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
17197 (ftxfont_end_for_frame): New function.
17198 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
17199
17200 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
17201
17202 2008-02-01 Kenichi Handa <handa@m17n.org>
17203
17204 * xselect.c (Vselection_coding_system)
17205 (Vnext_selection_coding_system): Delete them.
17206 (syms_of_xselect): Don't declare selection-coding-system and
17207 next-selection-coding-system. They are declared in select.el.
17208
17209 2008-02-01 Jason Rumney <jasonr@gnu.org>
17210
17211 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
17212
17213 * w32fns.c: Include imm.h.
17214 (get_composition_string_fn, get_ime_context_fn): New optional
17215 system functions.
17216 (globals_of_w32fns): Load them from imm32.dll.
17217 (ignore_ime_char): New flag.
17218 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
17219 WM_IME_ENDCOMPOSITION messages.
17220
17221 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
17222 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
17223
17224 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17225
17226 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
17227 (READCHAR_REPORT_MULTIBYTE): New macro.
17228 (readchar): New 2nd arg MULTIBYTE.
17229 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
17230 Make symbol's name multibyte according to the multibyteness of the
17231 source.
17232
17233 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17234
17235 * xfaces.c (face_for_overlay_string): Call lookup_face with
17236 correct arguments (fix of synching with the trunk).
17237
17238 2008-02-01 Kenichi Handa <handa@m17n.org>
17239
17240 * font.c (font_prop_validate_symbol, font_prop_validate_style)
17241 (font_prop_validate_non_neg, font_prop_validate_spacing):
17242 Delete argument prop_index.
17243 (font_property_table): Change arguments to validater. Change Callers.
17244 (font_lispy_object): Delete.
17245 (font_at): Use font_find_object instead fo font_lispy_object.
17246
17247 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17248
17249 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
17250 and file names.
17251
17252 2008-02-01 Jason Rumney <jasonr@gnu.org>
17253
17254 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
17255 (font_matches_spec): Remove debug output.
17256 (add_font_entity_to_list): Avoid using substituted fonts.
17257
17258 2008-02-01 Jason Rumney <jasonr@gnu.org>
17259
17260 * doc.c (Fsnarf_documentation):
17261 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
17262
17263 2008-02-01 Miles Bader <miles@gnu.org>
17264
17265 * dispextern.h (struct glyph_row): Only define "clip" field if
17266 HAVE_WINDOW_SYSTEM is defined.
17267
17268 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
17269
17270 Fix up multi-tty merge.
17271
17272 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
17273 and indentation.
17274
17275 * xfaces.c (free_realized_face, clear_face_gcs):
17276 Include font_done_for_face in the input_blocked section, just in case.
17277
17278 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
17279 (get_char_face_and_encoding): Undo last change and remove the *other*
17280 duplicate definition (i.e. keep the one that's better scoped and that
17281 includes code for the font-backend).
17282
17283 * terminal.c (create_terminal): Default keyboard_coding to
17284 `no-conversion' and terminal_coding to `undecided'.
17285
17286 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
17287
17288 * fontset.c (free_realized_fontsets): Check that the table entry does
17289 contain a fontset before trying to compare it to `base'.
17290
17291 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
17292 syms_of_charset, and syms_of_coding earlier because init_window_once
17293 now needs Vcoding_system_hash_table to be setup.
17294
17295 * coding.h (default_buffer_file_coding): Remove.
17296
17297 * coding.c (default_buffer_file_coding): Remove.
17298 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
17299 than ->symbol, and use the terminal-local coding system.
17300 (syms_of_coding): Don't setup the coding-systems that are not
17301 terminal-local.
17302 (Fdefine_coding_system_internal): Use XCAR/XCDR.
17303
17304 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
17305 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
17306
17307 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
17308 in chartab.c and were re-added here by mistake.
17309 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
17310
17311 * doc.c (Fsnarf_documentation):
17312 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
17313 src to etc.
17314
17315 * ChangeLog.10: Add mistakenly removed entry.
17316
17317 2008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
17318
17319 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
17320
17321 2008-02-01 Miles Bader <miles@gnu.org>
17322
17323 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
17324 Add extra args to FACE_FOR_CHAR.
17325
17326 2008-02-01 Kenichi Handa <handa@m17n.org>
17327
17328 * keymap.c (where_is_internal_1): If key is a cons, store the copy
17329 in sequence.
17330
17331 * chartab.c (map_sub_char_table, map_char_table): If the range
17332 contains just one character, call the function with that character
17333 even if the depth is not 3.
17334
17335 2008-02-01 Jason Rumney <jasonr@gnu.org>
17336
17337 * w32font.c (w32font_text_extents): Calculate metrics for the
17338 whole string.
17339
17340 2008-02-01 Jason Rumney <jasonr@gnu.org>
17341
17342 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
17343
17344 2008-02-01 Jason Rumney <jasonr@gnu.org>
17345
17346 * w32term.c (x_set_glyph_string_clipping): Use
17347 get_glyph_string_clip_rects.
17348 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
17349 Adjust for the change of struct glyph_string.
17350
17351 * w32font.c (w32font_draw): Do clipping here.
17352
17353 2008-02-01 Kenichi Handa <handa@m17n.org>
17354
17355 * xftfont.c (xftfont_draw): Adjust for the change of struct
17356 glyph_string.
17357
17358 * xterm.c (x_set_glyph_string_clipping): Use
17359 get_glyph_string_clip_rects.
17360 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
17361 Adjust for the change of struct glyph_string.
17362
17363 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
17364 the resulting clip(s}.
17365 (expose_overlaps): Add arg r. Change callers. Set it to
17366 row->clip temporarily.
17367 (expose_window): Redraw rows overlapping the exposed area.
17368
17369 * dispextern.h (struct glyph_row): New member clip.
17370 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
17371 clip_height, new member clip, and num_clips.
17372
17373 2008-02-01 Kenichi Handa <handa@m17n.org>
17374
17375 * data.c (Fchar_or_string_p): Fix docstring.
17376
17377 2008-02-01 Kenichi Handa <handa@m17n.org>
17378
17379 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
17380 create a temporary XftDraw object.
17381
17382 2008-02-01 Kenichi Handa <handa@m17n.org>
17383
17384 * font.c (Ffontp): Fix docstring.
17385
17386 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
17387 strong evidence of ISO-2022.
17388
17389 2008-02-01 Kenichi Handa <handa@m17n.org>
17390
17391 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
17392 SYNTAX_ENTRY_FOLLOW_PARENT.
17393
17394 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
17395
17396 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
17397 its type.
17398 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
17399 Update to the new type of weak_hash_tables and next_weak.
17400
17401 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
17402 a plain C pointer to Lisp_Hash_Table.
17403
17404 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
17405 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
17406 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
17407 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
17408 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
17409 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
17410 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
17411 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
17412 (GC_EQ): Remove since they've been identical to their non-GC_
17413 alter-egos ever since the markbit was eradicated.
17414
17415 * alloc.c:
17416 * buffer.c:
17417 * buffer.h:
17418 * data.c:
17419 * fileio.c:
17420 * filelock.c:
17421 * fns.c:
17422 * frame.h:
17423 * lisp.h:
17424 * macterm.c:
17425 * print.c:
17426 * process.c:
17427 * w32fns.c:
17428 * w32menu.c:
17429 * w32term.c:
17430 * xfns.c:
17431 * xmenu.c:
17432 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
17433
17434 2008-02-01 Kenichi Handa <handa@m17n.org>
17435
17436 * chartab.c (map_sub_char_table): Make it work for the top-level
17437 char-table. Fix handling of parent char-table.
17438 (map_char_table): Adjust for the above change.
17439
17440 2008-02-01 Jason Rumney <jasonr@gnu.org>
17441
17442 * w32font.c (Qgdi): Rename from Qw32.
17443
17444 2008-02-01 Jason Rumney <jasonr@gnu.org>
17445
17446 * w32bdf.c (get_quoted_string): Make function static.
17447
17448 2008-02-01 Kenichi Handa <handa@m17n.org>
17449
17450 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
17451 bigger ascent and descent than those of the font, use them as
17452 font's ascent and descent.
17453
17454 2008-02-01 Kenichi Handa <handa@m17n.org>
17455
17456 * Makefile.in (${lispsource}international/charprop.el): Move this
17457 target within "#ifdef HAVE_UNIDATA" and "#endif".
17458
17459 2008-02-01 Kenichi Handa <handa@m17n.org>
17460
17461 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
17462 (shortlisp): Add ../lisp/language/tai-viet.el.
17463
17464 2008-02-01 Ulrich Mueller <ulm@gentoo.org>
17465
17466 * Makefile.in (${lispsource}international/charprop.el): Depend on
17467 temacs${EXEEXT}.
17468
17469 2008-02-01 Jason Rumney <jasonr@gnu.org>
17470
17471 * w32font.c (w32font_close): Delete the GDI font object.
17472
17473 * w32menu.c: Include character.h.
17474
17475 * w32proc.c: Likewise.
17476
17477 * w32select.c: Likewise.
17478
17479 * makefile.w32-in (w32proc.o): Depend on character.h.
17480
17481 2008-02-01 Jason Rumney <jasonr@gnu.org>
17482
17483 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
17484
17485 * w32menu.c (syms_of_w32menu): Likewise.
17486
17487 * w32proc.c (syms_of_ntproc): Likewise.
17488
17489 * w32select.c (syms_of_w32select): Likewise.
17490
17491 * w32term.c (syms_of_w32term): Likewise.
17492
17493 2008-02-01 Jason Rumney <jasonr@gnu.org>
17494
17495 * w32font.c (w32font_draw): Delete brush after using it.
17496
17497 2008-02-01 Jason Rumney <jasonr@gnu.org>
17498
17499 * w32font.c (w32font_open): Don't set font_idx.
17500 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
17501 to font settings.
17502 (w32font_draw): Fill background explicitly.
17503
17504 2008-02-01 Jason Rumney <jasonr@gnu.org>
17505
17506 * w32term.c (w32_initialize): Don't call w32font_initialize.
17507
17508 * w32font.c (w32font_info): Remove subranges.
17509 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
17510 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
17511 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
17512 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
17513 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
17514 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
17515 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
17516 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
17517 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
17518 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
17519 New symbols.
17520 (font_callback_data): New struct.
17521 (w32font_list, w32font_match): Use it.
17522 (w32font_open): Don't populate subranges.
17523 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
17524 (w32font_encode_char): Always return unicode code-point as-is.
17525 (w32font_text_extents): Supply a transformation matrix to
17526 GetGlyphOutline. Never look up by glyph index. Avoid looping
17527 twice. Use unicode version of GetTexExtentPoint32 instead of
17528 glyph index version.
17529 (set_fonts_frame): Remove.
17530 (w32_enumfont_pattern_entity): Add frame parameter, use it to
17531 set frame parameter. Use backward compatible fake foundries.
17532 Save generic family in extra slot under QCfamily. Make width slot
17533 constant. Save QCspacing value. Save list of scripts instead of
17534 binary subranges.
17535 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
17536 (add_font_entity_to_list): Use font_callback_data struct. Filter
17537 unwanted fonts.
17538 (add_one_font_entity_to_list): Use font_callback_data struct.
17539 (w32_registry): Default to iso10646_1.
17540 (fill_in_logfont): Use dpi from extra slot. Don't bother with
17541 string font registries. Don't fill in font name if it is a generic
17542 family name, fill family instead. Use spacing, family and script
17543 extra info to fill pitch, family and charset fields.
17544 (list_all_matching_fonts): Use font_callback_data struct.
17545 (unicode_range_for_char): Remove.
17546 (font_supported_scripts): New function.
17547 (w32font_initialize): Remove.
17548 (syms_of_w32font): Update which symbols are defined.
17549
17550 2008-02-01 Jason Rumney <jasonr@gnu.org>
17551
17552 * font.c (font_pixel_size): Reverse assq_no_quit args.
17553
17554 * w32term.h (FONT_WIDTH): Report max width, not average.
17555 (FONT_MAX_WIDTH): Remove.
17556 (FONT_AVG_WIDTH): New macro.
17557
17558 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
17559 redefinition of FONT_WIDTH.
17560
17561 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
17562 (w32_cache_char_metrics): Use FONT_WIDTH.
17563
17564 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
17565
17566 2008-02-01 Jason Rumney <jasonr@gnu.org>
17567
17568 * w32font.c (w32font_open): Make lfHeight negative.
17569
17570 * w32fns.c (x_default_font_parameter): Use new style font name.
17571 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
17572
17573 2008-02-01 Jason Rumney <jasonr@gnu.org>
17574
17575 * w32font.c (QCsubranges): New symbol.
17576 (w32font_open, w32font_has_char): Get subranges from subproperty
17577 of extra.
17578 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
17579 (syms_of_w32font): Define :subranges symbol.
17580
17581 * font.c (font_put_extra): Expose externally.
17582
17583 * font.h (font_put_extra): Move declaration from font.c.
17584
17585 * font.c (Ffont_get): Use font driver to determine otf capability.
17586 (adjust_anchor): Check if driver defines anchor_point before using.
17587
17588 * w32font.c (w32font_open): Handle size, height and pixel_size better.
17589 (w32font_draw): Use options.
17590 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
17591 Fix detection of truetype fonts.
17592 (registry_to_w32_charset): Handle charsets other than iso8859-1
17593 expressed as lisp symbols.
17594 (w32_registry): Express charset as lisp symbol.
17595 (fill_in_logfont): Reverse pixel and point height logic.
17596 Don't set width here. Set quality to default.
17597
17598 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
17599 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
17600
17601 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
17602 Remove redundant loop and allocation.
17603
17604 * makefile.w32-in (font.o, w32font.o): New objects.
17605 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
17606 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
17607
17608 * xdisp.c (fill_composite_glyph_string): Make the first arg to
17609 STORE_XCHARB a valid l-value.
17610
17611 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
17612 calculations for non-Truetype fonts.
17613 (x_draw_glyph_string): Sync with xterm.c.
17614 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
17615 Remove redundant code.
17616 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
17617
17618 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
17619 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
17620
17621 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
17622 (x_to_w32_charset, w32_to_x_charset): Expose externally.
17623
17624 * w32font.c: New file for w32 font backend.
17625
17626 2008-02-01 Kenichi Handa <handa@m17n.org>
17627
17628 * term.c: Don't include "buffer.h" twice.
17629
17630 2008-02-01 Kenichi Handa <handa@m17n.org>
17631
17632 * character.c (Funibyte_string): New function.
17633 (syms_of_character): Defsubr it.
17634
17635 2008-02-01 Jason Rumney <jasonr@gnu.org>
17636
17637 * w32term.c [USE_FONT_BACKEND]:
17638 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
17639 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
17640 (x_draw_glyph_string, x_draw_glyph_string_foreground)
17641 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
17642 (x_free_frame_resources): Sync with xterm.c.
17643
17644 2008-02-01 Andreas Schwab <schwab@suse.de>
17645
17646 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
17647 char-table size.
17648
17649 2008-02-01 Kenichi Handa <handa@m17n.org>
17650
17651 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
17652
17653 2008-02-01 Kenichi Handa <handa@m17n.org>
17654
17655 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
17656 font_otf_gpos, add font_drive_otf.
17657
17658 * fontset.c (fontset_find_font): Pay attention to font size
17659 specified for a font.
17660 (reorder_font_vector): Check contents of font_def.
17661
17662 * font.c (struct otf_list): Delete it.
17663 (otf_list): Make it a lisp variable.
17664 (otf_open): Use lispy otf_list.
17665 (generate_otf_features): Rename from parse_gsub_gpos_spec.
17666 (check_otf_features): New function.
17667 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
17668 New functions.
17669 (font_drive_otf): New function merging font_otf_gsub and
17670 font_otf_gpos.
17671 (font_open_for_lface): New arg spec. Change argument order.
17672 (font_load_for_face): Adjust for the change of font_open_for_lface.
17673 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
17674 Ffont_otf_gpos.
17675 (syms_of_font): Staticpro otf_list. Delete defsubr of
17676 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
17677
17678 * xfaces.c (set_font_frame_param): Adjust for the change of
17679 font_open_for_lface.
17680
17681 * font.h (font_open_for_lface): Adjust prototype.
17682 (struct font_driver): Delete members otf_gsub and otf_gpos, add
17683 member otf_drive.
17684 (font_otf_gsub, font_otf_gpos): Delete externs.
17685 (font_drive_otf): Extern it.
17686
17687 2008-02-01 Kenichi Handa <handa@m17n.org>
17688
17689 * font.c (font_at): If the window W is not on a window system,
17690 return Qnil.
17691
17692 * coding.c (produce_chars, encode_coding): Don't call
17693 insert_from_gap if no characters to produce.
17694
17695 2008-02-01 Kenichi Handa <handa@m17n.org>
17696
17697 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
17698 Fclear_face_cache.
17699
17700 * xfaces.c (face_for_font): Check also face->font==font->font.font.
17701
17702 2008-02-01 Miles Bader <miles@gnu.org>
17703
17704 * emacs.c (main): Change default value of `enable_font_backend' to 1.
17705 Parse "--disable-font-backend" option.
17706 (standard_args): Add "--disable-font-backend" option.
17707
17708 2008-02-01 Kenichi Handa <handa@m17n.org>
17709
17710 * fontset.c (fontset_find_font): New function.
17711 (fontset_font): Use fontset_find_font.
17712 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
17713 Register the specified font for all Latin characters.
17714 (new_fontset_from_font): Register the specified font for all Latin
17715 characters.
17716 (dump_fontset): For a realized fontset, include the base fontset
17717 name in the returned vector.
17718
17719 2008-02-01 Kenichi Handa <handa@m17n.org>
17720
17721 * character.h (CHAR_STRING): Cast C to unsigned on calling
17722 char_string.
17723
17724 * character.c (char_string): Type of arg C changed to unsigned.
17725 Signal an error if C is an invalid character code.
17726
17727 * editfns.c (general_insert_function, Fchar_to_string):
17728 Use CHARACTERP, not INTEGERP.
17729
17730 2008-02-01 Kenichi Handa <handa@m17n.org>
17731
17732 * character.h (MIN_MULTIBYTE_LEADING_CODE)
17733 (MAX_MULTIBYTE_LEADING_CODE): New macros.
17734
17735 * regex.c (analyse_first): Fix for multibyte characters in "case
17736 charset:" and "case categoryspec:".
17737
17738 2008-02-01 Andreas Schwab <schwab@suse.de>
17739
17740 * Makefile.in (LIBES): Move standard libraries to the end.
17741
17742 2008-02-01 Kenichi Handa <handa@m17n.org>
17743
17744 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
17745 nonzero, don't shrink the buffer nextb.
17746
17747 * buffer.h (struct buffer_text): New member inhibit_shrinking.
17748
17749 * coding.c (coding_alloc_by_making_gap): New arg offset.
17750 (alloc_destination): Call coding_alloc_by_making_gap with the arg
17751 offset.
17752 (decode_coding_iso_2022): Update coding->safe_charsets.
17753 (decode_coding_gap): Temporarily set
17754 current_buffer->text->inhibit_shrinking to 1.
17755
17756 2008-02-01 Kenichi Handa <handa@m17n.org>
17757
17758 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
17759 indexing into elements of s->cmp and s->char2b.
17760
17761 2008-02-01 Juanma Barranquero <lekktu@gmail.com>
17762
17763 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
17764
17765 2008-02-01 Kenichi Handa <handa@m17n.org>
17766
17767 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
17768 target_multibyte instead of multibyte.
17769 (re_match_2_internal): Call bcmp_translate with target_multibyte.
17770 (bcmp_translate): Change the argument name from multibyte to
17771 target_multibyte.
17772
17773 2008-02-01 Kenichi Handa <handa@m17n.org>
17774
17775 These changes are to compile a regexp into a pattern that can be
17776 used both for multibyte and unibyte targets.
17777
17778 * Makefile.in (search.o): Depend on charset.h.
17779
17780 * character.c (multibyte_char_to_unibyte_safe): New function.
17781
17782 * search.c: Include "charset.h".
17783 (compile_pattern_1): Delete argument multibyte. Don't set
17784 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
17785 (compile_pattern): Don't compare cp->buf.target_multibyte.
17786 Compare cp->buf.charset_unibyte.
17787 (compile_pattern): Set cp->buf.target_multibyte.
17788
17789 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
17790
17791 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
17792
17793 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
17794 multibyte. Change callers.
17795 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
17796 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
17797 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
17798 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
17799 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
17800 (regex_compile): Make the compiled pattern usable both for
17801 multibyte and unibyte targets.
17802 (analyse_first): Make the fastmap usable both for multibyte and
17803 unibyte targets.
17804 (TRANSLATE_VIA_MULTIBYTE): Delete.
17805 (re_match_2_internal): Pay attention to the case that the
17806 multibyteness of bufp and target may be different.
17807
17808 2008-02-01 Kenichi Handa <handa@m17n.org>
17809
17810 * xdisp.c (x_produce_glyphs): When a font is not found, make the
17811 empty box occupy at least one column width.
17812
17813 2008-02-01 Miles Bader <miles@gnu.org>
17814
17815 * Makefile.in: Remove redundant HAVE_XFT clause.
17816
17817 2008-02-01 Kenichi Handa <handa@m17n.org>
17818
17819 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
17820
17821 2008-02-01 Kenichi Handa <handa@m17n.org>
17822
17823 * fontset.c (Finternal_char_font): Fix for the case of POSITION
17824 being nil.
17825
17826 2008-02-01 Kenichi Handa <handa@m17n.org>
17827
17828 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
17829
17830 2008-02-01 Kenichi Handa <handa@m17n.org>
17831
17832 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
17833
17834 2008-02-01 Kenichi Handa <handa@m17n.org>
17835
17836 * search.c (simple_search): Fix previous change.
17837
17838 2008-02-01 Kenichi Handa <handa@m17n.org>
17839
17840 * xftfont.c (ftfont_font_format): Extern declaration.
17841
17842 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
17843
17844 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
17845 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
17846
17847 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
17848 (ftfont_font_format): Fix previous change.
17849
17850 * font.h (Ffont_xlfd_name): EXFUN it.
17851
17852 * font.c (font_parse_xlfd): Fix the array size of `f'.
17853 (register_font_driver): Use EQ to compare driver->type.
17854
17855 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
17856 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
17857 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
17858
17859 2008-02-01 Kenichi Handa <handa@m17n.org>
17860
17861 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
17862 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
17863
17864 2008-02-01 Kenichi Handa <handa@m17n.org>
17865
17866 * xfont.c (xfont_open): Set font->format.
17867
17868 * xftfont.c (xftfont_open): Set font->format.
17869
17870 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
17871 (ftfont_list): Include FC_FONTFORMAT in FcObject.
17872 (ftfont_open): Set font->format.
17873 (ftfont_font_format): New function.
17874
17875 * font.h (struct font): New member format.
17876
17877 * font.c (Qopentype): New variable.
17878 (syms_of_font): Defsym it.
17879 (Fquery_font): Change the format of the last element of the return
17880 value.
17881
17882 2008-02-01 Kenichi Handa <handa@m17n.org>
17883
17884 * xfns.c (xic_create_xfontset): Try the default fontset name as a
17885 last resort.
17886
17887 2008-02-01 Kenichi Handa <handa@m17n.org>
17888
17889 * coding.c (detect_coding_charset): Fix detection of multi-byte
17890 charset.
17891
17892 2008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
17893
17894 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
17895
17896 2008-02-01 Kenichi Handa <handa@m17n.org>
17897
17898 * xdisp.c (get_next_display_element): Set it->face_id for the
17899 first component of a composition.
17900 (x_produce_glyphs): Check if the font is changed or not for composition.
17901
17902 2008-02-01 Kenichi Handa <handa@m17n.org>
17903
17904 * fontset.c (Qlatin): New variable.
17905 (syms_of_fontset): Define it as a lisp symbol.
17906 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
17907
17908 2008-02-01 Kenichi Handa <handa@m17n.org>
17909
17910 * font.c (font_unparse_fcname): Pay attention to the case that
17911 some of font property is a null string.
17912
17913 2008-02-01 Kenichi Handa <handa@m17n.org>
17914
17915 * term.c: Include "composite.h".
17916 (encode_terminal_code): Output all components of composition.
17917 Check the size of encode_terminal_src.
17918 (produce_glyphs): For composition, call produce_composite_glyph.
17919 (append_composite_glyph, produce_composite_glyph): New functions.
17920
17921 * xdisp.c (x_produce_glyphs): In handling composition, if a font
17922 is not found, get font_info from the current ascii face.
17923
17924 2008-02-01 Kenichi Handa <handa@m17n.org>
17925
17926 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
17927 buffer-file-name to Qnil before calling insert_from_buffer.
17928
17929 * font.c (font_unparse_fcname): Pay attention to the case that
17930 foundry is a null string.
17931
17932 2008-02-01 Kenichi Handa <handa@m17n.org>
17933
17934 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
17935
17936 * font.c (Qunicode_sip): New variable.
17937 (syms_of_font): Declare it as a Lisp symbol.
17938
17939 * font.h (Qunicode_sip): Extern it.
17940
17941 2008-02-01 Kenichi Handa <handa@m17n.org>
17942
17943 * composite.c (get_composition_id): Pay attention to TAB component.
17944
17945 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
17946 TAB. Adjust for the change of s->char2b which always points to
17947 the first element of allocated memory.
17948
17949 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
17950
17951 * xdisp.c (handle_composition_prop): Set it->c to the first
17952 non-TAB component.
17953 (fill_composite_glyph_string): Change argument.
17954 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
17955 (x_produce_glyphs): Fix handling of left/right padding.
17956
17957 2008-02-01 Kenichi Handa <handa@m17n.org>
17958
17959 * coding.c (detect_coding_system): Fix for handling off
17960 inhibit_iso_escape_detection. Fix for the case that no coding
17961 system is defined for a specific coding category.
17962
17963 2008-02-01 Kenichi Handa <handa@m17n.org>
17964
17965 * font.c (font_matching_entity): Delete unused local var.
17966
17967 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
17968 opening a font.
17969
17970 * fileio.c (Finsert_file_contents): On recovering a file, assume
17971 Unix-like eol.
17972 (choose_write_coding_system): On auto-saving a file, force
17973 Unix-like eol.
17974
17975 * coding.c (setup_coding_system): Fix setting of
17976 coding->common_flags based on eol_type.
17977 (coding_inherit_eol_type): If PARENT is not nil, be sure to
17978 inherit from it.
17979
17980 2008-02-01 Kenichi Handa <handa@m17n.org>
17981
17982 * alloc.c (NSTATICS): Increas to 0x600.
17983
17984 2008-02-01 Kenichi Handa <handa@m17n.org>
17985
17986 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
17987 (ftfont_list): Don't check :name property.
17988 (ftfont_match): New function.
17989 (ftfont_pattern_entity): If the pattern doesn't contain
17990 FC_SPACING, don't assume FC_MONO.
17991
17992 * font.h (struct font_driver): New member `match'.
17993 (font_update_drivers): Adjust prototype.
17994
17995 * font.c (font_parse_fcname, font_parse_name): Don't change :name
17996 property of FONT.
17997 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
17998 them unconditionally.
17999 (font_matching_entity): New function.
18000 (font_open_by_name): Try font_matching_entity if exact match is
18001 not found.
18002 (font_update_drivers): Delete the arg FONT. Return a list of
18003 actually used backends. Don't free faces, font caches here.
18004 Don't store data in frame parameters. Don't call x_set_font.
18005 (Ffont_spec): Store :name property as is.
18006 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
18007 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
18008 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
18009 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
18010 Call font->driver->otf_gsub instead of font_otf_gsub.
18011
18012 * frame.c (x_set_font_backend): Do more works that were done in
18013 font_update_drivers before.
18014
18015 * xfont.c (xfont_match): New function.
18016 (xfont_driver): Set xfont_driver.match to xfont_match.
18017 (xfont_draw): Set font in GC if necessary.
18018
18019 * ftxfont.c (ftxfont_match): New function.
18020 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
18021
18022 * xftfont.c (xftfont_match): New function.
18023 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
18024
18025 2008-02-01 Kenichi Handa <handa@m17n.org>
18026
18027 * font.h (struct font): New member scalable.
18028 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
18029 (font_otf_gsub): Adjust prototype.
18030
18031 * font.c (font_otf_capability): Fix handling of the default langsys.
18032 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
18033 Check the contents of SPEC.
18034 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
18035 (check_gstring): New function.
18036 (REPLACEMENT_CHARACTER): New macro.
18037 (font_otf_gsub): New arg alternate_subst. Be sure to set all
18038 glyph codes of GSTRING.
18039 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
18040 (font_prepare_composition): Set cmp->glyph_len.
18041 (font_open_entity): Set font->scalable.
18042 (Ffont_get): Handle :otf property.
18043 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
18044 functions.
18045 (Fquery_font): Use font->font.full_name.
18046 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
18047 Sfont_otf_alternates.
18048
18049 * ftfont.c (ftfont_open): Set font->font.full_name and
18050 font->font.name properly. Fix calculation of font->font.height
18051 and font->min_width.
18052
18053 * ftxfont.c (ftxfont_create_gcs): New function.
18054 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
18055 (ftxfont_draw_backgrond): Fix filling region.
18056 (ftxfont_default_fid): New function.
18057 (ftxfont_open): Set xfont->fid to the return value of
18058 ftxfont_default_fid.
18059 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
18060 (ftxfont_done_face): Free only GCs that are created by
18061 ftxfont_create_gcs.
18062 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
18063
18064 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
18065 Clip to src->width, etc (not src->clip_XXX).
18066
18067 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
18068 FontBackend frame parameter.
18069
18070 2008-02-01 Kenichi Handa <handa@m17n.org>
18071
18072 * font.h (struct font_driver_list): New member `on'.
18073 (Fclear_font_cache): EXFUN it.
18074 (font_update_drivers): Extern it.
18075
18076 * font.c (font_unparse_fcname): Fix typo (swidth->width).
18077 (font_list_entities): Check driver_list->on.
18078 (register_font_driver): Initalize `on' member to 0.
18079 (font_update_drivers): New function.
18080 (Fclear_font_cache): Check driver_list->on.
18081
18082 * frame.h (Qfont_backend): Extern it.
18083 (x_set_font_backend): Extern it.
18084
18085 * frame.c (Qfont_backend): New variable.
18086 (frame_parms): New element for font-backend.
18087 (x_set_font_backend): New function.
18088
18089 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
18090 FontBackend frame parameter.
18091 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
18092 x_set_font_backend.
18093
18094 * xfont.c (xfont_list): Don't try listing by :name property if the
18095 name is not for XLFD.
18096
18097 2008-02-01 Kenichi Handa <handa@m17n.org>
18098
18099 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
18100 (LGLYPH_SET_TO): New macros.
18101 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
18102 element of G is vector or not.
18103 (font_at): Extern it.
18104
18105 * font.c: Include window.h.
18106 (font_lispy_object): New function.
18107 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
18108 end of valid glyph.
18109 (font_close_object): Fix getting (struct font *).
18110 (font_at): New function.
18111 (Ffont_get): If FONT is a font-object, get entity from it.
18112 (Ffont_make_gstring): Initialize elements of glyphs with nil.
18113 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
18114 range check.
18115 (Ffont_at): New function.
18116 (syms_of_font): Defsubr Sfont_at.
18117
18118 * xdisp.c (it_props): Move the entry for Qauto_composed to just
18119 before the entry for Qcomposition.
18120 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
18121 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
18122 the font in gstring.
18123 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
18124 LGLYPH_FORM (g) to detect the end of valid glyph.
18125 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
18126 we are composing with gstring.
18127
18128 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
18129 Check if adjustment is vector or not.
18130
18131 * Makefile.in (font.o): Make it depends on window.h.
18132
18133 2008-02-01 Kenichi Handa <handa@m17n.org>
18134
18135 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
18136 adjustment is vector or not.
18137
18138 2008-02-01 Miles Bader <miles@gnu.org>
18139
18140 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
18141
18142 2008-02-01 Kenichi Handa <handa@m17n.org>
18143
18144 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
18145 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
18146 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
18147
18148 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
18149 (DEVICE_DELTA): Fix typo.
18150 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
18151 LGLYPH format.
18152
18153 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
18154 the change of LGLYPH format.
18155
18156 2008-02-01 Kenichi Handa <handa@m17n.org>
18157
18158 * ftfont.c (ftfont_list): Fix typo.
18159 (ftfont_build_basic_charsets): Don't include letters with diacritics.
18160
18161 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
18162
18163 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
18164
18165 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
18166 xftface_info is non-NULL.
18167
18168 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
18169
18170 * ftfont.c (ftfont_list): Move misplaced #endif.
18171
18172 2008-02-01 Kenichi Handa <handa@m17n.org>
18173
18174 * ftfont.c (ftfont_list): Pay attention to the case that
18175 FC_CAPABILITY is not defined.
18176
18177 2008-02-01 Kenichi Handa <handa@m17n.org>
18178
18179 * xftfont.c (xftfont_open): Set charset related members to -1.
18180
18181 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
18182 QCname.
18183 (ftfont_open): Set charset related members to -1.
18184
18185 * fontset.c (Votf_script_alist): New variable.
18186 (syms_of_fontset): Initialize it.
18187 (fontset_font): Delete unused variable.
18188
18189 * fontset.h (Votf_script_alist): Extern it.
18190
18191 * font.c (font_find_for_lface): Optimize code.
18192
18193 * font.h (font_close_object, font_merge_old_spec): Extern them.
18194
18195 2008-02-01 Kenichi Handa <handa@m17n.org>
18196
18197 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
18198 (syms_of_font): Initialize them.
18199 (font_pixel_size): Allow float value in dpi.
18200 (font_prop_validate_type): Delete.
18201 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
18202 Change caller.
18203 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
18204 (font_prop_validate_extra): Delete.
18205 (font_prop_validate_spacing): New function.
18206 (font_property_table): Add elements for all known properties.
18207 (get_font_prop_index): Rename from check_font_prop_name. New
18208 argument FROM. Change caller.
18209 (font_prop_validate): Validate all known properties.
18210 (font_put_extra): Delete argument force. Change caller.
18211 (font_expand_wildcards): Make it static. Fix the way of shrinking
18212 the possible range.
18213 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
18214 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
18215 Change caller.
18216 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
18217 (font_parse_fcname): Delete argument merge. Fix parsing of point
18218 size. Don't validate properties values here. Change caller.
18219 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
18220 (font_open_by_name): Delete unused variable.
18221 (Ffont_spec): Likewise. Validate property values.
18222 (Ffont_match_p): New function.
18223
18224 * font.h (QCscalable): Extern it.
18225 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
18226
18227 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
18228
18229 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
18230 (xfont_list_pattern): New function.
18231 (xfont_list): Use xfont_list_pattern.
18232
18233 2008-02-01 Kenichi Handa <handa@m17n.org>
18234
18235 * font.h (Flist_fonts): EXFUN it.
18236
18237 2008-02-01 Jason Rumney <jasonr@gnu.org>
18238
18239 * w32term.c (w32_initialize): Add back smoothing_type and
18240 smoothing_enabled definitions.
18241
18242 2008-02-01 Kenichi Handa <handa@m17n.org>
18243
18244 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
18245 s->face->font on determining underline position.
18246
18247 2008-02-01 Kenichi Handa <handa@m17n.org>
18248
18249 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
18250 (font_has_char): Accept font-object too.
18251 (font_find_for_lface): Try at first with a size specified in face.
18252
18253 2008-02-01 Kenichi Handa <handa@m17n.org>
18254
18255 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
18256 font_open_by_name.
18257
18258 2008-02-01 Kenichi Handa <handa@m17n.org>
18259
18260 * font.h (QCspacing, QCdpi): Extern them.
18261 (enum font_spacing): New enum.
18262 (FONT_PIXEL_SIZE_QUANTUM): New macro.
18263
18264 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
18265 (QCspacing, QCdpi): New variables.
18266 (syms_of_font): Initialize them.
18267 (font_pixel_size): New function.
18268 (font_put_extra): New function.
18269 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
18270 in FONT_EXTRA.
18271 (font_parse_fcname): Handle enumerated values (e.g. bold).
18272 Fix handling font size. Add QCname property that contains only
18273 unknown properties.
18274 (font_score): Change argument. Change caller. Pay attention to
18275 FONT_PIXEL_SIZE_QUANTUM.
18276 (font_sort_entites, font_list_entities, font_find_for_lface)
18277 (font_open_for_lface, font_open_by_name): Fix handling of font size.
18278 (Ffont_spec): Add QCname property that contains only unknown properties.
18279
18280 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
18281 include weight in listing pattern, instead check weight of each
18282 listed font. Don't include scalable in pattern. Pay attention to
18283 FONT_PIXEL_SIZE_QUANTUM.
18284
18285 2008-02-01 Kenichi Handa <handa@m17n.org>
18286
18287 * font.c (font_parse_fcname): Fix parsing of point-size.
18288 (font_unparse_fcname): Produce symbolic names for style properties.
18289 (font_list_entities): Handle float size correctly.
18290 (font_open_by_name): Prefer `normal' property values if the name
18291 doesn't specify them.
18292
18293 * fontset.c (Finternal_char_font): Use font_get_name, not
18294 Ffont_xlfd_name.
18295
18296 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
18297 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
18298 pattern. Don't force scalable.
18299
18300 * xftfont.c (xftfont_open): For generating a name, start from
18301 96-byte buffer.
18302
18303 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
18304
18305 * frame.h (x_new_fontset2): Fix prototype.
18306
18307 2008-02-01 Kenichi Handa <handa@m17n.org>
18308
18309 * font.h (struct font_driver): Delete member parse_name.
18310 (font_match_p, font_get_spec, font_parse_fcname)
18311 (font_unparse_fcname): Extern them.
18312 (font_get_name): Adjust prototype.
18313
18314 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
18315 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
18316 (font_expand_wildcards): Fix handling ENCODING field. Avoid
18317 unnecessary checks for weight, slant, and swidth.
18318 (font_parse_fcname): New function.
18319 (font_unparse_fcname): New function.
18320 (font_parse_name): New function.
18321 (font_match_p): New function.
18322 (font_get_name): Change return value to Lisp string.
18323 (font_get_spec): New function.
18324 (Qunspecified, Qignore_defface): Don't extern them.
18325 (font_find_for_lface): Assume that LFACE is fully specified.
18326 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
18327 object, use it for FACE.
18328 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
18329 driver->parse_name.
18330 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
18331
18332 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
18333 prototype.
18334
18335 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
18336 argument F. Don't call Fnew_fontset. Instead, directly call
18337 make_fontset.
18338
18339 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
18340
18341 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
18342 of x_new_fontset2.
18343
18344 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
18345 (Qsans__serif): New variables.
18346 (ftfont_generic_family_list): New variable.
18347 (syms_of_ftfont): Initialize the above variables.
18348 (ftfont_pattern_entity): Delete argument NAME.
18349 (ftfont_list_generic_family): New function.
18350 (ftfont_parse_name): Delete this function.
18351 (ftfont_list): Try generic family only when FcFontList found no font.
18352 (ftfont_list_family): Fix args to FcObjectSetBuild.
18353
18354 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
18355 object in attrs[LFACE_FONT_INDEX].
18356 (set_lface_from_font_name): Cancel all changes for font-backend.
18357 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
18358 function.
18359 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
18360 font object in QCfont attribute.
18361 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
18362 (realize_default_face) [USE_FONT_BACKEND]: Call
18363 set_lface_from_font_and_fontset.
18364
18365 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
18366 "fixed", and signal error here if no suitable font was found.
18367
18368 * xfont.c (xfont_parse_name): Delete this function.
18369
18370 * xftfont.c (xftfont_open): Change coding style of error
18371 handling. Generate fontconfig's fontname pattern.
18372
18373 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
18374 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
18375
18376 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
18377 Both args FONTSET and FONT_OBJECT must be existing ones.
18378
18379 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18380
18381 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
18382
18383 2008-02-01 Kenichi Handa <handa@m17n.org>
18384
18385 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
18386
18387 * font.h (struct font): Fix typo.
18388
18389 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
18390 XLFD_XXX_INDEX.
18391 (enum xlfd_field_mask): New enum.
18392 (intern_font_field): Changed argument. Change caller. If digits
18393 are followed by non-digits, return a symbol.
18394 (font_expand_wildcards): New function.
18395 (font_parse_xlfd): Fix wildcard handling.
18396 (Ffont_spec): If :name is specified, reflect the info in the other
18397 properties.
18398
18399 * ftfont.c (ftfont_pattern_entity): Fix typo.
18400 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
18401 locale.
18402
18403 2008-02-01 Kenichi Handa <handa@m17n.org>
18404
18405 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
18406
18407 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
18408 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
18409 registry doesn't specify encoding part.
18410 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
18411 (font_open_by_name): At first try parsing the name.
18412 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
18413 as Lisp symbols.
18414
18415 * fontset.c (reorder_font_vector): Pay attention to the case that
18416 the 3rd element of font_def is nil.
18417 (fontset_font): For the default fontset, append one more fontset
18418 elements for a script-based font specification. Don't add script
18419 attribute on finding a font.
18420 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
18421 font name.
18422 (fontset_ascii_font): If a font can't be opened, return nil.
18423
18424 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
18425 (ftfont_pattern_entity): New function.
18426 (ftfont_get_cache): Assume that freetype_font_cache is already
18427 initialized.
18428 (ftfont_list): Handle the case that a file is specified in font
18429 name. Use ftfont_pattern_entity to generate entities.
18430 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
18431 (syms_of_ftfont): Initialize freetype_font_cache.
18432
18433 * xftfont.c (xftfont_open): Make the font name fontconfig's
18434 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
18435 (xftfont_close): Free font->font.name if not NULL.
18436
18437 * xfont.c (xfont_list): If script is specified for a font, return
18438 null_vector.
18439 (xfont_list_family): Declare argument type.
18440
18441 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
18442 name, set LFACE_FONT (lface) to nil.
18443
18444 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
18445 return Qnil.
18446
18447 2008-02-01 Kenichi Handa <handa@m17n.org>
18448
18449 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
18450 (standard_args): Add "-enable-font-backend".
18451
18452 2008-02-01 Kenichi Handa <handa@m17n.org>
18453
18454 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
18455 (struct xftdraw_list, xftdraw_list): Delete them.
18456 (register_xftdraw, check_xftdraw): Delete them.
18457 (xftfont_prepare_face): Don't call register_xftdraw.
18458 (xftfont_done_face): Don't call check_xftdraw.
18459 (xftfont_draw): Get background color only when with_background is
18460 nonzero.
18461
18462 * xfont.c (xfont_encode_char): Fix calculation of char2b.
18463
18464 2008-02-01 Kenichi Handa <handa@m17n.org>
18465
18466 These changes are for the new font handling codes.
18467
18468 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
18469 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
18470 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
18471 (FONTSRC, FONTOBJ): New variables.
18472 (obj): Add $(FONTOBJ).
18473 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
18474 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
18475 @LIBOTF_LIBS@.
18476 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
18477 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
18478
18479 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
18480
18481 * character.h (Vscript_representative_chars): Extern it.
18482
18483 * character.c (Vscript_representative_chars): New variable.
18484 (syms_of_character): Declare it as a Lisp variable.
18485
18486 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
18487 enable_font_backend is nonzero, accept the composition method
18488 COMPOSITION_WITH_GLYPH_STRING.
18489
18490 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
18491 enumeration COMPOSITION_WITH_GLYPH_STRING.
18492
18493 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
18494 members clip_x, clip_y, clip_width, and clip_height.
18495 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
18496
18497 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
18498 --enable-font-backend. Call syms_of_font.
18499
18500 * fns.c (assoc_no_quit): New function.
18501
18502 * fontset.h (FONT_INFO_FROM_FACE): New macro.
18503 (face_for_font, new_fontset_from_font)
18504 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
18505
18506 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
18507 (fontset_font, fontset_ascii, face_for_char)
18508 (make_fontset_for_ascii_face, Ffont_info)
18509 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
18510 is nonzero, use font-backend mechanism.
18511 (find_font_encoding): Make it non-static.
18512 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
18513 New functions.
18514
18515 * frame.h (struct frame): New members resx and resy.
18516 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
18517 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
18518
18519 * frame.c [USE_FONT_BACKEND]: Include "font.h".
18520 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
18521
18522 * lisp.h (assoc_no_quit): Extern it.
18523
18524 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
18525 Through out the file, use FONT_INFO_FROM_FACE instead of
18526 FONT_INFO_FROM_ID, use get_per_char_metric instead of
18527 rif->per_char_metric.
18528 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
18529 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
18530 (get_glyph_face_and_encoding, fill_composite_glyph_string)
18531 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
18532 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
18533 nonzero, use font-backend mechanism.
18534 (get_per_char_metric): New function.
18535
18536 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
18537 (set_lface_from_font_name)
18538 (set_font_frame_param, free_realized_face)
18539 (prepare_face_for_display, clear_face_gcs)
18540 (Finternal_set_font_selection_order, realize_x_face)
18541 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
18542 font-backend mechanism.
18543 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
18544 (load_face_font) [USE_FONT_BACKEND]: Abort.
18545 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
18546 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
18547
18548 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
18549 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
18550 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
18551 nonzero, register all available font drivers. Call
18552 x_default_font_parameter for deciding a font.
18553 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
18554
18555 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
18556 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
18557 (x_set_glyph_string_clipping_exactly)
18558 (x_compute_glyph_string_overhangs)
18559 (x_draw_glyph_string_foreground)
18560 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
18561 (x_free_frame_resources) [USE_FONT_BACKEND]: If
18562 enable_font_backend is nonzero, use font-backend mechanism.
18563 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
18564
18565 2008-02-01 Kenichi Handa <handa@m17n.org>
18566
18567 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
18568 system_eol_type.
18569 (syms_of_coding): Initialize system_eol_type.
18570
18571 * process.c (Fset_process_coding_system): Inherit system's eol
18572 format if necessary.
18573
18574 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18575
18576 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
18577
18578 2008-02-01 Kenichi Handa <handa@m17n.org>
18579
18580 * coding.c (decode_eol): Pay attention to buffer relocation in
18581 del_range_2.
18582 (decode_coding): Call decode_eol before restoring undo_list.
18583
18584 2008-02-01 Kenichi Handa <handa@m17n.org>
18585
18586 * charset.c (Fdefine_charset_internal): Fix setting of
18587 emacs_mule_bytes.
18588
18589 2008-02-01 Kenichi Handa <handa@m17n.org>
18590
18591 * keyboard.c (read_char): Check if C is a character or not before
18592 looking up Vkeyboard_translate_table.
18593
18594 2008-02-01 Kenichi Handa <handa@m17n.org>
18595
18596 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
18597 condition to terminate the loop.
18598
18599 2008-02-01 Kenichi Handa <handa@m17n.org>
18600
18601 * coding.c (produce_composition): Compare charbuf[i] instead of
18602 args[i] against 0.
18603 (Fterminal_coding_system): Use EQ to compare Lisp objects.
18604
18605 2008-02-01 Kenichi Handa <handa@m17n.org>
18606
18607 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
18608 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
18609 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
18610 detect_coding.
18611 (emacs_mule_char): Handle old style (Emacs 20) component character
18612 of a composition.
18613 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
18614 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
18615 composition rule.
18616 (decode_coding_emacs_mule): Handle invalid bytes correctly.
18617
18618 2008-02-01 Kenichi Handa <handa@m17n.org>
18619
18620 * coding.c (encode_coding_ccl): Allocate destination dynamically
18621 when necessary.
18622
18623 2008-02-01 Kenichi Handa <handa@m17n.org>
18624
18625 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
18626 the loop. When quitted, show a proper error message.
18627
18628 2008-02-01 Kenichi Handa <handa@m17n.org>
18629
18630 * xterm.c (x_set_glyph_string_clipping_exactly): Set
18631 src->clip_head and src->clip_tail temporarily instead of src->hl.
18632
18633 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
18634 character sequence.
18635 (Fccl_execute_on_string): Use ASET, not XSET.
18636
18637 2008-02-01 Kenichi Handa <handa@m17n.org>
18638
18639 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
18640
18641 2008-02-01 Kenichi Handa <handa@m17n.org>
18642
18643 * coding.c (decode_coding): Fix the condition of terminating the
18644 decoding loop.
18645
18646 2008-02-01 Kenichi Handa <handa@m17n.org>
18647
18648 * data.c (Faset): On setting a character bigger than 255 in a
18649 unibyte string, signal an error instead of make the string multibyte.
18650
18651 2008-02-01 Kenichi Handa <handa@m17n.org>
18652
18653 * charset.c (map_charset_chars): Fix for ascii-compatible charset
18654 made by a mapping table.
18655
18656 2008-02-01 Kenichi Handa <handa@m17n.org>
18657
18658 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
18659 not.
18660 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
18661 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
18662
18663 * xterm.c (x_draw_composite_glyph_string_foreground): Check
18664 s->face is NULL or not.
18665
18666 2008-02-01 Kenichi Handa <handa@m17n.org>
18667
18668 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
18669 (x_draw_glyph_string): Fix drawing of right_overhang and
18670 left_overhang around/on cursor.
18671
18672 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
18673
18674 2008-02-01 Kenichi Handa <handa@m17n.org>
18675
18676 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
18677
18678 2008-02-01 Kenichi Handa <handa@m17n.org>
18679
18680 * coding.c (Fdefine_coding_system_internal)
18681 (Fdefine_coding_system_alias): Avoid a duplicated element in
18682 Vcoding_system_alist.
18683
18684 2008-02-01 Kenichi Handa <handa@m17n.org>
18685
18686 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
18687
18688 * coding.c (Qcoding_system_define_form): New variable.
18689 (syms_of_coding): Intern and staticpro it.
18690 (Fcoding_system_p): Check Qcoding_system_define_form.
18691 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
18692
18693 * coding.h (CODING_SYSTEM_P): If ID is not available, call
18694 Fcoding_system_p.
18695 (CHECK_CODING_SYSTEM): If ID is not available, call
18696 Fcheck_coding_system.
18697 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
18698 Try also Fcheck_coding_system.
18699
18700 2008-02-01 Kenichi Handa <handa@m17n.org>
18701
18702 * coding.c (code_conversion_restore): GCPRO arg.
18703
18704 2008-02-01 Kenichi Handa <handa@m17n.org>
18705
18706 * character.c (lisp_string_width): Check multibyteness of STRING.
18707
18708 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18709
18710 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
18711 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
18712 (decode_mac_font_name): Use decode_coding_c_string instead of
18713 decode_coding.
18714 (x_load_font): Initialize fontp->fontset to -1. Set
18715 fontp->encoding_type.
18716
18717 2008-02-01 Kenichi Handa <handa@m17n.org>
18718
18719 * search.c (search_buffer): Give up BM search on case-fold-search
18720 if one of a target character has a case-equivalence of different
18721 byte length even if that target charcter is an ASCII.
18722 (simple_search): Fix calculation of byte length of matched text.
18723 (boyer_moore): Fix handling of case-equivalent multibyte characters.
18724
18725 2008-02-01 Kenichi Handa <handa@m17n.org>
18726
18727 * coding.c (decode_coding): Fix handling of invalid bytes.
18728
18729 2008-02-01 Kenichi Handa <handa@m17n.org>
18730
18731 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
18732 Unicode characters.
18733
18734 2008-02-01 Kenichi Handa <handa@m17n.org>
18735
18736 * coding.c (encode_coding_object): If a pre-write-conversion
18737 function makes a new buffer, kill it.
18738
18739 2008-02-01 Kenichi Handa <handa@m17n.org>
18740
18741 * coding.c (QCascii_compatible_p): New variable.
18742 (syms_of_coding): Initialize it.
18743 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
18744 calling string_char.
18745 (record_conversion_result): Add `default:' case.
18746 (coding_charset_list): Delete unused variable `coding_type'.
18747 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
18748 property in the plist of the coding system.
18749 (Fcoding_system_put): Check QCascii_compatible_p.
18750
18751 2008-02-01 Miles Bader <miles@gnu.org>
18752
18753 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
18754 removed calculation of frame `f', as it's now used.
18755
18756 2008-02-01 Kenichi Handa <handa@m17n.org>
18757
18758 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
18759 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
18760 (UNIDATA): New variable.
18761 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
18762 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
18763 $(RUN_TEMACS) unconditionally.
18764
18765 2008-02-01 Kenichi Handa <handa@m17n.org>
18766
18767 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
18768 (admindir): New variable.
18769 ($(lispsource)international/charprop.el): New target.
18770
18771 2008-02-01 Miles Bader <miles@gnu.org>
18772
18773 * character.c (chars-in-region): Remove obsolete function.
18774 (syms_of_character): Remove its initialization.
18775
18776 2008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
18777
18778 * w32select.c (validate_coding_system)
18779 (setup_windows_coding_system): New functions.
18780 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
18781 setup_windows_coding_system.
18782 (setup_config, Fw32_get_clipboard_data): Use
18783 validate_coding_system.
18784 (Fx_selection_exists): Move call to setup_config to a place
18785 where signals are allowed.
18786
18787 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
18788 (Fcheck_coding_system): Add declarations.
18789
18790 2008-02-01 Kenichi Handa <handa@m17n.org>
18791
18792 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
18793
18794 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18795
18796 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
18797 string as the second argument for x_new_fontset.
18798
18799 2008-02-01 Kenichi Handa <handa@m17n.org>
18800
18801 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
18802 (encode_coding_object): Use safe_call instead of call2.
18803
18804 2008-02-01 Kenichi Handa <handa@m17n.org>
18805
18806 * fontset.c (Fset_fontset_font): Check family element of a given vector.
18807
18808 * Makefile.in (lisp): Include charprop.el.
18809
18810 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18811
18812 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
18813 Not sure if it's unnecessary.
18814
18815 2008-02-01 Steven Tamm <steventamm@mac.com>
18816
18817 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
18818 some possibly unnecessary fontset checking code that crashed
18819 when creating a new frame.
18820
18821 2008-02-01 Kenichi Handa <handa@m17n.org>
18822
18823 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
18824 lookup_face.
18825
18826 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
18827
18828 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
18829
18830 2008-02-01 Kenichi Handa <handa@m17n.org>
18831
18832 * coding.c: Cancel the change done in HEAD on 2008-02-01.
18833 (coding_charset_list): New function.
18834
18835 * coding.h (coding_charset_list): Extern it.
18836
18837 2008-02-01 Kenichi Handa <handa@m17n.org>
18838
18839 * fontset.c (Fset_fontset_font): Call find_font_encoding with
18840 concatenation of family and registry.
18841
18842 2008-02-01 Kenichi Handa <handa@m17n.org>
18843
18844 * character.h (BYTE8_STRING): Fix typo.
18845
18846 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
18847 string to multibyte (sync to HEAD).
18848
18849 * casefiddle.c (casify_region): Handle changes in byte-length
18850 using replace_range_2 (sync to HEAD).
18851
18852 2008-02-01 Andreas Schwab <schwab@suse.de>
18853
18854 * chartab.c (map_char_table): GCPRO table and arg.
18855
18856 2008-02-01 Kenichi Handa <handa@m17n.org>
18857
18858 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
18859 already at limit.
18860
18861 2008-02-01 Kenichi Handa <handa@m17n.org>
18862
18863 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
18864 instead of fast_c_string_match_ignore_case.
18865 (find_font_encoding): Change argument to Lisp_Object. Use
18866 fast_string_match_ignore_case instead of
18867 fast_c_string_match_ignore_case. Change caller.
18868
18869 2008-02-01 Kenichi Handa <handa@m17n.org>
18870
18871 * xdisp.c (get_next_display_element): In unibyte case, decide to
18872 display in octal form by checking a character by
18873 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
18874
18875 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
18876
18877 * character.c (unibyte_has_multibyte_table): New variable.
18878
18879 * character.h (unibyte_has_multibyte_table): Extern it.
18880 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
18881
18882 2008-02-01 Kenichi Handa <handa@m17n.org>
18883
18884 * coding.c (encode_coding_iso_2022): Fix handling of charset
18885 annotation.
18886
18887 2008-02-01 Kenichi Handa <handa@m17n.org>
18888
18889 * coding.c (setup_coding_system): If coding_system is nil, use
18890 Qundecided.
18891 (Fterminal_coding_system): Return nil if terminal coding system is
18892 `undecided'.
18893 (syms_of_coding): Define coding-system `undecided' here. Setup
18894 terminal_coding as `undecided'.
18895
18896 2008-02-01 Kenichi Handa <handa@m17n.org>
18897
18898 * xdisp.c (message_dolog, set_message_1): Call
18899 unibyte_char_to_multibyte with arg type int.
18900
18901 * lread.c (read1): Fix reading of a char-table.
18902
18903 * print.c (print_object): Include sub char-table in circularities
18904 detection.
18905
18906 2008-02-01 Kenichi Handa <handa@m17n.org>
18907
18908 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
18909 Append the found sequences in car of ARGS instead of prepending.
18910
18911 2008-02-01 Kenichi Handa <handa@m17n.org>
18912
18913 * fileio.c (report_file_error): Make a unibyte string from
18914 strerror (errorno).
18915 (Fsubstitute_in_file_name): Fix the arg to
18916 unibyte_char_to_multibyte. It is evaluated twice.
18917
18918 2008-02-01 Kenichi Handa <handa@m17n.org>
18919
18920 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
18921
18922 2008-02-01 Kenichi Handa <handa@m17n.org>
18923
18924 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
18925 BOM is not found.
18926 (detect_coding, detect_coding_system): Optimization for ISO-2022
18927 when no 8-bit data is found.
18928
18929 2008-02-01 Jason Rumney <jasonr@gnu.org>
18930
18931 * w32fns.c (x_to_w32_font): Update to use new coding struct.
18932
18933 2008-02-01 Kenichi Handa <handa@m17n.org>
18934
18935 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
18936 CHARS.
18937
18938 2008-02-01 Steven Tamm <steventamm@mac.com>
18939
18940 * macterm.c (mac_encode_char): Add charset argument and update
18941 to use encoding_type.
18942 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
18943 switch to pure fontset.
18944 (decode_mac_font_name): Temporarily remove decoding.
18945 (x_font_name_to_mac_font_name): Temporarily remove encoding.
18946 (x_load_font): Temporarily remove encoding.
18947
18948 2008-02-01 Kenichi Handa <handa@m17n.org>
18949
18950 * xfaces.c (Fface_font): If frame is not on a window system,
18951 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
18952 refer to face->font.
18953 (split_font_name_into_vector, build_font_name_from_vector)
18954 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
18955 when HAVE_WINDOW_SYSTEM is defined.
18956
18957 2008-02-01 Kenichi Handa <handa@m17n.org>
18958
18959 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
18960 (x_produce_glyphs): Fix setting of members of cmp in case
18961 cmp->glyph_len is zero.
18962
18963 * fontset.c (Fset_fontset_font): Fix docstring.
18964 (Ffontset_info): Make it backward compatible. New arg ALL.
18965
18966 2008-02-01 Kim F. Storm <storm@cua.dk>
18967
18968 * process.c (read_process_output): Grow decoding_buf when needed;
18969 this could cause a crash in allocate_string and compact_small_strings.
18970
18971 2008-02-01 Kenichi Handa <handa@m17n.org>
18972
18973 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
18974
18975 2008-02-01 Kenichi Handa <handa@m17n.org>
18976
18977 * coding.c (setup_coding_system): Set coding->common_flags
18978 correctly for raw-text.
18979 (consume_chars): On encoding unibyte text by raw-text, don't check
18980 multibyte form.
18981 (encode_coding): On encoding by raw-text, never use translation tables.
18982
18983 * fileio.c (e_write): Short cut for the case of no encoding.
18984
18985 2008-02-01 Kenichi Handa <handa@m17n.org>
18986
18987 * coding.c (detect_coding, detect_coding_system): Delete unused
18988 variables.
18989
18990 2008-02-01 Kenichi Handa <handa@m17n.org>
18991
18992 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
18993 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
18994
18995 2008-02-01 Kenichi Handa <handa@m17n.org>
18996
18997 * coding.c (Ffind_coding_systems_region_internal): Include
18998 raw-text and no-conversion in the result.
18999
19000 2008-02-01 Kenichi Handa <handa@m17n.org>
19001
19002 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
19003 (load_font_get_repertory): Delete unnecessary check of ENCODING of
19004 FONT_DEF.
19005 (font_def_arg, add_arg, from_arg, to_arg): New args.
19006 (set_fontset_font): Change argument.
19007 (Fset_fontset_font): Fix for the case that TARGET is a script
19008 name and charset name.
19009 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
19010
19011 2008-02-01 Kenichi Handa <handa@m17n.org>
19012
19013 * fontset.c (fontset_font): Rename from fontset_face. Change return
19014 value.
19015 (face_suitable_for_char_p, face_for_char): Adjust for the change
19016 of fontset_font.
19017 (make_fontset_for_ascii_face): Fix setting of the fontset element
19018 for ASCII.
19019 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
19020 to get a font name.
19021 (Ffontset_info): Adjust for the change of fontset_font.
19022
19023 * coding.c (emacs_mule_char): Check invalid code more rigidly.
19024
19025 * character.h (LEADING_CODE_LATIN_1_MIN)
19026 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
19027
19028 2008-02-01 Kenichi Handa <handa@m17n.org>
19029
19030 * editfns.c (check_translation): New function.
19031 (Ftranslate_region_internal): Handle M:N mapping.
19032
19033 2008-02-01 Kenichi Handa <handa@m17n.org>
19034
19035 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
19036
19037 2008-02-01 Kenichi Handa <handa@m17n.org>
19038
19039 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
19040 goto invalid_code.
19041 (decode_coding_iso_2022): Fix handling of invalid designation.
19042
19043 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
19044 after calling code_conversion_save.
19045
19046 2008-02-01 Kenichi Handa <handa@m17n.org>
19047
19048 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
19049
19050 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
19051
19052 * fontset.c: Include "intervals.h".
19053 (fontset_face): Fix comparing of Lisp_Objects.
19054 (free_face_fontset, new_fontset_from_font_name): Fix
19055 Lisp_Object/int mixup.
19056
19057 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
19058
19059 * coding.c: Add many prototypes for static functions.
19060 (get_translation_table): Allow max_lookup to be NULL.
19061 (decode_coding, Ffind_coding_systems_region_internal)
19062 (Funencodable_char_position, Fcheck_coding_systems_region): Call
19063 get_translation_table with max_lookup NULL.
19064
19065 2008-02-01 Kenichi Handa <handa@m17n.org>
19066
19067 * coding.c (get_translation_table): Declare it as Lisp_Object.
19068 (LOOKUP_TRANSLATION_TABLE): New macro.
19069 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
19070 instead of CHAR_TABLE_REF.
19071
19072 2008-02-01 Kenichi Handa <handa@m17n.org>
19073
19074 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
19075 annotation data format.
19076 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
19077 Change arguments FROM and TO to single argument NCHARS. Change caller.
19078 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
19079 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
19080 (decode_coding_ccl, decode_coding_charset): Pay attention to
19081 coding->charbuf_used.
19082 (get_translation): New function.
19083 (produce_chars): New arguments translation_table and last_block.
19084 Translate characters here. Return number of carryover chars.
19085 Change caller.
19086 (produce_composition): New argument pos. Change caller.
19087 Adjust for the change of annotation data format.
19088 (produce_charset, produce_annotation): Likewise.
19089 (decode_coding, encode_coding): Don't call translate_chars.
19090 (consume_chars): New arg translation_table. Change caller.
19091 (translate_chars): Delete.
19092 (syms_of_coding): Make translation-table's number of extra slots 2.
19093
19094 2008-02-01 Kenichi Handa <handa@m17n.org>
19095
19096 * search.c (simple_search): Fix setting this_pos_byte in backward
19097 search.
19098
19099 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
19100 byte sequence.
19101 (detect_coding_ccl): Fix setting of the variable valids.
19102
19103 2008-02-01 Kenichi Handa <handa@m17n.org>
19104
19105 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
19106
19107 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
19108
19109 * editfns.c (Ftranslate_region_internal): Rename from
19110 Ftranslate_region. Accept a char-table in TABLE.
19111 (syms_of_editfns): Defsubr Stranslate_region_internal.
19112
19113 * xfaces.c (set_lface_from_font_name): If a font is specified for
19114 a frame, generate a fontset from the font.
19115 (build_scalable_font_name): If the scalable font is requested for
19116 a specific size, don't change that size.
19117 (try_font_list): Try a scalable font also in the case that a
19118 pattern string is specified.
19119
19120 2008-02-01 Kenichi Handa <handa@m17n.org>
19121
19122 * xfaces.c (Fface_font): New optional arg CHARACTER.
19123
19124 2008-02-01 Kenichi Handa <handa@m17n.org>
19125
19126 * charset.h (CHARSET_OFFSET): New macro.
19127
19128 2008-02-01 Kenichi Handa <handa@m17n.org>
19129
19130 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
19131
19132 * fontset.c (fontset_face): Handle the case that repertory is a
19133 char-table.
19134 (find_font_encoding): Return nil for unknown encoding.
19135 (Fset_fontset_font): Ignore a font of unknown encoding.
19136
19137 2008-02-01 Kenichi Handa <handa@m17n.org>
19138
19139 * keymap.c (describe_vector): Handle default value of a char table.
19140
19141 * fontset.c (fontset_face): Handle fallback fonts correctly.
19142 (Ffontset_info): Return infomation about fallback fonts.
19143
19144 2008-02-01 Kenichi Handa <handa@m17n.org>
19145
19146 * fontset.c (FONTSET_DEFAULT): New macro.
19147 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
19148 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
19149 the case that it is nil.
19150 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
19151 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
19152
19153 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
19154 subset or superset.
19155
19156 2008-02-01 Kenichi Handa <handa@m17n.org>
19157
19158 * emacs.c (main): Call init_charset after syms_of_XXX.
19159
19160 * charset.c (Vcharset_map_directory): Delete.
19161 (Vcharset_map_path): New variable.
19162 (load_charset_map_from_file): Use Vcharset_map_path instead.
19163 (init_charset): Initialize Vcharset_map_path.
19164 (syms_of_charset): Delete declaration of "charset-map-directory",
19165 add declaration of "charset-map-path".
19166
19167 2008-02-01 Kenichi Handa <handa@m17n.org>
19168
19169 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
19170 ASCII only string.
19171
19172 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
19173
19174 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
19175 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
19176
19177 2008-02-01 Kenichi Handa <handa@m17n.org>
19178
19179 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
19180
19181 * coding.c (QCmnemonic, QCdefalut_char)
19182 (QCdecode_translation_table, QCencode_translation_table)
19183 (QCpost_read_conversion, QCpre_write_conversion): New variables.
19184 (get_translation_table): Return a list of translation tables if
19185 necessary.
19186 (decode_coding): Call get_translation_table with ENCODEP 0.
19187 (char_encodable_p): If translation_table is non-nil, always call
19188 translate_char.
19189 (Fdefine_coding_system_internal): Accept list of translation
19190 tables as :encode-translation-table and :decode-translation-table.
19191 (Fcoding_system_put): New function.
19192 (syms_of_coding): Declare new symbols. Defsubr
19193 Scoding_system_put.
19194 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
19195 typically JISX0212.
19196
19197 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
19198 when the charset is superset type.
19199
19200 * character.c (translate_char): Accept list of translation tables.
19201
19202 2008-02-01 Kenichi Handa <handa@m17n.org>
19203
19204 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
19205 (CODING_ATTR_TRANS_TBL): New macro.
19206
19207 * coding.c (get_translation_table): New function.
19208 (translate_chars): Fix the bug of skipping annotation data.
19209 (decode_coding, encode_coding): Utilize get_translation_table.
19210 (char_encodable_p, Funencodable_char_position): Translate char if
19211 necessary.
19212 (Ffind_coding_systems_region_internal)
19213 (Fcheck_coding_systems_region): Setup translation table for encode
19214 in a coding system attribute vector in advance.
19215 (Fdefine_coding_system_internal): Allow a symbol as translation
19216 table. For shift-jis type coding system, allow 4th charset.
19217
19218 2008-02-01 Kenichi Handa <handa@m17n.org>
19219
19220 * coding.c (decode_coding_sjis): Check the first byte rigidly.
19221
19222 * xdisp.c (get_next_display_element): Pass -1 as POS to
19223 FACE_FOR_CHAR if displaying a C-string.
19224
19225 2008-02-01 Kenichi Handa <handa@m17n.org>
19226
19227 * composite.c (get_composition_id): Handle xoff and yoff in a
19228 composition rule.
19229
19230 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
19231 (struct composition): New member lbearing and rbearing.
19232
19233 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
19234 (x_get_glyph_overhangs): Handle a composition glyph.
19235 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
19236
19237 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
19238 composition glyph.
19239
19240 2008-02-01 Kenichi Handa <handa@m17n.org>
19241
19242 * print.c: Include charset.h.
19243 (Vprint_charset_text_property): New variable.
19244 (Qdefault): Extern it.
19245 (PRINT_STRING_NON_CHARSET_FOUND)
19246 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
19247 (print_check_string_result): New variable.
19248 (print_check_string_charset_prop): New function.
19249 (print_prune_charset_plist): New variable.
19250 (print_prune_string_charset): New function.
19251 (print_object): Call print_prune_string_charset if
19252 Vprint_charset_text_property is not t.
19253 (print_interval): Print nothing if interval->plist is nil.
19254 (syms_of_print): Declare Vprint_charset_text_property as a lisp
19255 variable. Init and staticpro print_prune_charset_plist.
19256
19257 2008-02-01 Kenichi Handa <handa@m17n.org>
19258
19259 * fontset.c (new_fontset_from_font_name): Use the specified font
19260 for all characters in the new fontset.
19261
19262 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
19263 OBJECT args.
19264
19265 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
19266 OBJECT args for composition too.
19267
19268 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
19269 OBJECT args.
19270
19271 2008-02-01 Kenichi Handa <handa@m17n.org>
19272
19273 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
19274
19275 * fontset.c (reorder_font_vector): Adjust for the change of
19276 FONT_DEF format.
19277 (fontset_face): New arg id. Change caller.
19278 (face_for_char): New args pos and object.
19279 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
19280 (fs_query_fontset): Check NAME by Fassoc too.
19281 (Fset_fontset_font): Allow non-XLFD font name.
19282 (Ffontset_info): Adjust for the change of FONT_DEF format.
19283
19284 * fontset.h (face_for_char): Adjust prototype.
19285
19286 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
19287 (append_space, extend_face_to_end_of_line)
19288 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
19289 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
19290
19291 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
19292 POS and OBJECT args.
19293
19294 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
19295 POS and OBJECT args.
19296
19297 2008-02-01 Jason Rumney <jasonr@gnu.org>
19298
19299 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
19300 of GlobalAlloc'ed memory.
19301
19302 2008-02-01 Kenichi Handa <handa@m17n.org>
19303
19304 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
19305
19306 * charset.h (charset_table_used): Delete extern.
19307
19308 * charset.c (charset_table_used): Make it static.
19309 (map_charset_chars): Fix args to c_function with.
19310
19311 * chartab.c (map_sub_char_table_for_charset): Fix args to
19312 c_function with.
19313
19314 * coding.h (enum coding_result_code): Delete
19315 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
19316
19317 * coding.c (Qinsufficient_source, Qinconsistent_eol)
19318 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
19319 (Vlast_code_conversion_error): New variables.
19320 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
19321 (ONE_MORE_BYTE): Record error if any instead of signaling an
19322 error. If non-ASCII multibyte char is found, return the negative
19323 value of the code. All callers changed to check it.
19324 (ONE_MORE_BYTE_NO_CHECK): Likewise.
19325 (record_conversion_result): New function. Change all codes setting
19326 coding->result to call this function.
19327 (detect_coding_utf_8, decode_coding_utf_8)
19328 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
19329 Don't use the local variable incomplete.
19330 (emacs_mule_char): Change the second arg to `const'.
19331 (decode_coding): Fix of flushing out unprocessed data.
19332 (make_conversion_work_buffer): Fix making of a work buffer.
19333 (decode_coding_object): Return coding->dst_object.
19334
19335 * fontset.c (set_fontset_font): Fix args.
19336
19337 * lisp.h (CHARACTERBITS): Define as 22.
19338
19339 * process.c (send_process): Be sure to set coding->src_multibyte.
19340
19341 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
19342
19343 2008-02-01 Kenichi Handa <handa@m17n.org>
19344
19345 * xdisp.c (handle_auto_composed_prop): Give limit to
19346 Fnext_single_char_property_change.
19347
19348 2008-02-01 Kenichi Handa <handa@m17n.org>
19349
19350 * composite.c (syms_of_composite): Don't make the composition hash
19351 table weak.
19352
19353 * fontset.c (Fset_fontset_font): Fix docstring.
19354
19355 * lisp.h (detect_coding_system): Adjust prototype.
19356
19357 * fileio.c (kill_workbuf_unwind): Delete this function.
19358 (Finsert_file_contents): Adjust the call of detect_coding_system.
19359 Get conversion_buffer by code_conversion_save. Use the macro
19360 CODING_MAY_REQUIRE_DECODING. After decoding, update
19361 coding_system.
19362
19363 * coding.h (make_conversion_work_buffer): Delete extern.
19364 (code_conversion_save): Extern it.
19365
19366 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
19367 (CODING_GET_INFO): Delete argument eol_type. Change callers.
19368 (decode_coding_utf_8): Don't do eol converion.
19369 (detect_coding_utf_16): Check coding->src_chars, not
19370 coding->src_bytes. Add heuristics for those that have no signature.
19371 (decode_coding_emacs_mule, decode_coding_iso_2022)
19372 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
19373 Don't do eol converion.
19374 (adjust_coding_eol_type): Return a new coding system.
19375 (detect_coding): Don't detect eol. Fix for utf-16 detection.
19376 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
19377 each change.
19378 (decode_coding): Pay attention to undo_list. Do eol conversion for
19379 all types of coding-systems (if necessary).
19380 (Vcode_conversion_work_buf_list): Delete it.
19381 (Vcode_conversion_reused_workbuf): Rename from
19382 Vcode_conversion_reused_work_buf.
19383 (Vcode_conversion_workbuf_name): New variable.
19384 (reused_workbuf_in_use): New variable.
19385 (make_conversion_work_buffer): Delete the arg DEPTH.
19386 (code_conversion_restore): Change argument to cons.
19387 (code_conversion_save): Delete the argument BUFFER. Change callers.
19388 (detect_coding_system): New argument src_chars. Change callers.
19389 Fix for utf-16 detection.
19390 (init_coding_once): Don't use ISO_carriage_return.
19391 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
19392 reused_workbuf_in_use.
19393
19394 2008-02-01 Kenichi Handa <handa@m17n.org>
19395
19396 * keymap.c (store_in_keymap): Pay attention to the case that idx
19397 is a cons specifying a character range.
19398
19399 2008-02-01 Kenichi Handa <handa@m17n.org>
19400
19401 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
19402 HANDLED_RECOMPUTE_PROPS.
19403
19404 * coding.c (Fdefine_coding_system_internal): Fix checking of
19405 ascii compatibility.
19406
19407 2008-02-01 Kenichi Handa <handa@m17n.org>
19408
19409 * charset.c (find_charsets_in_text): Delete unused locale variable.
19410 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
19411
19412 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
19413 Resync charset_list to Vemacs_mule_charset_list.
19414
19415 * keymap.c (store_in_keymap): Pay attention to the case that idx
19416 is a cons specifying a character range.
19417
19418 2008-02-01 Kenichi Handa <handa@m17n.org>
19419
19420 * composite.c (update_compositions): Bind inhibit-read-only, etc
19421 to t before calling remove-list-of-text-properties.
19422
19423 * print.c (print_object): Always print ASCII chars as is.
19424
19425 2008-02-01 Kenichi Handa <handa@m17n.org>
19426
19427 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
19428
19429 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
19430 is a char table.
19431
19432 2008-02-01 Kenichi Handa <handa@m17n.org>
19433
19434 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
19435
19436 2008-02-01 Kenichi Handa <handa@m17n.org>
19437
19438 * xfaces.c (set_lface_from_font_name): Fix for the case that
19439 FONTNAME is not fontset name.
19440
19441 2008-02-01 Kenichi Handa <handa@m17n.org>
19442
19443 * fns.c (base64_encode_1): Fix previous change.
19444
19445 2008-02-01 Kenichi Handa <handa@m17n.org>
19446
19447 * fontset.c (set_fontset_font): New function.
19448 (Fset_fontset_font): If a font is specified for a charset, use
19449 map_charset_chars to store the font spec in a fontset.
19450
19451 2008-02-01 Kenichi Handa <handa@m17n.org>
19452
19453 * fontset.c (fontset_face): Create a fallback fontset on demand.
19454 (make_fontset): Don't create a fallback fontset here.
19455 (free_face_fontset): Free a fallback fontset (if any) too.
19456 (n_auto_fontsets): Delete this variable.
19457 (auto_fontset_alist): New variable.
19458 (new_fontset_from_font_name): Check auto_fontset_alist.
19459 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
19460 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
19461 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
19462 Defsubr Sfontset_list_all.
19463
19464 2008-02-01 Kenichi Handa <handa@m17n.org>
19465
19466 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
19467
19468 2008-02-01 Kenichi Handa <handa@m17n.org>
19469
19470 * fontset.c (Fnew_fontset): Check NAME more rigidly.
19471
19472 2008-02-01 Kenichi Handa <handa@m17n.org>
19473
19474 * editfns.c (Fgoto_char): Fix docstring.
19475
19476 2008-02-01 Kenichi Handa <handa@m17n.org>
19477
19478 * insdel.c (insert_from_gap): Adjust intervals correctly.
19479
19480 2008-02-01 Jason Rumney <jasonr@gnu.org>
19481
19482 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
19483 (pfnGetFontUnicodeRanges): New dynamically loaded function.
19484 (w32_initialize): Try to load it.
19485 (x_get_font_repertory): Use it if available.
19486 (w32_encode_char): Add shortcut for unicode output.
19487
19488 * w32fns.c (w32_load_system_font): Default charset to -1.
19489 (x_to_w32_charset): Match all fonts for unicode.
19490 (w32_to_x_charset): New parameter matching. Don't return partial
19491 or wildcard charsets.
19492 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
19493 (w32_codepage_for_font): Return CP_UNICODE for unicode.
19494 (w32_to_x_font): Match charset to real charset.
19495 (enum_font_cb2): Always list unicode versions.
19496
19497 * makefile.w32-in (temacs): Increase EMHEAP.
19498
19499 2008-02-01 Jason Rumney <jasonr@gnu.org>
19500
19501 * w32term.c (w32_encode_char): New charset parameter.
19502 font_info.encoding becomes encoding_type.
19503 (x_get_font_repertory): New function. Warning: stub only!
19504 (x_new_font): Return quickly if font already set.
19505 (x_new_fontset): fontsetname parameter is Lisp_Object.
19506 Use new fs_query_fontset. Try new_fontset_from_font_name.
19507 Use fontset_name for return value.
19508
19509 * w32term.h: Declare x_get_font_repertory.
19510
19511 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
19512 place of find_charset_in_text. Use encode_coding_object in place
19513 of encode_coding.
19514 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
19515 decode_coding.
19516
19517 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
19518 of x_new_fontset.
19519 (w32_load_system_font): Initialize charset as unicode.
19520 font_info.encoding becomes encoding_type.
19521 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
19522 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
19523 (syms_of_w32fns): Set get_font_repertory_func.
19524
19525 * w32console.c: Include character.h. Use terminal_encode_buffer
19526 from term.c.
19527 (write_glyphs): Use new version of encode_terminal_code. Use
19528 encode_coding_object in place of encode_coding.
19529
19530 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
19531 encoding becomes encoding_type.
19532
19533 * term.c (terminal_encode_buffer): Make externally visible.
19534
19535 * makefile.w32-in: Add character.h dependancies.
19536 (character.o, chartab.o): New targets.
19537
19538 2008-02-01 Kenichi Handa <handa@m17n.org>
19539
19540 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
19541 CODING_ID_EOL_TYPE.
19542
19543 2008-02-01 Andreas Schwab <schwab@suse.de>
19544
19545 * coding.c (produce_chars): Revert last change.
19546
19547 2008-02-01 Kenichi Handa <handa@m17n.org>
19548
19549 * charset.h (charset_unicode): Extern it.
19550
19551 * charset.c (string_xstring_p): Check by (C >= 0x100).
19552 (find_charsets_in_text): Change format of the arc CHARSETS. New
19553 arg MULTIBYTE.
19554 (Ffind_charset_region, Ffind_charset_string): Adjust for the
19555 change of find_charsets_in_text.
19556 (Fsplit_char): Fix doc. Never return unknown.
19557
19558 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
19559
19560 * coding.c (Fdefine_coding_system_alias): Update
19561 Vcoding_system_list.
19562
19563 * fontset.c (load_font_get_repertory): Pay attention to the case
19564 that ENCODING of a font is specified by a char-table.
19565
19566 * xterm.c (x_get_font_repertory): Handle the case that the
19567 encoding of font is other than Unicode.
19568
19569 2008-02-01 Kenichi Handa <handa@m17n.org>
19570
19571 * term.c (encode_terminal_code): Don't handle glyph-table. Check
19572 if a character is encodable by the terminal coding system. If
19573 not, produces proper number of `?'s. Update
19574 terminal_encode_buffer and terminal_encode_buf_size if necessary.
19575 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
19576
19577 2008-02-01 Kenichi Handa <handa@m17n.org>
19578
19579 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
19580 variables.
19581 (encode_terminal_code): Change argument. Encode multiple
19582 characters at once. Store the result of encoding in
19583 terminal_encode_buffer.
19584 (write_glyphs, insert_glyphs): Adjust for the change of
19585 encode_terminal_code.
19586 (term_init): Initialize terminal_encode_buffer and
19587 terminal_encode_buf_size.
19588
19589 * coding.c (consume_chars): If coding->src_object is nil, don't
19590 check annotation.
19591
19592 2008-02-01 Kenichi Handa <handa@m17n.org>
19593
19594 * character.c (char_string): Use ASCII_CHAR_P instead of
19595 SINGLE_BYTE_CHAR_P.
19596
19597 2008-02-01 Kenichi Handa <handa@m17n.org>
19598
19599 * xdisp.c (handle_auto_composed_prop): Check if the last
19600 characters of auto-composed region is newly composed with the
19601 following characters.
19602 (handle_composition_prop): Fix checking of point being inside
19603 composition.
19604
19605 2008-02-01 Kenichi Handa <handa@m17n.org>
19606
19607 * fns.c (concat): Don't change multibyteness of the result by
19608 concatenating an 8-bit character.
19609
19610 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
19611 multibyteness of the result when newelt is an 8-bit character.
19612
19613 2008-02-01 Dave Love <fx@gnu.org>
19614
19615 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
19616 EMACS_INT.
19617
19618 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
19619
19620 * xfaces.c (face_numeric_value): Declare dim size_t.
19621 (Finternal_lisp_face_equal_p): Remove unused f.
19622
19623 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
19624 (MATRIX_ROW): Remove unused vars.
19625 (draw_glyphs, x_insert_glyphs, fast_find_position)
19626 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
19627 byte/char counts.
19628
19629 * regex.c (regex_compile): Remove unused var.
19630
19631 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
19632
19633 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
19634 (Faccessible_keymaps, where_is_internal): Remove unused vars.
19635
19636 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
19637
19638 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
19639
19640 * fileio.c (Fwrite_region): Remove unused var.
19641
19642 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
19643 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
19644
19645 * composite.c (Fremove_list_of_text_properties): Declare.
19646
19647 * coding.c (inhibit_pre_post_conversion): Remove (unused).
19648 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
19649 (coding_inherit_eol_type): Remove unused attrs.
19650 (detect_coding): Cast arg of detect_eol.
19651
19652 * charset.c (syms_of_charset): Remove unused var p.
19653 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
19654 byte/char counts.
19655
19656 * casetab.c (set_case_table): Remove unused var.
19657
19658 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
19659 unused vars.
19660
19661 2008-02-01 Dave Love <fx@gnu.org>
19662
19663 * xterm.c (x_bitmap_mask): Declare.
19664
19665 2008-02-01 Dave Love <fx@gnu.org>
19666
19667 * xterm.c (x_term_init): Fix type error.
19668
19669 * lisp.h: Add Funibyte_char_to_multibyte.
19670
19671 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
19672 (Fset_coding_system_priority): Doc fix.
19673
19674 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
19675
19676 * indent.c (check_composition): Make start and end EMACS_INT.
19677
19678 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
19679
19680 * xdisp.c (handle_composition_prop, check_point_in_composition):
19681 Make buffer positions EMACS_INT.
19682
19683 * composite.c (find_composition, run_composition_function)
19684 (update_compositions, Ffind_composition_internal): Make buffer
19685 positions EMACS_INT.
19686
19687 * composite.h (find_composition, update_compositions): Make
19688 position args EMACS_INT.
19689
19690 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
19691
19692 * intervals.c (get_property_and_range):
19693 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
19694
19695 * unexalpha.c: Don't include varargs.h.
19696
19697 2008-02-01 Dave Love <fx@gnu.org>
19698
19699 * coding.h (ENCODE_UTF_8): New.
19700
19701 * Makefile.in (gtkutil.o): Depend on coding.h.
19702
19703 * coding.c (Fset_coding_system_priority): Doc fix.
19704
19705 2008-02-01 Kenichi Handa <handa@m17n.org>
19706
19707 * fileio.c (Finsert_file_contents): Call setup_coding_system in
19708 the case of auto saving.
19709
19710 2008-02-01 Andreas Schwab <schwab@suse.de>
19711
19712 * chartab.c (map_char_table, map_char_table_for_charset): Protect
19713 `range' from GC.
19714
19715 2008-02-01 Kenichi Handa <handa@m17n.org>
19716
19717 * coding.c (decode_coding_sjis): Check bytes more rigidly.
19718
19719 2008-02-01 Kenichi Handa <handa@m17n.org>
19720
19721 * fileio.c (choose_write_coding_system): Return a decided coding system.
19722 (Fwrite_region): Set Vlast_coding_system_used to the return value
19723 of choose_write_coding_system.
19724
19725 2008-02-01 Kenichi Handa <handa@m17n.org>
19726
19727 * charset.c (Fset_charset_priority): Pay attention to duplicated
19728 arguments.
19729
19730 * coding.c (QCcategory): New variable.
19731 (syms_of_coding): Defsym it. Set all elements of
19732 Vcoding_category_table and their symbol values.
19733 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
19734 coding-category-XXX, and coding-category-list.
19735 (Fdefine_coding_system_internal): Add category in the plist.
19736
19737 2008-02-01 Kenichi Handa <handa@m17n.org>
19738
19739 * callproc.c (Fcall_process): Handle carryover correctly.
19740
19741 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
19742 (raw_text_coding_system): Check NILP (coding_system).
19743 (coding_inherit_eol_type): Check NILP (coding_system) and
19744 NILP (parent).
19745 (consume_chars): Fix for the case of raw-text.
19746
19747 * process.c (read_process_output): Handle carryover correctly.
19748
19749 2008-02-01 Dave Love <fx@gnu.org>
19750
19751 * regex.c (re_search_2): Fix last change.
19752
19753 2008-02-01 Kenichi Handa <handa@m17n.org>
19754
19755 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
19756 target_multibyte. Even in a unibyte case, return a converted
19757 multibyte char.
19758 (GET_CHAR_AFTER): New macro.
19759 (PATFETCH): Translate via multibyte char.
19760 (HANDLE_UNIBYTE_RANGE): Delete this macro.
19761 (SETUP_MULTIBYTE_RANGE): New macro.
19762 (regex_compile): Setup compiled code so that its multibyteness
19763 matches that of a target. Fix the handling of "[X-YZ]" using
19764 SETUP_MULTIBYTE_RANGE.
19765 (analyse_first) <charset>: For filling fastmap for all multibyte
19766 characters, don't check by BASE_LEADING_CODE_P.
19767 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
19768 the same as RE_MULTIBYTE_P (bufp) now.
19769 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
19770 (TARGET_CHAR_AND_LENGTH): Delete this macro.
19771 (TRANSLATE_VIA_MULTIBYTE): New macro.
19772 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
19773 It is the same as RE_MULTIBYTE_P (bufp) now.
19774 <exactn>: Translate via multibyte.
19775 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
19776 translate it.
19777 <charset, charset_not>: Fetch a character by
19778 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
19779 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
19780 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
19781 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
19782 by GET_CHAR_AFTER.
19783 (bcmp_translate): Likewise.
19784
19785 * search.c (compile_pattern): Check the member target_multibyte,
19786 not the member multibyte of buf.
19787
19788 * lread.c (read1): While reading a string, set force_singlebyte
19789 and force_multibyte correctly.
19790
19791 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
19792 up of unibyte_to_multibyte_table.
19793
19794 2008-02-01 Kenichi Handa <handa@m17n.org>
19795
19796 * coding.c (setup_coding_system): If coding has
19797 post-read-conversion or pre-write-conversion, set
19798 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
19799 respectively.
19800 (decode_coding_gap): Run post-read-conversion if any.
19801
19802 * fileio.c (Finsert_file_contents): Even if we read into a
19803 unibyte buffer, check if we must decode the result or not.
19804
19805 2008-02-01 Kenichi Handa <handa@m17n.org>
19806
19807 * coding.c (make_conversion_work_buffer): Change the work buffer
19808 name to the same one as that of Emacs 21.
19809
19810 2008-02-01 Kenichi Handa <handa@m17n.org>
19811
19812 * coding.h (make_conversion_work_buffer): Adjust prototype.
19813 (code_conversion_restore): Don't extern it.
19814
19815 * coding.c (detected_mask): Delete unused variable.
19816 (decode_coding_iso_2022): Pay attention to the byte sequence of
19817 CTEXT extended segment, and retain those bytes as is.
19818 (decode_coding_ccl): Delete unused variable `valids'.
19819 (setup_coding_system): Delete unused variable `category'.
19820 (consume_chars): Delete unused variable `category'. Make it work
19821 for non-multibyte case.
19822 (make_conversion_work_buffer): Change argument.
19823 (saved_coding): Delete unused variable.
19824 (code_conversion_restore): Don't check saved_coding->destination.
19825 (code_conversion_save): New function.
19826 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
19827 instead of record_unwind_protect.
19828 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
19829 (detect_coding_system): Delete unused variable `mask'.
19830 (Fdefine_coding_system_internal): Delete unused variable id.
19831
19832 * fileio.c (kill_workbuf_unwind): New function.
19833 (Finsert_file_contents): On replacing, call
19834 make_conversion_work_buffer with correct args, and call
19835 record_unwind_protect with the first arg kill_workbuf_unwind.
19836
19837 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
19838
19839 2008-02-01 Kenichi Handa <handa@m17n.org>
19840
19841 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
19842 (fontset_add): Fix for the case that TO is less than TO1.
19843 (Ffontset_info): Don't use fallback fontset on checking the
19844 default fontset.
19845 (dump_fontset): New function for debugging.
19846
19847 * coding.c (Fdefine_coding_system_internal): Fix for the case that
19848 coding_type is Qcharset.
19849
19850 2008-02-01 Kenichi Handa <handa@m17n.org>
19851
19852 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
19853 (map_char_table): Don't inherit the value from the parent on
19854 initializing VAL. Adjust for the above change.
19855
19856 2008-02-01 Kenichi Handa <handa@m17n.org>
19857
19858 * coding.c (Qsignature, Qendian): Delete these variables.
19859 (syms_of_coding): Don't initialize them.
19860 (CATEGORY_MASK_UTF_16_AUTO): New macro.
19861 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
19862 detect_info->found.
19863 (decode_coding_utf_16): Don't detect BOM here.
19864 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
19865 is NOT utf_16_without_bom.
19866 (setup_coding_system): For a coding system of type utf-16, check
19867 if the attribute :endian is Qbig or not (not nil or not), and set
19868 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
19869 (detect_coding): If coding type is utf-16 and BOM detection is
19870 required, detect it.
19871 (Fdefine_coding_system_internal): For a coding system of type
19872 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
19873
19874 2008-02-01 Kenichi Handa <handa@m17n.org>
19875
19876 * coding.c (coding_set_source): Fix for the case that the current
19877 buffer is different from coding->src_object.
19878 (decode_coding_object): Don't use the conversion work buffer if
19879 DST_OBJECT is a buffer.
19880
19881 2008-02-01 Dave Love <fx@gnu.org>
19882
19883 * lread.c (read_emacs_mule_char) [len==2]: Index
19884 emacs_mule_charset correctly.
19885
19886 2008-02-01 Dave Love <fx@gnu.org>
19887
19888 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
19889 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
19890 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
19891 treated specially.)
19892 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
19893 (detected_mask): Remove Big5 bits.
19894
19895 2008-02-01 Kenichi Handa <handa@m17n.org>
19896
19897 The following changes are to make the font rescaling facility
19898 compatible with Emacs 21.
19899
19900 * xfaces.c (Vface_font_rescale_alist): Rename from
19901 Vface_resizing_fonts.
19902 (struct font_name): Rename member resizing_ratio to rescale_ratio.
19903 (font_rescale_ratio): Rename from font_resizing_ratio.
19904 (split_font_name): Set font->rescale_ratio.
19905 (better_font_p): Pay attention to font->rescale_ratio.
19906 (build_scalable_font_name): Likewise. Change RESX, and RESY
19907 fields.
19908 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
19909
19910 2008-02-01 Kenichi Handa <handa@m17n.org>
19911
19912 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
19913 (Qutf_16_le): Remove these variables.
19914 (syms_of_coding): Don't DEFSYM them.
19915 (decode_coding_utf_16): Fix handling of BOM.
19916 (encode_coding_utf_16): Fix handling of BOM.
19917
19918 2008-02-01 Kenichi Handa <handa@m17n.org>
19919
19920 * fileio.c (Finsert_file_contents): On replacing, before decoding
19921 the file into the work buffer, set point of the work buffer to the end.
19922
19923 2008-02-01 Dave Love <fx@gnu.org>
19924
19925 * coding.c (Fcheck_coding_systems_region): Fix type errors.
19926
19927 2008-02-01 Dave Love <fx@gnu.org>
19928
19929 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
19930 and fix C types.
19931
19932 2008-02-01 Kenichi Handa <handa@m17n.org>
19933
19934 * xdisp.c (SKIP_GLYPHS): New macro.
19935 (set_cursor_from_row): Pay attention to string display properties.
19936
19937 * category.c (copy_category_entry): Fix for the case that RANGE
19938 is an integer.
19939
19940 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
19941
19942 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
19943
19944 2008-02-01 Kenichi Handa <handa@m17n.org>
19945
19946 * charset.c (Fcharset_id_internal): New function.
19947 (syms_of_charset): Defsubr it.
19948
19949 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
19950 with the last arg charset_list acquired from coding.
19951 (Fdefine_coding_system_internal): For ccl-based coding system, fix
19952 the attribute coding_attr_ccl_valids.
19953
19954 * coding.h (enum define_coding_ccl_arg_index): Set the first
19955 member coding_arg_ccl_decoder to coding_arg_max.
19956
19957 * ccl.h (ccl_driver): Adjust prototype.
19958
19959 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
19960 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
19961 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
19962 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
19963 last arg Qnil.
19964
19965 2008-02-01 Kenichi Handa <handa@m17n.org>
19966
19967 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
19968 call encode_char.
19969
19970 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
19971
19972 2008-02-01 Dave Love <fx@gnu.org>
19973
19974 * composite.c (syms_of_composite): Make composition_hash_table weak.
19975
19976 2008-02-01 Kenichi Handa <handa@m17n.org>
19977
19978 * dispextern.h (check_face_attributes, generate_ascii_font_name)
19979 (font_name_registry): Don't extern them.
19980 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
19981
19982 * fontset.h (Qfontset): Don't extern it.
19983 (new_fontset_from_font_name): Extern it.
19984
19985 * fontset.c: Give 8 extra slots to fontset objects.
19986 (Qfontset_info): New variable.
19987 (syms_of_fontset): Defsym it.
19988 (FONTSET_FALLBACK): New macro.
19989 (fontset_face): Try also the default fontset.
19990 (make_fontset): Realize a fallback fontset from the default fontset.
19991 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
19992 using split_font_name_into_vector and build_font_name_from_vector.
19993 (Fset_fontset_font): Access the elements of font_spec by enum
19994 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
19995 name by using split_font_name_into_vector.
19996 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
19997 generate a proper font name from the fontset name. Update
19998 Vfontset_alias_alist.
19999 (n_auto_fontsets): New variable.
20000 (new_fontset_from_font_name): New function.
20001 (Ffont_info): Store the information about fonts generated from the
20002 default fontset in the first extra slot of the returned char-table.
20003
20004 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
20005 (font_name_registry): Delete function.
20006 (split_font_name_into_vector): New function.
20007 (build_font_name_from_vector): New function.
20008 (font_list): The argument REGISTRY is now a list of registry names.
20009 (choose_face_font): If we are choosing an ASCII font, and ATTRS
20010 specifies an explicit font name, return the name as is. Make a
20011 list of registy names.
20012
20013 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
20014 of x_new_fontset.
20015 (Fx_create_frame): Don't call x_new_fontset here. Just use
20016 x_list_fonts to check the existence of fonts.
20017
20018 * xterm.h (x_new_fontset): Adjust prototype.
20019
20020 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
20021 string. Use new_fontset_from_font_name to create a fontset from a
20022 font name.
20023
20024 2008-02-01 Kenichi Handa <handa@m17n.org>
20025
20026 * syntax.c (Vfind_word_boundary_function_table): New name for
20027 Vnext_word_boundary_function_table.
20028 (find-word-boundary-function-table): New name for
20029 next-word-boundary-function-table.
20030
20031 2008-02-01 Dave Love <fx@gnu.org>
20032
20033 * Makefile.in: Fix some dependencies.
20034
20035 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
20036 set it to nil before returning.
20037
20038 * composite.c (update_compositions): Fix type error.
20039
20040 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
20041
20042 2008-02-01 Kenichi Handa <handa@m17n.org>
20043
20044 * xterm.c (x_new_font): Optimize for the case that the font is
20045 already set for the frame.
20046
20047 2008-02-01 Kenichi Handa <handa@m17n.org>
20048
20049 * chartab.c (char_table_ascii): Check if the char table contents
20050 is sub-char-table or not.
20051 (char_table_set, char_table_set_range): Fix argument to
20052 char_table_ascii.
20053
20054 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
20055 (detect_coding_utf_8, detect_coding_utf_16)
20056 (detect_coding_emacs_mule, detect_coding_iso_2022)
20057 (detect_coding_sjis, detect_coding_big5)
20058 (detect_coding_ccl, detect_coding_charset): Change argument MASK
20059 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
20060 sequence is valid in this coding system. Change callers.
20061 (MAX_ANNOTATION_LENGTH): New macro.
20062 (ADD_ANNOTATION_DATA): New macro.
20063 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
20064 ADD_ANNOTATION_DATA. Change the format of annotation data.
20065 (ADD_CHARSET_DATA): New macro.
20066 (emacs_mule_char): New argument ID. Change callers.
20067 (decode_coding_emacs_mule, decode_coding_iso_2022)
20068 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
20069 Produce charset annotation data in coding->charbuf.
20070 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
20071 to charset annotation data in coding->charbuf.
20072 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
20073 coding->common_flags if the coding system is iso-2022 based and
20074 uses designation.
20075 (produce_composition): Adjust for the new annotation data format.
20076 (produce_charset): New function.
20077 (produce_annotation): Handle charset annotation.
20078 (handle_composition_annotation, handle_charset_annotation): New
20079 functions.
20080 (consume_chars): Handle charset annotation. Utilize the above two
20081 functions.
20082 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
20083 buffer, get the deleted text as a string and set
20084 coding->src_object to that string.
20085 (detect_coding, detect_coding_system): Use the new struct
20086 coding_detection_info.
20087
20088 * coding.h (struct coding_detection_info): New structure.
20089 (struct coding_system): Adjust prototype of the member `detector'.
20090 (CODING_ANNOTATE_CHARSET_MASK): New macro.
20091
20092 2008-02-01 Kenichi Handa <handa@m17n.org>
20093
20094 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
20095
20096 2008-02-01 Dave Love <fx@gnu.org>
20097
20098 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
20099 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
20100 to new local and nullify apropos_accumulate before returning.
20101 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
20102
20103 2008-02-01 Kenichi Handa <handa@m17n.org>
20104
20105 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
20106 correctly.
20107
20108 2008-02-01 Dave Love <fx@gnu.org>
20109
20110 * fns.c (Flanginfo): Call synchronize_system_time_locale.
20111
20112 2008-02-01 Kenichi Handa <handa@m17n.org>
20113
20114 The following changes are to make character composition happen
20115 automatically on displaying.
20116
20117 * Makefile.in (lisp, shortlisp): Add composite.elc.
20118
20119 * composite.h (Qauto_composed, Vauto_composition_function)
20120 (Qauto_composition_function): Extern them.
20121
20122 * composite.c (Vcomposition_function_table)
20123 (Qcomposition_function_table): Delete variables.
20124 (Qauto_composed, Vauto_composition_function)
20125 (Qauto_composition_function): New variables.
20126 (run_composition_function): Don't call
20127 compose-chars-after-function.
20128 (update_compositions): Clear `auto-composed' text property.
20129 (compose_chars_in_text): Delete this function.
20130 (syms_of_composite): Staticpro Qauto_composed and
20131 Qauto_composition_function. Declare Vauto_composition_function as
20132 a Lisp variable.
20133
20134 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
20135
20136 * xdisp.c (it_props): Add an entry for Qauto_composed.
20137 (handle_auto_composed_prop): New function.
20138
20139 * xselect.c (selection_data_to_lisp_data): Don't call
20140 compose_chars_in_text.
20141
20142 2008-02-01 Dave Love <fx@gnu.org>
20143
20144 * keyboard.c (read_char): Modify checking around use of
20145 Vkeyboard_translate_table.
20146
20147 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
20148 and fix C types.
20149
20150 2008-02-01 Kenichi Handa <handa@m17n.org>
20151
20152 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
20153 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
20154 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
20155 the case that the last byte is '\r' correctly.
20156 (decode_coding): Flush out the unprocessed data correctly.
20157 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
20158
20159 2008-02-01 Dave Love <fx@gnu.org>
20160
20161 * xterm.c (XTread_socket): Fix changes for defined keysyms.
20162 Add XK_ISO... case.
20163 (xaw_scroll_callback): Revert last change.
20164
20165 2008-02-01 Kenichi Handa <handa@m17n.org>
20166
20167 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
20168
20169 2008-02-01 Kenichi Handa <handa@m17n.org>
20170
20171 * xfaces.c (Vface_resizing_fonts): New variable.
20172 (struct font_name): New member `resizing_ratio'.
20173 (font_resizing_ratio): New function.
20174 (split_font_name): Set font->resizing_ratio.
20175 (better_font_p): Pay attention to font->resizing_ratio.
20176 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
20177 RESX, and RESY fields.
20178 (try_alternative_families): Try scalable fonts if
20179 Vscalable_fonts_allowed is not Qt.
20180 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
20181
20182 2008-02-01 Dave Love <fx@gnu.org>
20183
20184 * xterm.c (xaw_scroll_callback): Cast correctly.
20185
20186 2008-02-01 Dave Love <fx@gnu.org>
20187
20188 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
20189 (lispy_kana_keys): Comment out.
20190 (make_lispy_event) [XK_kana_A]: Comment out.
20191
20192 * xterm.c (xaw_scroll_callback): Cast call_data.
20193 (XTread_socket): Deal with ASCII keysyms.
20194 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
20195
20196 2008-02-01 Dave Love <fx@gnu.org>
20197
20198 * xterm.c (Vx_keysym_table): New.
20199 (syms_of_xterm): Initialize it.
20200 (XTread_socket): Use it.
20201 From head: Eliminate incorrect optimization that tried to avoid
20202 decoding the output of X*LookupString.
20203 (x_get_font_repertory): Delete charset declaration.
20204
20205 2008-02-01 Kenichi Handa <handa@m17n.org>
20206
20207 * coding.c (detect_coding_charset): If only ASCII bytes are found,
20208 return 0.
20209 (Fdefine_coding_system_internal): Setup
20210 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
20211
20212 2008-02-01 Dave Love <fx@gnu.org>
20213
20214 * coding.c (Fcheck_coding_system): Doc fix.
20215
20216 * editfns.c (Finsert_byte): Return a proper value.
20217
20218 2008-02-01 Kenichi Handa <handa@m17n.org>
20219
20220 * coding.c (decode_coding): Fix args to translate_chars. Pay
20221 attention to Vstandard_translation_table_for_decode.
20222 (encode_coding): Fix args to translate_chars. Pay attention to
20223 Vstandard_translation_table_for_encode.
20224
20225 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
20226 SINGLE_BYTE_CHAR_P.
20227
20228 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
20229 not by SINGLE_BYTE_CHAR_P.
20230
20231 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
20232 SINGLE_BYTE_CHAR_P.
20233
20234 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
20235 SINGLE_BYTE_CHAR_P.
20236
20237 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
20238 by SINGLE_BYTE_CHAR_P.
20239
20240 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
20241 SINGLE_BYTE_CHAR_P.
20242
20243 2008-02-01 Dave Love <fx@gnu.org>
20244
20245 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
20246
20247 2008-02-01 Dave Love <fx@gnu.org>
20248
20249 * fns.c (Flanginfo): Fix typo.
20250
20251 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
20252
20253 2008-02-01 Kenichi Handa <handa@m17n.org>
20254
20255 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
20256 (detect_coding_emacs_mule, detect_coding_iso_2022)
20257 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
20258 incomplete byte sequence. Don't update *mask when correctly detected.
20259 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
20260 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
20261 (detect_coding, detect_coding_system): Adjust for the changes above.
20262
20263 2008-02-01 Kenichi Handa <handa@m17n.org>
20264
20265 * character.c (char_string): Rename from
20266 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
20267 (string_char): Rename from string_char.
20268
20269 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
20270 if C is greater than MAX_3_BYTE_CHAR.
20271 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
20272 string_char instead of string_char_with_unification.
20273
20274 2008-02-01 Dave Love <fx@gnu.org>
20275
20276 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
20277
20278 2008-02-01 Kenichi Handa <handa@m17n.org>
20279
20280 * keymap.c (push_key_description): Pay attention to force_multibyte.
20281
20282 * regex.c (re_search_2): Fix for the case of unibyte buffer.
20283
20284 2008-02-01 Dave Love <fx@gnu.org>
20285
20286 * charset.c (define_charset_internal): Rename `supprementary'.
20287
20288 * Makefile.in (lisp, shortlisp): Remove latin-N.
20289
20290 2008-02-01 Dave Love <fx@gnu.org>
20291
20292 * xfns.c (x_window, x_window): Use use_xim.
20293
20294 * xterm.c (use_xim): Initialize.
20295 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
20296 (x_term_init): Maybe set use_xim.
20297
20298 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
20299
20300 2008-02-01 Kenichi Handa <handa@m17n.org>
20301
20302 * search.c (search_buffer): Fix case-fold-search of multibyte
20303 characters.
20304 (boyer_moore): Rename the last argument to char_high_bits.
20305
20306 2008-02-01 Kenichi Handa <handa@m17n.org>
20307
20308 * xdisp.c (display_string): Fix for the case of zero width glyph.
20309
20310 * xfns.c (x_set_font): Change the error message of the case that
20311 x_new_fontset returns Qt.
20312
20313 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
20314 (Finternal_set_lisp_face_attribute): Use signal_error for the
20315 error of invalid fontset.
20316
20317 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
20318 fontset, return Qt.
20319
20320 2008-02-01 Dave Love <fx@gnu.org>
20321
20322 * unexelf.c (unexec): Make .got handling not SGI-specific.
20323
20324 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
20325
20326 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
20327
20328 * keyboard.c (read_key_sequence): Fix type error.
20329
20330 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
20331 type error.
20332
20333 * fontset.c (fontset_add): Return Lisp_Object.
20334
20335 2008-02-01 Dave Love <fx@gnu.org>
20336
20337 * charset.h (charset_ordered_list_tick): Declare extern.
20338
20339 2008-02-01 Kenichi Handa <handa@m17n.org>
20340
20341 The following changes (and some of 2008-02-01 changes of mine) are
20342 for handling syntax, category, and case conversion for unibyte
20343 characters by converting them to multibyte on the fly. With these
20344 changes, we don't have to setup syntax and case tables for unibyte
20345 characters in each language environment.
20346
20347 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
20348 multibyte if necessary.
20349
20350 * bytecode.c (Fbyte_code): Likewise.
20351
20352 * character.h (LEADING_CODE_LATIN_1_MIN)
20353 (LEADING_CODE_LATIN_1_MAX): New macros.
20354 (unibyte_to_multibyte_table): Extern it.
20355 (unibyte_char_to_multibyte): New macro.
20356 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
20357 (CHAR_LEADING_CODE): New macro.
20358 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
20359
20360 * character.c (unibyte_to_multibyte_table): New variable.
20361 (unibyte_char_to_multibyte): Move to character.h and define as macro.
20362 (multibyte_char_to_unibyte): If C is an eight-bit character,
20363 convert it to the corresponding byte value.
20364
20365 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
20366 not 1, signals an error. Update the elements of
20367 unibyte_to_multibyte_table.
20368 (init_charset_once): Initialize unibyte_to_multibyte_table.
20369 (syms_of_charset): Define the charset `iso-8859-1'.
20370
20371 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
20372 as is without converting it to unibyte. In a unibyte buffer,
20373 convert C to multibyte before checking the syntax.
20374
20375 * lisp.h (unibyte_char_to_multibyte): Delete extern.
20376
20377 * minibuf.c (Fminibuffer_complete_word): Use the macro
20378 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
20379
20380 * regex.h (struct re_pattern_buffer): New member target_multibyte.
20381
20382 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
20383 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
20384 that is zero, convert an eight-bit char to multibyte.
20385 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
20386 non-emacs case.
20387 (PATFETCH): Convert an eight-bit char to multibyte.
20388 (HANDLE_UNIBYTE_RANGE): New macro.
20389 (regex_compile): Setup the compiled pattern for multibyte chars
20390 even if the given regex string is unibyte. Use PATFETCH_RAW
20391 instead of PATFETCH in many places. To handle `charset'
20392 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
20393 only for ASCII chars.
20394 (analyse_first) <exactn>: Simplify because the compiled pattern
20395 is multibyte.
20396 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
20397 <charset>: Use CHAR_LEADING_CODE to get leading codes.
20398 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
20399 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
20400 multibyte always 1.
20401 (re_search_2): In emacs, set the locale variable multibyte to 1,
20402 otherwise to 0. New local variable target_multibyte. Check it
20403 to decide the multibyteness of STR1 and STR2. If
20404 target_multibyte is zero, convert unibyte chars to multibyte
20405 before translating and checking fastmap.
20406 (TARGET_CHAR_AND_LENGTH): New macro.
20407 (re_match_2_internal): In emacs, set the locale variable multibyte
20408 to 1, otherwise to 0. New local variable target_multibyte. Check
20409 it to decide the multibyteness of STR1 and STR2. Use
20410 TARGET_CHAR_AND_LENGTH to fetch a character from D.
20411 <charset, charset_not>: If multibyte is nonzero, check fastmap
20412 only for ASCII chars. Call bcmp_translate with
20413 target_multibyte, not with multibyte.
20414 <begline>: Declare the local variable C as `unsigned'.
20415 (bcmp_translate): Change the last arg name to target_multibyte.
20416
20417 * search.c (compile_pattern_1): Don't adjust the multibyteness of
20418 the regexp pattern and the matching target. Set cp->buf.multibyte
20419 to the multibyteness of the regexp pattern. Set
20420 cp->but.target_multibyte to the multibyteness of the matching target.
20421 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
20422 FETCH_STRING_CHAR_ADVANCE.
20423 (Freplace_match): Convert unibyte chars to multibyte.
20424
20425 * syntax.c (char_quoted, back_comment, scan_words)
20426 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
20427 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
20428 unibyte chars to multibyte.
20429 (skip_chars): Delete the arg syntaxp, and move the code for
20430 handling syntaxes to skip_syntaxes. Change callers.
20431 Fix the case that the multibyteness of STRING and the current
20432 buffer doesn't match.
20433 (skip_syntaxes): New function.
20434 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
20435 SINGLE_BYTE_CHAR_P.
20436
20437 2008-02-01 Kenichi Handa <handa@m17n.org>
20438
20439 * xfaces.c (QCfontset): New variable.
20440 (LFACE_FONTSET): New macro.
20441 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
20442 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
20443 (Finternal_set_lisp_face_attribute)
20444 (Finternal_get_lisp_face_attribute): Handle QCfontset.
20445 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
20446 check also LFACE_FONTSET_INDEX.
20447 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
20448 attrs[LFACE_FONT_INDEX].
20449 (syms_of_xfaces): Intern and staticpro QCfontset.
20450
20451 * dispextern.h (enum lface_attribute_index): New member
20452 LFACE_FONTSET_INDEX.
20453
20454 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
20455
20456 2008-02-01 Kenichi Handa <handa@m17n.org>
20457
20458 * coding.c (coding_set_destination): Fix coding->destination for
20459 the case converting a region.
20460 (encode_coding_utf_8): Encode eight-bit chars as single byte.
20461 (encode_coding_object): Fix coding->dst_pos and
20462 coding->dst_pos_byte for the case converting a region.
20463
20464 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
20465
20466 * character.h (BYTE8_STRING): New macro.
20467
20468 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
20469
20470 2008-02-01 Kenichi Handa <handa@m17n.org>
20471
20472 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
20473 characters by octal form.
20474
20475 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
20476
20477 * buffer.h (_fetch_multibyte_char_len): Delete extern.
20478 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
20479 _fetch_multibyte_char_len.
20480 (FETCH_CHAR_AS_MULTIBYTE): New macro.
20481
20482 * casetab.c (set_canon, set_identity, shuffle): Simplify.
20483
20484 * casefiddle.c (casify_object): Simplify. Handle the case that
20485 the case conversion change the byte length.
20486 (casify_region): Likewise.
20487
20488 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
20489
20490 * character.c (_fetch_multibyte_char_len): Delete this variable.
20491 (syms_of_character): Setup Vprintable_chars.
20492
20493 * editfns.c (Fchar_equal): Fix for the unibyte case.
20494 (Finsert_byte): New function.
20495 (syms_of_editfns): Defsubr it.
20496
20497 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
20498 of direct code 0x3ffff.
20499
20500 * search.c (Freplace_match): Fix for the unibyte case.
20501
20502 2008-02-01 Kenichi Handa <handa@m17n.org>
20503
20504 * lread.c (safe_to_load_p): Fix the logic.
20505
20506 * syntax.c (scan_words): Don't treat characters belonging to
20507 different scripts as constituting a word.
20508
20509 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
20510
20511 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
20512
20513 * emacs.c (main): In the case of --unibyte, instead of aborting on
20514 finding non-empty buffer, make it unibyte.
20515
20516 2008-02-01 Kenichi Handa <handa@m17n.org>
20517
20518 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
20519 to create a fontset.
20520
20521 2008-02-01 Dave Love <fx@gnu.org>
20522
20523 * character.c (Funibyte_char_to_multibyte): Doc fix.
20524
20525 * xfns.c [HAVE_STDLIB_H]: Fix last change.
20526
20527 2008-02-01 Kenichi Handa <handa@m17n.org>
20528
20529 * fontset.c (fontset_add): Make the type `int'.
20530 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
20531
20532 * character.c (unibyte_char_to_multibyte)
20533 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
20534 charset_unibyte, not charset_primary.
20535
20536 * charset.h (charset_unibyte): Extern it instead of charset_primary.
20537
20538 * charset.c (charset_unibyte): Rename from charset_primary.
20539 (Funibyte_charset): Rename from Fprimary_charset.
20540 (Fset_unibyte_charset): Rename from Fset_primary_charset.
20541 (syms_of_charset): Adjust for the above changes.
20542
20543 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
20544 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
20545 it->multibyte_p is zero.
20546
20547 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
20548 Delete extern.
20549
20550 2008-02-01 Kenichi Handa <handa@m17n.org>
20551
20552 * coding.c (Fdefine_coding_system_internal): Fix category setting
20553 for a coding system of type iso-2022.
20554
20555 2008-02-01 Kenichi Handa <handa@m17n.org>
20556
20557 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
20558
20559 2008-02-01 Kenichi Handa <handa@m17n.org>
20560
20561 * syntax.c (Vnext_word_boundary_function_table): New variable.
20562 (next-word-boundary-function-table): Declare it as a Lisp variable
20563 in syms_of_syntax.
20564 (scan_words): Call functions in Vnext_word_boundary_function_table
20565 if any.
20566
20567 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
20568
20569 * fontset.c (fs_load_font): If fontp->charset is not negative,
20570 return fontp without setting its members.
20571
20572 2008-02-01 Dave Love <fx@gnu.org>
20573
20574 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
20575
20576 * m/sparc.h (HAVE_ALLOCA): Delete.
20577
20578 * s/irix6-5.h: Don't include strings.h.
20579 (bcopy, bzero, bcmp): Don't undef.
20580
20581 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
20582
20583 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
20584 (TIOCSIGSEND): Don't test IRIX6.
20585 (bcopy, bzero, bcmp): Define conditionally.
20586
20587 2008-02-01 Kenichi Handa <handa@m17n.org>
20588
20589 * buffer.c (Qas, Qmake, Qto): New variables.
20590 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
20591 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
20592
20593 * callproc.c (Fcall_process): Don't call insert_1_both directly if
20594 we are inserting a process output into a multibyte buffer.
20595
20596 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
20597 multibyte_char_to_unibyte.
20598
20599 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
20600 by the primary charset, make it eight-bit char.
20601 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
20602
20603 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
20604 (charset_8_bit__control, charset_8_bit_graphic)
20605 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
20606 (define_charset_internal): New function.
20607 (syms_of_charset): Call define_charset_internal for pre-defined
20608 charsets.
20609
20610 * charset.h (charset_8_bit): Extern it.
20611
20612 * coding.c (make_conversion_work_buffer): Adjust for the change
20613 of Fset_buffer_multibyte.
20614 (encode_coding_raw_text): Increment p0 in the loop.
20615
20616 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
20617
20618 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
20619 for the change of Fset_buffer_multibyte.
20620
20621 * fns.c (Fstring_to_multibyte): New function.
20622 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
20623
20624 2008-02-01 Dave Love <fx@gnu.org>
20625
20626 * xfns.c (x_put_x_image): Declare args.
20627
20628 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
20629 (try_font_list): Declare an arg.
20630
20631 * xdisp.c (message2_nolog, set_message): Declare an arg.
20632
20633 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
20634
20635 * syntax.c (scan_sexps_forward): Declare an arg.
20636
20637 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
20638 Declare an arg.
20639
20640 * lisp.h (Fnew_fontset): Declare.
20641
20642 * keymap.c (push_key_description): Call CHARACTERP correctly.
20643
20644 * fontset.c (fontset_add): Declare args. Call make_number correctly.
20645 (face_for_char): Delete unused vars.
20646 (Fset_fontset_font): Doc fix. Delete unused vars.
20647
20648 * doc.c (Fsubstitute_command_keys): Delete unused vars.
20649
20650 * composite.c (update_compositions): Declare arg.
20651
20652 * cm.c (calccost, cmgoto): Declare args.
20653
20654 * charset.c: Remove `emacs' conditional. Doc fixes.
20655 (map_char_table_for_charset): Declare.
20656
20657 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
20658
20659 * ccl.c: Remove `emacs' conditional.
20660
20661 2008-02-01 Kenichi Handa <handa@m17n.org>
20662
20663 The following changes are to allow specifying multiple font
20664 patterns for a character range (specified by script or charset).
20665
20666 * Makefile.in (abbrev.o): Depend on syntax.h.
20667 (xfaces.o): Depend on charset.h.
20668
20669 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
20670 SINGLE_BYTE_CHAR_P.
20671
20672 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
20673
20674 * character.h (Vchar_script_table): Extern it.
20675
20676 * character.c (Vscript_alist): Delete.
20677 (Vchar_script_table, Qchar_script_table): New variable.
20678 (syms_of_character): Declare Vchar_script_table as a lisp variable
20679 and initialize it.
20680
20681 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
20682 have property char-table-extra-slots, make no extra slot.
20683
20684 * dispextern.h (struct face): Delete member `charset'.
20685 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
20686 SINGLE_BYTE_CHAR_P.
20687 (choose_face_font, lookup_non_ascii_face, font_name_registry):
20688 Add prototypes.
20689 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
20690 (generate_ascii_font_name): Rename from generate_ascii_font.
20691
20692 * fontset.h (get_font_repertory_func): New prototype.
20693 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
20694 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
20695
20696 * fontset.c (Qprepend, Qappend): New variables.
20697 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
20698 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
20699 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
20700 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
20701 (fontset_ref_and_range, fontset_add, reorder_font_vector)
20702 (load_font_get_repertory): New functions.
20703 (fontset_set): Delete.
20704 (fontset_face): New arg FACE. Return face ID, not face.
20705 Complete re-write to handle new fontset structure. Change caller.
20706 (free_face_fontset): Use ASET istead of AREF (X) = Y.
20707 (face_for_char): Don't call lookup_face.
20708 (make_fontset_for_ascii_face): New arg FACE.
20709 (fs_load_font): New arg CHARSET_ID. Don't check
20710 Vfont_encoding_alist here.
20711 (find_font_encoding): New function.
20712 (list_fontsets): Use STRINGP, not ! NILP.
20713 (accumulate_script_ranges): New function.
20714 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
20715 re-written to handle new fontset structure.
20716 (Ffontset_font): Return a copy of element.
20717 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
20718 docstring of font-encoding-alist.
20719
20720 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
20721 (Fset_fotset_font): Fix arguments to 5.
20722
20723 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
20724
20725 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
20726 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
20727 (highlight_trailing_whitespace): Adjust for the change of
20728 lookup_named_face.
20729
20730 * xfaces.c: Include charset.h.
20731 (load_face_font): Delete argument C. Change caller.
20732 (generate_ascii_font_name): Rename from generate_ascii_font.
20733 (font_name_registry): New function.
20734 (cache_face): Store ascii faces before non-ascii faces in buckets.
20735 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
20736 Lookup only ascii faces.
20737 (lookup_non_ascii_face): New function.
20738 (lookup_named_face): Delete argument C. Change caller.
20739 (lookup_derived_face): Delete argument C. Change caller.
20740 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
20741 a string, just call font_list with it.
20742 (choose_face_font): Delete arguments FACE and C. New arg
20743 FONT_SPEC. Change caller.
20744 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
20745 Change caller.
20746 (realize_non_ascii_face): New function.
20747 (realize_x_face): Call load_face_font here.
20748 (realize_tty_face): Delete argument C. Change caller.
20749 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
20750 get a face ID.
20751 (dump_realized_face): Don't print charset of FACE.
20752
20753 * xfns.c (x_set_font): Always call x_new_fontset and
20754 store_frame_parameter.
20755 (Fx_create_frame): Call x_new_fontset, not x_new_font.
20756 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
20757
20758 * xterm.h (x_get_font_repertory): Extern it.
20759
20760 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
20761 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
20762 it->multibyte_p is zero.
20763 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
20764 (x_new_fontset): If FONTSETNAME doesn't match any existing
20765 fontsets, create a new one.
20766 (x_get_font_repertory): New function.
20767
20768 2008-02-01 Kenichi Handa <handa@m17n.org>
20769
20770 * coding.c (Ffind_coding_systems_region_internal): Detect an
20771 ASCII only string correctly.
20772
20773 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
20774 version is 0.
20775
20776 2008-02-01 Kenichi Handa <handa@m17n.org>
20777
20778 * lread.c: Include "coding.h".
20779 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
20780 (load_each_byte, unread_char): New variables.
20781 (readchar_backlog): Delete.
20782 (readchar): Return a character unless load_each_byte is nonzero.
20783 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
20784 cons. If unread_char is not -1, simply return it.
20785 (unreadchar): Handle the case that readcharfun is
20786 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
20787 (read_multibyte): Delete.
20788 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
20789 (read_emacs_mule_char): New functions.
20790 (Fload): Even if the file doesn't have the extension ".elc", if
20791 safe_to_load_p returns a positive version number, assume that the
20792 file contains bytecompiled code. If the version is less than 22,
20793 load the file while decoding multibyte sequences by emacs-mule.
20794 (readevalloop): Don't use readchar_backlog.
20795 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
20796 (Fread_from_string): Pay attention to the case that STREAM is a cons.
20797 (read_escape): Delete the arg BYTEREP.
20798 (read1): Set load_each_byte to 1 temporarily while handling
20799 #@NUMBER. Don't call read_multibyte.
20800 (read_vector): Call Fread with a cons. If readcharfun is
20801 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
20802 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
20803 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
20804 and Qload_force_doc_strings.
20805
20806 2008-02-01 Kenichi Handa <handa@m17n.org>
20807
20808 * xdisp.c (face_before_or_after_it_pos): Call
20809 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
20810
20811 2008-02-01 Kenichi Handa <handa@m17n.org>
20812
20813 * character.h (TRAILING_CODE_P): New macro.
20814 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
20815 (string_char_with_unification): Fix prototype.
20816 (Vscript_alist): Extern it.
20817
20818 * character.c (Vscript_alist): New variable.
20819 (string_char_with_unification, str_as_unibyte)
20820 (string_escape_byte8): Add `const' to local variables.
20821 (syms_of_character): Declare script-alist as a Lisp variable.
20822
20823 * charset.h (Vcharset_ordered_list): Extern it.
20824 (charset_ordered_list_tick): Extern it.
20825 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
20826 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
20827 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
20828 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
20829 (Funify_charset): Adjust for the change of Funify_charset.
20830
20831 * charset.c (charset_ordered_list_tick): New variable.
20832 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
20833 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
20834 deunify intead of unify a charset.
20835 (string_xstring_p): Add `const' to local variables.
20836 (find_charsets_in_text): Add `const' to arguments and local variables.
20837 (encode_char): Adjust for the change of Funify_charset. Fix
20838 detecting of invalid code.
20839 (Fset_charset_priority): Increment charset_ordered_list_tick.
20840 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
20841 and TO_CODE.
20842
20843 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
20844 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
20845 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
20846 (decode_coding_ccl, consume_chars)
20847 (Ffind_coding_systems_region_internal)
20848 (Fcheck_coding_systems_region): Add `const' to local variables.
20849
20850 * print.c (print_object): Use octal form for printing the
20851 contents of a bool vector.
20852
20853 2008-02-01 Dave Love <fx@gnu.org>
20854
20855 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
20856 <version == 20>: Refuse to load.
20857
20858 2008-02-01 Dave Love <fx@gnu.org>
20859
20860 * fns.c: Move coding.h.
20861 (Qcodeset, Qdays, Qmonths): New.
20862 (concat): Use CHARACTERP instead of INTEGERP.
20863 (Flocale_codeset): Delete.
20864 (Flanginfo): New function.
20865 (syms_of_fns): Change accordingly.
20866
20867 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
20868
20869 2008-02-01 Dave Love <fx@gnu.org>
20870
20871 * casetab.c (init_casetab_once, init_casetab_once): Fix
20872 CHAR_TABLE_SET call.
20873
20874 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
20875
20876 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
20877
20878 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
20879 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
20880 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
20881
20882 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
20883
20884 * coding.c (ENCODE_DESIGNATION, decode_eol)
20885 (make_conversion_work_buffer, code_conversion_restore)
20886 (Fdefine_coding_system_internal): Convert Lisp types.
20887 (code_conversion_restore): Use EQ, not ==.
20888 (Fencode_coding_string): Fix code_convert_string call.
20889
20890 * coding.h (code_convert_region): Fix prototype.
20891
20892 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
20893
20894 * fontset.c (fontset_ref, fontset_set, fs_load_font)
20895 (Ffontset_info): Convert Lisp types.
20896
20897 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
20898
20899 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
20900
20901 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
20902
20903 * chartab.c: Include "...h", not <...h> in some cases.
20904
20905 * callproc.c (Fcall_process): Remove unused variables.
20906
20907 2008-02-01 Dave Love <fx@gnu.org>
20908
20909 * coding.c (Fset_coding_system_priority): Allow null arg list.
20910
20911 2008-02-01 Dave Love <fx@gnu.org>
20912
20913 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
20914 (Fself_insert_and_exit): Use CHARACTERP.
20915
20916 * callproc.c (Fcall_process): Remove unused vars.
20917
20918 * xterm.c (XTread_socket): Add extra dead keysyms.
20919
20920 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
20921
20922 * dispextern.h: Remove prototypes for redraw_frame,
20923 redraw_garbaged_frames.
20924
20925 * cmds.c (Fself_insert_command): Use CHARACTERP.
20926
20927 * chartab.c (make_sub_char_table): Remove unused var.
20928 (Fset_char_table_default, Fmap_char_table): Doc fix.
20929
20930 * keymap.c (access_keymap): Remove generic char code.
20931 (push_key_description): Use CHARACTERP.
20932
20933 2008-02-01 Dave Love <fx@gnu.org>
20934
20935 * charset.c: Doc fixes.
20936 (Funify_charset): Extra checking.
20937
20938 2008-02-01 Dave Love <fx@gnu.org>
20939
20940 * lread.c: Remove some unused variables.
20941 (safe_to_load_p): If safe, return the magic number version byte.
20942 (Fload): Maybe use load-with-code-conversion.
20943
20944 2008-02-01 Kenichi Handa <handa@m17n.org>
20945
20946 * category.c (Fmodify_category_entry): Don't modify the contents
20947 of category_set for characters out of the range. Avoid
20948 unnecessary modification.
20949
20950 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
20951 Vchar_unify_table. The default value of the table is now nil.
20952
20953 * character.c (syms_of_character): Setup Vchar_width_table for
20954 eight-bit-control and raw-byte chars.
20955
20956 * charset.h (enum define_charset_arg_index): Delete
20957 charset_arg_parents and add charset_arg_subset and
20958 charset_arg_superset.
20959 (enum charset_attr_index): Delete charset_parents and add
20960 charset_subset and charset_superset.
20961 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
20962 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
20963 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
20964 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
20965 (CHARSET_SUPERSET): New macros.
20966 (charset_work): Extern it.
20967 (ENCODE_CHAR): Use charset_work.
20968 (CHAR_CHARSET_P): Adjust for the change of encoder format.
20969 (map_charset_chars): Extern it.
20970
20971 * charset.c (load_charset_map): Set the default value of encoder
20972 and deunifier char-tables to nil.
20973 (map_charset_chars): Change argument. Change callers. Use
20974 map_char_table_for_charset instead of map_char_table.
20975 (Fmap_charset_chars): New optional args from_code and to_code.
20976 (Fdefine_charset_internal): Adjust for the change of
20977 `define-charset' (:parents -> :subset or :superset).
20978 (charset_work): New variable.
20979 (encode_char, syms_of_charset): Adjust for the change of
20980 Fdefine_charset_internal.
20981 (Ffind_charset_string): Setup the vector `charsets' correctly.
20982
20983 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
20984 the previous change.
20985 (char_table_ref_and_range): Adjust for the above change.
20986 (map_sub_char_table_for_charset): New function.
20987 (map_char_table_for_charset): New function.
20988
20989 * keymap.c (describe_vector): Handle a char-table directly here.
20990 (describe_char_table): Delete.
20991
20992 * lisp.h (map_charset_chars): Delete.
20993
20994 2008-02-01 Dave Love <fx@gnu.org>
20995
20996 * fns.c (count_combining): Comment out (unused).
20997 (Flocale_codeset): New.
20998 (syms_of_fns): Defsubr it.
20999
21000 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
21001 (size_t): Remove.
21002
21003 2008-02-01 Dave Love <fx@gnu.org>
21004
21005 * Makefile.in (chartab.o): Depend on charset.h.
21006
21007 2008-02-01 Kenichi Handa <handa@m17n.org>
21008
21009 * character.c (syms_of_character): Set the default value of
21010 Vprintable_chars to Qnil.
21011
21012 2008-02-01 Dave Love <fx@gnu.org>
21013
21014 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
21015
21016 2008-02-01 Kenichi Handa <handa@m17n.org>
21017
21018 * charset.c (load_charset_map): Handle the case that from < to
21019 correctly.
21020
21021 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
21022 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
21023 Pay attention to raw-8-bit chars.
21024
21025 2008-02-01 Kenichi Handa <handa@m17n.org>
21026
21027 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
21028 It is not bytecompiled now.
21029
21030 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
21031 (charset_jisx0208): New variables.
21032 (Fdefine_charset_internal): Setup them if appropriate.
21033 (init_charset_once): Initialize them to -1.
21034
21035 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
21036 (charset_jisx0208): Extern them.
21037
21038 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
21039 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
21040 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
21041 (setup_iso_safe_charsets): Fix arguments to Fassq.
21042 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
21043 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
21044 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
21045 (encode_coding_iso_2022): Change the 1st arg to
21046 ENCODE_ISO_CHARACTER to a variable.
21047
21048 2008-02-01 Kenichi Handa <handa@m17n.org>
21049
21050 * charset.h (enum define_charset_arg_index): New enums
21051 charset_arg_min_code and charset_arg_max_code.
21052 (struct charset): New member char_index_offset.
21053
21054 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
21055 Take charset->char_index_offset into account.
21056 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
21057 args[charset_arg_max_code]. Setup charset.char_index_offset.
21058 (syms_of_charset): Fix args to Fdefine_charset_internal.
21059
21060 2008-02-01 Dave Love <fx@gnu.org>
21061
21062 * coding.c (decode_coding_utf_8): Reject overlong sequences.
21063
21064 2008-02-01 Dave Love <fx@gnu.org>
21065
21066 * coding.c: Doc fixes.
21067 (Fcoding_system_aliases): Fix return value.
21068 (Qmac): Remove (duplicated) definition.
21069
21070 2008-02-01 Dave Love <fx@gnu.org>
21071
21072 * charset.c (Fcharset_priority_list, Fset_charset_priority):
21073 New functions.
21074
21075 * character.c (Fstring): Doc fix.
21076
21077 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
21078
21079 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
21080 (font-encoding-alist): Doc fix.
21081
21082 2008-02-01 Dave Love <fx@gnu.org>
21083
21084 * term.c (costs_set): Declare static, non-initialized for pcc.
21085 (encode_terminal_code): Remove unused var.
21086
21087 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
21088 for K&R.
21089
21090 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
21091
21092 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
21093 (suffixes): Move out of make_subsidiaries for K&R.
21094
21095 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
21096
21097 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
21098
21099 2008-02-01 Dave Love <fx@gnu.org>
21100
21101 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
21102
21103 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
21104
21105 2008-02-01 Yong Lu <lyongu@asia-infonet.com>
21106
21107 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
21108
21109 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
21110
21111 2008-02-01 Kenichi Handa <handa@m17n.org>
21112
21113 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
21114 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
21115
21116 2008-02-01 Kenichi Handa <handa@m17n.org>
21117
21118 * coding.c (decode_coding_charset): Adjust for the change of
21119 Fdefine_coding_system_internal.
21120 (Fdefine_coding_system_internal): For a coding system of
21121 `charset' type, store a list of charset IDs in
21122 `charset_attr_charset_valids' element of coding attributes.
21123
21124 2008-02-01 Kenichi Handa <handa@m17n.org>
21125
21126 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
21127 (emacs_mule_char): New arg src. Delete arg `composition'. Change
21128 caller. Handle 2-byte and 3-byte charsets correctly.
21129 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
21130 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
21131 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
21132 (DECODE_EMACS_MULE_21_COMPOSITION): Call
21133 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
21134 sequence.
21135 (decode_coding_emacs_mule): Handle composition correctly. Rewind
21136 `src' and `consumed_chars' correctly before calling emacs_mule_char.
21137 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
21138 and alt&rule composition.
21139 (decode_coding_iso_2022): Handle composition correctly.
21140 (init_coding_once): Setup emacs_mule_bytes for private charsets.
21141
21142 * charset.c (Fdefine_charset_internal): Fix bug for the case of
21143 re-defining a charset. If the charset has :emacs-mule-id, setup
21144 emacs_mule_bytes.
21145 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
21146
21147 2008-02-01 Kenichi Handa <handa@m17n.org>
21148
21149 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
21150 (encode_coding_big5, encode_coding_charset): If coding requires safe
21151 encoding, produce a character specified by
21152 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
21153
21154 2008-02-01 Dave Love <fx@gnu.org>
21155
21156 * xterm.c (XSetIMValues): Declare.
21157
21158 * process.c: Conditionally include sys/wait.h, pty.h.
21159
21160 * print.c (print_object): Fix print format for 64-bit systems.
21161
21162 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
21163
21164 * buffer.c (emacs_strerror): Declare.
21165
21166 * fontset.c (Fclear_face_cache): Declare.
21167 (accumulate_font_info): Comment-out (unused).
21168 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
21169 variables.
21170
21171 * character.h (string_escape_byte8): Declare.
21172
21173 * charset.c (load_charset_map, load_charset_map_from_file): Remove
21174 unused vars.
21175 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
21176 (Fmap_charset_chars): Doc fix.
21177
21178 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
21179 (Fset_coding_system_priority, Fset_coding_system_priority)
21180 (Fdefine_coding_system_internal): Doc fix.
21181
21182 2008-02-01 Dave Love <fx@gnu.org>
21183
21184 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
21185
21186 2008-02-01 Kenichi Handa <handa@m17n.org>
21187
21188 * character.c (string_escape_byte8): Make multibyte string with
21189 correct size.
21190
21191 * charset.c (Fmake_char): Delete unnecessary code.
21192
21193 2008-02-01 Kenichi Handa <handa@m17n.org>
21194
21195 * xfns.c (x_encode_text): Allocate coding.destination here, and
21196 call encode_coding_object with dst_object Qnil.
21197
21198 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
21199 multibyte form correctly.
21200
21201 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
21202 against Vfont_encoding_alist.
21203
21204 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
21205 handling of charset list.
21206 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
21207 (decode_coding_object): Move point to coding->dst_pos before
21208 calling post-read-conversion function.
21209 (encode_coding_object): Give correct arguments to
21210 pre-write-conversion. Ignore the return value of
21211 pre-write-conversion function. Pay attention to the case that
21212 pre-write-conversion changes the current buffer. If dst_object is
21213 Qt, even if coding->src_bytes is zero, allocate at least one byte
21214 to coding->destination.
21215
21216 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
21217
21218 * charset.c (Fmake_char): Make it more backward compatible.
21219 (Fmap_charset_chars): Fix docstring.
21220
21221 2008-02-01 Dave Love <fx@gnu.org>
21222
21223 * coding.c: Doc fixes.
21224 (Fdefine_coding_system_alias): Use names, not symbols, in
21225 coding-system-alist.
21226
21227 2008-02-01 Kenichi Handa <handa@m17n.org>
21228
21229 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
21230 of calling free_realized_face.
21231
21232 2008-02-01 Yong Lu <lyongu@asia-infonet.com>
21233
21234 * charset.c (read_hex): Don't treat SPC as a comment starter.
21235 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
21236 (Fdecode_char): Fix typo.
21237
21238 2008-02-01 Kenichi Handa <handa@m17n.org>
21239
21240 * charset.h (struct charset): New member `code_space_mask'.
21241
21242 * coding.c (coding_set_source): Delete the local variable beg_byte.
21243 (encode_coding_charset, Fdefine_coding_system_internal):
21244 Delete the local variable charset.
21245 (Fdefine_coding_system_internal): Setup
21246 attrs[coding_attr_charset_valids] correctly.
21247
21248 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
21249 member to check if CODE is valid or not.
21250 (Fdefine_charset_internal): Initialize `code_space_mask' member.
21251 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
21252 is within the range of charset->min_code and carset->max_code.
21253
21254 2008-02-01 Dave Love <fx@gnu.org>
21255
21256 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
21257
21258 * dispextern.h (generate_ascii_font): Fix return type.
21259
21260 * xfaces.c (generate_ascii_font): Fix arg declaration.
21261
21262 * coding.c (coding_inherit_eol_type)
21263 (Fset_terminal_coding_system_internal)
21264 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
21265
21266 2008-02-01 Kenichi Handa <handa@m17n.org>
21267
21268 * coding.c (decode_coding_charset, encode_coding_charset): Handle
21269 multiple charsets correctly.
21270
21271 2008-02-01 Kenichi Handa <handa@m17n.org>
21272
21273 * search.c (boyer_moore): Fix handling of multibyte character
21274 translation.
21275
21276 * xdisp.c (display_mode_element): When the variable `elt' is
21277 changed, update `this' and `lisp_string'.
21278
21279 2008-02-01 Kenichi Handa <handa@m17n.org>
21280
21281 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
21282
21283 * callproc.c (Fcall_process): Be sure to give the current buffer
21284 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
21285
21286 * charset.c (struct charset_map_entries): New struct.
21287 (load_charset_map): Rename from parse_charset_map. New args
21288 entries and n_entries. Change caller.
21289 (load_charset_map_from_file): Rename from load_charset_map.
21290 Change caller. New arg control_flag. Call load_charset_map at
21291 the tail.
21292 (load_charset_map_from_vector): New function.
21293 (Fdefine_charset_internal): Setup charset.compact_codes_p.
21294 (encode_char): If the charset is compact, change a character index
21295 to a code point.
21296
21297 * coding.c (coding_alloc_by_making_gap): Check the case that the
21298 source and destination are the same correctly.
21299 (decode_coding_raw_text): Set coding->consumed_char and
21300 coding->consumed to 0.
21301 (produce_chars): If coding->chars_at_source is nonzero, update
21302 coding->consumed_char and coding->consumed before calling
21303 alloc_destination.
21304 (Fdefine_coding_system_alias): Register ALIAS in
21305 Vcoding_system_alist.
21306 (syms_of_coding): Define `no-conversion' coding system at the tail.
21307
21308 * fileio.c (Finsert_file_contents): Set coding_system instead of
21309 val. If the current buffer is multibyte, always call
21310 decode_coding_gap.
21311
21312 * xfaces.c (try_font_list): Give higher priority to fontset's
21313 family than face's family.
21314
21315 2008-02-01 Kenichi Handa <handa@m17n.org>
21316
21317 * callproc.c (Fcall_process): Be sure to give the current buffer
21318 to decode_coding_c_string.
21319
21320 * xfaces.c (try_font_list): Give a family specified in a fontset
21321 higher priority than a family specified in a face.
21322
21323 2008-02-01 Kenichi Handa <handa@m17n.org>
21324
21325 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
21326 Fix arguments to insert_from_buffer.
21327
21328 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
21329
21330 2008-02-01 Kenichi Handa <handa@m17n.org>
21331
21332 * coding.c (produce_chars): Set the variable `multibytep' correctly.
21333 (decode_coding_gap): Set coding->dst_multibyte correctly.
21334
21335 2008-02-01 Kenichi Handa <handa@m17n.org>
21336
21337 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
21338 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
21339 (encode_coding_utf_16): Substitute coding->default_char for
21340 non-Unicode characters.
21341 (decode_coding): Don't call record_insert here.
21342 (setup_coding_system): Initialize `surrogate' of
21343 coding->spec.utf_16 to 0.
21344 (EMIT_ONE_BYTE): Fix for multibyte case.
21345
21346 * insdel.c (insert_from_gap): Call record_insert.
21347
21348 2008-02-01 Kenichi Handa <handa@m17n.org>
21349
21350 * casefiddle.c (casify_region): Fix multibyte case.
21351
21352 * character.c (c_string_width): Add return type `int'.
21353 (char_string_with_unification): Delete arg ADVANCED.
21354
21355 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
21356 (CHAR_STRING): Adjust for the change of char_string_with_unification.
21357 (CHAR_STRING_ADVANCE): Make it do-while statement.
21358
21359 * chartab.c (sub_char_table_set_range): Optimize for the case
21360 DEPTH == 3. Add workaround code for a GCC optimization bug.
21361
21362 * charset.c (parse_charset_map): Remove an unused variable.
21363
21364 * coding.c: Delete unused variables.
21365
21366 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
21367 earlier. If inserted is zero and the coding system doesn't
21368 require flushing, don't call decode_coding_gap.
21369
21370 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
21371
21372 2008-02-01 Kenichi Handa <handa@m17n.org>
21373
21374 The following changes are for using Unicode as an internal
21375 character model, and use UTF-8 format for buffer/string
21376 representation.
21377
21378 * .gdbinit (xchartable): Adjust for the change of char table structure.
21379 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
21380
21381 * Makefile.in (obj): Add character.o and chartab.o.
21382 (lisp, shortlisp): Remove utf-8.elc.
21383 (*.o): For many files, change dependency on charset.h to
21384 character.h, and add dependency on character.h.
21385 (character.o, chartab.o): New targets.
21386
21387 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
21388 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
21389 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
21390 of "charset.h".
21391
21392 * dired.c, filelock.c: Include "character.h".
21393
21394 * alloc.c: Include "character.h" instead of "charset.h".
21395 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
21396 (syms_of_alloc): Remove defsubr for Smake_char_table.
21397
21398 * buffer.c: Include "character.h" instead of "charset.h", don't
21399 include "coding.h".
21400 (Fset_buffer_multibyte): Adjust for UTF-8.
21401
21402 * buffer.h: EXFUN Fbuffer_live_p.
21403
21404 * callproc.c: Include "character.h" instead of "charset.h".
21405 (Fcall_process): Big change for the new code-conversion APIs.
21406
21407 * casetab.c: Include "character.h" instead of "charset.h".
21408 (set_canon, set_identity, shuffle): Adjust for the new
21409 map_char_table spec.
21410 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
21411 accessing the char table structure.
21412
21413 * chartab.c: New file that implements char table.
21414
21415 * category.c: Include "character.h".
21416 (copy_category_entry): New function.
21417 (copy_category_table): Call map_char_table and copy_category_entry.
21418 (Fmake_category_table): Initialize all top-level slots.
21419 (char_category_set): New function.
21420 (modify_lower_category_set): Delete.
21421 (Fmodify_category_entry): Call char_table_ref_and_range.
21422
21423 * category.h (CATEGORY_SET): Just call char_category_set.
21424
21425 * ccl.c: Include "character.h".
21426 (Qccl, Qcclp): New variables.
21427 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
21428 it's less than 256.
21429 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
21430 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
21431 and DST type.
21432 (ccl_driver): Change types of argument, adjust code accordingly.
21433 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
21434 ccl_driver.
21435 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
21436
21437 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
21438 New members src_multibyte, dst_multibyte, consumed, and produced.
21439 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
21440 (CODING_SPEC_CCL_PROGRAM): New macro.
21441 (ccl_driver): Update prototype.
21442 (Qccl, Qcclp, Fccl_program_p): Extern them.
21443 (CHECK_CCL_PROGRAM): New macro.
21444
21445 * character.c, character.h, chartab.c: New files.
21446
21447 * charset.c: Mostly re-written. Move character and multibyte sequence
21448 handling codes to character.c.
21449
21450 * charset.h: Mostly re-written. Move character and multibyte sequence
21451 handling codes to character.h.
21452
21453 * coding.c, coding.h: Mostly re-written.
21454
21455 * composite.c: Include "character.h" instead of "charset.h".
21456 (CHAR_WIDTH): Move to character.h.
21457 (HASH_KEY, HASH_VALUE): Delete.
21458
21459 * composite.h (enum composition_method): Change order of enumeration
21460 symbols.
21461
21462 * data.c: Include "character.h" instead of "charset.h".
21463 (Faref): Call CHAR_TABLE_REF for a char table.
21464 (Faset): Call CHAR_TABLE_SET for a char table.
21465
21466 * dispextern.h (free_realized_face, check_face_attribytes)
21467 (generate_ascii_font): Extern them.
21468 (free_realized_multibyte_face): Delete extern.
21469
21470 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
21471 table structure.
21472
21473 * editfns.c: Include "character.h" instead of "charset.h".
21474 (Fchar_to_string): Always call CHAR_STRING.
21475
21476 * emacs.c (main): Call init_charset_once, init_charset,
21477 syms_of_chartab, and syms_of_character.
21478
21479 * fileio.c: Include "character.h" instead of "charset.h".
21480 (Finsert_file_contents): Big change for the new code-conversion API.
21481 (choose_write_coding_system, Fwrite_region): Likewise.
21482 (build_annotations_2): Delete.
21483 (e_write): Big change for the new code-conversion API.
21484
21485 * fns.c: Include "character.h" instead of "charset.h".
21486 (copy_sub_char_table): Move to chartab.c.
21487 (Fcopy_sequence): Call copy_char_table for a char table.
21488 (concat): Delete codes calling count_multibyte.
21489 (string_char_to_byte, string_byte_to_char): Adjust for the new
21490 multibyte form.
21491 (internal_equal): Adjust for the change of char table structure.
21492 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
21493 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
21494 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
21495 (char_table_translate, optimize_sub_char_table)
21496 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
21497 chartab.c.
21498 (char_table_ref_and_index): Delete.
21499 (HASH_KEY, HASH_VALUE): Move to lisp.h.
21500 (Fmd5): Call preferred_coding_system instead of accessing
21501 Vcoding_category_list. Adjust for the new code-conversion API.
21502 (syms_of_fns): Move defsubr for char table related functions to
21503 chartab.c.
21504
21505 * fontset.c: Mostly re-written.
21506
21507 * fontset.h (struct font_info): Change type of the member encoding_type.
21508 (enum FONT_SPEC_INDEX): New enum.
21509 (fontset_font_pattern, fs_load_font): Update prototype.
21510 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
21511
21512 * indent.c: Include "character.h" instead of "charset.h".
21513 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
21514
21515 * insdel.c: Include "character.h" instead of "charset.h".
21516 (copy_text): Don't refer to Vnonascii_translation_table.
21517 (insert_from_gap): New function.
21518
21519 * keyboard.c: Include "character.h" instead of "charset.h".
21520 (command_loop_1): Never call direct_output_forward_char before
21521 a non-ASCII character.
21522 (read_char): If Vkeyboard_translate_table is a char table, always
21523 translate a character.
21524
21525 * keymap.c: Include "character.h".
21526 (store_in_keymap): Handle the case that IDX is a cons.
21527 (Fdefine_key): Handle the case that KEY is a cons and the car part
21528 is also a cons (range).
21529 (push_key_description): Adjust for the new character code.
21530 (describe_vector): Call describe_char_table for a char table.
21531 (describe_char_table): New function.
21532
21533 * keymap.h (describe_char_table): Extern it.
21534
21535 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
21536 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
21537 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
21538 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
21539 Delete.
21540 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
21541 structure.
21542 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
21543 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
21544 (CHARTAB_SIZE_BITS_3): New macros.
21545 (chartab_size): Extern it.
21546 (struct Lisp_Char_Table): Re-design.
21547 (struct Lisp_Sub_Char_Table): New structure.
21548 (HASH_KEY, HASH_VALUE): Move from fns.c.
21549 (CHARACTERBITS): Define as 22.
21550 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
21551 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
21552 (GC_SUB_CHAR_TABLE_P): New macro.
21553 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
21554 (code_convert_string_norecord): Deleted extern.
21555 (init_character_once, syms_of_character, init_charset)
21556 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
21557
21558 * lread.c: Include "character.h".
21559 (read_multibyte): New arg NBYTES.
21560 (read_escape): Change the meaning of returned *BYTEREP.
21561 (to_multibyte): Delete.
21562 (read1): Adjust the handling of char table and string.
21563
21564 * print.c: Include "character.h" instead of "charset.h".
21565 (print_string): Convert 8-bit raw bytes to octal form by
21566 string_escape_byte8.
21567 (print_object): Adjust for the new multibyte form. Print 8-bit
21568 raw bytes always in octal form. Handle sub char table correctly.
21569
21570 * process.c: Include "character.h" instead of "charset.h".
21571 (read_process_output, send_process): Adjust for the new
21572 code-conversion API.
21573
21574 * puresize.h (BASE_PURESIZE): Increase.
21575
21576 * regex.c: Include "character.h" instead of "charset.h".
21577 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
21578 (regex_compile): Accept a range whose starting and ending
21579 character have different leading bytes.
21580 (analyse_first): Adjust for the above change.
21581
21582 * search.c: Include "character.h" instead of "charset.h".
21583 (search_buffer, boyer_moore): Adjust for the new multibyte form.
21584 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
21585
21586 * syntax.c: Include "character.h" instead of "charset.h".
21587 (syntax_parent_lookup): Delete.
21588 (Fmodify_syntax_entry): Accept a cons as CHAR.
21589 (skip_chars): Adjust for the new multibyte form.
21590 (init_syntax_once): Call char_table_set_range instead of directly
21591 accessing the structure of a char table.
21592
21593 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
21594 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
21595 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
21596 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
21597
21598 * term.c: Include "buffer.h" and "character.h".
21599 (encode_terminal_code, write_glyphs): Adjust for the new
21600 code-conversion API.
21601 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
21602
21603 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
21604
21605 * xdisp.c: Include "character.h".
21606 (get_next_display_element): Adjust for the new multibyte form.
21607 (disp_char_vector): Adjust for the new char table structure.
21608 (decode_mode_spec_coding): Adjust for the new structure of
21609 coding system.
21610 (decode_mode_spec): Adjust for the new code-conversion API.
21611
21612 * xfaces.c: Include "character.h" instead of "charset.h".
21613 (load_face_font): Adjust for the change of choose_face_font and
21614 FS_LOAD_FONT.
21615 (generate_ascii_font): New function.
21616 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
21617 (set_font_frame_param): Adjust for the change of choose_face_font.
21618 (free_realized_face): Make it public.
21619 (free_realized_faces_for_fontset): Rename from
21620 free_realized_multibyte_face. Free also faces realized for ASCII.
21621 (choose_face_font): Change arguments. Adjust for the change of
21622 fontset_font_pattern and FS_LOAD_FONT.
21623
21624 * xfns.c: Include "character.h".
21625 (x_encode_text): Adjust for the new code-conversion API.
21626
21627 * xselect.c: Don't include "charset.h".
21628 (selection_data_to_lisp_data): Adjust for the new code conversion API.
21629
21630 * xterm.c: Include "character.h".
21631 (x_encode_char): New argument CHARSET. Change caller.
21632 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
21633 Call ENCODE_CHAR instead of SPLIT_CHAR.
21634 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
21635 CHAR_WIDTH instead of CHARSET_WIDTH.
21636 (XTread_socket): Adjust for the new code-conversion API.
21637 (x_new_font): Adjust for the change of FS_LOAD_FONT.
21638 (x_load_font): Adjust for the change of struct font.
21639
21640 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
21641
21642 * xfaces.c (face_at_buffer_position): Remove unused vars.
21643
21644 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
21645
21646 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
21647 Fix overflow checking.
21648
21649 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
21650
21651 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
21652 Cancel previous change.
21653
21654 2008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
21655
21656 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
21657 ccl->eight_bit_control. Fix check for buffer overflow.
21658 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
21659 (ccl_driver): Initialize extra_bytes to 0.
21660
21661 2008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
21662
21663 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
21664 return it ORed with ctrl_modifier.
21665
21666 2008-01-29 Miles Bader <miles@gnu.org>
21667
21668 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
21669
21670 2008-01-28 Jason Rumney <jasonr@gnu.org>
21671
21672 * w32.c (stat): Don't double check for networked drive.
21673
21674 2008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
21675
21676 * window.c (run_window_configuration_change_hook): New function.
21677 Code extracted from set_window_buffer. Set the selected frame.
21678 (set_window_buffer): Use it.
21679 * window.h (run_window_configuration_change_hook): Declare.
21680 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
21681
21682 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
21683
21684 2008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
21685
21686 * Makefile.in: Remove references to unused macros.
21687
21688 2008-01-26 Eli Zaretskii <eliz@gnu.org>
21689
21690 * w32.c (g_b_init_get_sid_sub_authority)
21691 (g_b_init_get_sid_sub_authority_count): New static variables.
21692 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
21693 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
21694 (init_user_info): Use them to retrieve uid and gid.
21695 Use 500/513, the Windows defaults, as Administrator's uid/gid.
21696 (fstat): Use pw_uid and pw_gid from the_passwd structure for
21697 st_uid and st_gid of the file.
21698
21699 2008-01-26 Jason Rumney <jasonr@gnu.org>
21700
21701 * w32.c (logon_network_drive): New function.
21702 (stat): Use it.
21703
21704 2008-01-26 Chong Yidong <cyd@stupidchicken.com>
21705
21706 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
21707 invisible text covered with an ellipsis.
21708
21709 2008-01-25 Richard Stallman <rms@gnu.org>
21710
21711 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
21712 jump back to beginning. Move some other initializations after that.
21713 (Qwindow_text_change_functions, Vwindow_text_change_functions):
21714 New variables.
21715 (syms_of_xdisp): Init them.
21716
21717 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
21718
21719 * buffer.c (reset_buffer_local_variables):
21720 Implement `permanent-local-hook'.
21721 (Qpermanent_local_hook): New variable.
21722 (syms_of_buffer): Init and staticpro it.
21723
21724 2008-01-25 Michael Albinus <michael.albinus@gmx.de>
21725
21726 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
21727
21728 2008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
21729
21730 * fns.c (Fclrhash): Return TABLE.
21731
21732 2008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21733
21734 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
21735 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
21736 is set even without positional changes.
21737 (x_scroll_bar_clear): Set bar->redraw_needed_p.
21738
21739 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
21740
21741 2008-01-23 Jason Rumney <jasonr@gnu.org>
21742
21743 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
21744
21745 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
21746 the unicode range available in MULE by locale-coding-system.
21747 Improve dbcs lead byte detection. Set event timestamp and modifiers
21748 earlier.
21749
21750 2008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21751
21752 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
21753 [MAC_OSX] (init_mac_osx_environment): Initialize it.
21754 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
21755 when used on child processes.
21756
21757 2008-01-21 Michael Albinus <michael.albinus@gmx.de>
21758
21759 * dbusbind.c (Fdbus_method_return_internal): Rename from
21760 Fdbus_method_return.
21761 (Fdbus_unregister_object): Move to dbus.el.
21762 (Fdbus_call_method, Fdbus_method_return_internal)
21763 (Fdbus_send_signal): Improve debug messages.
21764
21765 2008-01-20 Martin Rudalics <rudalics@gmx.at>
21766
21767 * undo.c (undo_inhibit_record_point): New variable.
21768 (syms_of_undo): Initialize it.
21769 (record_point): Don't record point when undo_inhibit_record_point
21770 is set.
21771
21772 2008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
21773
21774 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
21775
21776 * xdisp.c (Qauto_hscroll_mode): New var.
21777 (syms_of_xdisp): Initialize it.
21778 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
21779 window's buffer.
21780 (hscroll_windows): Don't check automatic_hscrolling_p here.
21781
21782 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
21783 vscroll if we're setting window-buffer to the value it already has.
21784
21785 2008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
21786
21787 * m/intel386.h: Remove references to XENIX.
21788
21789 2008-01-17 Andreas Schwab <schwab@suse.de>
21790
21791 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
21792 instead of HAVE_X86_64_LIB64_DIR.
21793 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
21794
21795 2008-01-17 Glenn Morris <rgm@gnu.org>
21796
21797 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
21798 to HAVE_X86_64_LIB64_DIR.
21799
21800 2008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
21801
21802 * s/irix3-3.h:
21803 * s/irix4-0.h:
21804 * s/386-ix.h:
21805 * s/domain.h:
21806 * s/hpux9-x11r4.h:
21807 * s/hpux9shxr4.h: Remove files for systems no longer supported.
21808
21809 * sysdep.c: Remove code containing references to symbols defined
21810 by unsupported systems.
21811
21812 2008-01-16 Glenn Morris <rgm@gnu.org>
21813
21814 * coding.c (select-safe-coding-system-function): Doc fix.
21815
21816 2008-01-15 Glenn Morris <rgm@gnu.org>
21817
21818 * config.in: Revert 2008-01-13 change: this is a generated file.
21819
21820 2008-01-13 Tom Tromey <tromey@redhat.com>
21821
21822 * lisp.h: Fix typo.
21823
21824 2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
21825
21826 * m/sequent-ptx.h:
21827 * m/sequent.h:
21828 * s/ptx.h:
21829 * s/ptx4-2.h:
21830 * s/ptx4.h: Remove files for systems no longer supported.
21831
21832 * callproc.c (Fcall_process): Fix previous change.
21833
21834 2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
21835
21836 * unexsunos4.c: Remove file, system not supported anymore.
21837
21838 * m/mips.h:
21839 * m/intel386.h:
21840 * callproc.c:
21841 * config.in:
21842 * ecrt0.c:
21843 * emacs.c:
21844 * fileio.c:
21845 * frame.c:
21846 * getpagesize.h:
21847 * keyboard.c:
21848 * lread.c:
21849 * process.c:
21850 * puresize.h:
21851 * sysdep.c:
21852 * systty.h:
21853 * syswait.h:
21854 * unexec.c:
21855 * xdisp.c:
21856 * alloc.c: Remove code containing references to symbols defined by
21857 unsupported systems.
21858
21859 2008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
21860
21861 * coding.c (detect_coding_mask): Fix previous change.
21862
21863 2008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
21864
21865 * coding.c (detect_coding_iso2022): New arg
21866 latin_extra_code_state. Allow Latin extra codes only
21867 when *latin_extra_code_state is nonzero.
21868 (detect_coding_mask): If there is a NULL byte, detect the encoding
21869 as UTF-16 or binary. If Latin extra codes exist, detect the
21870 encoding as ISO-2022 only when there's no other proper encoding is
21871 found.
21872
21873 2008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21874
21875 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
21876 #ifdef MAC_OS.
21877
21878 2008-01-08 Richard Stallman <rms@gnu.org>
21879
21880 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
21881
21882 2008-01-06 Nick Roberts <nickrob@snap.net.nz>
21883
21884 * keyboard.c (parse_menu_item): Don't enclose key bindings on
21885 menu bar in parentheses.
21886
21887 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
21888
21889 * m/7300.h:
21890 * m/acorn.h:
21891 * m/alliant-2800.h:
21892 * m/alliant.h:
21893 * m/alliant1.h:
21894 * m/alliant4.h:
21895 * m/altos.h:
21896 * m/amdahl.h:
21897 * m/apollo.h:
21898 * m/att3b.h:
21899 * m/aviion-intel.h:
21900 * m/aviion.h:
21901 * m/celerity.h:
21902 * m/clipper.h:
21903 * m/cnvrgnt.h:
21904 * m/convex.h:
21905 * m/cydra5.h:
21906 * m/delta88k.h:
21907 * m/dpx2.h:
21908 * m/dual.h:
21909 * m/elxsi.h:
21910 * m/f301.h:
21911 * m/gould-np1.h:
21912 * m/gould.h:
21913 * m/i860.h:
21914 * m/ibmps2-aix.h:
21915 * m/ibmrt-aix.h:
21916 * m/ibmrt.h:
21917 * m/irist.h:
21918 * m/is386.h:
21919 * m/isi-ov.h:
21920 * m/mega68.h:
21921 * m/mg1.h:
21922 * m/news-r6.h:
21923 * m/news-risc.h:
21924 * m/news.h:
21925 * m/nh3000.h:
21926 * m/nh4000.h:
21927 * m/ns16000.h:
21928 * m/ns32000.h:
21929 * m/nu.h:
21930 * m/orion.h:
21931 * m/orion105.h:
21932 * m/paragon.h:
21933 * m/pfa50.h:
21934 * m/plexus.h:
21935 * m/pyramid.h:
21936 * m/pyrmips.h:
21937 * m/sh3el.h:
21938 * m/sps7.h:
21939 * m/sr2k.h:
21940 * m/stride.h:
21941 * m/sun1.h:
21942 * m/sun2.h:
21943 * m/sun3-68881.h:
21944 * m/sun3-fpa.h:
21945 * m/sun3-soft.h:
21946 * m/sun3.h:
21947 * m/sun386.h:
21948 * m/symmetry.h:
21949 * m/tad68k.h:
21950 * m/tahoe.h:
21951 * m/targon31.h:
21952 * m/tek4300.h:
21953 * m/tekxd88.h:
21954 * m/tower32.h:
21955 * m/tower32v3.h:
21956 * m/ustation.h:
21957 * m/wicat.h:
21958 * m/xps100.h:
21959 * s/cxux.h:
21960 * s/cxux7.h:
21961 * s/dgux.h:
21962 * s/dgux4.h:
21963 * s/dgux5-4-3.h:
21964 * s/dgux5-4r2.h:
21965 * s/esix.h:
21966 * s/esix5r4.h:
21967 * s/hiuxmpp.h:
21968 * s/hiuxwe2.h:
21969 * s/iris3-5.h:
21970 * s/iris3-6.h:
21971 * s/isc2-2.h:
21972 * s/isc3-0.h:
21973 * s/isc4-0.h:
21974 * s/isc4-1.h:
21975 * s/newsos5.h:
21976 * s/newsos6.h:
21977 * s/osf1.h:
21978 * s/osf5-0.h:
21979 * s/riscix1-1.h:
21980 * s/riscix12.h:
21981 * s/sco4.h:
21982 * s/sco5.h:
21983 * s/sunos4-0.h:
21984 * s/sunos4-1.h:
21985 * s/sunos413.h:
21986 * s/sunos4shr.h:
21987 * s/umax.h:
21988 * s/unipl5-2.h:
21989 * s/xenix.h:
21990 * cxux-crt0.s:
21991 * unexapollo.c:
21992 * unexconvex.c:
21993 * unexenix.c:
21994 * unexsni.c: Remove files for systems no longer supported.
21995
21996 * m/intel386.h: Remove references to unsupported systems.
21997
21998 * w32.c (get_emacs_configuration): Remove reference to i860.
21999
22000 * sysdep.c: Remove dead code.
22001
22002 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
22003
22004 * s/rtu.h:
22005 * m/masscomp.h: Remove files. Platform is obsolete.
22006
22007 2008-01-04 Michael Albinus <michael.albinus@gmx.de>
22008
22009 * dbusbind.c (Fdbus_method_return): New function.
22010 (xd_read_message): Add the serial number to the event.
22011 (Fdbus_register_method): Activate the function.
22012
22013 2008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
22014
22015 * keyboard.c (read_key_sequence): Fix typo.
22016
22017 2008-01-03 Michael Albinus <michael.albinus@gmx.de>
22018
22019 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
22020 (xd_signature, xd_append_arg): Handle element type detection for
22021 empty arrays.
22022 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
22023 SDATA () calls; this must be solved more general.
22024 (Fdbus_register_signal): Use SBYTES instead of strlen.
22025
22026 2008-01-03 Magnus Henoch <magnus@zemdatav>
22027
22028 * dbusbind.c (xd_append_arg): Use unsigned char instead of
22029 unsigned int for byte values (necessary for big-endian platform).
22030 (Fdbus_call_method): Handle the case of no returned arguments.
22031
22032 2007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
22033
22034 * dbusbind.c (xd_read_message): Use non-static input_event struct.
22035
22036 2007-12-31 Magnus Henoch <mange@freemail.hu>
22037
22038 * dbusbind.c (xd_signature): Signature of variant is just "v".
22039
22040 2007-12-30 Michael Albinus <michael.albinus@gmx.de>
22041
22042 * dbusbind.c: Fix several errors and compiler warnings.
22043 Reported by Tom Tromey <tromey@redhat.com>.
22044 (XD_ERROR, XD_DEBUG_MESSAGE)
22045 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
22046 (xd_append_arg): Part for basic D-Bus types rewritten.
22047 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
22048 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
22049 appropriate.
22050 (xd_read_message): Return Qnil. Don't signal an error; it is not
22051 useful during event reading.
22052 (Fdbus_register_signal): Signal an error if the check for
22053 FUNCTIONP fails.
22054 (Fdbus_register_method): New function. The implementation is not
22055 complete, the call of the function signals an error therefore.
22056 (Fdbus_unregister_object): New function, renamed from
22057 Fdbus_unregister_signal. The initial check signals an error, if
22058 the object is not well formed.
22059
22060 2007-12-30 Richard Stallman <rms@gnu.org>
22061
22062 * textprop.c (get_char_property_and_overlay):
22063 Signal error if POSITION is out of range in a buffer.
22064
22065 2007-12-29 Martin Rudalics <rudalics@gmx.at>
22066
22067 * w32fns.c (Fx_create_frame): Make copy of frame parameters
22068 because the original parameters are in pure storage now.
22069
22070 2007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22071
22072 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
22073
22074 2007-12-22 Eli Zaretskii <eliz@gnu.org>
22075
22076 * callint.c (syms_of_callint) <command-history>: Add reference to
22077 history-length in the doc string.
22078
22079 2007-12-17 Jason Rumney <jasonr@gnu.org>
22080
22081 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
22082 before passing as wParam.
22083
22084 2007-12-22 Michael Albinus <michael.albinus@gmx.de>
22085
22086 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
22087 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
22088 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
22089 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
22090 as number.
22091 (Fdbus_call_method): Fix docstring.
22092
22093 2007-12-21 Michael Albinus <michael.albinus@gmx.de>
22094
22095 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
22096 New macros.
22097 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
22098 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
22099 Simplify.
22100 (xd_signature): New function.
22101 (xd_append_arg): Compute also signatures. Major rewrite.
22102 (xd_retrieve_arg): Make debug messages friendly.
22103 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
22104 Check for signatures of arguments.
22105
22106 2007-12-19 Michael Albinus <michael.albinus@gmx.de>
22107
22108 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
22109 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
22110 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
22111 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
22112 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
22113 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
22114 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
22115 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
22116 (xd_retrieve_value): Remove. Functionality included in ...
22117 (xd_append_arg): New function.
22118 (Fdbus_call_method, Fdbus_send_signal): Apply it.
22119
22120 2007-12-16 Michael Albinus <michael.albinus@gmx.de>
22121
22122 * dbusbind.c (top): Include <stdio.h>.
22123 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
22124 dbus_message_new_method_call and dbus_message_new_signal.
22125 (Fdbus_register_signal): Rename unique_name to uname.
22126 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
22127 non-existing unique name. Fix typos in matching rule. Return an
22128 object which is useful in Fdbus_unregister_signal.
22129 (Fdbus_unregister_signal): Reimplementation, in order to remove
22130 only the corresponding entry.
22131 (Vdbus_registered_functions_table): Change the order of entries.
22132 Apply these changes in xd_read_message and Fdbus_register_signal.
22133
22134 2007-12-16 Andreas Schwab <schwab@suse.de>
22135
22136 * fileio.c (Finsert_file_contents): Fix overflow check to not
22137 depend on undefined integer overflow.
22138
22139 2007-12-14 Jason Rumney <jasonr@gnu.org>
22140
22141 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
22142 for characters above 127.
22143
22144 2007-12-13 Jason Rumney <jasonr@gnu.org>
22145
22146 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
22147 before dereferencing array.
22148 (lookup_vk_code): Remove zero comparison.
22149
22150 2007-12-14 Michael Albinus <michael.albinus@gmx.de>
22151
22152 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
22153 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
22154 Use `unsigned int' instead of `uint'.
22155 (xd_read_message, Fdbus_register_signal): Split expressions into
22156 multiple lines before operators "&&" and "||", according to the
22157 GNU Coding Standards.
22158
22159 2007-12-14 Eli Zaretskii <eliz@gnu.org>
22160
22161 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
22162
22163 2007-12-12 Juri Linkov <juri@jurta.org>
22164
22165 * buffer.c (Frename_buffer): In interactive spec replace
22166 `read-buffer' with `read-string' that uses `buffer-name-history'
22167 as history, and the current buffer's name as default.
22168
22169 2007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
22170
22171 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
22172 manipulating the backtrace manually.
22173 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
22174 (struct backtrace, backtrace_list): Remove.
22175 (command_loop_1): Remove dead var `no_direct'.
22176
22177 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
22178 preserve non-built-in buffer-local variables.
22179 (Fkill_all_local_variables): Don't re-create&re-set permanent
22180 buffer-local variables.
22181
22182 2007-12-09 Juri Linkov <juri@jurta.org>
22183
22184 * buffer.c (Frename_buffer): Change interactive spec from "s" to
22185 Lisp code that uses `read-buffer' with current buffer as default.
22186
22187 2007-12-08 Michael Albinus <michael.albinus@gmx.de>
22188
22189 * dbusbind.c (xd_read_message): Generate an event for every
22190 registered handler. There might be several handlers registered
22191 for the same signal.
22192 (Fdbus_register_signal): Don't overwrite a registration for the
22193 same signal. Add a new registration if handlers are different.
22194 (Vdbus_registered_functions_table): Rework doc string.
22195
22196 2007-12-07 Michael Albinus <michael.albinus@gmx.de>
22197
22198 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
22199 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
22200 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
22201 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
22202 Unify argument lists.
22203 (xd_read_message, Fdbus_register_signal): Reorder and extend event
22204 arguments and hash table keys. Use unique name for service.
22205 (Fdbus_unregister_signal): Remove checks.
22206 (Vdbus_registered_functions_table): Fix doc string.
22207
22208 2007-12-05 Magnus Henoch <mange@freemail.hu>
22209
22210 * process.c (make_process): Initialize pty_flag to 0.
22211
22212 2007-12-05 Jason Rumney <jasonr@gnu.org>
22213
22214 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
22215 specified XBMs.
22216
22217 2007-12-05 Richard Stallman <rms@gnu.org>
22218
22219 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
22220
22221 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22222
22223 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
22224 New variable.
22225 (mac_try_close_socket) [MAC_OSX]: New function.
22226 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
22227 Update cfsockets_for_select. Replace invalid CFRunLoop source.
22228
22229 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
22230 Use mac_try_close_socket.
22231
22232 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22233
22234 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
22235 reloc_base.
22236 (copy_dysymtab): Compute relocation base here.
22237 (rebase_reloc_address) [__ppc64__]: New function.
22238 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
22239 changed.
22240
22241 2007-12-05 Jason Rumney <jasonr@gnu.org>
22242
22243 * w32proc.c (sys_spawnve): Quote args with wildcards.
22244
22245 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22246
22247 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
22248 __objc_* sections.
22249 (unrelocate) [_LP64]: Set relocation base to address of data segment.
22250
22251 2007-12-05 Michael Albinus <michael.albinus@gmx.de>
22252
22253 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
22254 Move check for Vdbus_registered_functions_table to
22255 xd_read_queued_messages.
22256 (xd_read_queued_messages): Protect xd_read_message calls by
22257 internal_condition_case_1.
22258
22259 2007-12-04 Michael Albinus <michael.albinus@gmx.de>
22260
22261 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
22262 Qdbus_system_bus and Qdbus_session_bus, respectively.
22263 (Vdbus_intern_symbols): Remove.
22264 (Vdbus_registered_functions_table): New hash table.
22265 (XD_SYMBOL_INTERN_SYMBOL): Remove.
22266 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
22267 Rewrite in order to manage registered functions by hash table
22268 Vdbus_registered_functions_table.
22269
22270 2007-12-03 Jan Djärv <jan.h.d@swipnet.se>
22271
22272 * xterm.c: Update URL to Window Manager Specification in comment.
22273
22274 2007-12-02 Michael Albinus <michael.albinus@gmx.de>
22275
22276 * config.in (HAVE_DBUS): Add.
22277
22278 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
22279 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
22280 (obj): Add $(DBUS_OBJ).
22281 (LIBES): Add $(DBUS_LIBS).
22282 (dbusbind.o): New target.
22283
22284 * dbusbind.c: New file.
22285
22286 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
22287
22288 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
22289 (Qdbus_event): New Lisp symbol.
22290 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
22291 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
22292 (keys_of_keyboard): Define dbus-event.
22293
22294 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
22295
22296 2007-12-01 Richard Stallman <rms@gnu.org>
22297
22298 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
22299
22300 2007-11-30 Jason Rumney <jasonr@gnu.org>
22301
22302 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
22303 (w32con_reset_terminal_modes): Clear screen buffer.
22304 (w32_face_attributes): Don't use color indexes that are out of range.
22305 Only reverse the default colors.
22306
22307 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
22308 WINDOWSNT.
22309
22310 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
22311
22312 2007-11-29 Jason Rumney <jasonr@gnu.org>
22313
22314 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
22315 (w32_face_attributes): Use Vtty_defined_color_alist to determine
22316 if the terminal colors are initialized.
22317 (unspecified_fg, unspecified_bg): Remove unused declarations.
22318
22319 2007-11-29 Andreas Schwab <schwab@suse.de>
22320
22321 * keyboard.c (apply_modifiers): Fix typo.
22322
22323 2007-11-29 Richard Stallman <rms@gnu.org>
22324
22325 * keymap.c (Fcurrent_local_map): Doc fix.
22326
22327 2007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
22328
22329 * s/gnu-kfreebsd.h: New file.
22330
22331 2007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
22332
22333 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
22334 Don't cast redundantly.
22335
22336 * keyboard.c (KEY_TO_CHAR): New macro.
22337 (parse_modifiers, apply_modifiers): Accept integer arguments.
22338 (read_key_sequence): Use them to unify the "shift->unshift" mapping
22339 for chars and symbol keys.
22340 After doing such remapping, apply function-key-map again.
22341
22342 2007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
22343
22344 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
22345 compiled anymore.
22346
22347 2007-11-26 Andreas Schwab <schwab@suse.de>
22348
22349 * process.c (list_processes_1): Fix indentation level of the
22350 command column.
22351
22352 2007-11-23 Andreas Schwab <schwab@suse.de>
22353
22354 * editfns.c (Fformat): Handle %c specially since it requires the
22355 argument to be of type int.
22356
22357 2007-11-23 Markus Triska <markus.triska@gmx.at>
22358
22359 * emacs.c (main): Call init_editfns before init_process, since
22360 init_process sets Vprocess_connection_type depending on OS release.
22361
22362 2007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
22363
22364 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
22365 (find_symbol_value): Use do_symval_forwarding.
22366
22367 * data.c (set_internal): Set the value in the `cons-cell' (for
22368 Buffer_Local_values) not only for frame-local variables.
22369
22370 2007-11-22 Andreas Schwab <schwab@suse.de>
22371
22372 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
22373 values to sprintf.
22374 * keymap.c (Fsingle_key_description): Likewise.
22375 * print.c (print_object): Likewise.
22376
22377 2007-11-22 Jan Djärv <jan.h.d@swipnet.se>
22378
22379 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
22380 file for image is nil.
22381
22382 2007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
22383
22384 * term.c: Include stdarg.h.
22385 (fatal): Implement using varargs.
22386 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
22387
22388 2007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
22389
22390 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
22391 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
22392 Update call to buffer_slot_type_mismatch.
22393 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
22394 (buffer_slot_type_mismatch): Update.
22395 * buffer.c (buffer_local_types): Remove.
22396 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
22397 (defvar_per_buffer): Set the type in the buffer_objfwd.
22398
22399 2007-11-21 Jason Rumney <jasonr@gnu.org>
22400
22401 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
22402 CreateFileMapping returns NULL on failure.
22403
22404 2007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
22405
22406 * search.c (Fset_match_data): Remove the `evaporate' feature.
22407 (unwind_set_match_data): Don't use the `evaporate' feature.
22408
22409 2007-11-21 Jason Rumney <jasonr@gnu.org>
22410
22411 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
22412
22413 * w32console.c (w32con_write_glyphs): Remove unused variables.
22414
22415 2007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
22416
22417 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
22418
22419 * s/darwin.h (MULTI_KBOARD): Remove.
22420
22421 * macfns.c (x_create_tip_frame, Fx_create_frame)
22422 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
22423
22424 2007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
22425
22426 * buffer.c (Fbuffer_local_value): Remove redundant test.
22427 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
22428 than in `current-buffer' to match the comment.
22429 Do the swap using swap_in_global_binding.
22430
22431 * data.c (store_symval_forwarding, set_internal):
22432 * eval.c (specbind): Remove dead code.
22433
22434 * coding.c (detect_coding, Fupdate_coding_systems_internal):
22435 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
22436 Since we do not want to see internal Lisp_*fwd objects here.
22437
22438 2007-11-18 Jan Djärv <jan.h.d@swipnet.se>
22439
22440 * sysdep.c (init_system_name): Use getaddrinfo if available.
22441
22442 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
22443 (x_scroll_bar_note_movement): start, end, with, height in struct
22444 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
22445
22446 2007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
22447
22448 * puresize.h (BASE_PURESIZE): Increase to 1190000.
22449
22450 2007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
22451
22452 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
22453 This undoes Richard's change of 14-Oct-2002.
22454
22455 * alloc.c (allocate_other_vector):
22456 * lisp.h (allocate_other_vector): Remove.
22457
22458 * window.c (struct save_window_data): Move non-lisp data to the end
22459 and make it `int' rather than Lisp_Object.
22460 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
22461 Done wrap/unwrap integer values.
22462 (Fset_window_configuration, compare_window_configurations):
22463 Update use of fields to their new types.
22464
22465 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
22466 Turn integer fields into `int'. Merge x_window_low and x_window_high.
22467 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
22468 (SET_SCROLL_BAR_X_WINDOW): Remove.
22469 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
22470 Access the new x_window field directly.
22471 * xterm.c (x_scroll_bar_create): Use a pseudovector.
22472 Don't wrap/unwrap integers into Lisp_Objects.
22473 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
22474 (x_scroll_bar_report_motion):
22475 Don't wrap/unwrap integers into Lisp_Objects.
22476 (x_term_init): Use SDATA.
22477 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
22478 (x_scroll_bar_set_handle, x_scroll_bar_remove)
22479 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
22480 (x_scroll_bar_report_motion, x_scroll_bar_clear):
22481 * xfns.c (x_set_background_color):
22482 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
22483 Access the new x_window field directly.
22484
22485 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
22486 (allocate_pseudovector): Make non-static.
22487
22488 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
22489 (allocate_pseudovector): Declare.
22490 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
22491
22492 2007-11-15 Andreas Schwab <schwab@suse.de>
22493
22494 * editfns.c (Fformat): Correctly format EMACS_INT values.
22495 Also take precision into account when formatting an integer.
22496
22497 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
22498
22499 2007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
22500
22501 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
22502 (syms_of_keyboard): Defsubr it.
22503
22504 * data.c (swap_in_global_binding): Fix longstanding bug where
22505 store_symval_forwarding was not called with the right second argument,
22506 thus causing objfwd-ing from being dropped.
22507
22508 2007-11-14 Juanma Barranquero <lekktu@gmail.com>
22509
22510 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
22511 (Fx_display_pixel_height, Fx_display_planes)
22512 (Fx_display_color_cells, Fx_server_max_request_size)
22513 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
22514 (Fx_display_visual_class, Fx_display_save_under):
22515 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
22516 (Fx_display_pixel_height, Fx_display_planes)
22517 (Fx_display_color_cells, Fx_server_max_request_size)
22518 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
22519 (Fx_display_mm_height, Fx_display_mm_width)
22520 (Fx_display_backing_store, Fx_display_visual_class)
22521 (Fw32_select_font, Fx_display_save_under):
22522 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
22523 (Fx_display_pixel_height, Fx_display_planes)
22524 (Fx_display_color_cells, Fx_server_max_request_size)
22525 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
22526 (Fx_display_save_under): Fix typos in docstrings.
22527
22528 2007-11-14 Juanma Barranquero <lekktu@gmail.com>
22529
22530 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
22531 corresponding to deleted entries; they are an implementation detail.
22532 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
22533 Remove variables.
22534 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
22535 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
22536 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
22537 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
22538 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
22539 (Fw32_define_rgb_color, Fw32_load_color_file)
22540 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
22541 Fix typos in docstrings.
22542 (Fx_server_version): Reflow docstring.
22543 (Fw32_shell_execute): Doc fixes.
22544
22545 2007-11-13 Juanma Barranquero <lekktu@gmail.com>
22546
22547 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
22548 if w32_parse_hot_key returned nil.
22549
22550 2007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
22551
22552 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
22553
22554 2007-11-09 Jason Rumney <jasonr@gnu.org>
22555
22556 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
22557
22558 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
22559
22560 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
22561 Remove W32_SCROLL_BAR_CLICK_EVENT.
22562
22563 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
22564 Add MULTIMEDIA_KEY_EVENT.
22565
22566 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
22567 (lispy_multimedia_keys) [WINDOWSNT]: New array.
22568 (make_lispy_event) [WINDOWSNT]: Use it to translate
22569 MULTIMEDIA_KEY_EVENT.
22570
22571 * w32term.h (WM_APPCOMMAND): Define if not already.
22572 (GET_APPCOMMAND_LPARAM): Likewise.
22573
22574 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
22575 WM_APPCOMMAND.
22576
22577 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
22578 (syms_of_w32fns): Export and initialize it.
22579 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
22580
22581 2007-11-09 Chong Yidong <cyd@stupidchicken.com>
22582
22583 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
22584 twice.
22585
22586 * xdisp.c (handle_face_prop): Fix last change.
22587
22588 2007-11-09 Richard Stallman <rms@gnu.org>
22589
22590 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
22591 not just for after-strings and before-strings.
22592 Call face_for_overlay_string and pass the overlay to it.
22593 (handle_display_prop): Determine whether property came from an overlay.
22594 Pass OVERLAY arg to handle_single_display_spec.
22595 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
22596 (load_overlay_strings): Fill in it->string_overlays.
22597 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
22598
22599 * xfaces.c (face_for_overlay_string): Function renamed from
22600 face_at_buffer_position_no_overlays, and add arg OVERLAY.
22601
22602 * dispextern.h (struct it): New elt string_overlays.
22603 New elt from_overlay, also in stack.
22604 Rearrange a few elements.
22605 (face_for_overlay_string): Decl renamed from
22606 face_at_buffer_position_no_overlays, and add argument.
22607
22608 2007-11-09 Richard Stallman <rms@gnu.org>
22609
22610 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
22611 to get the base face for an overlay string.
22612
22613 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
22614
22615 * xfaces.c (face_at_buffer_position_no_overlays): New function.
22616
22617 * xdisp.c (handle_stop): Move some code out of loop.
22618
22619 2007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22620
22621 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
22622 Fix conversion from Lisp object to ATSUFontID.
22623
22624 2007-11-09 Jason Rumney <jasonr@gnu.org>
22625
22626 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
22627
22628 2007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22629
22630 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
22631 Don't assume regions are aligned to page boundary.
22632 (print_load_command_name): Add LC_UUID if defined.
22633
22634 2007-11-09 Richard Stallman <rms@gnu.org>
22635
22636 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
22637
22638 2007-11-07 Jason Rumney <jasonr@gnu.org>
22639
22640 * s/windows95.h: Remove.
22641
22642 2007-11-06 Jan Djärv <jan.h.d@swipnet.se>
22643
22644 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
22645 abort with a message on unhandled store_type values.
22646
22647 2007-11-01 Jan Djärv <jan.h.d@swipnet.se>
22648
22649 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
22650 Remove HAVE_X11R5 and HAVE_X11R4.
22651
22652 2007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
22653
22654 * Makefile.in: Remove references to sunfns.c and sunfns.o.
22655
22656 2007-11-01 Johan Bockgård <bojohan@gnu.org>
22657
22658 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
22659 Don't set s->stippled_p here, since it has already been set by
22660 x_set_glyph_string_gc from x_draw_glyph_string.
22661
22662 2007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
22663
22664 * sunfns.c: Remove file.
22665
22666 * m/sun386.h:
22667 * m/sun2.h:
22668 * m/sparc.h: Remove Sun windows code.
22669
22670 2007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
22671
22672 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
22673 (init_keyboard): Set current_kboard's window-system to nil.
22674 (tty_read_avail_input): Typo.
22675 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
22676
22677 2007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
22678
22679 * s/usg5-4.h:
22680 * s/usg5-3.h:
22681 * s/ptx.h:
22682 * m/is386.h:
22683 * m/ibmps2-aix.h:
22684 * Makefile.in: Remove all mentions of X10.
22685
22686 * dispnew.c (syms_of_display): Don't mention version 10.
22687
22688 2007-10-28 Juanma Barranquero <lekktu@gmail.com>
22689
22690 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
22691 ($(BLD)/abbrev.$(O)): Remove.
22692
22693 2007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
22694
22695 Rewrite abbrev.c in Elisp.
22696 * image.c (Qcount): Don't declare as extern.
22697 (syms_of_image): Initialize and staticpro `Qcount'.
22698 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
22699 * emacs.c (main): Don't call syms_of_abbrev.
22700 * Makefile.in (obj): Remove abbrev.o.
22701 (abbrev.o): Remove.
22702 * abbrev.c: Remove.
22703
22704 2007-10-26 Martin Rudalics <rudalics@gmx.at>
22705
22706 * window.c (window_min_size_2): Don't count header-line.
22707
22708 2007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
22709
22710 * frame.h (struct frame): Move all bit fields after the first bit
22711 field to take advantage of the available space. Group all the
22712 chars together to reduce wasted space due to padding.
22713
22714 2007-10-26 Juanma Barranquero <lekktu@gmail.com>
22715
22716 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
22717
22718 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
22719 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
22720 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
22721 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
22722 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
22723 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
22724 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
22725 (last_marked, mark_object_loop_halt): Make static.
22726
22727 * frame.c (syms_of_frame) <delete-frame-functions>:
22728 Fix typo in docstring.
22729
22730 2007-10-25 Juanma Barranquero <lekktu@gmail.com>
22731
22732 * w32.c (init_environment): Fix tiny memory leak.
22733 (w32_get_resource): Remove unused variable `ok'.
22734
22735 2007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
22736
22737 Make `window-system' into a keyboard-local variable (rather than
22738 frame-local as done originally by multi-tty).
22739
22740 * keyboard.h (struct kboard): Add Vwindow_system.
22741 * keyboard.c (init_kboard): Set a default for Vwindow_system.
22742 (mark_kboards): Mark Vwindow_system.
22743
22744 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
22745 (init_display): Don't set the obsolete `window-system' frame-param.
22746
22747 * xterm.c (x_term_init):
22748 * w32term.c (w32_create_terminal):
22749 * term.c (init_tty): Set Vwindow_system.
22750 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
22751 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
22752
22753 * xfns.c (Fx_create_frame, x_create_tip_frame):
22754 * w32fns.c (Fx_create_frame, x_create_tip_frame):
22755 * macfns.c (Fx_create_frame):
22756 Don't set the obsolete `window-system' frame-param.
22757
22758 * frame.h (Qwindow_system): Remove.
22759 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
22760 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
22761
22762 2007-10-24 Richard Stallman <rms@gnu.org>
22763
22764 * frame.c (x_figure_window_size): For fullscreen case,
22765 set USPosition | PPosition without clobbering rest of window_prompting.
22766
22767 * keyboard.c (Fcurrent_idle_time): Doc fix.
22768
22769 * print.c (Fwith_output_to_temp_buffer): Doc fix.
22770
22771 2007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
22772
22773 * process.c (unwind_request_sigio): Only define if __ultrix__.
22774
22775 * callproc.c (child_setup): Remove spurious *.
22776
22777 * lisp.h (Fget_text_property): Declare.
22778 (have_menus_p): Declare it here rather than in sys-dep header files.
22779 * macterm.h (have_menus_p):
22780 * msdos.h (have_menus_p):
22781 * xterm.h (have_menus_p): Remove.
22782
22783 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
22784 (Fmake_variable_frame_local): Just check the variable's const-ness
22785 rather than checking nil or t.
22786
22787 2007-10-22 Jason Rumney <jasonr@gnu.org>
22788
22789 * w32fns.c: Include math.h.
22790 (w32_abort): Declaration moved to nt/config.nt.
22791
22792 * s/ms-w32.h (HAVE_STDLIB_H): Define.
22793 (abort): Redefinition moved to nt/config.nt.
22794
22795 * m/windowsnt.h: Remove.
22796
22797 2007-10-22 Juanma Barranquero <lekktu@gmail.com>
22798
22799 * emacs.c (Fdump_emacs): Fix typo in message.
22800 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
22801 <installation-directory>: Reflow docstring.
22802
22803 2007-10-22 Juri Linkov <juri@jurta.org>
22804
22805 * minibuf.c: Allow minibuffer default to be a list of default values.
22806 With empty input use the first element of this list as returned default.
22807 (string_to_object)
22808 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
22809 (read_minibuf): If defalt is cons, set histstring to its car.
22810 (Fread_string): If default_value is cons, set val to its car.
22811 (Fread_buffer): If def is cons, use its car.
22812 (Fcompleting_read): If defalt is cons, set val to its car.
22813
22814 2007-10-21 Michael Albinus <michael.albinus@gmx.de>
22815
22816 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
22817
22818 2007-10-20 Juanma Barranquero <lekktu@gmail.com>
22819
22820 * doc.c (Fdocumentation): Check for advice in all cases.
22821
22822 2007-10-19 Chong Yidong <cyd@stupidchicken.com>
22823
22824 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
22825
22826 2007-10-19 Richard Stallman <rms@gnu.org>
22827
22828 * doc.c (Fdocumentation): Check for and handle an advised function.
22829
22830 2007-10-19 Juanma Barranquero <lekktu@gmail.com>
22831
22832 * process.c (Fset_process_filter): Doc fix.
22833
22834 2007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
22835
22836 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
22837 which caused key-translation-map to applied repeatedly (thus breaking
22838 double-mode).
22839
22840 2007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
22841
22842 * xselect.c (x_own_selection, x_handle_selection_clear)
22843 (x_clear_frame_selections):
22844 * w32menu.c (list_of_panes, list_of_items):
22845 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
22846 * textprop.c (validate_plist, interval_has_all_properties)
22847 (interval_has_some_properties, interval_has_some_properties_list)
22848 (add_properties, text_property_list):
22849 * process.c (Fget_buffer_process, list_processes_1, status_notify):
22850 * minibuf.c (Fassoc_string):
22851 * macselect.c (x_own_selection, x_clear_frame_selections)
22852 (Fx_disown_selection_internal):
22853 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
22854 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
22855
22856 2007-10-17 Chong Yidong <cyd@stupidchicken.com>
22857
22858 * process.c: Link to libs for calling res_init() if available.
22859 (Fmake_network_process): Call res_init() before getaddrinfo or
22860 gethostbyname, if possible.
22861
22862 2007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
22863
22864 * lread.c (read1): Set pvectype for char_tables.
22865
22866 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
22867 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
22868 Add type checks.
22869 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
22870
22871 * alloc.c (free_misc): Use XMISCTYPE.
22872 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
22873
22874 2007-10-17 Glenn Morris <rgm@gnu.org>
22875
22876 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
22877 (syms_of_minibuf): Add Qcompletion_ignore_case.
22878 * dired.c (Qcompletion_ignore_case): Change to external.
22879 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
22880 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
22881 (Fread_file_name): Use it rather than intern'ing.
22882
22883 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
22884 (Fread_coding_system): Ignore case of user input.
22885
22886 2007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22887
22888 * xdisp.c (handle_display_prop): Ignore display specs after
22889 replacing one when string text is being replaced.
22890 (handle_single_display_spec): Pretend as if characters with display
22891 property haven't been consumed only when buffer text is being replaced.
22892
22893 2007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
22894
22895 * xfns.c (Fx_create_frame, Fx_display_list):
22896 * window.c (window_fixed_size_p, enlarge_window)
22897 (shrink_window_lowest_first):
22898 * macterm.c (init_font_name_table):
22899 * macfns.c (Fx_create_frame, Fx_display_list):
22900 * lread.c (close_load_descs):
22901 * keyboard.c (read_char_x_menu_prompt):
22902 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
22903 * coding.c (code_convert_region_unwind): Test the type of an object
22904 rather than just !NILP before extracting data from it.
22905
22906 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
22907
22908 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
22909 (XMISCANY): New macro.
22910 (XMISCTYPE): Use it.
22911 (struct Lisp_Misc_Any): New type.
22912 (union Lisp_Misc): Use it.
22913 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
22914 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
22915 (find_symbol_value, set_internal, default_value, Fset_default)
22916 (Fmake_variable_buffer_local, Fmake_local_variable)
22917 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
22918 (Flocal_variable_if_set_p, Fvariable_binding_locus):
22919 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
22920 * alloc.c (allocate_buffer): Set the size and tag.
22921 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
22922 Use XMISCANY.
22923 (die): Follow the GNU convention for error messages.
22924 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
22925 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
22926 tag any more.
22927 (set_buffer_internal_1):
22928 * frame.c (store_frame_param):
22929 * eval.c (specbind):
22930 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
22931
22932 * doc.c (Fsnarf_documentation): Simplify.
22933
22934 2007-10-14 Juanma Barranquero <lekktu@gmail.com>
22935
22936 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
22937 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
22938
22939 2007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
22940
22941 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
22942
22943 2007-10-14 Juanma Barranquero <lekktu@gmail.com>
22944
22945 * eval.c (do_autoload): Don't save autoloads.
22946
22947 * data.c (Ffset): Save autoload of the function being set.
22948
22949 2007-10-07 John Paul Wallington <jpw@pobox.com>
22950
22951 * xfns.c (x_create_tip_frame): Set the `display-type' frame
22952 parameter before setting up faces.
22953
22954 2007-10-13 Eli Zaretskii <eliz@gnu.org>
22955
22956 * ccl.c (Fregister_code_conversion_map):
22957 * keyboard.c (append_tool_bar_item): Reformat last change.
22958
22959 * lisp.h (eabs): Rename from `abs'. All callers changed.
22960
22961 2007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
22962
22963 * buffer.c (add_overlay_mod_hooklist):
22964 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
22965 * fontset.c (make_fontset):
22966 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
22967 (append_tool_bar_item):
22968 * macmenu.c (grow_menu_items):
22969 * w32menu.c (grow_menu_items):
22970 * xmenu.c (grow_menu_items): Use larger_vector.
22971
22972 2007-10-13 Eli Zaretskii <eliz@gnu.org>
22973
22974 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
22975 selected frame'' on MSDOS).
22976
22977 2007-10-12 Martin Rudalics <rudalics@gmx.at>
22978
22979 * frame.c (Qexplicit_name): New variable.
22980 (x_report_frame_params): Report it in parameter alist.
22981 (syms_of_frame): Intern and staticpro it.
22982
22983 2007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
22984
22985 * macfns.c (x_create_tip_frame): Set terminal for frame.
22986
22987 2007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
22988
22989 * frame.c (Qenvironment): Remove.
22990 (syms_of_frame) <Qenvironment>: Don't initialize.
22991 (Fdelete_frame): Don't treat the `environment' param specially.
22992 * frame.h (Qenvironment): Don't declare.
22993 * callproc.c (set_initial_environment): Don't set unused frame param.
22994
22995 * frame.c (Fframe_with_environment): Remove.
22996 (syms_of_frame) <Sframe_with_environment>: Don't declare.
22997
22998 * lisp.h (Fframe_with_environment): Don't declare.
22999
23000 2007-10-10 Juanma Barranquero <lekktu@gmail.com>
23001
23002 * indent.c (indent_tabs_mode, last_known_column)
23003 (last_known_column_modified): Make static.
23004 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
23005
23006 2007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
23007
23008 * puresize.h (BASE_PURESIZE): Increase to 1170000.
23009
23010 2007-10-09 Jason Rumney <jasonr@gnu.org>
23011
23012 * w32term.c (x_set_window_size): Disable code that attempts to tell
23013 Lisp code about a size change before it actually happens.
23014
23015 2007-10-09 Richard Stallman <rms@gnu.org>
23016
23017 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
23018 return HANDLED_RETURN.
23019
23020 2007-10-08 Martin Rudalics <rudalics@gmx.at>
23021
23022 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
23023 when there's an unread command event.
23024
23025 * frame.c (focus_follows_mouse): Move here from frame.el to allow
23026 window autoselection act appropriately when leaving selected frame.
23027 (syms_of_frame): Initialize focus_follows_mouse.
23028 * frame.h (focus_follows_mouse): Extern it.
23029 * macterm.c (XTread_socket): When focus_follows_mouse is nil
23030 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
23031 * msdos.c (dos_rawgetc): Likewise.
23032 * w32term.c (w32_read_socket): Likewise.
23033 * xterm.c (handle_one_xevent): Likewise.
23034 * xdisp.c (syms_of_xdisp): In doc-string of
23035 mouse-autoselect-window mention focus-follows-mouse.
23036
23037 2007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23038
23039 * macterm.c (mac_load_query_font): Fix missing return value.
23040 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
23041 Add BLOCK_INPUT.
23042
23043 2007-10-08 Richard Stallman <rms@gnu.org>
23044
23045 * xdisp.c (get_window_cursor_type): Implement documented behavior
23046 for cursor-in-non-selected-windows = t.
23047
23048 2007-10-08 Jason Rumney <jasonr@gnu.org>
23049
23050 * w32.c (w32_get_resource): Always close registry keys.
23051
23052 2007-10-08 Jason Rumney <jasonr@gnu.org>
23053
23054 * makefile.w32-in (LIBS): Add COMCTL32.
23055
23056 * w32fns.c (globals_of_w32fns): Init common controls.
23057
23058 2007-10-08 Richard Stallman <rms@gnu.org>
23059
23060 * image.c (our_memory_buffer): Rename from omfib_buffer.
23061
23062 2007-10-08 Richard Stallman <rms@gnu.org>
23063
23064 * buffer.c (Foverlays_at): Doc fix.
23065
23066 2007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
23067
23068 * fns.c (Fplist_put): Preserve uneven tail data.
23069
23070 2007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
23071
23072 * termhooks.h (enum event_kind): Remove trailing comma.
23073
23074 * frame.h (enum): Remove trailing comma.
23075
23076 2007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
23077
23078 * w32proc.c (delete_child): Don't terminate threads of zombies.
23079
23080 2007-10-08 Martin Rudalics <rudalics@gmx.at>
23081
23082 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
23083
23084 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
23085 last-repeatable-command.
23086 (init_kboard): Initialize Vlast_repeatable_command.
23087 (command_loop_1): Set it to real_this_command unless that was
23088 bound to an input event.
23089 (mark_kboards): Mark it.
23090
23091 2007-10-08 Richard Stallman <rms@gnu.org>
23092
23093 * eval.c (condition-case): Doc fix.
23094
23095 2007-10-08 Masatake YAMATO <jet@gyve.org>
23096
23097 * xfaces.c (tty_supports_face_attributes_p): Fix code
23098 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
23099 was copied and not edited.
23100
23101 2007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
23102
23103 Add new `input-decode-map' keymap and use it for terminal
23104 escape sequences.
23105 * keyboard.h (struct kboard): Add Vinput_decode_map.
23106 Remove Vlocal_key_translation_map.
23107 * keyboard.c (read_key_sequence): Add support for input-decode-map.
23108 (init_kboard): Init input-decode-map.
23109 Replace local-key-translation-map back with key-translation-map.
23110 (syms_of_keyboard): Declare input-decode-map.
23111 Remove local-key-translation-map. Update docstrings.
23112 (mark_kboards): Mark Vinput_decode_map.
23113 Don't mark Vlocal_key_translation_map.
23114 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
23115 Replace local-key-translation-map back with key-translation-map.
23116 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
23117 Bind in input-decode-map rather than function-key-map.
23118
23119 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
23120 This was made redundant by the previous introduction of XSETPVECTYPE.
23121
23122 2007-10-09 Richard Stallman <rms@gnu.org>
23123
23124 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
23125
23126 2007-09-29 Richard Stallman <rms@gnu.org>
23127
23128 * eval.c (internal_condition_case_2, internal_condition_case_1)
23129 (internal_condition_case): Reenable abort if x_catching_errors ()
23130 to see if that really happens and why.
23131
23132 2007-10-06 Andreas Schwab <schwab@suse.de>
23133
23134 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
23135
23136 2007-10-04 Juanma Barranquero <lekktu@gmail.com>
23137
23138 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
23139
23140 2007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
23141
23142 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
23143
23144 2007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
23145
23146 * window.h (struct window):
23147 * window.c (struct save_window_data, struct saved_window):
23148 * termhooks.h (struct terminal):
23149 * process.h (struct Lisp_Process):
23150 * frame.h (struct frame):
23151 * buffer.h (struct buffer):
23152 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
23153 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
23154 The size field of (pseudo)vectors is now unsigned.
23155 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
23156
23157 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
23158 Turn `count' into an integer.
23159
23160 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
23161 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
23162 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
23163 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
23164 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
23165
23166 * alloc.c (allocate_pseudovector): New fun.
23167 (ALLOCATE_PSEUDOVECTOR): New macro.
23168 (allocate_window, allocate_terminal, allocate_frame)
23169 (allocate_process): Use it.
23170 (mark_vectorlike): New function.
23171 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
23172 (mark_terminals): Use it.
23173 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
23174 (Fmake_byte_code): Use XSETPVECTYPE.
23175
23176 * frame.c (Fframe_parameters): Minor simplification.
23177
23178 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
23179
23180 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
23181
23182 * buffer.c (Fget_buffer_create, init_buffer_once):
23183 * lread.c (defsubr):
23184 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
23185
23186 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
23187 defined differently in the m/*.h files.
23188 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
23189 (XSETPVECTYPE): New macro.
23190 (XSETPSEUDOVECTOR): Use it.
23191
23192 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
23193 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
23194
23195 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
23196 * lread.c (defvar_per_buffer):
23197 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
23198
23199 * window.c (candidate_window_p): Only consider as visible frames that
23200 are on the same terminal.
23201
23202 * m/ibms390x.h (MARKBIT): Remove unused macro.
23203
23204 2007-10-01 Juanma Barranquero <lekktu@gmail.com>
23205
23206 * lread.c (Fload): Fix typo in docstring.
23207
23208 2007-10-01 Michaël Cadilhac <michael@cadilhac.name>
23209
23210 * floatfns.c (Fexpt): Manually check for overflows, so that a power
23211 of a non-zero value can't yield zero.
23212
23213 2007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
23214
23215 * term.c (term_clear_mouse_face, term_mouse_highlight)
23216 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
23217
23218 * print.c (safe_debug_print): Use XHASH.
23219
23220 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
23221 Lisp elements such as tags.
23222 (XHASH): New macro.
23223 (EQ): Use it.
23224 (SREF, SSET, STRING_COPYIN): Use SDATA.
23225 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
23226
23227 * alloc.c (mark_terminal): Remove left-over declaration.
23228 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
23229 (allocate_vectorlike): Remove type argument. Adjust callers.
23230 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
23231 Only handle the one remaining MEM_TYPE_VECTORLIKE.
23232
23233 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
23234 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
23235 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
23236 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
23237 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
23238 Use them.
23239
23240 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
23241 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
23242 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
23243
23244 2007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
23245
23246 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
23247 loaded by default.
23248
23249 2007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
23250
23251 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
23252 on this tty.
23253 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
23254
23255 * term.c (mouse_face_window): Rename from Qmouse_face_window.
23256 Update all users.
23257 (handle_one_term_event): Use Gpm_DrawPointer.
23258 (Fgpm_mouse_start): Rename from Fterm_open_connection.
23259 Signal errors instead of returning nil. Always return nil.
23260 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
23261 Make it a noop if gpm-mouse was not activated.
23262 (syms_of_term): Update names.
23263
23264 2007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
23265
23266 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
23267 (init_sys_modes): Check that gpm_tty is the current tty.
23268
23269 * alloc.c (allocate_terminal): Set the vector size to only count the
23270 lisp fields. Initialize those to nil.
23271 (mark_object): Don't treat terminals specially.
23272 (mark_terminal): Remove.
23273 (mark_terminals): Use mark_object instead.
23274
23275 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
23276 the GC to the beginning.
23277
23278 * indent.h:
23279 * indent.c: Use EMACS_INT for ints coming from Elisp data.
23280
23281 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
23282
23283 2007-09-25 Jason Rumney <jasonr@gnu.org>
23284
23285 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
23286
23287 * w32console.c (create_w32cons_output): Remove.
23288
23289 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
23290
23291 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
23292 (reset_sys_modes): Use reset_terminal_modes_hook.
23293
23294 2007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
23295
23296 * eval.c (do_autoload): Don't output any message.
23297
23298 2007-09-24 Juri Linkov <juri@jurta.org>
23299
23300 * emacs.c (standard_args): Change priority of "--no-splash"
23301 from 40 to 3. Add "--no-desktop" with the same priority.
23302
23303 2007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
23304
23305 * alloc.c (gc_sweep): Check cons cell mark bits word by word
23306 and optimize the case where they are all 1.
23307
23308 2007-09-23 Johannes Weiner <hannes@saeurebad.de>
23309
23310 * lisp.h (abs): Define if not defined.
23311 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
23312 Don't define `abs', since it's defined in lisp.h.
23313
23314 2007-09-22 Eli Zaretskii <eliz@gnu.org>
23315
23316 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
23317 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
23318 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
23319 (init_tty): Use DEV_TTY instead of "/dev/tty".
23320 [WINDOWSNT]: No need to protect from NAME arg being null.
23321
23322 2007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
23323
23324 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
23325 up the tty state.
23326
23327 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
23328
23329 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
23330 (gpm_tty): Change its type.
23331 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
23332 (gpm_tty): Change its type and initialize it.
23333 (Fterm_open_connection): Check the frame is indeed a tty.
23334 Use the new gpm_tty.
23335 (Fterm_close_connection): Use the new gpm_tty.
23336 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
23337 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
23338
23339 2007-09-21 Juanma Barranquero <lekktu@gmail.com>
23340
23341 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
23342 underline_color, to draw strike-through.
23343
23344 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
23345
23346 * lisp.h (allocate_terminal): Declare.
23347
23348 * window.c (candidate_window_p): Consider frames that are being placed
23349 by the user as somewhere between visible and iconified.
23350 (window_loop): Prefer windows on the current frame.
23351 (Fselect_window): Move the use of select-frame to the beginning so we
23352 can just delegate all the work (it'll call us back anyway).
23353
23354 * frame.c (Qdisplay_environment_variable):
23355 * frame.h (Qdisplay_environment_variable): Delete.
23356
23357 * .gdbinit (xbacktrace): Print the arg's address rather than the value
23358 of the first arg, since that value may be a union.
23359
23360 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
23361 parameter rather than Qdisplay_environment_variable. If all else
23362 fails, look for DISPLAY in initial-environment.
23363
23364 2007-09-21 Glenn Morris <rgm@gnu.org>
23365
23366 * Makefile.in (emacstool): Remove target.
23367 (lisp, shortlisp): Remove termdev.elc.
23368
23369 2007-09-21 Markus Triska <markus.triska@gmx.at>
23370
23371 * xterm.c (x_delete_display): Compile session management conditionally.
23372
23373 2007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
23374
23375 * callproc.c (getenv_internal_1): New function.
23376 (getenv_internal): Use it.
23377 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
23378
23379 * terminal.c (get_terminal): Don't accept ints to represent terminals.
23380 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
23381 (Fset_terminal_parameter): Work with dead terminals as well.
23382 (Fmodify_terminal_parameters): Remove.
23383
23384 * terminal.c (get_terminal): Handle terminals.
23385 Make sure the terminal returned is live.
23386 (create_terminal): Use allocate_terminal.
23387 (mark_terminals): Move to alloc.c.
23388 (delete_terminal): Use terminal->name as liveness status.
23389 NULL out fields after freeing their contents.
23390 Don't deallocate the object.
23391 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
23392 rather than an int.
23393 (Fterminal_live_p): Accept non-integer arguments.
23394 (Fterminal_list): Return terminal objects rather than an ints.
23395
23396 * alloc.c (enum mem_type): New member for `terminal' objects.
23397 (allocate_terminal): New function.
23398 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
23399 Handle terminals.
23400 (mark_terminal): New fun.
23401 (mark_terminals): Move from terminal.c.
23402
23403 * term.c (get_tty_terminal): Don't treat output_initial specially.
23404 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
23405 (delete_tty): Use terminal->name as liveness status.
23406
23407 * termhooks.h (struct terminal): Make it into a pseudovector.
23408 Remove `deleted' replaced by checking `name's nullness.
23409
23410 * print.c (print_object): Handle terminals.
23411
23412 * lisp.h (enum pvec_type): New `terminal' pseudovector.
23413 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
23414
23415 * frame.c (make_terminal_frame):
23416 * keyboard.c (tty_read_avail_input):
23417 * w32term.c (x_delete_terminal):
23418 * xfns.c (Fx_create_frame, x_create_tip_frame):
23419 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
23420
23421 2007-09-20 Glenn Morris <rgm@gnu.org>
23422
23423 * process.c (Fmake_network_process): Doc fix.
23424
23425 2007-09-19 Jason Rumney <jasonr@gnu.org>
23426
23427 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
23428
23429 2007-09-19 Michaël Cadilhac <michael@cadilhac.name>
23430
23431 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
23432 Fix a C warning regarding variable constness.
23433
23434 * xterm.c (handle_one_xevent): Fix a C warning.
23435
23436 2007-09-18 Jason Rumney <jasonr@gnu.org>
23437
23438 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
23439
23440 2007-09-17 Jan Djärv <jan.h.d@swipnet.se>
23441
23442 * gtkutil.c (gdpy_def): New variable.
23443 (xg_initialize): Initialize gdpy_def.
23444 (xg_display_close): If no other display exists, set gdpy_def to a
23445 new connection.
23446
23447 2007-09-16 Jan Djärv <jan.h.d@swipnet.se>
23448
23449 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
23450 when we have no file name for the icon.
23451 (xg_tool_bar_expose_callback): Remove.
23452 (xg_create_tool_bar): Don't connect expose signal to
23453 xg_tool_bar_expose_callback.
23454 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
23455
23456 2007-09-16 Andreas Schwab <schwab@suse.de>
23457
23458 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
23459 values instead of zapping them.
23460
23461 2007-09-14 Glenn Morris <rgm@gnu.org>
23462
23463 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
23464 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
23465 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
23466 scope and rename to omfib_buffer for clarity.
23467 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
23468
23469 2007-09-14 Kenichi Handa <handa@m17n.org>
23470
23471 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
23472
23473 2007-09-13 Jason Rumney <jasonr@gnu.org>
23474
23475 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
23476
23477 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
23478
23479 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
23480 (mac_term_init): Call here instead, passing rif.
23481
23482 2007-09-13 Glenn Morris <rgm@gnu.org>
23483
23484 * s/hpux.h: No longer define `static' as nothing.
23485
23486 2007-09-13 Johan Bockgård <bojohan@gnu.org>
23487
23488 * callint.c (Fcall_interactively): Remove unused var `fun'.
23489
23490 2007-09-12 Romain Francoise <romain@orebokech.com>
23491
23492 * window.c (prefer_window_split_horizontally, display_buffer):
23493 Revert 2007-09-08 change.
23494
23495 2007-09-12 Glenn Morris <rgm@gnu.org>
23496
23497 * alloca.c: Remove file.
23498 * Makefile.in (alloca): Do not undef.
23499 (allocaobj, alloca.o): Remove.
23500 (otherobj): Remove allocaobj.
23501 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
23502 * regex.c (C_ALLOCA): Remove all references and code that was only
23503 used when this was defined.
23504 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
23505 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
23506 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
23507
23508 * Makefile.in (SOURCES, unlock, relock): Delete.
23509
23510 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
23511 (menu_grab_callback): All uses changed.
23512
23513 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
23514 (x_reply_selection_request): All uses changed.
23515
23516 2007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
23517
23518 * lread.c (load_warn_old_style_backquotes): Change message to look
23519 better when it appears in the middle of byte-compiler messages.
23520
23521 2007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
23522
23523 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
23524
23525 * xterm.c (x_create_terminal): Add comment.
23526
23527 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
23528
23529 2007-09-10 Richard Stallman <rms@gnu.org>
23530
23531 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
23532
23533 2007-09-10 Michaël Cadilhac <michael@cadilhac.name>
23534
23535 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
23536 (DEFUN): Document `intspec', use it instead of `prompt'.
23537
23538 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
23539
23540 * data.c (Finteractive_form): If the interactive specification starts
23541 with a `(', use it as a Lisp form.
23542
23543 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
23544 name and file modes.
23545
23546 * callint.c (Fcall_interactively): Comment fixes.
23547
23548 2007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
23549
23550 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
23551 and compiled functions.
23552
23553 2007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
23554
23555 * window.c (prefer_window_split_horizontally): New variable.
23556 (display_buffer): Consider splitting window horizontally depending
23557 on prefer_window_split_horizontally.
23558
23559 2007-09-08 Eli Zaretskii <eliz@gnu.org>
23560
23561 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
23562
23563 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
23564
23565 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
23566
23567 * frame.c (x_set_frame_parameters): Check number is positive before
23568 using XFASTINT.
23569
23570 * window.c (freeze_window_start): Don't presume selected_window holds
23571 a window object.
23572 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
23573
23574 2007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
23575
23576 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
23577
23578 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
23579
23580 * window.c (Vsplit_window_preferred_function): New var.
23581 (Fdisplay_buffer): Use it.
23582 (syms_of_window): Export, and initialize it.
23583
23584 2007-09-06 Pixel <pixel@mandriva.com> (tiny change)
23585
23586 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
23587
23588 2007-09-06 Glenn Morris <rgm@gnu.org>
23589
23590 * gtkutil.c (menu_grab_callback) <cnt>:
23591 * xselect.c (x_reply_selection_request) <cnt>: Move static
23592 variable to file scope.
23593
23594 2007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
23595
23596 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
23597 consistent values of selected_frame and selected_window.
23598
23599 2007-09-04 Jason Rumney <jasonr@gnu.org>
23600
23601 * w32console.c (initialize_w32_display): Zero unused hooks.
23602
23603 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
23604
23605 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
23606 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
23607
23608 2007-09-04 Jason Rumney <jasonr@gnu.org>
23609
23610 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
23611 in w32console.c. Set up input. Remove XXX comments that have been
23612 confirmed as correct.
23613
23614 * s/ms-w32.h (MULTI_KBOARD): Define.
23615
23616 * w32console.c (one_and_only_w32cons): Remove.
23617 (initialize_w32_display): Take terminal argument.
23618
23619 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
23620 initialize_w32_display.
23621 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
23622
23623 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
23624
23625 * keyboard.c (discard_mouse_events): Discard it.
23626 (make_lispy_event): Translate it to a lisp event.
23627 (lispy_wheel_names): Add wheel-left and right events.
23628 (syms_of_keyboard): Enlarge wheel_syms.
23629
23630 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
23631 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
23632
23633 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
23634
23635 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
23636 from WM_MOUSEHWHEEL.
23637 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
23638
23639 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
23640 terminal.
23641
23642 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
23643 keyboard for the terminal.
23644
23645 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
23646
23647 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
23648 (Vresume_tty_hook): Rename from Vresume_tty_functions.
23649 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
23650 and resume-tty-function to resume-tty-hook.
23651 (Fsuspend_tty, Fresume_tty): Use new names.
23652
23653 2007-09-02 Jan Djärv <jan.h.d@swipnet.se>
23654
23655 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
23656 if it starts with "n:".
23657
23658 2007-08-31 Jan Djärv <jan.h.d@swipnet.se>
23659
23660 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
23661
23662 2007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
23663
23664 * frame.h:
23665 * frame.c (Qterm_environment_variable): Remove.
23666 (syms_of_frame): Don't init and staticpro it.
23667
23668 * callproc.c (getenv_internal): Remove special case for $TERM.
23669
23670 * callproc.c (Vinitial_environment): New variable.
23671 (set_initial_environment): Initialize it.
23672 (syms_of_callproc): Declare it.
23673 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
23674 TERM under which a process runs is never related to the TERM in which
23675 Emacs is running.
23676
23677 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
23678
23679 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
23680 * s/darwin.h: ... do it here.
23681
23682 2007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
23683
23684 * lisp.h (set_initial_environment): Rename from set_global_environment.
23685
23686 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
23687 removed by mistake on the multi-tty branch.
23688
23689 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
23690 (Fmodify_frame_parameters): Return a value.
23691
23692 * image.c (png_load): Comment-out var only used in commented-out code.
23693
23694 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
23695 before passing it to mark_object.
23696
23697 * xfaces.c (internal_resolve_face_name): Return a value.
23698 (internal_resolve_face_name, resolve_face_name_error): Comment out.
23699
23700 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
23701 (x_icon): Comment-out var only used in commented-out code.
23702
23703 2007-08-29 Romain Francoise <romain@orebokech.com>
23704
23705 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
23706 QUIT hasn't been provided.
23707
23708 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
23709
23710 * callproc.c (child_setup, getenv_internal): Use the
23711 display-environment-variable and term-environment-variable frame params.
23712 (set_initial_environment): Initialise Vprocess_environment.
23713
23714 * config.in: Disable multi-keyboard support on a mac.
23715
23716 * frame.c (Qterm_environment_variable)
23717 (Qdisplay_environment_variable): New variables.
23718 (syms_of_frame): Intern and staticpro them.
23719 (Fmake_terminal_frame): Disable output method test.
23720
23721 * frame.h: Declare them here.
23722
23723 * macfns.c (x_set_mouse_color): Get rif from the frame.
23724 (x_set_tool_bar_lines): Don't use updating_frame.
23725 (mac_window): Add 2 new parameters for consistency with other systems.
23726 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
23727 frame parameters following what is done in X11 and w32. Don't use
23728 FRAME_MAC_DISPLAY_INFO.
23729 (Fx_open_connection, start_hourglass): Remove window-system check.
23730 (x_create_tip_frame): Get the keyboard from the terminal.
23731
23732 * macmenu.c: Reorder includes.
23733 (Fx_popup_menu): Use terminal specific mouse_position_hook.
23734
23735 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
23736 terminal parameter.
23737 (x_clear_frame): Add a frame parameter.
23738 (note_mouse_movement): Get rif from the frame.
23739 (mac_term_init): Initialize the terminal.
23740 (mac_initialize): Make static and move terminal initialization ...
23741 (mac_create_terminal): ... to this new function.
23742
23743 * macterm.h (struct mac_display_info): Add terminal.
23744 (mac_initialize): Delete declaration.
23745
23746 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
23747
23748 * sysdep.c: Comment out text after #endif.
23749
23750 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
23751 is defined. Better initialize ttys in windows. Use terminal
23752 specific mouse_position_hook.
23753
23754 * termhooks.h (union display_info): Add mac_display_info.
23755
23756 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
23757 Set the default minibuffer frame, window_system and the rest of the
23758 frame parameters following what is done in X11.
23759
23760 * w32term.c (w32_initialize): Make static.
23761
23762 * xselect.c (x_handle_selection_clear): Only access
23763 terminal->kboard when MULTI_KBOARD is defined.
23764
23765 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
23766 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
23767
23768 2007-08-29 Jason Rumney <jasonr@gnu.org>
23769
23770 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
23771 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
23772
23773 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
23774 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
23775
23776 * keyboard.c (restore_kboard_configuration): Only define when
23777 MULTI_KBOARD defined.
23778
23779 * makefile.w32-in: Update dependancies from Makefile.in.
23780 (OBJ1): Add terminal.$(O)
23781
23782 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
23783 Don't define function body.
23784 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
23785
23786 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
23787
23788 * w32.c (request_sigio, unrequest_sigio): Remove.
23789
23790 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
23791 (w32con_clear_frame, w32con_clear_end_of_line)
23792 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
23793 (w32con_delete_glyphs, w32con_set_terminal_window)
23794 (scroll_line, w32_sys_ring_bell): Add frame arg.
23795 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
23796 Add terminal arg.
23797 (PICK_FRAME): Remove.
23798 (w32con_write_glyphs): Use frame specific terminal coding.
23799 (one_and_only_w32cons): New global variable.
23800 (initialize_w32_display): Use it for storing hooks.
23801 (create_w32cons_output): New function.
23802
23803 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
23804 arg a frame.
23805
23806 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
23807 Set window_system.
23808 (x_set_tool_bar_lines): Don't use updating_frame.
23809 (Fx_create_frame): Set terminal and ref count.
23810 (Fx_open_connection): Remove window-system check.
23811
23812 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
23813
23814 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
23815 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
23816 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
23817 Add frame arg.
23818 (x_delete_terminal, w32_create_terminal): New functions.
23819 (w32_term_init): Create a terminal.
23820 (w32_initialize): Move terminal specific initialization to
23821 w32_create_terminal.
23822
23823 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
23824 (w32_clear_rect, w32_clear_area): Use background from frame.
23825 (w32_display_info): Add terminal.
23826 (w32_sys_ring_bell, x_delete_display): Declare here.
23827
23828 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
23829
23830 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
23831
23832 2007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
23833
23834 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
23835 Fix get_named_tty calls for the controlling tty.
23836
23837 2007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
23838
23839 * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
23840
23841 2007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
23842
23843 * term.c (tty_insert_glyphs): Add missing first parameter.
23844
23845 2007-08-29 Károly Lőrentey <karoly@lorentey.hu>
23846
23847 * buffer.c (Fbuffer_list, Fbury_buffer):
23848 Take frame->buried_buffer_list into account.
23849
23850 * cm.c (current_tty): New variable, for cmputc().
23851 (cmputc): Use it.
23852 (cmcheckmagic): Add tty parameter, look up terminal streams there.
23853 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
23854 (cmgoto): Add tty parameter. Pass it on to calccost().
23855 Use emacs_tputs() instead of tputs().
23856
23857 * cm.h (emacs_tputs): New macro to set current_tty, and then call
23858 tputs().
23859 (current_tty): New variable, for cmputc().
23860 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
23861
23862 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
23863 (internal_condition_case, internal_condition_case_1)
23864 (internal_condition_case_2): Don't abort when x_catching_errors.
23865
23866 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
23867 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
23868 prevent crashes caused by bogus longjmps in read_char.
23869
23870 * keymap.h (Fset_keymap_parent): Add EXFUN.
23871
23872 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
23873 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
23874 Remove redundant definition.
23875
23876 * macfns.c (x_set_mouse_color, x_make_gc):
23877 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
23878
23879 * w32term.c (x_free_frame_resources):
23880 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
23881 (w32_initialize): Use the accessor macros for terminal characteristics.
23882
23883 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
23884 Use the accessor macros for terminal characteristics.
23885 * msdos.c (internal_terminal_init): Use the accessor macros for
23886 terminal characteristics.
23887 (ScreenVisualBell, internal_terminal_init):
23888 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
23889
23890 * termopts.h (no_redraw_on_reenter): Declare.
23891
23892 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
23893 (mark_terminals, mark_ttys): Declare.
23894 (Fgarbage_collect): Call them.
23895 (mark_object): Mark buried_buffer_list.
23896
23897 * prefix-args.c: Include stdlib.h for exit.
23898
23899 * syssignal.h: Add comment.
23900
23901 * indent.c: Include stdio.h.
23902
23903 * window.h (Vinitial_window_system): Declare.
23904 (Vwindow_system): Delete declaration.
23905
23906 * fontset.c (Finternal_char_font): Use FRAME_RIF.
23907
23908 * image.c (lookup_image): Don't initialize `c' until the xasserts
23909 have been run.
23910
23911 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
23912 FRAME_FOREGROUND_PIXEL.
23913
23914 * print.c (print_preprocess): Don't lose print_depth levels while
23915 iterating.
23916
23917 * widget.c (update_from_various_frame_slots):
23918 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
23919
23920 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
23921 frames.
23922 (window_internal_height): Remove bogus make_number call.
23923 (init_window_once): Call make_terminal_frame with two zero parameters.
23924
23925 * fileio.c (Fread_file_name): Update comment.
23926
23927 * callint.c (Fcall_interactively):
23928 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
23929 Make sure it is correctly unwound.
23930
23931 * xsmfns.c (x_session_close): New function.
23932
23933 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
23934 Delete declarations.
23935
23936 * xterm.h: Remove declaration for x_fully_uncatch_errors.
23937 (x_output): Remove background_pixel and foreground_pixel fields.
23938 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
23939 (x_delete_device, x_session_close): Declare.
23940
23941 * lread.c: Include setjmp.h. Update declaration of `read_char'.
23942 (read_filtered_event): Call `read_char' with a local
23943 `wrong_kboard_jmpbuf'.
23944
23945 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
23946 Don't call single_kboard_state. Use FRAME_RIF.
23947
23948 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
23949 systems.
23950
23951 * lisp.h (set_process_environment): Rename to `set_global_environment'.
23952 (Fframe_with_environment, Fset_input_meta_mode)
23953 (Fset_quit_char): EXFUN.
23954 (x_create_device, tty_output, terminal, tty_display_info): Declare.
23955 (init_sys_modes, reset_sys_modes): Update prototypes.
23956 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
23957
23958 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
23959 Vlocal_key_translation_map, and Vkeyboard_translate_table.
23960 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
23961 Delete declarations.
23962 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
23963 (temporarily_switch_to_single_kboard, tty_read_avail_input):
23964 New declarations.
23965
23966 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
23967 already does that during init_display(). Call syms_of_keymap
23968 before syms_of_keyboard. Call `syms_of_terminal'.
23969 Call set_initial_environment, not set_process_environment.
23970 (shut_down_emacs): Call reset_all_sys_modes() instead of
23971 reset_sys_modes().
23972
23973 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
23974 (internal_resolve_face_name, resolve_face_name_error): New functions.
23975 (resolve_face_name): Protect against loops and errors thrown by Fget.
23976 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
23977 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
23978
23979 * scroll.c: Replace CURTTY() with local variables throughout the
23980 file (where applicable).
23981 (calculate_scrolling, calculate_direct_scrolling)
23982 (scrolling_1, scroll_cost): Use the accessor macros for terminal
23983 characteristics.
23984
23985 * keymap.c (Vfunction_key_map): Remove.
23986 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
23987 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
23988 (Vkey_translation_map): Remove.
23989 (syms_of_keymap): Remove DEFVAR for key-translation-map.
23990 (Fdescribe_buffer_bindings)
23991 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
23992 Update for terminal-local key-translation-map.
23993
23994 * Makefile.in (callproc.o): Update dependencies.
23995 (lisp, shortlisp): Add termdev.elc.
23996 (obj): Add terminal.o.
23997 (terminal.o): Add dependencies.
23998 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
23999 (data.o, fns.o): Add termhooks.h dependency.
24000 (SOME_MACHINE_LISP): Add dnd.elc.
24001 (minibuf.o): Fix typo.
24002 Update dependencies.
24003
24004 * data.c (do_symval_forwarding, store_symval_forwarding)
24005 (find_symbol_value): Use the selected frame's keyboard, not
24006 current_kboard.
24007
24008 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
24009 Vwindow_system.
24010
24011 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
24012 Fmenu_bar_open.
24013 (syms_of_xmenu): Update defsubr.
24014 (mouse_position_for_popup, Fx_popup_menu)
24015 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
24016 (set_frame_menubar, free_frame_menubar)
24017 (create_and_show_popup_menu, xmenu_show)
24018 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
24019 an X frame.
24020
24021 * xselect.c (x_own_selection): Abort if not an X frame.
24022 (some_frame_on_display): Check if it is an X frame.
24023 (x_handle_selection_clear): Deal with MULTI_KBOARD.
24024
24025 * coding.c: Include frame.h and termhooks.h.
24026 (terminal_coding, keyboard_coding): Delete.
24027 (Fset_terminal_coding_system_internal)
24028 (Fset_keyboard_coding_system_internal)
24029 (Fkeyboard_coding_system)
24030 (Fterminal_coding_system): Add a terminal parameter.
24031 Get terminal_coding from the terminal.
24032 (init_coding_once): Don't call setup_coding_system here.
24033
24034 * dispextern.h (set_scroll_region, turn_off_insert)
24035 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
24036 (tty_clear_end_of_line, tty_setup_colors)
24037 (delete_tty, updating_frame)
24038 (produce_special_glyphs, produce_glyphs, write_glyphs)
24039 (insert_glyphs): Remove.
24040 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
24041 (tty_turn_off_highlight, get_tty_size): Add declaration.
24042 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
24043
24044 * frame.h (enum output_method): Add output_initial.
24045 (struct x_output): Delete.
24046 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
24047 Access foreground_pixel and background_pixel directly from the frame.
24048 (tty_display): Delete.
24049 (struct frame): Add buried_buffer_list, foreground_pixel,
24050 background_pixel and terminal. Delete kboard.
24051 (union output_data): Add tty.
24052 (FRAME_KBOARD): Get the kboard from the terminal.
24053 (FRAME_INITIAL_P): New macro.
24054 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
24055 (Qterm_environment_variable, Qdisplay_environment_variable)
24056 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
24057 New declarations.
24058
24059 * termchar.h (tty_output, tty_display_info): New structures.
24060 (tty_list): Declare.
24061 (FRAME_TTY, CURTTY): New macros.
24062 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
24063 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
24064 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
24065 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
24066
24067 * callproc.c: Include frame.h and termhooks.h, for terminal
24068 parameters.
24069 (add_env): New function.
24070 (child_setup): Use it.
24071 (child_setup, getenv_internal): Handle the new Vprocess_environment.
24072 (getenv_internal): Fix get_terminal_param call.
24073 (Fgetenv_internal, egetenv): Update doc.
24074 (syms_of_callproc): Initialize Vprocess_environment to nil.
24075 Register and initialize them. Remove obsolete defvars. Update doc
24076 strings.
24077 (child_setup): Handle Vlocal_environment_variables.
24078 (getenv_internal): Add terminal parameter.
24079 Handle Vlocal_environment_variables.
24080 (Fgetenv_internal): Add terminal parameter.
24081 (child_setup, getenv_internal, Fgetenv_internal): Store the local
24082 environment in a frame (not terminal) parameter. Update doc strings.
24083 (set_initial_environment): Rename from set_global_environment.
24084 Store Emacs environment in initial frame parameter.
24085
24086 * xdisp.c (redisplay_internal): Update references to
24087 `previous_terminal_frame'.
24088 (display_mode_line, Fformat_mode_line): Replace calls to
24089 `push_frame_kboard' with `push_kboard'.
24090 (get_glyph_string_clip_rects): Add extra parentheses and
24091 braces to prevent compiler warnings.
24092 (calc_pixel_width_or_height): Add xassert to check that the
24093 frame is alive. Don't call `lookup_image' on a termcap frame.
24094 (message2_nolog, message3_nolog, redisplay_internal)
24095 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
24096 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
24097 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
24098 (Fx_display_pixel_width, Fx_display_pixel_height)
24099 (Fx_display_planes, Fx_display_color_cells)
24100 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
24101 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
24102 (Fx_display_backing_store, Fx_display_visual_class)
24103 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
24104 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
24105
24106 * xfns.c (x_set_foreground_color x_set_background_color)
24107 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
24108 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
24109 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
24110 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
24111 terminal that is being deleted.
24112 (Fx_create_frame): Use `store_frame_param' to set `window-system'
24113 frame parameter, and make sure it overrides any user-supplied setting.
24114 (Fx_close_connection, Fx_synchronize): Unify argument names with
24115 the rest of the DEFUNs.
24116
24117 * dispnew.c (Fsend_string_to_terminal): Update call to
24118 `get_tty_terminal'.
24119 (Fredraw_frame, Fsend_string_to_terminal)
24120 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
24121 FRAME_TERMCAP_P and FRAME_TTY.
24122 (window_change_signal): Don't believe width/height values that are
24123 impossibly small.
24124 (Vinitial_window_system): Rename from Vwindow_system.
24125 (termscript, Wcm, rif): Delete.
24126
24127 * termhooks.h (struct terminal): New struct containing the
24128 previously global text display hooks and new members NAME,
24129 DELETED and PARAM_ALIST.
24130 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
24131 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
24132 (FRAME_RIF): New macros.
24133 (get_terminal_param, get_device): New declarations.
24134 (termscript): Delete declaration.
24135
24136 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
24137 (XTflash, x_free_frame_resources, x_scroll_bar_create)
24138 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
24139 FRAME_FOREGROUND_PIXEL.
24140 (x_fully_uncatch_errors): Disable definition.
24141 (x_scroll_bar_expose): Fix reference to foreground pixel.
24142 (XTread_socket): Disable loop on all X displays.
24143 (x_delete_terminal): Don't set terminal->deleted and let
24144 delete_terminal delete the frames on the terminal.
24145 (x_delete_display): Doc update to reflect changes in
24146 delete_terminal.
24147 (x_display_info) <terminal>: Move member earlier in the struct.
24148 (deleting_tty): Remove old variable.
24149 (Fsuspend_tty): Call clear_tty_hooks.
24150 (Fresume_tty, init_tty): Call set_tty_hooks.
24151 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
24152 errors on X frames.
24153 (x_catch_errors_unwind): Abort if x_error_message is NULL.
24154 (handle_one_xevent): Initialize `f' to NULL.
24155 (x_delete_terminal, x_create_terminal): New functions.
24156 (XTset_terminal_modes, XTreset_terminal_modes)
24157 (XTread_socket, x_connection_closed, x_term_init)
24158 (x_term_init, x_delete_display): Add terminal parameter.
24159 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
24160 X connections.
24161
24162 * frame.c: Include termchar.h.
24163 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
24164 (Qwindow_system, Qenvironment, Qterm_environment_variable)
24165 (Qdisplay_environment_variable): New vars.
24166 (Fframep): Deal with output_initial.
24167 (Fframe-live-p): Doc fix.
24168 (Fwindow-system): New function.
24169 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
24170 (make_terminal_frame): Don't create frames on a terminal that is
24171 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
24172 (store_frame_param): Check for found_for_frame before calling XFRAME.
24173 (Fmake_terminal_frame): Handle NULL tty names correctly.
24174 (syms_of_frame): Enhance doc string of `default-frame-alist'.
24175 (Fdelete_frame): Remove unused variable `count'. Don't allow other
24176 frames to refer to a deleted frame in their 'environment parameter.
24177 (Fframe_with_environment): New function.
24178 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
24179 (get_future_frame_param): New function.
24180 (Fmake_terminal_frame): Use it.
24181 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
24182
24183 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
24184 * sysdep.c (reset_sys_modes): Update for renames.
24185
24186 * keyboard.c (tty_read_avail_input): New function.
24187 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
24188 (syms_of_keyboard): Defsubr them.
24189 (Fset_input_meta_mode, Fset_quit_char): New functions.
24190 (Fset_input_mode): Split to above functions.
24191 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
24192 parameter. Use it in call to `read_char'.
24193 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
24194 Set wrong_kboard_jmpbuf correctly in recursive calls.
24195 Use current_kboard to access Vkeyboard_translate_table.
24196 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
24197 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
24198 Update longjmp invocations. Remember the original current_kboard,
24199 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
24200 changes it. Comment out unnecessary calls to
24201 `record_single_kboard_state' and `any_kboard_state'.
24202 Update recursive calls.
24203 (wrong_kboard_jmpbuf): Remove global variable.
24204 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
24205 Handle deleted interrupted_kboards correctly; that is a legal
24206 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
24207 and read_char calls. Abort if interrupted_kboard died in read_char.
24208 (any_kboard_state, single_kboard_state)
24209 (push_frame_kboard): Remove function.
24210 (pop_kboard): Switch out of single_kboard mode if the kboard has
24211 been deleted. Remove unused variable. Help debugging by not
24212 changing current_kboard unnecessarily. Set current_kboard to the
24213 kboard of the selected frame when the stored kboard object has
24214 been deleted before pop_kboard.
24215 (temporarily_switch_to_single_kboard): Change first parameter to a
24216 frame pointer. Throw an error when caller wants to change kboards
24217 while in single_kboard mode. Don't push_kboard if we weren't in
24218 single kboard state. Don't pop_kboard if we popped into any
24219 kboard state.
24220 (restore_kboard_configuration): Abort if pop_kboard changed the
24221 kboard in single_kboard mode. Call pop_kboard only after setting
24222 up single_kboard mode.
24223 (Frecursive_edit): Switch to single_kboard mode only in nested
24224 command loops.
24225 (cmd_error, command_loop, command_loop_1, timer_check):
24226 Comment out unnecessary call to `any_kboard_state' and
24227 `record_single_kboard_state'.
24228 (delete_kboard): Exit single_kboard mode if we have just deleted
24229 that kboard. Use FRAME_KBOARD.
24230 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
24231 `fatal_error_signal'.
24232 (record_single_kboard_state): Don't push_kboard if we weren't in
24233 single kboard state. Don't pop_kboard if we popped into any
24234 kboard state.
24235 (push_frame_kboard): Rename to push_kboard.
24236 (kbd_buffer_get_event): Use FRAME_TERMINAL.
24237 (read_avail_input): Read input from all terminals.
24238 (mark_kboards): Also mark Vkeyboard_translate_table.
24239 (kbd_buffer_store_event_hold): Simplify condition.
24240 (read_key_sequence): Reinitialize fkey and keytran at each replay.
24241 (Vkeyboard_translate_table): Move to struct kboard.
24242 (init_kboard): Initialize Vkeyboard_translate_table.
24243 (syms_of_keyboard): Use DEFVAR_KBOARD to define
24244 Vkeyboard_translate_table. Update doc strings. Update docs of
24245 local-function-key-map and function-key-map.
24246
24247 * terminal.c: New file.
24248
24249 * term.c: Include errno.h.
24250 (Vring_bell_function, device_list, initial_device)
24251 (next_device_id, ring_bell, update_begin, update_end)
24252 (set_terminal_window, cursor_to, raw_cursor_to)
24253 (clear_to_end, clear_frame, clear_end_of_line)
24254 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
24255 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
24256 (syms_of_term): Move their initialization to terminal.c.
24257 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
24258 (Ftty_display_color_cells)
24259 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
24260 (clear_tty_hooks, set_tty_hooks)
24261 (init_tty, maybe_fatal): New functions.
24262 (Ftty_type): Return nil if terminal is not on a tty instead of
24263 throwing an error. Doc update.
24264 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
24265 Doc update. Initialize new subrs and variables.
24266 (delete_tty): Use terminal->deleted.
24267 (tty_set_terminal_modes): Rename from set_terminal_modes.
24268 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
24269 (set_scroll_region): Rename to `tty_set_scroll_region'.
24270 (turn_on_insert): Rename to `tty_turn_on_insert'.
24271 (turn_off_insert): Rename to `tty_turn_off_insert'.
24272 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
24273 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
24274 (toggle_highligh): Rename to `tty_toggle_highlight'.
24275 (background_highlight): Rename to `tty_background_highlight'.
24276 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
24277 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
24278 (tty_set_scroll_region, tty_background_highlight)
24279 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
24280 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
24281 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
24282 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
24283 Add static modifier.
24284 (tty_reset_terminal_modes, tty_set_terminal_window)
24285 (tty_set_scroll_region, tty_background_highlight)
24286 (tty_highlight_if_desired, tty_cursor_to)
24287 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
24288 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
24289 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
24290 renames.
24291
24292 2007-08-28 Jan Djärv <jan.h.d@swipnet.se>
24293
24294 * keyboard.c: Qrtl is new.
24295 (parse_tool_bar_item): Handle :rtl keyword.
24296 (syms_of_keyboard): Intern :rtl keyword.
24297
24298 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
24299
24300 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
24301 so no Lisp code is executed.
24302 (file_for_image, find_rtl_image): New functions.
24303 (xg_get_image_for_pixmap): Use file_for_image.
24304 (update_frame_tool_bar): If direction is RTL, use RTL image if
24305 defined. Use Gtk stock images if defined.
24306
24307 2007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24308
24309 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
24310 for nonexistent or zero-width glyph in composition glyph.
24311
24312 2007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
24313
24314 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
24315
24316 * xdisp.c (Finvisible_p): New function.
24317 (syms_of_xdisp): defsubr it.
24318
24319 2007-08-24 Juanma Barranquero <lekktu@gmail.com>
24320
24321 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
24322 Doc fixes.
24323
24324 2007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24325
24326 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
24327
24328 2007-08-24 Martin Rudalics <rudalics@gmx.at>
24329
24330 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
24331 whether decoding has modified buffer contents.
24332
24333 2007-08-24 Jason Rumney <jasonr@gnu.org>
24334
24335 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
24336 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
24337 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
24338 (init_svg_functions) [HAVE_NTGUI]: New function.
24339 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
24340 (svg_load_image): Use them.
24341 (svg_load_image) [HAVE_NTGUI]: Implement background.
24342
24343 2007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24344
24345 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
24346 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
24347 (LIBX): Remove @RSVG_LIBS@.
24348 (LIBES): Add $(RSVG_LIBS).
24349
24350 * image.c (svg_load_image): Blend with specified background if exists.
24351 Use IMAGE_BACKGROUND. Add Mac OS Support.
24352
24353 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
24354 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
24355 Remove macros.
24356 [MAC_OSX] (socket_callback): Do nothing.
24357 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
24358 ReceiveNextEvent.
24359 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
24360 socket_callback.
24361 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
24362
24363 2007-08-22 Glenn Morris <rgm@gnu.org>
24364
24365 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
24366
24367 2007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
24368
24369 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
24370
24371 * image.c: Add support for SVG images. Some additional comments
24372 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
24373 (svg_image_p): New function to test for SVG image.
24374 (svg_load): New function to load SVG image.
24375 (svg_load_image): New function, helper for svg_load.
24376 (Qsvg): New Lisp_object.
24377 (svg_keyword_index): New enum.
24378 (svg_format): New static `image_keyword' struct.
24379 (svg_type): New static `image_type' struct.
24380 (librsvg/rsvg.h): Include it.
24381
24382 2007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
24383
24384 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
24385
24386 2007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
24387
24388 * lread.c (Qold_style_backquotes): New var.
24389 (syms_of_lread): Init and staticpro it.
24390 (load_warn_old_style_backquotes): New fun.
24391 (Fload): Use them to warn about old style backquotes.
24392 (end_of_file_error, Fload): Remove unused vars.
24393
24394 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
24395
24396 * lread.c (Vold_style_backquotes): New var.
24397 (syms_of_lread): Init and export it to Elisp.
24398 (read1): Set it when we find an old-style (back)quote.
24399
24400 2007-08-22 Jason Rumney <jasonr@gnu.org>
24401
24402 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
24403
24404 2007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
24405
24406 * puresize.h (BASE_PURESIZE): Increase to 1140000.
24407
24408 2007-08-19 Richard Stallman <rms@gnu.org>
24409
24410 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
24411
24412 2007-08-19 Andreas Schwab <schwab@suse.de>
24413
24414 * alloc.c (pure): Round PURESIZE up.
24415
24416 2007-08-17 Jan Djärv <jan.h.d@swipnet.se>
24417
24418 * xterm.c (handle_one_xevent): Remove check that mouse click is in
24419 active frame.
24420
24421 2007-08-16 Richard Stallman <rms@gnu.org>
24422
24423 * eval.c (Fcommandp): Add parens to clarify.
24424
24425 * minibuf.c (Fall_completions): Use enum for type of table.
24426
24427 * emacs.c (USAGE2): Improve text.
24428
24429 2007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
24430
24431 * term.c (tty_default_color_capabilities): Declare static
24432 variables in file scope, to avoid HPUX compiler problem.
24433
24434 2007-08-13 Jan Djärv <jan.h.d@swipnet.se>
24435
24436 * gtkutil.c (update_frame_tool_bar): Use -1 as index
24437 to gtk_toolbar_insert.
24438
24439 2007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
24440
24441 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
24442
24443 * insdel.c (reset_var_on_error): New fun.
24444 (signal_before_change, signal_after_change):
24445 Use it to reset (after|before)-change-functions to nil in case of error.
24446 Bind inhibit-modification-hooks to t.
24447 Don't bind (after|before)-change-functions to nil while they run.
24448
24449 2007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24450
24451 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
24452 filling pixmap with stippled background.
24453
24454 2007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24455
24456 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
24457 Don't use invisible frame as parent window for repositioning.
24458
24459 2007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
24460
24461 * print.c (new_backquote_output): Rename from old_backquote_output.
24462 (print): Inverse its logic (according to its name) so as to match the
24463 behavior of new_backquote_flag in lread.c.
24464
24465 2007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24466
24467 * gmalloc.c (posix_memalign): New function.
24468
24469 * macterm.c (frame_highlight, frame_unhighlight): Don't call
24470 ActivateControl/DeactivateControl here.
24471 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
24472 frame-notice-user-settings is non-nil.
24473 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
24474 for kEventParamFMFontStyle.
24475 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
24476 mac_pass_command_to_system and mac_pass_control_to_system here.
24477 (XTread_socket): Call ActivateControl/DeactivateControl here.
24478 (XTread_socket) [TARGET_API_MAC_CARBON]:
24479 Check mac_pass_command_to_system and mac_pass_control_to_system here.
24480 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
24481 for window repositioning.
24482
24483 2007-08-08 Glenn Morris <rgm@gnu.org>
24484
24485 * Replace `iff' in doc-strings and comments.
24486
24487 2007-08-07 Chong Yidong <cyd@stupidchicken.com>
24488
24489 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
24490
24491 2007-08-07 Martin Rudalics <rudalics@gmx.at>
24492
24493 * fileio.c (Finsert_file_contents): Run format-decode and
24494 after_insert_file_functions on entire buffer when REPLACE is
24495 non-nil and inhibit modification_hooks and point_motion_hooks.
24496 For consistency, run after_insert_file_functions iff something
24497 got inserted. Move signal_after_change and update_compositions
24498 after code running after_insert_file_functions. Make sure that
24499 undo_list doesn't record intermediate steps of the decoding process.
24500
24501 2007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24502
24503 * emacs.c (main)
24504 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
24505 Call malloc_enable_thread on interactive startup.
24506
24507 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
24508 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
24509 [USE_PTHREAD]: Conditionalize with it.
24510 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
24511 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
24512 New functions.
24513
24514 2007-08-06 Chong Yidong <cyd@stupidchicken.com>
24515
24516 * xdisp.c (redisplay_window): When restoring original buffer
24517 position, make sure it is still valid.
24518
24519 * image.c (png_load): Ignore png-supplied background color.
24520
24521 2007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24522
24523 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
24524 Use kCFAbsoluteTimeIntervalSince1970.
24525
24526 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
24527 New variable.
24528 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
24529 event loop should be quit.
24530 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
24531 Quit dialog event loop if quit_dialog_event_loop is set.
24532
24533 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
24534 (Selection): New typedef. Use instead of ScrapRef.
24535 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
24536 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
24537 (mac_clear_selection): Rename from clear_scrap.
24538 (get_flavor_type_from_symbol): New argument SEL and subsume function of
24539 scrap_has_target_type. All uses changed.
24540 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
24541 (mac_selection_has_target_p): New functions.
24542 (mac_put_selection_value): Rename from put_scrap_string.
24543 (mac_get_selection_value): Rename from get_scrap_string.
24544 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
24545 (put_scrap_private_timestamp, scrap_has_target_type)
24546 (get_scrap_private_timestamp): Remove functions.
24547 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
24548 (x_own_selection, x_get_local_selection):
24549 Use mac_valid_selection_value_p.
24550 (x_own_selection): Don't use put_scrap_private_timestamp.
24551 Record OWNERSHIP-INFO into Vselection_alist instead.
24552 (x_get_local_selection): Don't check type if request is local.
24553 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
24554 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
24555
24556 2007-08-04 Jan Djärv <jan.h.d@swipnet.se>
24557
24558 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
24559 add comment explaining why.
24560
24561 2007-08-03 Richard Stallman <rms@gnu.org>
24562
24563 * fileio.c (Fvisited_file_modtime): Use make_time.
24564
24565 2007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
24566
24567 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
24568 build.
24569
24570 2007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
24571
24572 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
24573
24574 2007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
24575
24576 * puresize.h (BASE_PURESIZE): Increase to 1130000.
24577
24578 2007-07-30 Richard Stallman <rms@gnu.org>
24579
24580 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
24581
24582 2007-07-29 Jan Djärv <jan.h.d@swipnet.se>
24583
24584 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
24585
24586 2007-07-28 Nick Roberts <nickrob@snap.net.nz>
24587
24588 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
24589 remote default-directory.
24590
24591 * buffer.c (mode-line-format): Update doc string.
24592
24593 2007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24594
24595 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
24596 scroll bar gap.
24597 (x_scroll_bar_create): Set bar->fringe_extended_p.
24598 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
24599 on frame edge. Check fringe background extension. Don't clear
24600 extended fringe background area.
24601
24602 * w32term.h (struct scroll_bar): New member fringe_extended_p.
24603 (w32_fill_area): Enclose multiple statements with do ... while (0).
24604
24605 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
24606 Extend fringe background to scroll bar gap.
24607 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
24608 Set bar->fringe_extended_p.
24609 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
24610 Put leftmost/rightmost scroll bars on frame edge. Check fringe
24611 background extension. Don't clear extended fringe background area.
24612
24613 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
24614 New member fringe_extended_p.
24615
24616 2007-07-25 Glenn Morris <rgm@gnu.org>
24617
24618 * Relicense all FSF files to GPLv3 or later.
24619
24620 * COPYING: Switch to GPLv3.
24621
24622 2007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
24623
24624 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
24625
24626 * data.c (Finteractive_form): Check for the presence of an
24627 `interactive-form' symbol property more thoroughly.
24628
24629 * data.c (Finteractive_form): Use an `interactive-form' property if
24630 present, analogous to the function-documentation property.
24631
24632 2007-07-24 Jason Rumney <jasonr@gnu.org>
24633
24634 * w32fns.c (x_real_positions): Get real position from OS instead of
24635 calculating it.
24636
24637 2007-07-23 Jason Rumney <jasonr@gnu.org>
24638
24639 * filelock.c (current_lock_owner): Allow for @ sign in username.
24640
24641 2007-07-22 Nick Roberts <nickrob@snap.net.nz>
24642
24643 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
24644 remote default-directory.
24645
24646 * buffer.c (mode-line-format): Describe above case in doc string.
24647
24648 2007-07-20 Eli Zaretskii <eliz@gnu.org>
24649
24650 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
24651 Define if not defined.
24652
24653 2007-07-18 Jason Rumney <jasonr@gnu.org>
24654
24655 * w32proc.c (w32_executable_type): Handle 64 bit executables.
24656
24657 2007-07-18 Richard Stallman <rms@gnu.org>
24658
24659 * data.c (Fsetq_default): Doc fix.
24660
24661 * eval.c (Fsetq): Doc fix.
24662
24663 2007-07-18 Juanma Barranquero <lekktu@gmail.com>
24664
24665 * coding.c (Ffind_operation_coding_system):
24666 * eval.c (For, Fand): Doc fixes.
24667 Reported by Johan Bockgård.
24668
24669 2007-07-18 Jan Djärv <jan.h.d@swipnet.se>
24670
24671 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
24672
24673 * xterm.h: Declare x_ewmh_activate_frame.
24674
24675 * xterm.c (x_ewmh_activate_frame): New function.
24676 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
24677
24678 2007-07-17 Martin Rudalics <rudalics@gmx.at>
24679
24680 * window.c (Fdisplay_buffer): If largest or LRU window is the
24681 only window, split it even if it is not eligible for splitting.
24682 This restores the original behavior broken by the 2007-07-15
24683 change.
24684
24685 2007-07-17 Glenn Morris <rgm@gnu.org>
24686
24687 * abbrev.c (abbrev_check_chars): New function.
24688 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
24689 Call abbrev_check_chars to check abbrev characters are word
24690 constituents. Doc fix.
24691
24692 2007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
24693
24694 * process.c (Fstart_process, Fmake_network_process)
24695 (read_process_output): Fix up last changes.
24696
24697 2007-07-16 Eli Zaretskii <eliz@gnu.org>
24698
24699 * makefile.w32-in (clean): Don't delete *~.
24700
24701 2007-07-16 Andreas Schwab <schwab@suse.de>
24702
24703 * window.c (Fdisplay_buffer): Use NILP.
24704 (Fset_window_scroll_bars): Likewise.
24705
24706 2007-07-15 Martin Rudalics <rudalics@gmx.at>
24707
24708 * window.c (window_min_size_2): New function.
24709 (window_min_size_1, size_window, Fdisplay_buffer)
24710 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
24711 windows without mode- or header-lines when window-min-height is
24712 too small.
24713 (size_window): Reset nodelete_p after testing it, following an
24714 earlier note by Kim F. Storm.
24715 (display_buffer): Do not set split_height_threshold to twice the
24716 value of window_min_height to avoid changing the value of a
24717 customizable variable. Rather explicitly check whether the
24718 height of the window that shall be splitted is at least as large
24719 as split_height_threshold.
24720 (Fwindow_full_width_p): New defun.
24721 (syms_of_window): Defsubr it.
24722
24723 * window.h: Add EXFUN for Fwindow_full_width_p.
24724
24725 2007-07-14 Jason Rumney <jasonr@gnu.org>
24726
24727 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
24728
24729 2007-07-14 Richard Stallman <rms@gnu.org>
24730
24731 * eval.c (maybe_call_debugger): New function.
24732 (find_handler_clause): Use maybe_call_debugger.
24733 Call it when the handler says `debug'.
24734 Eliminate DEBUGGER_VALUE_PTR.
24735 (Fsignal): Eliminate debugger_value.
24736 (Qdebug): New variable.
24737 (syms_of_eval): Initialize it.
24738
24739 2007-07-14 Juanma Barranquero <lekktu@gmail.com>
24740
24741 * eval.c (Fprogn):
24742 * keyboard.c (Ftrack_mouse):
24743 * print.c (Fwith_output_to_temp_buffer):
24744 * window.c (Fsave_window_excursion): Doc fix.
24745
24746 2007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
24747
24748 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
24749
24750 2007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
24751
24752 * process.h (struct Lisp_Process): Turn slots infd, outfd,
24753 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
24754 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
24755 read_output_delay, and read_output_skip from Lisp_Objects to ints.
24756 Remove unused encoding_carryover.
24757 * process.c: Adjust all functions accordingly.
24758
24759 2007-07-12 Richard Stallman <rms@gnu.org>
24760
24761 * term.c: Include unistd.h only if HAVE_UNISTD_H.
24762
24763 2007-07-11 Jason Rumney <jasonr@gnu.org>
24764
24765 * makefile.w32-in (LIBS): Include OLE32.
24766
24767 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
24768 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
24769
24770 2007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
24771
24772 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
24773 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
24774 from a Lisp_Object into a bare pointer.
24775 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
24776 Adjust the code correspondingly.
24777
24778 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
24779
24780 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
24781 (term_show_mouse_face): Remove unused var `j'.
24782 (handle_one_term_event): Remove unused vars `i' and `j'.
24783 Don't cast return value of ttyname since it's not necessary.
24784
24785 2007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
24786
24787 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
24788 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
24789
24790 * fns.c (map_char_table): Use an array of int for `indices' rather than
24791 an array of Lisp_Objects (which are only ever integers anyway).
24792 (Fmap_char_table): Update caller.
24793 * lisp.h: Update prototype.
24794 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
24795 * fontset.c (Ffontset_info):
24796 * casetab.c (set_case_table): Update callers.
24797
24798 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
24799
24800 * keymap.c (struct accessible_keymaps_data)
24801 (struct where_is_internal_data): New structures.
24802 (accessible_keymaps_1, where_is_internal_1): Use them to change
24803 interface to adhere to the one used by map_keymap.
24804 (Faccessible_keymaps, where_is_internal): Use map_keymap.
24805 (accessible_keymaps_char_table, where_is_internal_2): Remove.
24806
24807 * keymap.h (map_keymap_function_t): More informative prototype.
24808
24809 2007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
24810
24811 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
24812 (looking_at_1): Don't change search_regs and last_thing_searched
24813 if `inhibit-changing-match-data' is non-nil.
24814 (string_match_1, search_buffer, set_search_regs): Likewise.
24815 (syms_of_search): Add Lisp level definition for
24816 `inhibit-changing-match-data' and set it to nil.
24817 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
24818 start and end of the match, instead of using values in search_regs.
24819
24820 2007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
24821
24822 * minibuf.c (Fcompleting_read): New value `confirm-only'
24823 for `require-match'.
24824
24825 2007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
24826
24827 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
24828 part of the 2007-06-27 change to syms_of_fileio.
24829
24830 2007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24831
24832 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
24833 Check WINDOWP before using XWINDOW. Consolidate return statements.
24834
24835 2007-06-27 Richard Stallman <rms@gnu.org>
24836
24837 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
24838
24839 2007-06-27 Juanma Barranquero <lekktu@gmail.com>
24840
24841 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
24842
24843 2007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24844
24845 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
24846 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
24847 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
24848 (_free_internal, memalign): Use them.
24849 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
24850 Initialize to PTHREAD_MUTEX_INITIALIZER.
24851 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
24852 (morecore_nolock): Rename from morecore. All uses changed.
24853 Use only nolock versions of internal allocation functions.
24854 (_malloc_internal_nolock, _realloc_internal_nolock)
24855 (_free_internal_nolock): New functions created from
24856 _malloc_internal, _realloc_internal, and _free_internal.
24857 (_malloc_internal, _realloc_internal, _free_internal): Use them.
24858 Copy hook value to automatic variable before its use.
24859 (memalign): Copy hook value to automatic variable before its use.
24860
24861 2007-06-26 Kenichi Handa <handa@m17n.org>
24862
24863 * coding.c (Ffind_operation_coding_system): Docstring improved.
24864 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
24865
24866 2007-06-25 David Kastrup <dak@gnu.org>
24867
24868 * keymap.c (Fcurrent_active_maps): Add `position' argument.
24869 (Fwhere_is_internal): Adjust call to `current-active-maps' to
24870 cater for additional parameter.
24871
24872 * keymap.h: Adjust number of parameters to `current-active-maps'.
24873
24874 * doc.c (Fsubstitute_command_keys): Adjust call of
24875 `current-active-maps'.
24876
24877 2007-06-25 David Kastrup <dak@gnu.org>
24878
24879 * callint.c (Fcall_interactively): Make the parsing of interactive
24880 specs somewhat more readable.
24881
24882 2007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24883
24884 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
24885 to scroll bar gap also when bitmap fills fringe. Draw only foreground
24886 if extended background has already been filled.
24887
24888 2007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24889
24890 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
24891 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
24892
24893 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
24894 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
24895 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
24896 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
24897 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
24898 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
24899 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
24900 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
24901 Run timers during dialog popup.
24902 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
24903
24904 2007-06-21 Jason Rumney <jasonr@gnu.org>
24905
24906 * image.c (convert_mono_to_color_image): Swap fore and background.
24907
24908 2007-06-20 Jason Rumney <jasonr@gnu.org>
24909
24910 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
24911 (w32_free_bdf_font): Unmap memory not handle.
24912
24913 2007-06-20 Sam Steingold <sds@gnu.org>
24914
24915 * gmalloc.c (__morecore): Fix the declaration to comply with the
24916 definition.
24917
24918 2007-06-20 Juanma Barranquero <lekktu@gmail.com>
24919
24920 * w32term.c (w32_delete_display): Remove leftover declaration.
24921 (w32_define_cursor, w32_initialize): Make static.
24922
24923 * w32.c (_wsa_errlist): Fix typo in error message.
24924 (init_environment): Ignore any environment variable from the
24925 registry having a null value.
24926
24927 2007-06-20 Glenn Morris <rgm@gnu.org>
24928
24929 * Makefile.in (LIBGIF): Default to -lgif.
24930
24931 2007-06-17 Jason Rumney <jasonr@gnu.org>
24932
24933 * w32menu.c (add_menu_item): Don't use multibyte string functions on
24934 unicode strings.
24935
24936 2007-06-16 Juanma Barranquero <lekktu@gmail.com>
24937
24938 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
24939 Fix typo in docstring.
24940
24941 2007-06-16 Eli Zaretskii <eliz@gnu.org>
24942
24943 * w32menu.c (add_menu_item): Escape `&' characters in menu items
24944 and their keybindings.
24945
24946 2007-06-15 Chong Yidong <cyd@stupidchicken.com>
24947
24948 * composite.c (update_compositions): Fix last fix.
24949
24950 2007-06-14 Jason Rumney <jasonr@gnu.org>
24951
24952 * w32.c (get_process_times_fn): New function pointer.
24953 (globals_of_w32): Intialize it if present in kernel32.dll.
24954 (w32_get_internal_run_time): New function.
24955
24956 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
24957
24958 2007-06-14 Kenichi Handa <handa@etlken.m17n.org>
24959
24960 * composite.c (update_compositions): Check the validness of
24961 compositions.
24962
24963 2007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24964
24965 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
24966 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
24967
24968 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
24969 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
24970
24971 * macgui.h (USE_MAC_TOOLBAR): New define.
24972
24973 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
24974 Return immediately unless popup is activated.
24975
24976 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
24977 background to scroll bar gap.
24978 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
24979 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
24980 scroll bars on frame edge. Check fringe background extension.
24981 Don't clear extended fringe background area.
24982 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
24983 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
24984 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
24985 [USE_MAC_TOOLBAR]: New macros.
24986 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
24987 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
24988 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
24989 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
24990 [USE_MAC_TOOLBAR]: New functions.
24991 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
24992 manually if previous repositioning has failed.
24993 (mac_handle_keyboard_event): Use precomputed event kind.
24994 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
24995 as tool bar item click. Handle mouse movement over tool bar items.
24996
24997 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
24998 toolbar_win_gravity.
24999 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
25000 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
25001 Add externs.
25002
25003 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
25004 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
25005
25006 2007-06-14 Chong Yidong <cyd@stupidchicken.com>
25007
25008 * image.c (search_image_cache): Remove unused variable.
25009
25010 2007-06-13 Chong Yidong <cyd@stupidchicken.com>
25011
25012 * xfns.c, xmenu.c: Link to xaw3d if available.
25013
25014 2007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
25015
25016 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
25017 frame_foreground and frame_background.
25018
25019 * image.c (lookup_image): Save frame foreground and background colors.
25020 (search_image_cache): Check if saved and current frame colors match.
25021
25022 2007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
25023
25024 * regex.c (regex_compile): Remove the `regnum' counter.
25025 Use bufp->re_nsub instead. Add support for \(?N:RE\).
25026
25027 2007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
25028
25029 * term.c: Include intervals.h to declare Fget_text_property.
25030
25031 2007-06-10 Jason Rumney <jasonr@gnu.org>
25032
25033 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
25034
25035 2007-06-08 Juanma Barranquero <lekktu@gmail.com>
25036
25037 * callint.c (Fcall_interactively):
25038 * editfns.c (Fdelete_and_extract_region):
25039 * fileio.c (Fread_file_name):
25040 * fns.c (Fmapconcat):
25041 * keyboard.c (cmd_error_internal):
25042 * keymap.c (Fkey_description):
25043 * lread.c (openp):
25044 * minibuf.c (read_minibuf):
25045 * search.c (wordify):
25046 * sunfns.c (sel_read):
25047 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
25048 * xfns.c (x_default_scroll_bar_color_parameter):
25049 * xmenu.c (menu_help_callback):
25050 * xselect.c (Fx_get_atom_name):
25051 * xterm.c (x_term_init): Use empty_unibyte_string.
25052
25053 2007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
25054
25055 * alloc.c (init_strings): Initialize canonical empty strings.
25056 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
25057 canonical empty string when the requested size is 0.
25058
25059 * emacs.c (empty_unibyte_string): Rename from empty_string.
25060 (empty_multibyte_string): New canonical empty string.
25061 (syms_of_emacs): Don't initialize empty_string.
25062
25063 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
25064 string, if appropriate.
25065 (empty_unibyte_string, empty_multibyte_string): New externs.
25066 (empty_string): Remove extern.
25067
25068 * lread.c (syms_of_lread): Use empty_unibyte_string.
25069
25070 2007-06-07 Jason Rumney <jasonr@gnu.org>
25071
25072 * s/ms-w32.h: Don't define HAVE_TZNAME.
25073
25074 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
25075
25076 2007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
25077
25078 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
25079
25080 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
25081 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
25082
25083 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
25084 Don't call next handler.
25085 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
25086 Remove argument. Install handler to application.
25087 (set_frame_menubar): Don't change deep_p.
25088 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
25089 FRAME_OUTER_TO_INNER_DIFF_Y.
25090 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
25091 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
25092 [HAVE_DIALOGS]: New macros.
25093 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
25094 Use them.
25095 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
25096
25097 * macselect.c [MAC_OSX] (install_service_handler): Rename from
25098 init_service_handler. All callers changed. Return OSStatus value.
25099
25100 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
25101 All callers changed so as not to call SetPortWindowPort.
25102 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
25103 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
25104 mac_draw_string_common.
25105 (mac_draw_image_string_qd): Likewise.
25106 (mac_draw_string_common): Use them. Add INLINE.
25107 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
25108 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
25109 GetGlobalMouse.
25110 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
25111 and FRAME_OUTER_TO_INNER_DIFF_Y.
25112 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
25113 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
25114 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
25115 repositioning window to mac_handle_window_event.
25116 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
25117 saving window location to mac_handle_window_event
25118 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
25119 (install_menu_target_item_handler): Remove argument in extern.
25120 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
25121 Also accept command events.
25122 (do_keystroke): New function created from XTread_socket.
25123 (init_command_handler): Remove functions.
25124 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
25125 and save window location by kEventWindowShowing and kEventWindowHiding
25126 handlers here. Don't call next handler for window state change and
25127 focus events.
25128 (mac_handle_application_event, mac_handle_keyboard_event)
25129 [TARGET_API_MAC_CARBON]: New functions.
25130 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
25131 kEventWindowShowing and kEventWindowHiding events. Move installation
25132 of mouse, font, text input and menu target item handlers to
25133 install_application_handler.
25134 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
25135 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
25136 New function.
25137 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
25138 Register it.
25139 (XTread_socket) [TARGET_API_MAC_CARBON]:
25140 Consolidate SendEventToEventTarget calls.
25141 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
25142 Move application activation handler to mac_handle_application_event.
25143 Move keyboard handler to mac_handle_keyboard_event.
25144 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
25145 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
25146 init_command_handler. Call install_application_handler.
25147
25148 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
25149 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
25150
25151 2007-06-07 Glenn Morris <rgm@gnu.org>
25152
25153 * emacs.c (main): Use `emacs-copyright' in --version output.
25154
25155 2007-06-06 Chong Yidong <cyd@stupidchicken.com>
25156
25157 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
25158
25159 2007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
25160
25161 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
25162
25163 * macgui.h: Replace WindowPtr with WindowRef.
25164
25165 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
25166 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
25167 Replace ControlHandle with ControlRef.
25168 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
25169
25170 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
25171 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
25172 Replace ControlHandle with ControlRef.
25173 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
25174 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
25175
25176 * macterm.h (struct scroll_bar): Rename member control_handle_low
25177 and control_handle_high to control_ref_low and control_ref_high.
25178 All uses changed.
25179 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
25180 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
25181 respectively. All uses changed.
25182 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
25183 (install_window_handler, remove_window_handler): Replace WindowPtr
25184 with WindowRef in externs.
25185
25186 2007-06-05 Juanma Barranquero <lekktu@gmail.com>
25187
25188 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
25189
25190 2007-06-03 Nick Roberts <nickrob@snap.net.nz>
25191
25192 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
25193
25194 * frame.c (Fmouse_position, Fmouse_pixel_position):
25195 Condition on HAVE_GPM too.
25196
25197 * term.c (term_mouse_highlight): Remove unused variables.
25198 (Fterm_open_connection): Set gpm_zerobased to 1.
25199 (term_mouse_movement, term_mouse_click, handle_one_term_event):
25200 Use zero based co-ordinates.
25201 (handle_one_term_event): Report a drag as mouse movement too.
25202
25203 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
25204
25205 2007-06-03 Chong Yidong <cyd@stupidchicken.com>
25206
25207 * image.c (search_image_cache): New function. Require background
25208 color match if background color is unspecified in the image spec.
25209 (uncache_image, lookup_image): Use it.
25210
25211 2007-06-01 Juanma Barranquero <lekktu@gmail.com>
25212
25213 * window.c (Fshrink_window): Reflow docstring.
25214
25215 2007-06-02 Chong Yidong <cyd@stupidchicken.com>
25216
25217 * Version 22.1 released.
25218
25219 2007-06-01 Richard Stallman <rms@gnu.org>
25220
25221 * xfns.c (x_encode_text): Add GCPRO.
25222
25223 2007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
25224
25225 * xfns.c (x_set_name_internal): Save encoded name before
25226 x_encode_text in case string data is relocated.
25227
25228 2007-05-31 Richard Stallman <rms@gnu.org>
25229
25230 * buffer.c (syms_of_buffer): Doc fix.
25231
25232 2007-05-30 Nick Roberts <nickrob@snap.net.nz>
25233
25234 * sysdep.c (init_sys_modes): Add rather than replace with
25235 O_NONBLOCK.
25236
25237 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
25238 term_mouse_moveto.
25239
25240 * termhooks.h (term_mouse_moveto): New extern.
25241
25242 * term.c (mouse_face_window): Rename...
25243 (Qmouse_face_window): ...to this.
25244 (term_show_mouse_face, term_clear_mouse_face)
25245 (term_mouse_highlight): Use Qmouse_face_window.
25246 (term_mouse_moveto): New function.
25247 (term_mouse_position): Make it work.
25248 (syms_of_term): Uncomment assignment to mouse_position_hook.
25249 Staticpro Qmouse_face_window.
25250
25251 2007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
25252
25253 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
25254 around current_column call.
25255
25256 2007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
25257
25258 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
25259 * xdisp.c (next_element_from_buffer):
25260 * window.c (delete_window):
25261 * term.c (term_mouse_highlight):
25262 * msdos.c (getdefdir):
25263 * macterm.c (mac_create_bitmap_from_bitmap_data)
25264 (init_font_name_table):
25265 * fns.c (Fsxhash):
25266 * data.c (Fmake_local_variable):
25267 * ccl.c (ccl_driver): Likewise.
25268
25269 2007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
25270
25271 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
25272 Call mac_wakeup_from_rne on window size change.
25273
25274 2007-05-25 Chong Yidong <cyd@stupidchicken.com>
25275
25276 * image.c (uncache_image): Fix typo.
25277
25278 2007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
25279
25280 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
25281
25282 2007-05-22 Richard Stallman <rms@gnu.org>
25283
25284 * xterm.c (x_connection_closed): Remove NO_RETURN.
25285
25286 2007-05-22 Martin Rudalics <rudalics@gmx.at>
25287
25288 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
25289
25290 2007-05-21 Chong Yidong <cyd@stupidchicken.com>
25291
25292 * image.c (uncache_image): New function.
25293 (Fimage_refresh): New function.
25294
25295 2007-05-20 Jan Djärv <jan.h.d@swipnet.se>
25296
25297 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
25298
25299 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
25300
25301 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
25302 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
25303
25304 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
25305
25306 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
25307 conditional on [HAVE_GPM_H].
25308
25309 2007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
25310
25311 * syntax.c (skip_chars): Update syntax-table only after we checked that
25312 the new location is valid.
25313
25314 2007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
25315
25316 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
25317 mac_get_window_bounds.
25318
25319 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
25320
25321 * Makefile.in (LIBGPM): Allow it to be set from configure.
25322 If set then link Emacs with it.
25323
25324 * config.in: Regenerate.
25325
25326 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
25327 New externs.
25328
25329 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
25330 Include gpm.h.
25331 (handle_one_term_event, term_gpm): New externs.
25332
25333 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
25334 and allow it to be interrupted by SIGIO.
25335
25336 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
25337 (wait_reading_process_output): Wait on gpm_fd too.
25338 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
25339 (add_gpm_wait_descriptor_called_flag): New variable.
25340 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
25341
25342 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
25343 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
25344 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
25345 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
25346 (make_lispy_event): Add case GPM_CLICK_EVENT.
25347 (read_avail_input): Handle mouse input.
25348
25349 * term.c (write_glyphs_with_face): New function.
25350 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
25351 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
25352 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
25353 (mouse_face_face_id, term_gpm, pos_x, pos_y)
25354 (last_mouse_x, last_mouse_y): New variables.
25355 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
25356 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
25357 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
25358 (Fterm_close_connection): New functions.
25359 (term_init): Initialise mouse_face_window.
25360
25361 2007-05-19 Chong Yidong <cyd@stupidchicken.com>
25362
25363 * xdisp.c (redisplay_window): If first window line is a
25364 continuation line, recompute the new window start instead of
25365 recentering.
25366
25367 2007-05-18 Glenn Morris <rgm@gnu.org>
25368
25369 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
25370 Suggested by Alfred M. Szmidt <ams@gnu.org>.
25371
25372 2007-05-17 Glenn Morris <rgm@gnu.org>
25373
25374 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
25375
25376 2007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
25377
25378 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
25379 dead key repeat and up events.
25380
25381 2007-05-14 Chong Yidong <cyd@stupidchicken.com>
25382
25383 * image.c (pbm_load): Check image size for monochrome pbm.
25384
25385 2007-05-13 Chong Yidong <cyd@stupidchicken.com>
25386
25387 * xterm.c (XTread_socket): Revert last change.
25388
25389 2007-05-12 Chong Yidong <cyd@stupidchicken.com>
25390
25391 * image.c (pbm_load): Correctly check image size for greyscale pbm.
25392
25393 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
25394
25395 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
25396
25397 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
25398 mixup (YAILOM).
25399
25400 2007-05-07 Andreas Schwab <schwab@suse.de>
25401
25402 * keymap.c (Flookup_key): Fix typo in last change.
25403
25404 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
25405
25406 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
25407 mapping for unibyte strings.
25408
25409 2007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
25410
25411 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
25412 (Fx_popup_dialog) [MAC_OSX]: Likewise.
25413
25414 2007-04-29 Richard Stallman <rms@gnu.org>
25415
25416 * insdel.c (replace_range): For undo, record insertion first.
25417
25418 2007-04-29 Andreas Schwab <schwab@suse.de>
25419
25420 * lisp.h (VECSIZE): Use OFFSETOF.
25421
25422 2007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
25423
25424 * xdisp.c (try_window_reusing_current_matrix): Fix number of
25425 disabled lines.
25426
25427 2007-04-28 Richard Stallman <rms@gnu.org>
25428
25429 * lread.c (read_escape): In a string, \s is always space.
25430
25431 2007-04-27 Jan Djärv <jan.h.d@swipnet.se>
25432
25433 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
25434
25435 * gtkutil.c (xg_update_menubar, create_menus): Create empty
25436 submenu for menu bar items.
25437
25438 See ChangeLog.10 for earlier changes.
25439
25440 ;; Local Variables:
25441 ;; coding: utf-8
25442 ;; add-log-time-zone-rule: t
25443 ;; End:
25444
25445 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
25446
25447 This file is part of GNU Emacs.
25448
25449 GNU Emacs is free software: you can redistribute it and/or modify
25450 it under the terms of the GNU General Public License as published by
25451 the Free Software Foundation, either version 3 of the License, or
25452 (at your option) any later version.
25453
25454 GNU Emacs is distributed in the hope that it will be useful,
25455 but WITHOUT ANY WARRANTY; without even the implied warranty of
25456 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25457 GNU General Public License for more details.
25458
25459 You should have received a copy of the GNU General Public License
25460 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
25461
25462 ;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40