Fix setting colors on MS-DOS frames.
[bpt/emacs.git] / src / ChangeLog
1 2010-07-03 Eli Zaretskii <eliz@gnu.org>
2
3 * msdos.c (IT_set_frame_parameters): Fix setting of colors in
4 frames other than the initial one. Fix reversal of colors when
5 `reverse' is specified in the frame parameters. Call
6 update_face_from_frame_parameter instead of
7 internal-set-lisp-face-attribute. Initialize screen colors from
8 initial_screen_colors[] when f->default_face_done_p is zero,
9 instead of depending on being called with default-frame-alist as
10 the alist argument.
11
12 * xfaces.c (update_face_from_frame_parameter): Move out of
13 HAVE_WINDOW_SYSTEM portion. Condition window-system only parts
14 with HAVE_WINDOW_SYSTEM.
15
16 * msdos.c (IT_set_frame_parameters): Set menu-bar-lines according
17 to menu-bar-mode, if not set in the frame parameters or in
18 default-frame-alist.
19
20 * w32console.c (sys_tputs): Adjust argument list to prototype in
21 term.c.
22
23 2010-07-03 Juanma Barranquero <lekktu@gmail.com>
24
25 * lisp.h (memory_warnings): Fix prototype.
26
27 * cm.h (evalcost): Fix prototype.
28
29 * cm.c (evalcost): Fix arg type.
30
31 2010-07-02 Dan Nicolaescu <dann@ics.uci.edu>
32
33 * term.c (term_clear_mouse_face, Fidentity):
34 * syssignal.h (signal_handler_t):
35 * lisp.h (memory_warnings):
36 * coding.h (preferred_coding_system):
37 * cm.h (evalcost):
38 * blockinput.h (reinvoke_input_signal): Convert to standard C prototypes.
39
40 2010-07-02 Eli Zaretskii <eliz@gnu.org>
41
42 * dosfns.h (msdos_stdcolor_idx, msdos_stdcolor_name): Remove P_
43 from prototypes.
44
45 * msdos.h (load_pixmap): Don't define away.
46
47 2010-07-02 Jan Djärv <jan.h.d@swipnet.se>
48
49 * lisp.h:
50 * atimer.h: Remove define for P_.
51
52 * alloc.c: Remove __P and P_ from .c and .m files.
53 * atimer.c:
54 * buffer.c:
55 * callint.c:
56 * category.c:
57 * charset.c:
58 * chartab.c:
59 * cm.c:
60 * coding.c:
61 * composite.c:
62 * data.c:
63 * dired.c:
64 * dispnew.c:
65 * doc.c:
66 * editfns.c:
67 * emacs.c:
68 * eval.c:
69 * fileio.c:
70 * filelock.c:
71 * fns.c:
72 * font.c:
73 * fontset.c:
74 * frame.c:
75 * ftfont.c:
76 * ftxfont.c:
77 * gmalloc.c:
78 * gtkutil.c:
79 * image.c:
80 * indent.c:
81 * intervals.c:
82 * keyboard.c:
83 * keymap.c:
84 * lread.c:
85 * marker.c:
86 * menu.c:
87 * minibuf.c:
88 * print.c:
89 * process.c:
90 * scroll.c:
91 * search.c:
92 * sound.c:
93 * strftime.c:
94 * syntax.c:
95 * sysdep.c:
96 * term.c:
97 * terminal.c:
98 * textprop.c:
99 * unexalpha.c:
100 * w32console.c:
101 * w32fns.c:
102 * w32font.c:
103 * w32menu.c:
104 * w32term.c:
105 * w32uniscribe.c:
106 * window.c:
107 * xdisp.c:
108 * xfaces.c:
109 * xfns.c:
110 * xfont.c:
111 * xftfont.c:
112 * xmenu.c:
113 * xselect.c:
114 * xterm.c: Likewise.
115
116 Remove P_ and __P macros.
117 * atimer.h: Remove P_ and __P macros.
118 * buffer.h:
119 * category.h:
120 * ccl.h:
121 * character.h:
122 * charset.h:
123 * cm.h:
124 * coding.h:
125 * composite.h:
126 * dispextern.h:
127 * disptab.h:
128 * dosfns.h:
129 * font.h:
130 * fontset.h:
131 * frame.h:
132 * gtkutil.h:
133 * indent.h:
134 * intervals.h:
135 * keyboard.h:
136 * keymap.h:
137 * lisp.h:
138 * macros.h:
139 * md5.h:
140 * menu.h:
141 * msdos.h:
142 * nsterm.h:
143 * puresize.h:
144 * region-cache.h:
145 * syntax.h:
146 * syssignal.h:
147 * systime.h:
148 * termhooks.h:
149 * w32font.h:
150 * w32term.h:
151 * widget.h:
152 * window.h:
153 * xgselect.h:
154 * xsettings.h:
155 * xterm.h: Likewise.
156
157 2010-07-02 Dan Nicolaescu <dann@ics.uci.edu>
158
159 * lisp.h: Document that USE_LISP_UNION_TYPE is now enabled using autoconf.
160
161 Cleanup old code.
162 * dired.c (BSD4_3): Remove all uses, redundant with BSD4_2.
163 * syssignal.h: Remove code for Lynx, not supported anymore.
164 * vm-limit.c: Remove unused code the depends on emacs not being
165 defined and NO_LIM_DATA being defined.
166 * mem-limits.h: Remove dead code.
167
168 2010-07-01 Jan Djärv <jan.h.d@swipnet.se>
169
170 * window.c (Fwindow_absolute_pixel_edges): Doc fix.
171
172 * window.c (calc_absolute_offset, Fwindow_absolute_pixel_edges)
173 (Fwindow_inside_absolute_pixel_edges): New functions (bug#5721).
174
175 * nsfns.m (compute_tip_xy): Do not convert coordinates from frame
176 parameters, they are already absolute.
177
178 * nsterm.m (x_set_window_size, initFrameFromEmacs): Renamed
179 FRAME_NS_TOOLBAR_HEIGHT to FRAME_TOOLBAR_HEIGHT.
180
181 * nsterm.h (FRAME_NS_TOOLBAR_HEIGHT): Rename to FRAME_TOOLBAR_HEIGH
182
183 * nsmenu.m (update_frame_tool_bar, free_frame_tool_bar): Update
184 FRAME_TOOLBAR_HEIGHT.
185
186 * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Add
187 BLOCK/UNBLOCK_INPUT so asserts don't trigger.
188
189 2010-06-30 Chong Yidong <cyd@stupidchicken.com>
190
191 * frame.c (get_future_frame_param, Fmake_terminal_frame): Don't
192 check default-frame-alist.
193
194 2010-06-30 Andreas Schwab <schwab@linux-m68k.org>
195
196 * process.c (create_process): Avoid using invalid file descriptors.
197
198 * callproc.c (child_setup): Avoid closing a file descriptor twice.
199
200 2010-06-30 Jan Djärv <jan.h.d@swipnet.se>
201
202 * xsettings.c (Ffont_get_system_normal_font, Ffont_get_system_font):
203 Improve documentation. Return font regardless of use_system_font.
204 (syms_of_xsettings): Improve documentation for font-use-system-font.
205
206 2009-06-17 Naohiro Aota <naota@elisp.net> (tiny change)
207
208 * xftfont.c (xftfont_open): Check font width one by one also when
209 spacing is dual.
210
211 * ftfont.c (ftfont_open): Ditto.
212
213 2010-06-30 Glenn Morris <rgm@gnu.org>
214
215 * s/sol2-6.h (INHIBIT_X11R6_XIM): Remove, handled by configure now.
216
217 * Makefile.in (CANNOT_DUMP): Update for configure name change.
218
219 * s/freebsd.h (USE_MMAP_FOR_BUFFERS):
220 * s/irix6-5.h (USE_MMAP_FOR_BUFFERS):
221 * s/darwin.h (SYSTEM_MALLOC):
222 * s/sol2-10.h (SYSTEM_MALLOC): Move to configure.
223
224 2010-06-29 Jan Djärv <jan.h.d@swipnet.se>
225
226 * nsfns.m: extern declare Vmenu_bar_mode, Vtool_bar_mode.
227 (ns_get_screen): Don't assign integer to f.
228 (Fx_display_color_cells): Declarations before statements.
229
230 2010-06-28 Jan Djärv <jan.h.d@swipnet.se>
231
232 * xfns.c (x_default_font_parameter): Remove got_from_system
233 (Bug#6526).
234
235 * xterm.h (gtk_widget_get_window, gtk_widget_get_mapped)
236 (gtk_adjustment_get_page_size, gtk_adjustment_get_upper): New
237 defines based on what configure finds.
238
239 * xterm.c (XTflash): Use gtk_widget_get_window.
240 (xg_scroll_callback): Use gtk_adjustment_get_upper and
241 gtk_adjustment_get_page_size.
242 (handle_one_xevent): Use gtk_widget_get_mapped.
243 (x_term_init): Remove HAVE_GTK_MULTIDISPLAY and associated error
244 messages.
245
246 * xmenu.c (create_and_show_popup_menu): Call gtk_widget_get_mapped.
247
248 * gtkutil.h: Replace HAVE_GTK_FILE_BOTH with
249 HAVE_GTK_FILE_SELECTION_NEW.
250
251 * gtkutil.c (xg_display_open, xg_display_close): Remove
252 HAVE_GTK_MULTIDISPLAY, it is always defined.
253 (xg_display_open): Return type is void.
254 (gtk_widget_set_has_window)
255 (gtk_dialog_get_action_area, gtk_dialog_get_content_area)
256 (gtk_widget_get_sensitive, gtk_adjustment_set_page_size)
257 (gtk_adjustment_set_page_increment)
258 (gtk_adjustment_get_step_increment): #define these if not found
259 by configure.
260 (remove_submenu): New define based on Gtk+ version.
261 (xg_set_cursor, xg_frame_resized, xg_event_is_for_scrollbar): Use
262 gtk_widget_get_window.
263 (xg_frame_resized, xg_update_frame_menubar): Use gtk_widget_get_mapped.
264 (xg_create_frame_widgets): Use gtk_widget_set_has_window.
265 (create_dialog): Use gtk_dialog_get_action_area and
266 gtk_dialog_get_content_area.
267 (xg_uses_old_file_dialog, xg_get_file_name): Remove HAVE_GTK_FILE_BOTH
268 and HAVE_GTK_FILE_CHOOSER_DIALOG_NEW. File chooser is always
269 available, so checking for HAVE_GTK_FILE_SELECTION_NEW is enough.
270 (xg_update_menubar, xg_update_submenu, xg_show_toolbar_item): Use
271 g_object_ref and g_object_unref.
272 (xg_update_menu_item, xg_tool_bar_menu_proxy): Use
273 gtk_widget_get_sensitive.
274 (xg_update_submenu): Use remove_submenu.
275 (xg_update_scrollbar_pos): Don't use GtkFixedChild, use child
276 properties instead to get old x and y position.
277 (xg_set_toolkit_scroll_bar_thumb): Use gtk_adjustment_get_page_size,
278 gtk_adjustment_get_step_increment, gtk_adjustment_set_page_size,
279 gtk_adjustment_set_step_increment and gtk_adjustment_set_page_increment.
280 (xg_get_tool_bar_widgets): New function.
281 (xg_tool_bar_menu_proxy, xg_show_toolbar_item)
282 (update_frame_tool_bar): Call xg_get_tool_bar_widgets.
283 (toolbar_set_orientation): New #define based on if configure
284 finds gtk_orientable_set_orientation.
285 (xg_create_tool_bar): Call toolbar_set_orientation.
286 (xg_make_tool_item, xg_show_toolbar_item): Call gtk_box_pack_start
287 instead of gtk_box_pack_start_defaults.
288
289 2010-06-28 Chong Yidong <cyd@stupidchicken.com>
290
291 * cmds.c (Fdelete_backward_char): Move into Lisp.
292
293 2010-06-27 Dan Nicolaescu <dann@ics.uci.edu>
294
295 * s/freebsd.h (BSD4_2): Remove redundant definition.
296 bsd-common.h defines it already.
297
298 2010-06-27 Chong Yidong <cyd@stupidchicken.com>
299
300 * xfns.c (Fx_create_frame): Don't consult X resouces when setting
301 menu-bar-lines and tool-bar-lines. Use menu-bar-mode and
302 tool-bar-mode, which are now set using these X resources at
303 startup, to determine the defaults (Bug#2249).
304
305 * w32fns.c (Fx_create_frame):
306 * nsfns.m (Fx_create_frame): Likewise.
307
308 * frame.c (Vmenu_bar_mode, Vtool_bar_mode): New vars.
309
310 2010-06-24 Juanma Barranquero <lekktu@gmail.com>
311
312 * gtkutil.c (xg_update_scrollbar_pos):
313 Avoid C99 mid-block variable declaration.
314
315 2010-06-22 Jan Djärv <jan.h.d@swipnet.se>
316
317 * xterm.c (x_scroll_bar_create): Remove call to xg_show_scroll_bar.
318
319 * gtkutil.h (xg_show_scroll_bar): Remove.
320
321 * gtkutil.c (xg_update_scrollbar_pos): Show/hide scroll bar as needed
322 if height is less than scroll bar min size.
323 (xg_show_scroll_bar): Remove, show moved to xg_update_scrollbar_pos.
324
325 * xfns.c (x_default_font_parameter): Try to open font from system
326 before using it (bug#6478). Rename got_from_gconf to got_from_system.
327
328 2010-06-22 Keith Packard <keithp@keithp.com> (tiny change)
329
330 * font.c (font_parse_fcname): Allow . for sizes like 7.5 (bug#6437).
331
332 2010-06-20 Eli Zaretskii <eliz@gnu.org>
333
334 * xdisp.c (try_scrolling): When scroll-conservatively is set to
335 most-positive-fixnum, be extra accurate when scrolling window
336 start, to avoid missing the cursor line.
337
338 2010-06-19 Eli Zaretskii <eliz@gnu.org>
339
340 * xdisp.c (try_scrolling): Compute the limit for searching point
341 in forward scroll from scroll_max, instead of an arbitrary limit
342 of 10 screen lines. See
343 http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00766.html
344 and
345 http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00773.html
346 for details.
347
348 2010-06-16 Glenn Morris <rgm@gnu.org>
349
350 * editfns.c (Fbyte_to_string): Pacify compiler.
351
352 2010-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
353
354 * lread.c (read1): Phase out old-style backquotes a bit more.
355
356 2010-06-12 Eli Zaretskii <eliz@gnu.org>
357
358 * makefile.w32-in ($(BLD)/bidi.$(O)): Depend on biditype.h and
359 bidimirror.h.
360
361 * deps.mk (bidi.o): Depend on biditype.h and bidimirror.h.
362
363 * bidi.c (bidi_initialize): Remove explicit initialization of
364 bidi_type_table; include biditype.h instead. Don't support
365 entries whose second codepoint is zero. Initialize bidi_mirror_table.
366 (bidi_mirror_char): Use bidi_mirror_table.
367
368 * biditype.h: New file.
369
370 * bidimirror.h: New file.
371
372 * window.c (syms_of_window): Doc fix (bug#6409).
373
374 2010-06-12 Romain Francoise <romain@orebokech.com>
375
376 * Makefile.in (lisp, shortlisp): Use new location of vc-hooks and
377 ediff-hook.
378
379 2010-06-10 Glenn Morris <rgm@gnu.org>
380
381 * editfns.c (Fbyte_to_string): Pacify compiler.
382
383 * m/ibms390x.h: Rather than duplicating ibms390.h, just include it.
384
385 2010-06-09 Stefan Monnier <monnier@iro.umontreal.ca>
386
387 * dbusbind.c (xd_append_arg): Don't "make-unibyte" the string.
388 Check `object's type before accessing its guts.
389
390 2010-06-09 Dan Nicolaescu <dann@ics.uci.edu>
391
392 * s/usg5-4.h: Fix previous change.
393 Suggested by Lawrence Mitchell <wence@gmx.li>
394
395 2010-06-08 Andreas Schwab <schwab@linux-m68k.org>
396
397 * minibuf.c (Fall_completions): Add more checks.
398
399 2010-06-08 Juanma Barranquero <lekktu@gmail.com>
400
401 * minibuf.c (Fall_completions): Check COLLECTION's size (bug#6378).
402
403 2010-06-08 Dan Nicolaescu <dann@ics.uci.edu>
404
405 * lread.c (X_OK): Remove, unused.
406
407 * dispnew.c: Remove obsolete comment.
408
409 Remove INCLUDED_FCNTL.
410 * xterm.c (INCLUDED_FCNTL):
411 * callproc.c (INCLUDED_FCNTL):
412 * alloc.c (INCLUDED_FCNTL):
413 * systty.h (INCLUDED_FCNTL): Remove all uses, not needed anymore.
414 (emacs_get_tty, emacs_set_tty): Declare unconditionally.
415
416 2010-06-07 Martin Rudalics <rudalics@gmx.at>
417
418 * window.c (Fselect_window): Move `record_buffer' up to the
419 beginning of this function, so the buffer gets recorded
420 even if the selected window does not change.
421 http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00137.html
422
423 2010-06-07 Juanma Barranquero <lekktu@gmail.com>
424
425 * cmds.c (Fforward_char, Fbackward_char): Fix typos in docstrings.
426 (Fforward_line, Fbeginning_of_line): Reflow docstrings.
427
428 2010-06-06 Dan Nicolaescu <dann@ics.uci.edu>
429
430 Remove BSTRING related code, all platforms define it.
431 * s/usg5-4.h (BSTRING): Remove definition.
432 * s/template.h (BSTRING):
433 * s/msdos.h (BSTRING):
434 * s/ms-w32.h (BSTRING):
435 * s/hpux10-20.h (BSTRING):
436 * s/gnu-linux.h (BSTRING):
437 * s/darwin.h (BSTRING):
438 * s/cygwin.h (BSTRING):
439 * s/bsd-common.h (BSTRING):
440 * s/aix4-2.h (BSTRING): Likewise.
441 * sysdep.c: Remove code depending on BSTRING not being defined.
442
443 2010-06-05 Juanma Barranquero <lekktu@gmail.com>
444
445 Remove obsolete macro BASE_LEADING_CODE_P.
446 * character.h (BASE_LEADING_CODE_P): Remove.
447 * regex.c [!emacs] (BASE_LEADING_CODE_P): Remove.
448 * buffer.c (Fset_buffer_multibyte):
449 * indent.c (scan_for_column, compute_motion):
450 * insdel.c (count_combining_before, count_combining_after):
451 Use LEADING_CODE_P instead of BASE_LEADING_CODE_P.
452
453 2010-06-04 Juanma Barranquero <lekktu@gmail.com>
454
455 Turn `directory-sep-char' into a noop.
456
457 * lisp.h [WINDOWSNT] (Vdirectory_sep_char): Don't declare.
458 (DIRECTORY_SEP): Define unconditionally.
459
460 * s/ms-w32.h (DIRECTORY_SEP): Remove.
461
462 * emacs.c (decode_env_path): Don't check DIRECTORY_SEP,
463 call dostounix_filename directly.
464
465 * fileio.c (CORRECT_DIR_SEPS): Remove.
466 (Ffile_name_directory, directory_file_name, Fexpand_file_name)
467 (Fsubstitute_in_file_name): Use dostounix_filename instead.
468 (file_name_as_directory): Use dostounix_filename, DIRECTORY_SEP.
469 (syms_of_fileio) <directory-sep-char>: Move to subr.el.
470
471 * w32proc.c (CORRECT_DIR_SEPS): Remove.
472 (Fw32_short_file_name, Fw32_long_file_name): Use dostounix_filename.
473
474 2010-06-03 Andreas Schwab <schwab@linux-m68k.org>
475
476 * process.c (conv_lisp_to_sockaddr): Fix conversion of IPv4
477 address. (Bug#6346)
478
479 2010-06-03 Juanma Barranquero <lekktu@gmail.com>
480
481 * ccl.c (Fccl_program_p): Fix typo in docstring.
482
483 2010-06-03 Dan Nicolaescu <dann@ics.uci.edu>
484
485 Move UNEXEC definition to autoconf.
486 * s/usg5-4.h (UNEXEC): Remove, move to configure.in.
487 * s/sol2-10.h (UNEXEC):
488 * s/irix6-5.h (UNEXEC):
489 * s/hpux10-20.h (UNEXEC):
490 * s/gnu-linux.h (UNEXEC):
491 * s/darwin.h (UNEXEC):
492 * s/cygwin.h (UNEXEC):
493 * s/bsd-common.h (UNEXEC):
494 * s/aix4-2.h (UNEXEC):
495 * m/alpha.h (UNEXEC): Likewise.
496 * Makefile.in (UNEXEC_OBJ): Define using @UNEXEC_OBJ@.
497
498 2010-06-03 Juanma Barranquero <lekktu@gmail.com>
499
500 Remove obsolete pre-unicode2 macros.
501 * character.h (MULTIBYTE_FORM_LENGTH, PARSE_MULTIBYTE_SEQ): Remove.
502 * composite.c (composition_reseat_it):
503 * data.c (Faset):
504 * fns.c (Ffillarray):
505 * regex.c (re_search_2): Use BYTES_BY_CHAR_HEAD.
506 [!emacs] (BYTES_BY_CHAR_HEAD): Define instead of MULTIBYTE_FORM_LENGTH.
507
508 2010-06-03 Juri Linkov <juri@jurta.org>
509
510 * buffer.c (Fother_buffer): Add CHECK_FRAME.
511 (Fswitch_to_buffer): Remove unused variable `err'.
512
513 2010-06-03 Glenn Morris <rgm@gnu.org>
514
515 * m/template.h (NO_SOCK_SIGIO): Remove, no longer used.
516
517 * m/hp800.h (alloca) [__NetBSD__ && __GNUC__]: No need to define it,
518 now that AH_BOTTOM does it.
519
520 * m/hp800.h (HAVE_ALLOCA):
521 * m/ibms390x.h (HAVE_ALLOCA): Do not define, no longer needed.
522
523 * m/ia64.h, s/gnu-linux.h, s/gnu.h, s/netbsd.h, s/usg5-4.h:
524 Remove NOT_C_CODE tests, it is always true now.
525
526 2010-06-02 Dan Nicolaescu <dann@ics.uci.edu>
527
528 Fix config.h includes.
529 * xsettings.c:
530 * xgselect.c:
531 * nsterm.m:
532 * nsselect.m:
533 * nsimage.m:
534 * nsfont.m:
535 * nsfns.m:
536 * dbusbind.c: Use #include <config.h> instead of "config.h" as all
537 other files do.
538
539 * gmalloc.c: Remove BROKEN_PROTOTYPES reference, unused.
540
541 * s/sol2-6.h: Remove obsolete comments.
542
543 Remove unnecessary alloca.h includes.
544 * keymap.c: Do not include alloca.h, config.h does that.
545 * sysdep.c: Likewise. Do not define fwrite, not used.
546
547 2010-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
548
549 * sysdep.c (child_setup_tty): Move the non-canonical initialization to
550 the HAVE_TERMIO where it belongs (bug#6149).
551
552 2010-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
553
554 * keymap.c (Fwhere_is_internal): Fix handling of remapping (in thread
555 of bug#6305).
556
557 2010-05-30 Eli Zaretskii <eliz@gnu.org>
558
559 * bidi.c (bidi_move_to_visually_next): Make sure the sentinel
560 state is always cached (bug#6306).
561
562 2010-05-29 Eli Zaretskii <eliz@gnu.org>
563
564 Fix cursor motion in bidi-reordered continued lines.
565 * xdisp.c (try_cursor_movement): Backup to non-continuation line
566 only after finding point's row. Fix the logic. Rewrite the loop
567 over continuation lines in bidi-reordered buffers. Return
568 CURSOR_MOVEMENT_MUST_SCROLL upon failure to find a suitable row,
569 rather than CURSOR_MOVEMENT_CANNOT_BE_USED.
570
571 2010-05-28 Michael Albinus <michael.albinus@gmx.de>
572
573 * fileio.c (Fdelete_file): Pass TRASH arg to handler call.
574
575 2010-05-28 Kenichi Handa <handa@m17n.org>
576
577 * font.c (font_delete_unmatched): Check Vface_ignored_fonts.
578 Don't sheck SPEC if it is nil.
579 (font_list_entities): Call font_delete_unmatched if
580 Vface_ignored_fonts is non-nil. (Bug#6287)
581
582 2010-05-28 Glenn Morris <rgm@gnu.org>
583
584 * Makefile.in (LIBES): Remove $LOADLIBES, it is never set.
585
586 2010-05-27 Chong Yidong <cyd@stupidchicken.com>
587
588 * fileio.c (Fdelete_file): Change meaning of optional arg to mean
589 whether to trash.
590 (internal_delete_file, Frename_file): Callers changed.
591 (delete_by_moving_to_trash): Doc fix.
592 (Fdelete_directory_internal): Don't move to trash.
593
594 * callproc.c (delete_temp_file):
595 * buffer.c (Fkill_buffer): Callers changed.
596
597 * lisp.h: Update prototype.
598
599 2010-05-27 Chong Yidong <cyd@stupidchicken.com>
600
601 * xdisp.c (redisplay_window): After redisplay, check if point is
602 still valid before setting it (Bug#6177).
603
604 2010-05-27 Glenn Morris <rgm@gnu.org>
605
606 * Makefile.in, autodeps.mk, deps.mk, ns.mk:
607 Convert comments to Makefile format.
608
609 * Makefile.in (bootstrap-clean): No more Makefile.c.
610
611 2010-05-26 Glenn Morris <rgm@gnu.org>
612
613 * Makefile.in (YMF_PASS_LDFLAGS): Remove.
614 (temacs${EXEEXT}): Use PRE_EDIT_LDFLAGS, POST_EDIT_LDFLAGS.
615
616 * Makefile.in (NS_IMPL_GNUSTEP_INC, NS_IMPL_GNUSTEP_TEMACS_LDFLAGS):
617 Remove.
618 (TEMACS_LDFLAGS): Do not use NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
619
620 2010-05-26 Kenichi Handa <handa@m17n.org>
621
622 * composite.c (composition_compute_stop_pos): Fix condition for
623 backward scanning.
624
625 2010-05-25 Glenn Morris <rgm@gnu.org>
626
627 * Makefile.in (@NS_IMPL_GNUSTEP_INC@, NS_IMPL_GNUSTEP_TEMACS_LDFLAGS):
628 Move before TEMACS_LDFLAGS.
629 (TEMACS_LDFLAGS): Use $NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
630 (temacs${EXEEXT}): Do not use $NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
631
632 * Makefile.in (NOT_C_CODE): No longer define.
633 (config.h): No longer include.
634
635 * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): Move definition after some
636 variables it may reference.
637
638 * Makefile.in (LD_SWITCH_SYSTEM_EXTRA): Remove.
639 (TEMACS_LDFLAGS): Remove LD_SWITCH_SYSTEM_EXTRA.
640
641 2010-05-25 Kenichi Handa <handa@m17n.org>
642
643 * dispextern.h (struct composition_it): New members rule_idx and
644 charpos.
645
646 * xdisp.c (set_iterator_to_next): While scanning backward, assume
647 that the character positions of IT point the last character of the
648 current grapheme cluster.
649 (next_element_from_composition): Don't change character positions
650 of IT.
651 (append_composite_glyph): Set glyph->charpos to
652 it->cmp_it.charpos.
653
654 * composite.c (autocmp_chars): Change the first argument to RULE,
655 and try composition with RULE only.
656 (composition_compute_stop_pos): Record the index number of the
657 composition rule in CMP_IT->rule_idx.
658 (composition_reseat_it): Call autocmp_chars repeatedly until the
659 correct rule of the composition is found.
660 (composition_update_it): Set CMP_IT->charpos. Assume the CHARPOS
661 is at the last character of the current grapheme cluster when
662 CMP_IT->reversed_p is nonzero.
663
664 2010-05-24 Stefan Monnier <monnier@iro.umontreal.ca>
665
666 * editfns.c (Fbyte_to_string): New function.
667
668 2010-05-24 Stefan Monnier <monnier@iro.umontreal.ca>
669
670 * process.c (Fmake_network_process): Set :host to nil if it's not used.
671 Suggested by Masatake YAMATO <yamato@redhat.com>.
672
673 2010-05-23 Eli Zaretskii <eliz@gnu.org>
674
675 * dispextern.h (init_iterator): Sync prototype with changed definition.
676
677 2010-05-20 enami tsugutomo <tsugutomo.enami@jp.sony.com>
678
679 * s/netbsd.h: If terminfo is found, use it in preference to
680 termcap. (Bug#6190) [Backport from trunk]
681
682 2010-05-19 Eli Zaretskii <eliz@gnu.org>
683
684 Redesign and reimplement bidi-aware edge positions of glyph rows.
685
686 * dispextern.h (struct glyph_row): New members minpos and maxpos.
687 (MATRIX_ROW_START_CHARPOS, MATRIX_ROW_START_BYTEPOS)
688 (MATRIX_ROW_END_CHARPOS, MATRIX_ROW_END_BYTEPOS): Reference minpos
689 and maxpos members instead of start.pos and end.pos, respectively.
690
691 * xdisp.c (display_line): Compare IT_CHARPOS with the position in
692 row->start.pos, rather than with MATRIX_ROW_START_CHARPOS.
693 (cursor_row_p): Use row->end.pos rather than MATRIX_ROW_END_CHARPOS.
694 (try_window_reusing_current_matrix, try_window_id):
695 Use ROW->minpos rather than ROW->start.pos.
696 (init_from_display_pos, init_iterator): Use EMACS_INT for
697 character and byte positions.
698 (find_row_edges): Rename from find_row_end. Accept additional
699 arguments for minimum and maximum buffer positions seen by
700 display_line for this row. Don't use iterator to find the
701 position following the maximum one; instead, increment the
702 position found by display_line directly. Fix logic; eol_pos
703 should be tested before the rest. Handle the case of characters
704 delivered from display vector (bug#6036). Fix tests related to
705 it->method. Handle the truncated_on_right_p rows.
706 (RECORD_MAX_MIN_POS): New macro.
707 (display_line): Use it to record the minimum and maximum buffer
708 positions for glyphs in the row being assembled. Record the
709 position of the newline that terminates the line. If word wrap is
710 in effect, restore minimum and maximum positions seen up to the
711 wrap point, when iterator returns to it.
712 (try_window_reusing_current_matrix): Give up if in bidi-reordered
713 row and cursor not already at point. Restore original pre-bidi
714 code for unidirectional buffers.
715
716 * dispnew.c (increment_row_positions, check_matrix_invariants):
717 Increment and check row->start.pos and row->end.pos, in addition
718 to MATRIX_ROW_START_CHARPOS and MATRIX_ROW_END_CHARPOS.
719
720 * .gdbinit (prowlims): Display row->minpos and row->maxpos.
721 Display truncated_on_left_p and truncated_on_right_p flags.
722 Formatting fixes.
723 (pmtxrows): Display the ordinal number of each row. Don't display
724 rows beyond the last one.
725
726 * bidi.c (bidi_cache_iterator_state): Don't zero out new_paragraph:
727 it is not copied by bidi_copy_it.
728
729 2010-05-22 Eli Zaretskii <eliz@gnu.org>
730
731 * w32.c (sys_write): Break writes into chunks smaller than 32MB.
732 (Bug#6237)
733
734 2010-05-22 Chong Yidong <cyd@stupidchicken.com>
735
736 * image.c (Fimage_flush): Rename from image-refresh.
737
738 2010-05-21 Chong Yidong <cyd@stupidchicken.com>
739
740 * xdisp.c (redisplay_internal): Clear caches even if redisplaying
741 just one window.
742
743 * image.c (Vimage_cache_eviction_delay): Decrease to 300.
744 (clear_image_cache): If the number of cached images is unusually
745 large, decrease the cache eviction delay (Bug#6230).
746
747 2010-05-21 Glenn Morris <rgm@gnu.org>
748
749 * Makefile.in (${ns_appdir}, ${ns_appbindir}Emacs, ns-app):
750 Move these rules to ns.mk.
751 * ns.mk: New file.
752
753 * Makefile.in (../src/$(OLDXMENU), $(OLDXMENU)): Always define rules.
754
755 * Makefile.in (CANNOT_DUMP): New, set by configure.
756 (emacs${EXEEXT}, bootstrap-emacs${EXEEXT}): Use $CANNOT_DUMP.
757
758 2010-05-20 Juri Linkov <juri@jurta.org>
759
760 * fileio.c (Fdelete_file): Change interative spec to use
761 `read-file-name' like in `find-file-read-args' where the default
762 value is `default-directory' instead of `buffer-file-name'.
763 http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00533.html
764
765 2010-05-20 Kevin Ryde <user42@zip.com.au>
766
767 * keyboard.c (Vlast_command, Vkeyboard_translate_table)
768 (Voverriding_terminal_local_map, Vsystem_key_alist)
769 (Vlocal_function_key_map): Fix manual link in docstring (Bug#6224).
770
771 2010-05-20 Glenn Morris <rgm@gnu.org>
772
773 * Makefile.in (DEPDIR): New constant.
774 (DEPFLAGS): Set with configure, not cpp.
775 (MKDEPDIR): New, set by configure.
776 (.c.o, .m.o, ecrt0.o): Use $MKDEPDIR.
777 (clean): Use $DEPDIR.
778 (deps_frag): Include from configure.
779 Move static/dynamic dependency stuff to deps.mk/autodeps.mk.
780 * deps.mk, autodeps.mk: New files, extracted from Makefile.in.
781
782 * bidi.c (bidi_cache_shrink, bidi_cache_iterator_state): Fix
783 reallocation of the cache. (Bug#6210)
784
785 2010-05-19 Glenn Morris <rgm@gnu.org>
786
787 * s/msdos.h (ORDINARY_LINK): Move to sed2v2.inp.
788
789 * Makefile.in (LD, YMF_PASS_LDFLAGS): Set with configure, not cpp.
790 (GNULIB_VAR): Remove.
791 (LIBES): Use LIB_GCC instead of GNULIB_VAR.
792
793 * m/ibms390x.h (LINKER):
794 * m/macppc.h (LINKER) [GNU_LINUX]:
795 * s/aix4-2.h (ORDINARY_LINK):
796 * s/cygwin.h (LINKER):
797 * s/darwin.h (ORDINARY_LINK):
798 * s/gnu.h (ORDINARY_LINK):
799 * s/netbsd.h (LINKER):
800 * s/usg5-4.h (ORDINARY_LINK):
801 Move to configure.
802
803 * s/aix4-2.h (LINKER): Remove; this file sets ORDINARY_LINK.
804
805 2010-05-18 Chong Yidong <cyd@stupidchicken.com>
806
807 * character.c (Fstring, Funibyte_string): Use SAFE_ALLOCA to
808 prevent stack overflow if number of arguments is too large
809 (Bug#6214).
810
811 2010-05-18 Juanma Barranquero <lekktu@gmail.com>
812
813 * charset.c (load_charset_map_from_file): Don't call close after fclose.
814
815 2010-05-18 Glenn Morris <rgm@gnu.org>
816
817 * s/gnu-linux.h: Combine two conditionals.
818
819 * Makefile.in (otherobj): Include $(VMLIMIT_OBJ) separately from
820 $(POST_ALLOC_OBJ).
821
822 * Makefile.in (RALLOC_OBJ): New, set by configure.
823 (rallocobj): Replace with the previous variable.
824 (otherobj): Use $RALLOC_OBJ.
825
826 * s/gnu.h (REL_ALLOC) [DOUG_LEA_MALLOC]:
827 * s/gnu-linux.h (REL_ALLOC) [DOUG_LEA_MALLOC]: Move undef to configure.
828
829 * Makefile.in (GMALLOC_OBJ, VMLIMIT_OBJ): New, set by configure.
830 (gmallocobj, vmlimitobj): Replace with previous two variables.
831 (otherobj): Use $GMALLOC_OBJ, $VMLIMIT_OBJ.
832
833 2010-05-17 Glenn Morris <rgm@gnu.org>
834
835 * Makefile.in (OLDXMENU_DEPS): New, set by configure.
836 (stamp-oldxmenu): Use $OLDXMENU_DEPS.
837
838 2010-05-16 Glenn Morris <rgm@gnu.org>
839
840 * Makefile.in (${ns_appbindir}Emacs, ns-app): Always define these rules.
841
842 * Makefile.in (clean): Get rid of HAVE_NS conditional.
843
844 * Makefile.in (ns_appdir, ns_appbindir): Now configure adds the
845 trailing "/".
846
847 * Makefile.in (TEMACS_LDFLAGS2): New, set by configure.
848 (temacs${EXEEXT}): Combine the NS_IMPL_GNUSTEP case with the default.
849
850 * Makefile.in (GNUSTEP_SYSTEM_LIBRARIES): Remove, unused.
851 (NS_IMPL_GNUSTEP_TEMACS_LDFLAGS): New, set by configure.
852 (LD) [NS_IMPL_GNUSTEP]: Set to $(CC) -rdynamic.
853 (temacs${EXEEXT}): Remove $LOCALCPP, never defined or referenced.
854 Make most of the NS_IMPL_GNUSTEP case the same as the default case.
855
856 * Makefile.in (temacs${EXEEXT}) [!NS_IMPL_GNUSTEP]:
857 Remove ${STARTFLAGS}, nothing ever sets it.
858
859 2010-05-16 Dan Nicolaescu <dann@ics.uci.edu>
860
861 * m/ia64.h (UNEXEC): Remove, set in s/*.h.
862
863 2010-05-16 Glenn Morris <rgm@gnu.org>
864
865 * Makefile.in (LIBX_BASE): Always define.
866
867 * Makefile.in (LIBX_OTHER): Move out of cpp section.
868
869 * Makefile.in (LIBXT): Always define.
870
871 2010-05-15 Glenn Morris <rgm@gnu.org>
872
873 * Makefile.in (OLDXMENU, LIBXMENU, LIBX_OTHER): Always define.
874
875 * Makefile.in (FONT_DRIVERS): Remove, replace with $FONT_OBJ.
876 (obj, SOME_MACHINE_OBJECTS): Use $FONT_OBJ.
877
878 2010-05-15 Ken Raeburn <raeburn@raeburn.org>
879
880 * lisp.h (XFLOAT_DATA): Use "0?x:x" to generate an rvalue. (Bug#5916)
881 (LISP_MAKE_RVALUE) [!USE_LISP_UNION_TYPE && !__GNUC__]: Likewise.
882
883 * emacs.c (main): Initialize initial-environment and
884 process-environment before generating from env, not after.
885
886 Handle --version reasonably in CANNOT_DUMP configuration.
887 * emacs.c (emacs_version, emacs_copyright): New string variables.
888 (Vemacs_version, Vemacs_copyright): New Lisp_Object variables.
889 (syms_of_emacs): Defvar them, and initialize them from the C
890 string variables.
891 (main): If initialization hasn't been done, print initial version
892 info from the C strings, instead of starting an interactive session.
893
894 2010-05-15 Eli Zaretskii <eliz@gnu.org>
895
896 * bidi.c (bidi_paragraph_init): Don't leave alone garbage values
897 of bidi_it->paragraph_dir. Call bidi_initialize if needed.
898 (bidi_paragraph_init): Remove redundant assertion that we are at
899 the beginning of a line after call to bidi_find_paragraph_start.
900
901 * xdisp.c (Fcurrent_bidi_paragraph_direction): New function.
902 (syms_of_xdisp): Defsubr it.
903
904 * cmds.c (Fforward_char, Fbackward_char): Doc fix.
905
906 * Makefile.in: Fix MSDOS-related comments.
907
908 2010-05-15 Glenn Morris <rgm@gnu.org>
909
910 * Makefile.in (OLDXMENU_TARGET): New, set by configure.
911 (really-lwlib, really-oldXMenu): Always define.
912 ($OLDXMENU): Depend on $OLDXMENU_TARGET.
913
914 * Makefile.in: Simplify cpp conditional.
915
916 * Makefile.in (${ns_appdir}): Simplify using umask.
917
918 * Makefile.in (${ns_appdir}): Remove references to CVS-related files.
919
920 2010-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
921
922 * eval.c (specbind): Remove left-over duplicate test.
923 Disallow let-binding frame-local vars. Add comment.
924
925 2010-05-14 Eli Zaretskii <eliz@gnu.org>
926
927 Make the cache of bidi iterator states dynamically allocated.
928 * bidi.c (bidi_cache_shrink): New function.
929 (bidi_init_it): Call it.
930 (bidi_cache_iterator_state): Enlarge the cache if needed.
931
932 * bidi.c (bidi_move_to_visually_next): Rename from
933 bidi_get_next_char_visually. All callers changed.
934
935 2010-05-14 Kenichi Handa <handa@m17n.org>
936
937 * dispextern.h (struct composition_it): New member reversed_p.
938
939 * composite.c (composition_compute_stop_pos): Search backward if
940 ENDPOS < CHARPOS.
941 (composition_reseat_it): Handle the case that ENDPOS < CHARPOS.
942 Set CMP_IT->reversed_p.
943 (composition_update_it): Pay attention to CMP_IT->reversed_p.
944
945 * xdisp.c (set_iterator_to_next):
946 Call composition_compute_stop_pos with negative ENDPOS if we are
947 scanning backward. Call composition_compute_stop_pos if scan
948 direction is changed.
949 (next_element_from_buffer): Call composition_compute_stop_pos with
950 negative ENDPOS if we are scanning backward.
951 (next_element_from_composition): Pay attention to
952 IT->cmp_it.reversed_p.
953
954 2010-05-14 Kenichi Handa <handa@m17n.org>
955
956 * font.c (font_range): Return the range for the font found at first.
957
958 2010-05-14 Glenn Morris <rgm@gnu.org>
959
960 * Makefile.in (ns_appdir, ns_appbindir, ns_appsrc): Always define.
961
962 * Makefile.in (mktime, X11, register): Move undefs to configure.
963
964 * Makefile.in (MSDOS_OBJ): Default to empty, let msdos scripts set it.
965 (MSDOS_X_OBJ): New variable.
966 (MSDOS_SUPPORT_REAL): New constant.
967 (MSDOS_SUPPORT): Set as a variable, not with cpp.
968 (obj): Use MSDOS_X_OBJ.
969 (lisp): Use MSDOS_SUPPORT as a variable.
970
971 * Makefile.in (REAL_MOUSE_SUPPORT): New constant.
972 (GPM_MOUSE_SUPPORT): Now it's a constant.
973 (MOUSE_SUPPORT, TOOLTIP_SUPPORT, WINDOW_SUPPORT): Set with configure,
974 not cpp.
975
976 * Makefile.in (@NS_IMPL_GNUSTEP_INC@): Use in place of #ifdef.
977 (ns_appresdir): Remove, unused.
978
979 * Makefile.in (SHELL): Move outside cpp section.
980
981 * s/netbsd.h (AMPERSAND_FULL_NAME): Remove (defined in AH_BOTTOM).
982
983 2010-05-13 Glenn Morris <rgm@gnu.org>
984
985 * Makefile.in (FONT_DRIVERS): Place with other HAVE_X_WINDOWS stuff.
986 (TOOLTIP_SUPPORT): Place with other HAVE_WINDOW_SYSTEM stuff.
987
988 * Makefile.in (FONT_DRIVERS): If HAVE_X_WINDOWS is defined,
989 HAVE_WINDOW_SYSTEM must be too.
990
991 * Makefile.in (WINNT_SUPPORT): Remove, nt build does not use this file.
992 (lisp): Remove WINNT_SUPPORT.
993
994 * Makefile.in (OLDXMENU, LIBXMENU) [!HAVE_MENUS]:
995 Let configure set these variables (to empty) in this case as well.
996
997 * Makefile.in (LD_SWITCH_X_SITE): Define as a variable, not via cpp.
998 (LIBX_BASE): Use $LD_SWITCH_X_SITE.
999
1000 * Makefile.in (C_SWITCH_X_SYSTEM, C_SWITCH_X_SITE, LIB_STANDARD)
1001 (LIB_MATH, FONTCONFIG_CFLAGS, FONTCONFIG_LIBS, FREETYPE_CFLAGS)
1002 (FREETYPE_LIBS, LIBOTF_CFLAGS, LIBOTF_LIBS, M17N_FLT_CFLAGS)
1003 (M17N_FLT_LIBS, GNU_OBJC_CFLAGS, GNUSTEP_SYSTEM_LIBRARIES, LIBGPM)
1004 (LIBRESOLV, UNEXEC_OBJ): For clarity, define variables to hold
1005 the values output by configure.
1006 (ALL_CFLAGS, obj, LIBES, temacs${EXEEXT}): Use the above variables.
1007
1008 2010-05-12 Glenn Morris <rgm@gnu.org>
1009
1010 * Makefile.in (YMF_PASS_LDFLAGS, LD, LINKER): Simplify the logic.
1011 (LINKER_WAS_SPECIFIED): Remove.
1012
1013 * Makefile.in (LIB_GCC): Set using configure, not cpp.
1014 (GNULIB_VAR) [!ORDINARY_LINK]: Always set to $LIB_GCC.
1015 * m/arm.h (LIB_GCC) [GNU_LINUX]:
1016 * s/cygwin.h (LIB_GCC):
1017 * s/freebsd.h (LIB_GCC):
1018 * s/gnu-linux.h (LIB_GCC):
1019 * s/msdos.h (LIB_GCC):
1020 * s/netbsd.h (LIB_GCC):
1021 Move to configure.
1022
1023 2010-05-11 Karel Klic <kklic@redhat.com>
1024
1025 * ftfont.c: Fix incorrect parentheses of #if condition for
1026 definining M17N_FLT_USE_NEW_FEATURE.
1027
1028 2010-05-11 Glenn Morris <rgm@gnu.org>
1029
1030 * Makefile.in (LIBS_SYSTEM) [MSDOS]: Do not reset.
1031 * s/msdos.h (MSDOS_LIBS_SYSTEM): Remove.
1032
1033 2010-05-10 Eli Zaretskii <eliz@gnu.org>
1034
1035 * xdisp.c (init_iterator): Don't turn on bidi reordering in
1036 unibyte buffers. See
1037 http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00263.html.
1038
1039 2010-05-10 Glenn Morris <rgm@gnu.org>
1040
1041 * Makefile.in (LIBS_SYSTEM): Set using configure, not cpp.
1042 (LIBS_SYSTEM) [MSDOS]: Reset with MSDOS_LIBS_SYSTEM.
1043 (LIBES): Use LIBS_SYSTEM as a variable.
1044 * s/msdos.h (LIBS_SYSTEM): Rename to MSDOS_LIBS_SYSTEM. Always define.
1045 * s/aix4-2.h (LIBS_SYSTEM):
1046 * s/freebsd.h (LIBS_SYSTEM):
1047 * s/hpux10-20.h (LIBS_SYSTEM):
1048 * s/sol2-6.h (LIBS_SYSTEM):
1049 * s/unixware.h (LIBS_SYSTEM):
1050 Move to configure.
1051
1052 * s/aix4-2.h (MAIL_USE_LOCKF):
1053 * s/bsd-common.h (MAIL_USE_FLOCK):
1054 * s/darwin.h (MAIL_USE_FLOCK):
1055 * s/gnu-linux.h (MAIL_USE_FLOCK):
1056 * s/irix6-5.h (MAIL_USE_FLOCK):
1057 * s/template.h (MAIL_USE_FLOCK):
1058 Move to configure.
1059
1060 2010-05-08 Chong Yidong <cyd@stupidchicken.com>
1061
1062 * Version 23.2 released.
1063
1064 2010-05-08 Andreas Schwab <schwab@linux-m68k.org>
1065
1066 * composite.c (autocmp_chars): Save point as marker before calling
1067 auto-composition-function (Bug#5984).
1068
1069 * lisp.h (restore_point_unwind): Add prototype.
1070
1071 * fileio.c (restore_point_unwind): Remove static attribute.
1072
1073 2010-05-08 Kenichi Handa <handa@m17n.org>
1074
1075 * ftfont.c (M17N_FLT_USE_NEW_FEATURE): Define it if we can use the
1076 new feature of libotf and m17n-flt.
1077 (ftfont_check_otf) [M17N_FLT_USE_NEW_FEATURE]:
1078 Call OTF_check_features even if no specific feature is given.
1079 (PACK_OTF_TAG) [M17N_FLT_USE_NEW_FEATURE]: New macro.
1080 (ftfont_drive_otf) [M17N_FLT_USE_NEW_FEATURE]: Handle the case
1081 that OUT is NULL. Use OTF_drive_gsub_with_log and
1082 OTF_drive_gpos_with_log instead of OTF_drive_gsub and
1083 OTF_drive_gpos.
1084 (ftfont_try_otf) [M17N_FLT_USE_NEW_FEATURE]: New function.
1085 (ftfont_shape_by_flt) [M17N_FLT_USE_NEW_FEATURE]:
1086 Setup mflt_enable_new_feature and mflt_try_otf.
1087
1088 2010-05-08 Jan Djärv <jan.h.d@swipnet.se>
1089
1090 * xsettings.c (Ftool_bar_get_system_style): Correct comment.
1091
1092 * gtkutil.c (xg_pack_tool_bar): Change show_all to show for handle
1093 box and toolbar (Bug #6139).
1094 (xg_create_tool_bar): Remove comment (Bug #6139).
1095 (xg_make_tool_item): Remove gtk_widget_show_all (Bug #6139).
1096 (xg_show_toolbar_item): Add gtk_widget_show for weventbox (Bug #6139).
1097
1098 2010-05-08 Juanma Barranquero <lekktu@gmail.com>
1099
1100 * makefile.w32-in ($(BLD)/eval.$(O), $(BLD)/w32fns.$(O)):
1101 Update dependencies.
1102
1103 2010-05-08 Eli Zaretskii <eliz@gnu.org>
1104
1105 * fringe.c (update_window_fringes): Set up truncation bitmaps for
1106 R2L lines.
1107
1108 2010-05-08 Glenn Morris <rgm@gnu.org>
1109
1110 * Makefile.in (THIS_IS_MAKEFILE): Remove, unused.
1111
1112 * Makefile.in (LIBS_TERMCAP): Set with configure, not cpp.
1113 (TERMCAP_OBJ): New, set by configure, replacing termcapobj.
1114 (termcapobj): Replace with TERMCAP_OBJ.
1115 (otherobj): Use $TERMCAP_OBJ instead of $termcapobj.
1116 (LIBES): Use LIBS_TERMCAP as a variable.
1117
1118 * s/freebsd.h (osreldate.h): No longer include, since this file
1119 does not use __FreeBSD_version any more.
1120
1121 * s/aix4-2.h (TERMINFO):
1122 * s/cygwin.h (TERMINFO):
1123 * s/darwin.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
1124 * s/freebsd.h (TERMINFO, LIBS_TERMCAP):
1125 * s/gnu-linux.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
1126 * s/gnu.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
1127 * s/hpux10-20.h (TERMINFO, LIBS_TERMCAP):
1128 * s/irix6-5.h (TERMINFO):
1129 * s/netbsd.h (LIBS_TERMCAP):
1130 * s/openbsd.h (TERMINFO, LIBS_TERMCAP):
1131 * s/sol2-6.h (LIBS_TERMCAP) [!TERMINFO]:
1132 * s/usg5-4.h (TERMINFO):
1133 Move to configure.
1134
1135 2010-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
1136
1137 * eval.c (unbind_to): Don't unbind a local binding into the global
1138 binding when the local binding disappeared. Inversely, don't unbind
1139 a global binding into a newly created local binding.
1140 * data.c (set_internal): Make its `buf' arg into a `where' arg so we
1141 can specify the frame to use, when applicable. Adjust callers.
1142
1143 2010-05-07 Vincent Belaïche <vincent.belaiche@gmail.com>
1144 Stefan Monnier <monnier@iro.umontreal.ca>
1145
1146 * floatfns.c (Fisnan, Fcopysign, Ffrexp, Fldexp): New functions.
1147
1148 2010-05-07 Eli Zaretskii <eliz@gnu.org>
1149
1150 * w32fns.c: Include w32.h.
1151 (Fw32_shell_execute): Decode the error message before passing it
1152 to `error'. (Bug#6126)
1153
1154 * msdos.c (dos_set_window_size):
1155 * w16select.c (Fx_selection_exists_p): Use `Fsymbol_value (foo)'
1156 instead of `XSYMBOL (foo)->value'.
1157
1158 2010-05-07 Eli Zaretskii <eliz@gnu.org>
1159
1160 Fix the MS-DOS build, broken by autoconfiscation.
1161
1162 * Makefile.in: Don't use Make-style comments past the "start of
1163 cpp stuff" line.
1164 (MSDOS_OBJ): Remove xmenu.o (it is now defined by XMENU_OBJ).
1165
1166 * s/msdos.h (UNEXEC): Don't define (@unexec@ in Makefile.in is
1167 edited directly by msdos/sed1v2.inp).
1168
1169 2010-05-07 Glenn Morris <rgm@gnu.org>
1170
1171 * Makefile.in (LD_SWITCH_SYSTEM): Set with configure, not cpp.
1172 (LD_SWITCH_SYSTEM_EXTRA): New variable, set by configure.
1173 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM and $LD_SWITCH_SYSTEM_EXTRA,
1174 move out of cpp section.
1175 * s/freebsd.h (LD_SWITCH_SYSTEM):
1176 * s/gnu-linux.h (LD_SWITCH_SYSTEM):
1177 * s/netbsd.h (LD_SWITCH_SYSTEM):
1178 * s/openbsd.h (LD_SWITCH_SYSTEM): Move to configure.in.
1179
1180 2010-05-07 Dan Nicolaescu <dann@ics.uci.edu>
1181
1182 Define LIB_STANDARD and START_FILES using autoconf.
1183 * s/usg5-4.h (LIB_STANDARD):
1184 * s/netbsd.h (START_FILES):
1185 * s/irix6-5.h (LIB_STANDARD):
1186 * s/hpux10-20.h (LIB_STANDARD, START_FILES):
1187 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
1188 * s/freebsd.h (START_FILES):
1189 * s/darwin.h (START_FILES):
1190 * s/cygwin.h (START_FILES):
1191 * s/aix4-2.h (LIB_STANDARD):
1192 * m/ibmrs6000.h (START_FILES): Remove, move logic to configure.in.
1193 * Makefile.in (STARTFILES): Rename to START_FILES, define using
1194 autoconf, not cpp.
1195
1196 2010-05-06 Dan Nicolaescu <dann@ics.uci.edu>
1197
1198 Remove NEED_BSDTTY and NEED_UNISTD_H.
1199 * s/hpux10-20.h (NEED_BSDTTY): Remove.
1200 * s/aix4-2.h (NEED_UNISTD_H): Remove.
1201 * systty.h: Simplify conditionals for including <sys/bsdtty.h>,
1202 <sys/ptyio.h> and <unistd.h>.
1203
1204 * emacs.c (main): Remove NO_DIR_LIBRARY conditional, unused.
1205
1206 * Makefile.in (STARTFILES): Conditionally define to make the usage clear.
1207 * s/gnu.h (START_FILES): Remove empty definition.
1208
1209 2010-05-06 Jan Djärv <jan.h.d@swipnet.se>
1210
1211 * xterm.c (x_draw_image_relief): Move declaration of extra to beginning.
1212
1213 2010-05-06 Glenn Morris <rgm@gnu.org>
1214
1215 * Makefile.in (CPP, LN_S): Remove unused variables.
1216
1217 2010-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
1218
1219 * syntax.c (Fchar_syntax): Check the arg is a character (bug#6080).
1220
1221 2010-05-05 Lawrence Mitchell <wence@gmx.li>
1222
1223 * m/sparc.h: Fix typo in earlier change.
1224
1225 2010-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
1226
1227 Misc tweaks.
1228 * eval.c (Fdefvaralias): Remove unintended nested if.
1229 (internal_condition_case_2, internal_condition_case_n): Use ANSI type.
1230
1231 2010-05-04 Bernhard Herzog <bh@intevation.de> (tiny change)
1232
1233 * xsmfns.c (smc_save_yourself_CB): strlen(client_id) => strlen(cwd).
1234
1235 2010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
1236
1237 Remove BSD_PGRPS.
1238 * s/bsd-common.h (BSD_PGRPS): Remove undef.
1239 * s/gnu-linux.h (BSD_PGRPS): Remove.
1240 * term.c (dissociate_if_controlling_tty):
1241 * sysdep.c (narrow_foreground_group, widen_foreground_group)
1242 (init_sys_modes, reset_sys_modes):
1243 * emacs.c (main):
1244 * callproc.c (Fcall_process, child_setup): Remove code depending
1245 on BSD_PGRPS.
1246
1247 Remove POSIX_SIGNALS.
1248 * s/usg5-4.h (POSIX_SIGNALS):
1249 * s/netbsd.h (POSIX_SIGNALS):
1250 * s/msdos.h (POSIX_SIGNALS):
1251 * s/ms-w32.h (POSIX_SIGNALS):
1252 * s/hpux11.h (POSIX_SIGNALS):
1253 * s/gnu.h (POSIX_SIGNALS):
1254 * s/gnu-linux.h (POSIX_SIGNALS):
1255 * s/freebsd.h (POSIX_SIGNALS):
1256 * s/darwin.h (POSIX_SIGNALS):
1257 * s/cygwin.h (POSIX_SIGNALS):
1258 * s/aix4-2.h (POSIX_SIGNALS): Remove definition.
1259 * s/unixware.h:
1260 * s/sol2-6.h: Remove comments on POSIX_SIGNALS.
1261 * process.c (create_process):
1262 * syssignal.h:
1263 * sysdep.c (wait_for_termination, init_signals):
1264 * process.c (create_process):
1265 * msdos.c: POSIX_SIGNALS is always defined on all platforms,
1266 remove all code that assumes the contrary.
1267
1268 2010-05-04 Glenn Morris <rgm@gnu.org>
1269
1270 * s/gnu-linux.h (LD_SWITCH_SYSTEM): Use LD_SWITCH_X_SITE_AUX as a shell
1271 variable.
1272 * s/netbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
1273 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH.
1274 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
1275 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH instead of
1276 LD_SWITCH_SYSTEM_tmp.
1277 * Makefile.in (LD_SWITCH_X_SITE_AUX, LD_SWITCH_X_SITE_AUX_RPATH):
1278 New variables, set by configure.
1279
1280 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
1281 * s/darwin.h (HEADERPAD_EXTRA, LIBS_NSGUI): Remove.
1282 (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
1283 * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): New variable, set by configure.
1284 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM_TEMACS.
1285
1286 * s/aix4-2.h (C_SWITCH_SYSTEM):
1287 * m/alpha.h (C_SWITCH_MACHINE):
1288 Move to configure.in.
1289 * Makefile.in (C_SWITCH_MACHINE, C_SWITCH_SYSTEM):
1290 New variables, set by configure.
1291 (ALL_CFLAGS): Use $C_SWITCH_MACHINE and $C_SWITCH_SYSTEM in place of
1292 $c_switch_machine and $c_switch_system.
1293
1294 2010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
1295
1296 * s/hpux10-20.h (LIB_STANDARD): New definition.
1297 * Makefile.in (ORDINARY_LINK): Remove setting LIB_STANDARD based
1298 on it, not used anymore.
1299
1300 2010-05-03 Chong Yidong <cyd@stupidchicken.com>
1301
1302 * eval.c (internal_condition_case_n): Rename from
1303 internal_condition_case_2.
1304 (internal_condition_case_2): New function.
1305
1306 * xdisp.c (safe_call): Use internal_condition_case_n.
1307
1308 * fileio.c (Fdelete_file, internal_delete_file): New arg FORCE.
1309 (internal_delete_file, Frename_file): Callers changed.
1310
1311 * buffer.c (Fkill_buffer):
1312 * callproc.c (delete_temp_file): Callers changed (Bug#6070).
1313
1314 * lisp.h: Update prototypes.
1315
1316 2010-05-03 Glenn Morris <rgm@gnu.org>
1317
1318 * Makefile.in (LIBX_EXTRA, LIBX_BASE): New variables.
1319 (LIBXT_OTHER, LIBX_OTHER): New, set by configure.
1320 (LIBXT): Set with configure, not cpp.
1321 (LIBX): Remove.
1322 (LIBES): Replace $LIBX with $LIBX_BASE and $LIBX_OTHER.
1323
1324 2010-05-02 Dan Nicolaescu <dann@ics.uci.edu>
1325
1326 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Remove.
1327 The FreeBSD is not needed, the default works, Solaris version is
1328 not needed, and the remaining case is not supported by configure.
1329
1330 2010-05-02 Jan Djärv <jan.h.d@swipnet.se>
1331
1332 * xsmfns.c (CHDIR_OPT): New define.
1333 (smc_save_yourself_CB): Add CHDIR_OPT to options to use when
1334 restarting emacs.
1335
1336 * xterm.c (x_connection_closed): Call Fkill_emacs instead of
1337 shut_down_emacs.
1338
1339 * emacs.c (USAGE1): Mention --chdir.
1340 (main): Handle --chdir.
1341 (standard_args): Add --chdir.
1342 (fatal_error_signal): Call Fkill_emacs for SIGTERM and SIGHUP (Bug
1343 #5552).
1344
1345 2010-05-01 Dan Nicolaescu <dann@ics.uci.edu>
1346
1347 Remove LD_SWITCH_MACHINE.
1348 * Makefile.in (LD_SWITCH_MACHINE): Remove definition, unused.
1349 (TEMACS_LDFLAGS): Do not use LD_SWITCH_MACHINE.
1350
1351 Clean up IRIX code.
1352 * m/iris4d.h (TERMINFO, FIRST_PTY_LETTER): Move definitions ...
1353 * s/irix6-5.h (TERMINFO, FIRST_PTY_LETTER): ... here.
1354
1355 Clean up AIX code.
1356 * m/ibmrs6000.inp: Remove file, unused.
1357 * m/ibmrs6000.h (IBMR2AIX): Remove, unused.
1358 (LD_SWITCH_MACHINE): Rename to LD_SWITCH_SYSTEM_TEMACS, and move
1359 definition ...
1360 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): ... here.
1361
1362 * sysdep.c (child_setup_tty, init_sys_modes): Remove !IBMR2AIX code,
1363 unused.
1364
1365 2010-05-01 Eli Zaretskii <eliz@gnu.org>
1366
1367 Emulate POSIX_SIGNALS on MS-Windows.
1368
1369 * s/ms-w32.h (POSIX_SIGNALS, struct sigaction, SIG_BLOCK)
1370 (SIG_SETMASK, SIG_UNBLOCK): Define.
1371
1372 * sysdep.c (sys_signal) [WINDOWSNT]: #ifdef away.
1373 (wait_for_termination) [WINDOWSNT]: Move MS-Windows specific code
1374 from non-POSIX_SIGNALS section to POSIX_SIGNALS section.
1375
1376 * w32.c (sigemptyset, sigaddset, sigfillset, sigprocmask):
1377 New stubs.
1378
1379 Miscellaneous fixes of bidi display.
1380
1381 * xdisp.c (find_row_end): New function, refactored from display_line.
1382 (display_line): Use it.
1383 (extend_face_to_end_of_line): In almost-filled rows, extend only
1384 if the row is R2L and not continued.
1385 (display_line): Fix prepending of truncation glyphs to R2L rows.
1386 Preserve overlay and string info in row->end.
1387 (insert_left_trunc_glyphs): Support addition of left truncation
1388 glyphs to R2L rows.
1389 (set_cursor_from_row): Don't place cursor on the vertical border
1390 glyph between adjacent windows. Fix a crash when a display string
1391 is continued to the next line. Don't return zero if cursor was
1392 found by `cursor' property of a display string.
1393 (try_cursor_movement): Don't assume that row->end == (row+1)->start,
1394 test for that explicitly.
1395
1396 2010-05-01 Glenn Morris <rgm@gnu.org>
1397
1398 * Makefile.in (gmallocobj, rallocobj, vmlimitobj): Initialize to null,
1399 for clarity.
1400 (OTHER_OBJ): Remove.
1401 (PRE_ALLOC_OBJ, POST_ALLOC_OBJ): New, set by configure.
1402 (otherobj): Use PRE_ALLOC_OBJ, POST_ALLOC_OBJ rather than OTHER_OBJ.
1403
1404 2010-05-01 Karel Klíč <kklic@redhat.com>
1405
1406 * fileio.c (Ffile_selinux_context): Context functions may return null.
1407
1408 2010-04-30 Dan Nicolaescu <dann@ics.uci.edu>
1409
1410 * s/gnu.h (POSIX_SIGNALS, START_FILES): New definitions.
1411
1412 2010-04-30 Glenn Morris <rgm@gnu.org>
1413
1414 * Makefile.in (vmlimitobj) [!SYSTEM_MALLOC]: New variable. (Bug#6065)
1415 (OTHER_OBJ): Define as a separate variable, for clarity.
1416
1417 2010-04-30 Jan Djärv <jan.h.d@swipnet.se>
1418
1419 * xsettings.c: include limits.h and update file comment.
1420
1421 2010-04-30 Glenn Morris <rgm@gnu.org>
1422
1423 * Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]:
1424 Set with configure, not cpp.
1425 (LIBW): Remove, replace with $TOOLKIT_LIBW.
1426
1427 * Makefile.in (mallocobj): Remove.
1428 (otherobj): Simplify using @OTHER_OBJ@.
1429
1430 * Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o)
1431 (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o):
1432 Don't bother making nsgui.h dependency platform-specific.
1433
1434 * Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency.
1435
1436 2010-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
1437
1438 * process.c (read_process_output, exec_sentinel): Don't burp if the
1439 sentinel/filter kills the current buffer (bug#6060).
1440
1441 Fix wrong-docstring problem introduced with hash-consing. (Bug#6008)
1442 * eval.c (Fautoload): Set doc to a unique number rather than to 0.
1443 Remove unused var `args'.
1444 * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove.
1445 (LOADHIST_ATTACH): Wrap with do...while to avoid surprises for callers.
1446 * doc.c (store_function_docstring): Use XSETCAR.
1447
1448 2010-04-28 Glenn Morris <rgm@gnu.org>
1449
1450 * Makefile.in (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT): New variables.
1451 (WINDOW_SUPPORT) [HAVE_WINDOW_SYSTEM]: Use them.
1452
1453 * Makefile.in (CYGWIN_OBJ): Set with configure, not cpp.
1454
1455 * Makefile.in (GPM_MOUSE_SUPPORT): New, set by configure.
1456 (MOUSE_SUPPORT) [!HAVE_MOUSE]: Use $GPM_MOUSE_SUPPORT.
1457
1458 * Makefile.in (FONT_OBJ): New, set by configure.
1459 (FONT_DRIVERS): Use $FONT_OBJ.
1460
1461 * Makefile.in (LIBXMU): Set with configure, not cpp.
1462 * s/aix4-2.h (LIBXMU):
1463 * s/hpux10-20.h (LIBXMU):
1464 Remove definition, now set in configure.
1465
1466 * Makefile.in (NS_OBJ, NS_SUPPORT): Set with configure, not cpp.
1467
1468 * m/amdx86-64.h [i386]: Move this test to configure.in.
1469
1470 2010-04-27 Glenn Morris <rgm@gnu.org>
1471
1472 * Makefile.in (LIBXTR6): Set with configure, not cpp.
1473 * s/unixware.h (NEED_LIBW): Remove definition.
1474
1475 * Makefile.in (LUCID_LIBW, MOTIF_LIBW): Remove, replacing by...
1476 (TOOLKIT_LIBW): New, set by configure.
1477 (@X_TOOLKIT_TYPE@): No longer define it.
1478
1479 * Makefile.in (LIBXP): Remove, since included in MOTIF_LIBW.
1480 (MOTIF_LIBW): Set with configure, not cpp.
1481 * s/aix4-2.h (LIB_MOTIF):
1482 * s/gnu-linux.h (LIB_MOTIF):
1483 * s/unixware.h (LIB_MOTIF): Move to configure.in.
1484
1485 2010-04-27 Dan Nicolaescu <dann@ics.uci.edu>
1486
1487 Reduce CPP usage.
1488 * Makefile.in (LIB_X11_LIB): Remove, inline in the only user.
1489 (obj): Use autoconf for unexec instead of cpp.
1490 (C_SWITCH_SYSTEM, C_SWITCH_MACHINE, C_SWITCH_X_SITE): Remove
1491 definitions and undefs. Inline definitions in the only user.
1492 (ALL_CFLAGS): Substitute C_SWITCH_X_SYSTEM using autoconf.
1493
1494 2010-04-27 Glenn Morris <rgm@gnu.org>
1495
1496 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around,
1497 since the defaults (set by the system file) are fine in most cases.
1498 [GNU_LINUX, __OpenBSD__, __NetBSD__, __APPLE__]: Remove sections.
1499 * m/ibms390x.h (START_FILES, LIB_STANDARD):
1500 * m/macppc.h (START_FILES, LIB_STANDARD) [GNU_LINUX]:
1501 * m/sparc.h (START_FILES, LIB_STANDARD) [__linux__]:
1502 Remove definitions, since they are set correctly in s/gnu-linux.h.
1503 * s/freebsd.h (START_FILES, LIB_STANDARD):
1504 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
1505 * s/hpux10-20.h (START_FILES):
1506 * s/netbsd.h (START_FILES, LIB_STANDARD, START_FILES_1, END_FILES_1):
1507 Use $CRT_DIR in place of fixed /usr/lib, /lib directories.
1508
1509 * Makefile.in (LIBXP, LUCID_LIBW, WIDGET_OBJ): Set via configure.
1510 (MOTIF_LIBW): Use $LIBXP.
1511 (otherobj): Use $WIDGET_OBJ.
1512
1513 2010-04-26 Dan Nicolaescu <dann@ics.uci.edu>
1514
1515 * Makefile.in (LIBS_MACHINE): Remove, unused.
1516
1517 Use autoconf instead of cpp for LIB_MATH.
1518 * s/darwin.h (LIB_MATH): Do not define here, move to configure.
1519 * s/cygwin.h (LIB_MATH): Likewise.
1520 * Makefile.in (LIB_MATH): Do not define with cpp.
1521 (LIBES): Use autoconf for LIB_MATH.
1522
1523 2010-04-26 Kenichi Handa <handa@m17n.org>
1524
1525 * composite.c (Ffind_composition_internal): Fix the return value
1526 for an automatic composition.
1527
1528 2010-04-25 Dan Nicolaescu <dann@ics.uci.edu>
1529
1530 Remove all NO_ARG_ARRAY uses.
1531 * fns.c (concat2, concat3, nconc2):
1532 * eval.c (apply1, call1, call2, call3, call4, call5, call6)
1533 (call7): Remove NO_ARG_ARRAY usage, assume it's always true.
1534 * m/xtensa.h (NO_ARG_ARRAY):
1535 * m/template.h (NO_ARG_ARRAY):
1536 * m/sparc.h (NO_ARG_ARRAY):
1537 * m/sh3.h (NO_ARG_ARRAY):
1538 * m/mips.h (NO_ARG_ARRAY):
1539 * m/macppc.h (NO_ARG_ARRAY):
1540 * m/iris4d.h (NO_ARG_ARRAY):
1541 * m/intel386.h (NO_ARG_ARRAY):
1542 * m/ibms390x.h (NO_ARG_ARRAY):
1543 * m/ibms390.h (NO_ARG_ARRAY):
1544 * m/ibmrs6000.h (NO_ARG_ARRAY):
1545 * m/ia64.h (NO_ARG_ARRAY):
1546 * m/hp800.h (NO_ARG_ARRAY):
1547 * m/arm.h (NO_ARG_ARRAY):
1548 * m/amdx86-64.h (NO_ARG_ARRAY):
1549 * m/alpha.h (NO_ARG_ARRAY): Remove definition.
1550
1551 2010-04-25 Eli Zaretskii <eliz@gnu.org>
1552
1553 * xdisp.c (display_line): Don't assume 2nd call to
1554 get_next_display_element cannot return zero. (Bug#6030)
1555 (iterate_out_of_display_property): New function, body from pop_it.
1556 (pop_it): Use it.
1557
1558 2010-04-24 Glenn Morris <rgm@gnu.org>
1559
1560 * m/amdx86-64.h (START_FILES, LIB_STANDARD) [__OpenBSD__]:
1561 For clarity, revert to using fixed /usr/lib rather than $CRT_DIR.
1562 (START_FILES, LIB_STANDARD) [__FreeBSD__]: Merge into the generic case,
1563 since CRT_DIR defaults to /usr/lib. Suggested by Dan Nicolaescu.
1564
1565 2010-04-24 Eli Zaretskii <eliz@gnu.org>
1566
1567 * xdisp.c (display_line): Use `reseat' instead of `reseat_1', and
1568 use `get_next_display_element' and `set_iterator_to_next' to
1569 advance to the next character, when looking for the character that
1570 begins the next row.
1571
1572 * .gdbinit: Add a "set Fmake_symbol" line to force GDB to load the
1573 definition of "struct Lisp_Symbol".
1574
1575 2010-04-24 Glenn Morris <rgm@gnu.org>
1576
1577 * Makefile.in (CRT_DIR): New variable, set by configure.
1578 * m/amdx86-64.h, m/ibms390x.h (START_FILES, LIB_STANDARD):
1579 Use $CRT_DIR rather than HAVE_LIB64_DIR. (Bug#5655)
1580
1581 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
1582
1583 * Makefile.in: Remove C_SWITCH_X_MACHINE, unused.
1584
1585 * s/cygwin.h (LIBS_DEBUG): Remove, unused.
1586
1587 Remove redundant flags.
1588 * s/freebsd.h (C_SWITCH_SYSTEM):
1589 * s/hpux10-20.h (C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
1590 * s/netbsd.h (C_SWITCH_SYSTEM):
1591 * s/openbsd.h (LD_SWITCH_X_DEFAULT): Remove, configure takes care
1592 of these.
1593
1594 Simplify m/intel386.h.
1595 * m/intel386.h (CRT0_DUMMIES): Remove, inline value in the only
1596 user: ecrt0.c.
1597 (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused.
1598 (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to
1599 the only user: s/unixware.h.
1600 * ecrt0.c: Remove #ifndef static. Inline CRT0_DUMMIES definition
1601 from m/intel386.h.
1602 * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE): Definitions
1603 moved here from m/intel386.h.
1604
1605 * m/mips.h: Remove #if 0 code.
1606
1607 2010-04-23 Eli Zaretskii <eliz@gnu.org>
1608
1609 Fix display of composed characters from L2R scripts in bidi buffers.
1610 * xdisp.c (set_iterator_to_next, next_element_from_composition):
1611 After advancing IT past the composition, resync the bidi iterator
1612 with IT's position. (Bug#5977)
1613
1614 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
1615
1616 * Makefile.in (LD_SWITCH_MACHINE_TEMACS): Remove, unused.
1617 (TEMACS_LDFLAGS): Don't use LD_SWITCH_SYSTEM_TEMACS.
1618
1619 2010-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
1620
1621 * gtkutil.c: Include xsettings.h for Ftool_bar_get_system_style.
1622
1623 2010-04-23 Eli Zaretskii <eliz@gnu.org>
1624
1625 Support `display' text properties and overlay strings in bidi buffers.
1626 * xdisp.c (pop_it): When the stack is popped after displaying
1627 from a string, bidi-iterate to exit from the text portion covered
1628 by the `display' property or overlay. (Bug#5988, bug#5920)
1629
1630 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
1631
1632 * m/macppc.h (LD_SWITCH_SYSTEM_TEMACS): Remove #undef.
1633 (LD_SWITCH_MACHINE_TEMACS): Remove, configure sets nocombreloc.
1634
1635 * s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
1636 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove.
1637
1638 Simplify STARTFILES definition.
1639 * s/hpux10-20.h (START_FILES): Explicitly define here instead of
1640 relying on Makefile.in to define it.
1641 * s/cygwin.h (START_FILES): Likewise.
1642 * Makefile.in (STARTFILES): Remove conditional code, not needed anymore.
1643
1644 Clean up Solaris code.
1645 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS, C_SWITCH_X_SYSTEM)
1646 (LIB_MOTIF): Remove, configure takes care of this.
1647 (NOT_USING_MOTIF): Remove, unused.
1648 * xrdb.c: Remove #if 0-ed #include.
1649 (SYSV): Remove conditional for old SysV.
1650 * sysdep.c (closedir): Remove conditional code for Solaris,
1651 Solaris has closedir.
1652
1653 2010-04-22 Jan Djärv <jan.h.d@swipnet.se>
1654
1655 * xsettings.c (read_and_apply_settings): Check if current_font is
1656 NULL before strcmp (Bug#6001).
1657
1658 2010-04-21 Dan Nicolaescu <dann@ics.uci.edu>
1659
1660 Clean up HP-UX files.
1661 * m/hp800.h (NO_REMAP, VIRT_ADDR_VARIES, DATA_SEG_BITS)
1662 (DATA_START, TEXT_START, LOAD_AVE_TYPE, LOAD_AVE_CVT)
1663 (LDAV_SYMBOL, index, rindex): Move definitions only used in HP-UX ...
1664 * s/hpux10-20.h: ... to the only user, here.
1665
1666 2010-04-21 Eli Zaretskii <eliz@gnu.org>
1667
1668 * bidi.c (bidi_find_paragraph_start, bidi_at_paragraph_end): Don't
1669 use buffer-local values of paragraph-start and paragraph-separate.
1670 <paragraph_start_re, paragraph_separate_re>: Rename from
1671 fallback_paragraph_start_re and fallback_paragraph_separate_re.
1672 (Bug#5992)
1673
1674 2010-04-21 Jan Djärv <jan.h.d@swipnet.se>
1675
1676 * xsettings.c: Qmonospace_font_name, Qtool_bar_style and
1677 current_tool_bar_style are new.
1678 (store_config_changed_event): Rename from store_font_changed_event.
1679 (XSETTINGS_TOOL_BAR_STYLE): New define.
1680 (SEEN_FONT, SEEN_TB_STYLE): New enum values.
1681 (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
1682 HAVE_XFT.
1683 (something_changedCB): store_font_changed_event is now
1684 store_config_changed_event
1685 (parse_settings): Rename from parse_xft_settings. Read
1686 non-xft xsettings outside #ifdef HAVE_XFT.
1687 (read_settings): Renamed from read_xft_settings.
1688 (apply_xft_settings): Take current settings as parameter. Do not
1689 call read_(xft)_settings.
1690 (read_and_apply_settings): New function.
1691 (xft_settings_event): Do non-xft stuff out of HAVE_XFT. Call
1692 read_and_apply_settings if there are settings to be read.
1693 (init_xsettings): Renamed from init_xfd_settings.
1694 Call read_and_apply_settings unconditionally.
1695 (xsettings_initialize): Call init_xsettings.
1696 (Ftool_bar_get_system_style): New function.
1697 (syms_of_xsettings): Define Qmonospace_font_name and
1698 Qtool_bar_style. Initialize current_tool_bar_style to nil.
1699 defsubr Stool_bar_get_system_style. Fprovide on
1700 dynamic-setting.
1701 Move misplaced HAVE_GCONF
1702
1703 * xsettings.h (Ftool_bar_get_system_style): Declare.
1704
1705 * xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
1706 Qtext, Qboth, Qboth_horiz are new.
1707 (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
1708 Vtool_bar_style, tool_bar_max_label_size.
1709
1710 * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.
1711
1712 * keyboard.c: QClabel is new.
1713 (parse_tool_bar_item): Take out QClabel from tool bar items.
1714 Try to construct a label if ther is no QClabel.
1715 (syms_of_keyboard): Intern :label as QClabel.
1716
1717 * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
1718 (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
1719 New.
1720
1721 * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
1722 dynamic-setting.el.
1723
1724 * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
1725 (xg_make_tool_item, xg_show_toolbar_item): New function.
1726 (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
1727 Call xg_make_tool_item to make a tool bar item.
1728 Call xg_show_toolbar_item. Use wtoolbar instead of x->toolbar_widget.
1729
1730 * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
1731 into account for toolbars.
1732
1733 2010-04-21 Jan Djärv <jan.h.d@swipnet.se>
1734
1735 * data.c (make_blv): Declarations before code (Bug#5993).
1736
1737 2010-04-21 Glenn Morris <rgm@gnu.org>
1738
1739 * Makefile.in (DBUS_OBJ, GTK_OBJ, XMENU_OBJ, XOBJ):
1740 Define using autoconf, not cpp.
1741 (LIBXSM): New variable, set by autoconf.
1742 (LIBXT): Use $LIBXSM.
1743
1744 2010-04-21 Dan Nicolaescu <local_user@dannlt>
1745
1746 Remove NOMULTIPLEJOBS, unused.
1747 * s/template.h (NOMULTIPLEJOBS):
1748 * s/msdos.h (NOMULTIPLEJOBS): Remove, unused.
1749
1750 Simplify LD_SWITCH_SYSTEM_TEMACS usage.
1751 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS):
1752 * s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure
1753 detects -znocombreloc and passes it to the linker
1754 * s/hpux10-20.h (LD_SWITCH_SYSTEM_TEMACS): Remove, empty.
1755
1756 2010-04-21 Glenn Morris <rgm@gnu.org>
1757
1758 * Makefile.in (LIBSELINUX_LIBS): Move out of #ifdef.
1759
1760 2010-04-21 Karel Klíč <kklic@redhat.com>
1761
1762 * Makefile.in (LIBSELINUX_LIBS): New.
1763 (LIBES): Add $LIBSELINUX_LIBS.
1764 * eval.c, lisp.h (call7): New function.
1765 * fileio.c [HAVE_LIBSELINUX]: Include selinux headers.
1766 (Ffile_selinux_context, Fset_file_selinux_context):
1767 New functions.
1768 (Fcopy_file): New parameter preserve-selinux-context.
1769 (Frename_file): Preserve selinux context when renaming by copy-file.
1770
1771 2010-04-21 Juanma Barranquero <lekktu@gmail.com>
1772 Eli Zaretskii <eliz@gnu.org>
1773
1774 Don't depend on cm.c or termcap.c on Windows, use stubs.
1775 * makefile.w32-in (OBJ1): Remove cm.$(O) and termcap.$(O).
1776 ($(BLD)/cm.$(O), $(BLD)/termcap.$(O)): Remove.
1777 * w32console.c (current_tty, cost): New vars; lifted from cm.c.
1778 (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear)
1779 (sys_tputs, sys_tgetstr): New stubs.
1780 * s/ms-w32.h (chcheckmagic, cmcostinit, cmgoto, cmputc, Wcm_clear)
1781 (tputs, tgetstr): New; define to sys_*.
1782
1783 2010-04-20 Juanma Barranquero <lekktu@gmail.com>
1784
1785 * buffer.c (syms_of_buffer) <bidi-display-reordering>: Doc fix.
1786
1787 2010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1788
1789 * data.c (Fmake_variable_buffer_local, Fmake_local_variable):
1790 Just signal a warning rather than an error when inside a let.
1791 (Fmake_variable_frame_local): Add the same test.
1792
1793 * font.c (syms_of_font): Make the style table vars read-only.
1794
1795 * buffer.h (struct buffer): Remove unused var `direction_reversed'.
1796 * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
1797
1798 * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
1799
1800 2010-04-20 Eli Zaretskii <eliz@gnu.org>
1801
1802 Fix R2L paragraph display on TTY.
1803
1804 * xdisp.c (unproduce_glyphs): New function.
1805 (display_line): Use it when produced glyphs are discarded from R2L
1806 glyph rows.
1807 (append_composite_glyph): In R2L rows, prepend the glyph rather
1808 than appending it.
1809
1810 * term.c (append_composite_glyph): In R2L rows, prepend the glyph
1811 rather than append it. Set up the resolved_level and bidi_type
1812 attributes of the appended glyph.
1813 (produce_special_glyphs): Mirror the backslash continuation
1814 character in R2L lines.
1815
1816 Implement display of R2L paragraphs in GUI sessions.
1817
1818 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
1819 append_stretch_glyph.
1820 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix
1821 off-by-one error in computing x at end of text in the row.
1822 (append_stretch_glyph): In reversed row, prepend the glyph rather
1823 than append it. Set resolved_level and bidi_type of the glyph.
1824 (extend_face_to_end_of_line): If the row is reversed, prepend a
1825 stretch glyph whose width is such that the rightmost glyph will be
1826 drawn at the right margin of the window. Fix off-by-one error on
1827 TTY frames in testing whether a line needs face extension. Fix
1828 face extension at ZV. If this is the last glyph row, use
1829 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
1830 region face.
1831 (set_cursor_from_row, display_line): Use
1832 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
1833 row->continuation_lines_width.
1834 (next_element_from_buffer): Don't call bidi_paragraph_init if we
1835 are at ZV. Fixes a crash when reseated to ZV by
1836 try_window_reusing_current_matrix.
1837 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
1838 which happens with R2L glyph rows. Fixes a crash when inserting a
1839 character at end of an R2L line.
1840 (set_cursor_from_row): Don't be fooled by truncated rows: don't
1841 treat them as having zero-width characters. Improve comments.
1842 Don't reverse pos_before and pos_after for reversed glyph rows.
1843 Set cursor.x to negative value when the cursor might be on the
1844 left fringe.
1845 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
1846 left fringe, not the right one.
1847 (notice_overwritten_cursor, draw_phys_cursor_glyph)
1848 (erase_phys_cursor): For reversed cursor_row, support cursor on
1849 the left fringe.
1850
1851 * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
1852 of continuation indicators on the fringes.
1853 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
1854 left fringe.
1855
1856 * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
1857 draw cursor on the left fringe.
1858
1859 * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
1860 cursor on the left fringe.
1861
1862 * dispnew.c (update_text_area): Handle reversed desired rows when
1863 the cursor is on the left fringe.
1864 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
1865 below, not by 0, for when the cursor is on the left fringe.
1866
1867 2010-04-20 Jan Djärv <jan.h.d@swipnet.se>
1868
1869 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed
1870 widget is a scrollbar.
1871
1872 2010-04-20 Kenichi Handa <handa@m17n.org>
1873
1874 * charset.c (char_charset): Consider Vcharset_non_preferred_head
1875 only when the arg CHARSET_LIST is nil.
1876
1877 2010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1878
1879 Make variable forwarding explicit rather the using special values.
1880 Basically, this makes the structure of buffer-local values and object
1881 forwarding explicit in the type of Lisp_Symbols rather than use
1882 special Lisp_Objects for that. This tends to lead to slightly more
1883 verbose code, but is more C-like, simpler, and makes it easier to make
1884 sure we handled all cases, among other things by letting the compiler
1885 help us check it.
1886 * lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
1887 Removing forwarding objects.
1888 (enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
1889 (struct Lisp_Symbol): Make the various forms of variable-forwarding
1890 explicit rather than hiding them inside Lisp_Object "values".
1891 (XFWDTYPE): New macro.
1892 (XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
1893 (XBUFFER_LOCAL_VALUE): Remove.
1894 (SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
1895 (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
1896 (SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
1897 (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
1898 (struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
1899 Remove the Lisp_Misc_* header.
1900 (struct Lisp_Buffer_Local_Value): Redefine.
1901 (BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
1902 (struct Lisp_Misc_Any): Add filler to get the right size.
1903 (struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
1904 Lisp_Intfwd.
1905 (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
1906 (DEFVAR_KBOARD): Allocate a forwarding object.
1907 * data.c (do_blv_forwarding, store_blv_forwarding): New macros.
1908 (let_shadows_global_binding_p): New function.
1909 (union Lisp_Val_Fwd): New type.
1910 (make_blv): New function.
1911 (swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
1912 (store_symval_forwarding, swap_in_global_binding, Fboundp)
1913 (swap_in_symval_forwarding, find_symbol_value, Fset)
1914 (let_shadows_buffer_binding_p, set_internal, default_value)
1915 (Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
1916 (Fkill_local_variable, Fmake_variable_frame_local)
1917 (Flocal_variable_p, Flocal_variable_if_set_p)
1918 (Fvariable_binding_locus):
1919 * xdisp.c (select_frame_for_redisplay):
1920 * lread.c (Fintern, Funintern, init_obarray, defvar_int)
1921 (defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
1922 * frame.c (store_frame_param):
1923 * eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
1924 * bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
1925 value structure.
1926 * buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
1927 (clone_per_buffer_values): Only adjust markers into the current buffer.
1928 (reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
1929 (Fbuffer_local_value, set_buffer_internal_1)
1930 (swap_out_buffer_local_variables):
1931 Adapt to the new symbol value structure.
1932 (DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
1933 (defvar_per_buffer): Take a new arg for the fwd object.
1934 (buffer_lisp_local_variables): Return a proper alist (different fix
1935 for bug#4138).
1936 * alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
1937 (Fgarbage_collect): Don't handle buffer_defaults specially.
1938 (mark_object): Handle new symbol value structure rather than the old
1939 special Lisp_Misc_* objects.
1940 (gc_sweep) <symbols>: Free also the buffer-local-value objects.
1941 * term.c (set_tty_color_mode):
1942 * bidi.c (bidi_initialize): Don't access the ->value field directly.
1943 * buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
1944 a buffer_local_flags.
1945 * print.c (print_object): Get rid of impossible forwarding objects.
1946
1947 2010-04-19 Eli Zaretskii <eliz@gnu.org>
1948
1949 * bidi.c (bidi_get_type, bidi_get_category)
1950 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
1951 (bidi_type_of_next_char, bidi_level_of_next_char):
1952 Declare static. Use `INLINE' rather than `inline'.
1953
1954 2010-04-19 Juanma Barranquero <lekktu@gmail.com>
1955
1956 * dired.c (Ffile_attributes): Fix typo in docstring.
1957
1958 2010-04-19 Adrian Robert <Adrian.B.Robert@gmail.com>
1959
1960 * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
1961 NSInteger (Bug#5811).
1962
1963 2010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1964
1965 * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
1966 (PTY_OPEN): New defines. Use openpty (Bug#726, Bug#5819).
1967
1968 2010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1969
1970 * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
1971
1972 2010-04-19 Chong Yidong <cyd@stupidchicken.com>
1973
1974 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
1975 terminal frames (Bug#5837).
1976
1977 2010-04-19 Eli Zaretskii <eliz@gnu.org>
1978
1979 * .gdbinit (xsubchartable): New command.
1980
1981 2010-04-19 Eli Zaretskii <eliz@gnu.org>
1982
1983 * xdisp.c (display_line): Don't write beyond the last glyph row in
1984 the desired matrix. Fixes a crash in "emacs -nw" (bug#5972), see
1985 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
1986 and
1987 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
1988
1989 2010-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
1990
1991 * alloc.c (Fpurecopy): Hash-cons if requested.
1992 (syms_of_alloc): Update purify-flag docstring.
1993
1994 2010-04-18 Jan Djärv <jan.h.d@swipnet.se>
1995
1996 * gtkutil.c (xg_set_geometry): Set size in geometry string also.
1997 (x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
1998
1999 2010-04-17 Eli Zaretskii <eliz@gnu.org>
2000
2001 Fix a crash when an NSM character is inserted at BEGV.
2002
2003 * bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
2004 (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
2005 NEUTRAL_B or UNKNOWN_BT.
2006
2007 2010-04-16 Eli Zaretskii <eliz@gnu.org>
2008
2009 * xdisp.c (set_cursor_from_row): Don't consider possibility of
2010 other rows with cursor unless they are different from this row and
2011 this row is part of a continued line. (Bug#5943)
2012
2013 2010-04-16 Dan Nicolaescu <dann@ics.uci.edu>
2014
2015 * s/freebsd.h: Restore osreldate.h include.
2016 Suggested by Naohiro Aota.
2017
2018 2010-04-16 Jan Djärv <jan.h.d@swipnet.se>
2019
2020 * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used.
2021
2022 2010-04-16 Ken Brown <kbrown@cornell.edu> (tiny change)
2023
2024 * s/cygwin.h: Avoid linking against static libgcc.
2025
2026 2010-04-15 Juri Linkov <juri@jurta.org>
2027
2028 * window.c: Add Qscroll_command.
2029 Remove Vscroll_preserve_screen_position_commands.
2030 (window_scroll_pixel_based, window_scroll_line_based): Check the
2031 `scroll-command' property on the last command instead of searching
2032 the last command in Vscroll_preserve_screen_position_commands.
2033 (syms_of_window): Initialize and staticpro `Qscroll_command'.
2034 Put Qscroll_command property on Qscroll_up and Qscroll_down.
2035 (scroll-preserve-screen-position): Doc fix.
2036 (Vscroll_preserve_screen_position_commands): Remove variable.
2037
2038 2010-04-15 Dan Nicolaescu <dann@ics.uci.edu>
2039
2040 * xdisp.c (message): Do not use NO_ARG_ARRAY.
2041
2042 2010-04-14 Dan Nicolaescu <dann@ics.uci.edu>
2043
2044 Reduce cpp use in Makefile.in.
2045 * Makefile.in (DBUS_CFLAGS, DBUS_LIBS, GCONF_CFLAGS, GCONF_LIBS)
2046 (LIBSOUND, CFLAGS_SOUND, RSVG_LIBS, RSVG_CFLAGS, INTERVALS_H)
2047 (GETLOADAVG_LIBS, RUN_TEMACS): Move to the autoconf section.
2048 (ORDINARY_LINK): Remove, defined in src/s/gnu.h.
2049 (CRT0_COMPILE): Remove, inline it in the only user.
2050
2051 2010-04-14 Juri Linkov <juri@jurta.org>
2052
2053 * window.c (keys_of_window): Rebind `C-v' from `scroll-up' to
2054 `scroll-up-command' and `M-v' from `scroll-down' to
2055 `scroll-down-command'.
2056
2057 2010-04-14 Juri Linkov <juri@jurta.org>
2058
2059 * window.c (Vscroll_preserve_screen_position_commands): New variable
2060 with the default value as the list of Qscroll_down and Qscroll_up.
2061 (window_scroll_pixel_based, window_scroll_line_based): Search the
2062 last command in the list Vscroll_preserve_screen_position_commands
2063 instead of comparing with Qscroll_up and Qscroll_down.
2064
2065 2010-04-13 Jan Djärv <jan.h.d@swipnet.se>
2066
2067 * gtkutil.c (xg_set_geometry): Set geometry for PPosition also.
2068 (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry
2069 does that.
2070
2071 * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width
2072 to zero.
2073
2074 2010-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2075
2076 * term.c (init_tty): Move common text outside of #ifdef TERMINFO.
2077
2078 Try to solve the problem of spurious EOF chars in long lines of text
2079 sent to interactive subprocesses.
2080 * sysdep.c (child_setup_tty): Do not enable ICANON any more.
2081 (system_process_attributes): Remove unused var `ttotal'.
2082 * process.c (send_process): Don't bother breaking long line with EOF
2083 chars when talking to ttys any more.
2084 (wait_reading_process_output): Output a warning when called in such
2085 a way that it could block without being interruptible.
2086
2087 Try to detect file modification within the same second.
2088 * buffer.h (struct buffer): New field modtime_size.
2089 * buffer.c (reset_buffer): Initialize it.
2090 * fileio.c (Finsert_file_contents, Fwrite_region): Set it.
2091 (Fverify_visited_file_modtime): Check it.
2092 (Fclear_visited_file_modtime, Fset_visited_file_modtime): Clear it.
2093 (Fset_visited_file_modtime): Set (or clear) it.
2094
2095 2010-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
2096
2097 * process.c (status_notify): Remove unused var `ro'.
2098
2099 2010-04-12 Jan Djärv <jan.h.d@swipnet.se>
2100
2101 * xfns.c (select_visual): Don't call error if XGetVisualInfo returns
2102 more than one visual (Bug#5938).
2103
2104 2010-04-12 Dan Nicolaescu <dann@ics.uci.edu>
2105
2106 * Makefile.in (C_SWITCH_SYSTEM,C_SWITCH_MACHINE,C_SWITCH_X_SITE):
2107 Undefine.
2108
2109 2010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
2110
2111 Remove C_SWITCH_SYSTEM_TEMACS.
2112 * s/darwin.h (C_SWITCH_SYSTEM_TEMACS): Remove.
2113 (malloc, realloc, free): Use emacs, not temacs for conditional
2114 definition.
2115
2116 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Remove.
2117 (ALL_CFLAGS): Do not use C_SWITCH_SYSTEM_TEMACS.
2118
2119 Use autoconf, not cpp for some variables.
2120 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
2121 (C_SWITCH_X_SITE): Define using autoconf, not cpp.
2122 (ALL_CFLAGS): Use them as make variables.
2123 (really-lwlib, really-oldXMenu): Do not pass them.
2124
2125 2010-04-11 Jan Djärv <jan.h.d@swipnet.se>
2126
2127 * xmenu.c (apply_systemfont_to_dialog): New.
2128 (create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.
2129
2130 2010-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
2131
2132 * process.c (exec_sentinel): Preserve current-buffer.
2133
2134 * process.c (read_process_output): Move the save-current-buffer to
2135 apply to both the filter and the non-filter branches.
2136
2137 2010-04-10 Dan Nicolaescu <dann@ics.uci.edu>
2138
2139 * s/msdos.h (UNEXEC): New definition.
2140
2141 2010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2142
2143 * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
2144 (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
2145
2146 * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
2147 Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
2148 set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
2149 TRY_WINDOW_CHECK_MARGINS.
2150
2151 * xfns.c (Fx_show_tip): Undo last change. Call try_window with
2152 TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423). Subtract last glyph's
2153 width only when it is for padding.
2154
2155 2010-04-09 Jan Djärv <jan.h.d@swipnet.se>
2156
2157 * xfns.c (Fx_show_tip): Call try_window in a loop until
2158 fonts_changed_p is zero (Bug#2423).
2159
2160 2010-04-08 Eli Zaretskii <eliz@gnu.org>
2161
2162 * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
2163 the end of TEXT_AREA. (Bug#5856)
2164
2165 2010-04-08 Jan Djärv <jan.h.d@swipnet.se>
2166
2167 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
2168 HAVE_GCONF.
2169
2170 2010-04-08 Eli Zaretskii <eliz@gnu.org>
2171
2172 * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
2173 prev.orig_type, for resolving type of NSM. (Bug#5858)
2174
2175 2010-04-08 Jan Djärv <jan.h.d@swipnet.se>
2176
2177 * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
2178 (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
2179 in current_font.
2180 (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
2181 (Ffont_get_system_normal_font, xsettings_get_system_normal_font):
2182 New functions.
2183 (syms_of_xsettings): Initialize current_font.
2184 defsubr Sfont_get_system_normal_font.
2185
2186 * xsettings.h (Ffont_get_system_normal_font,
2187 xsettings_get_system_normal_font): Declare.
2188
2189 * xfns.c (extern xlwmenu_default_font): Remove.
2190 (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
2191 to xlwmenu.c.
2192
2193 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
2194 menu items in UTF-8.
2195
2196 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
2197 (apply_systemfont_to_menu): New function.
2198 (set_frame_menubar, create_and_show_popup_menu): Call
2199 apply_systemfont_to_menu.
2200
2201 2010-04-07 Jan Djärv <jan.h.d@swipnet.se>
2202
2203 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
2204 FRAME_LINE_TO_PIXEL_Y.
2205
2206 * xterm.c (x_set_window_size_1): Don't add border_width/height to
2207 pixelwidth/height.
2208
2209 2010-04-07 Dan Nicolaescu <dann@ics.uci.edu>
2210
2211 Simplify code for HP machines.
2212 * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
2213 for GNU_LINUX, not needed.
2214 (UNEXEC, NEED_BSDTTY): Move definitions...
2215 * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
2216
2217 * m/iris4d.h (UNEXEC): Move definition ...
2218 * s/irix6-5.h (UNEXEC): ... here.
2219
2220 2010-04-04 Jan Djärv <jan.h.d@swipnet.se>
2221
2222 * xfns.c (set_machine_and_pid_properties): New function.
2223 (Fx_create_frame): Call set_machine_and_pid_properties.
2224
2225 2010-04-03 Eli Zaretskii <eliz@gnu.org>
2226
2227 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
2228 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
2229 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
2230
2231 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
2232 in this function. (Bug#5703)
2233
2234 2010-04-03 Chong Yidong <cyd@stupidchicken.com>
2235
2236 * nsterm.h: Fix last change.
2237
2238 2010-04-03 Dan Nicolaescu <dann@ics.uci.edu>
2239
2240 * m/intel386.h (NO_REMAP): Move definition ...
2241 * s/msdos.h (NO_REMAP): ... here.
2242
2243 * m/vax.h (CRT0_DUMMIES): Remove, unused.
2244
2245 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
2246 used on those platforms.
2247
2248 2010-04-02 Dan Nicolaescu <dann@ics.uci.edu>
2249
2250 Remove extern errno declarations.
2251 * xterm.c:
2252 * xrdb.c:
2253 * w32term.c:
2254 * unexec.c:
2255 * unexaix.c:
2256 * sysdep.c:
2257 * process.c:
2258 * lread.c:
2259 * keyboard.c:
2260 * floatfns.c:
2261 * filelock.c:
2262 * fileio.c:
2263 * emacs.c (main):
2264 * ecrt0.c:
2265 * dispnew.c:
2266 * callproc.c:
2267 * buffer.c: Remove errno extern declarations.
2268 * s/netbsd.h (NEED_ERRNO): Remove.
2269
2270 2010-04-01 Dan Nicolaescu <dann@ics.uci.edu>
2271
2272 Remove all uses of LIBX11_SYSTEM.
2273 * Makefile.in (LIBX11_SYSTEM): Remove.
2274 * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
2275 instead.
2276
2277 2010-04-01 Eli Zaretskii <eliz@gnu.org>
2278
2279 Remove support for DJGPP v1.x (bug#5813).
2280
2281 * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
2282 * s/msdos.h:
2283 * unexec.c (make_hdr, copy_text_and_data):
2284 * sysdep.c (wait_for_termination, sys_subshell):
2285 * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
2286 (IT_set_terminal_modes, __write, _rename, gethostname)
2287 (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
2288 (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
2289 the value of __DJGPP__.
2290 (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
2291 compatibility code.
2292 * lread.c:
2293 * gmalloc.c (memalign):
2294 * fileio.c (Fcopy_file, check_executable, Ffile_modes):
2295 * emacs.c (main):
2296 * dosfns.c (init_dosfns):
2297 * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
2298
2299 2010-04-01 Eli Zaretskii <eliz@gnu.org>
2300
2301 * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
2302 string with `cursor' property comes from an `after-string'
2303 overlay. (Bug#5816)
2304
2305 2010-04-01 Glenn Morris <rgm@gnu.org>
2306
2307 * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
2308 Define as Makefile variables.
2309 (LIBX): Use above variables rather than directly using autoconf.
2310
2311 2010-03-31 Dan Nicolaescu <dann@ics.uci.edu>
2312
2313 Clean up BSD_SYSTEM use.
2314 * xterm.c:
2315 * process.c:
2316 * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
2317 for including <sys/ioctl.h>.
2318 * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
2319 code is only used for MSDOS.
2320
2321 2010-03-31 Juri Linkov <juri@jurta.org>
2322
2323 * image.c: Add `Qextension_data'.
2324 (syms_of_image): Initialize and staticpro `Qextension_data'.
2325 (Fimage_metadata): Rename from `Fimage_extension_data'.
2326 (gif_load): Put GIF extension data to the property
2327 `Qextension_data'.
2328
2329 2010-03-31 Chong Yidong <cyd@stupidchicken.com>
2330
2331 * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
2332 * nsterm.h: Fix prototype.
2333
2334 2010-03-31 Eli Zaretskii <eliz@gnu.org>
2335
2336 * xdisp.c (highlight_trailing_whitespace): Support highlight of
2337 trailing whitespace in right-to-left rows.
2338
2339 2010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
2340
2341 Get rid of the direct_output optimizations.
2342 * keyboard.c (nonundocount): Remove extern declaration.
2343 (command_loop_1): Remove brittle optimisation for cheap and
2344 common operations.
2345 * xdisp.c (redisplay_internal): Don't bother checking
2346 redisplay_performed_directly_p any more.
2347 * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
2348 any more.
2349 * dispnew.c (redisplay_performed_directly_p)
2350 (direct_output_for_insert, direct_output_forward_char):
2351 * dispextern.h (redisplay_performed_directly_p)
2352 (direct_output_for_insert, direct_output_forward_char): Remove.
2353 * cmds.c (nonundocount): Make it static.
2354
2355 2010-03-31 Bernhard Herzog <bh@intevation.de> (tiny change)
2356
2357 * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
2358
2359 2010-03-31 Jan Djärv <jan.h.d@swipnet.se>
2360
2361 * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
2362 invisible (Bug#5766).
2363
2364 2010-03-31 Adrian Robert <adrian.b.robert@gmail.com>
2365
2366 * xdisp.c (x_consider_frame_title, update_window_cursor):
2367 Remove HAVE_NS conditionals.
2368 (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
2369
2370 * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
2371 filename for the title.
2372 (ns_set_doc_edited): Do nothing if the selected window is a
2373 minibuffer window.
2374
2375 * nsterm.h: Add prototypes for ns_set_name_as_filename and
2376 ns_set_doc_edited.
2377
2378 * nsterm.m: Remove unneeded prototype.
2379
2380 2010-03-31 Glenn Morris <rgm@gnu.org>
2381
2382 * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
2383 in the DOC file. (Bug#5336)
2384
2385 2010-03-31 Chong Yidong <cyd@stupidchicken.com>
2386
2387 * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
2388
2389 2010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
2390
2391 * window.c (keys_of_window): Remove redundant/overridden bindings.
2392
2393 2010-03-30 Eli Zaretskii <eliz@gnu.org>
2394
2395 * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
2396 Restore original behavior when the iterator is not bidi_p.
2397
2398 2010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
2399
2400 * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
2401
2402 2010-03-30 Eli Zaretskii <eliz@gnu.org>
2403
2404 * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
2405 are outside the range of cached character positions.
2406
2407 2010-03-30 Juanma Barranquero <lekktu@gmail.com>
2408
2409 * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
2410
2411 2010-03-30 Eli Zaretskii <eliz@gnu.org>
2412
2413 Initial support for bidirectional editing.
2414
2415 * Makefile.in (obj): Include bidi.o.
2416 (bidi.o): New target.
2417
2418 * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
2419 ($(BLD)/bidi.$(O)): New target.
2420
2421 * bidi.c: New file.
2422
2423 * buffer.h (struct buffer): New members bidi_display_reordering
2424 and bidi_paragraph_direction.
2425
2426 * buffer.c (init_buffer_once): Initialize bidi_display_reordering
2427 and bidi_paragraph_direction.
2428 (syms_of_buffer): Declare Lisp variables bidi-display-reordering
2429 and bidi-paragraph-direction.
2430 (Fbuffer_swap_text): Swap the values of
2431 bidi_display_reordering and bidi_paragraph_direction.
2432
2433 * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
2434 (bidi_type_t, bidi_dir_t): New types.
2435 (bidi_saved_info, bidi_stack, bidi_it): New structures.
2436 (struct it): New members bidi_p, bidi_it, paragraph_embedding,
2437 prev_stop, base_level_stop, and eol_pos.
2438 (bidi_init_it, bidi_get_next_char_visually): New prototypes.
2439 (IT_STACK_SIZE): Enlarge to 5.
2440 (struct glyph_row): New member reversed_p.
2441 <string_buffer_position>: Update prototype.
2442 (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
2443 glyph_row if bidi_it.paragraph_dir == R2L.
2444 (struct glyph): New members resolved_level and bidi_type.
2445
2446 * dispnew.c (direct_output_forward_char): Give up if we need bidi
2447 processing or buffer's direction is right-to-left.
2448 (prepare_desired_row): Preserve the reversed_p flag.
2449 (row_equal_p): Compare the reversed_p attributes as well.
2450
2451 * xdisp.c (init_iterator): Initialize it->bidi_p. Call
2452 bidi_init_it and set it->paragraph_embedding from the current
2453 buffer's value of bidi_paragraph_direction.
2454 (reseat_1): Initialize bidi_it.first_elt.
2455 (set_iterator_to_next, next_element_from_buffer): Use the value of
2456 paragraph_embedding to determine the paragraph direction.
2457 (set_iterator_to_next): Under bidi reordering, call
2458 bidi_get_next_char_visually. Call bidi_paragraph_init if the
2459 new_paragraph flag is set in the bidi iterator.
2460 (next_element_from_buffer): If bidi_it.first_elt is set,
2461 initialize paragraph direction and find the first character to
2462 display in the visual order. If reseated to a middle of a line,
2463 prime the bidi iterator starting at the line's beginning. Handle
2464 the situation where we overstepped stop_charpos due to
2465 non-linearity of the bidi iteration. Likewise for when we back up
2466 beyond the previous stop_charpos. When moving across stop_charpos,
2467 record it in prev_stop.
2468 (display_line): Set row->end and it->start for the next row to the
2469 next character in logical order. Always extend reversed_p rows to
2470 the end of line, even if they end at ZV. Copy the reversed_p flag
2471 to the next glyph row. Keep calling set_cursor_from_row for
2472 bidi-reordered rows even if we already have a possible candidate
2473 for cursor position. Set row_end after all the row's glyphs have
2474 been produced, by looping over the glyphs. Record the position
2475 after EOL in it->eol_pos, and use it to set end_pos of the last
2476 row produced for a continued line.
2477 <Qright_to_left, Qleft_to_right>: New variables.
2478 (syms_of_xdisp): Initialize and staticpro them.
2479 (string_buffer_position_lim): New function.
2480 (string_buffer_position): Most of code moved to
2481 string_buffer_position_lim. Last argument and return value are
2482 now EMACS_INT; all callers changed.
2483 (set_cursor_from_row): Rewritten to support bidirectional text and
2484 reversed glyph rows.
2485 (text_outside_line_unchanged_p, try_window_id): Disable
2486 optimizations if we are reordering bidirectional text and the
2487 paragraph direction can be affected by the change.
2488 (append_glyph, append_composite_glyph)
2489 (produce_image_glyph, append_stretch_glyph): Set the
2490 resolved_level and bidi_type members of each glyph.
2491 (append_glyph): If the glyph row is reversed, prepend the glyph
2492 rather than appending it.
2493 (handle_stop_backwards): New function.
2494 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
2495 (reseat): call handle_stop_backwards to recompute prev_stop and
2496 base_level_stop for the new position.
2497 (handle_invisible_prop): Under bidi iteration, skip invisible text
2498 using bidi_get_next_char_visually. If we are `reseat'ed, init the
2499 paragraph direction. Update IT->prev_stop after skipping
2500 invisible text.
2501 (move_it_in_display_line_to): New variables prev_method
2502 and prev_pos. Compare for strict equality in
2503 BUFFER_POS_REACHED_P.
2504 (try_cursor_movement): Examine all the candidate rows that occlude
2505 point, to return the best match. If rows are bidi-reordered
2506 and point moved backwards, back up to the row that is not a
2507 continuation line, and start looking for a suitable row from
2508 there.
2509
2510 * term.c (append_glyph): Reverse glyphs by pre-pending them,
2511 rather than appending, if the glyph_row's reversed_p flag is set.
2512 Set the resolved_level and bidi_type members of each glyph.
2513
2514 * .gdbinit (pbiditype): New command.
2515 (pgx): Use it to display bidi level and type of the glyph.
2516 (pitx): Display some bidi information about the iterator.
2517 (prowlims, pmtxrows): New commands.
2518
2519 2010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
2520
2521 Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
2522 * s/usg5-4.h (LIBS_DEBUG):
2523 * s/irix6-5.h (C_DEBUG_SWITCH):
2524 * s/gnu-linux.h (LIBS_DEBUG):
2525 * s/darwin.h (LIBS_DEBUG):
2526 * s/bsd-common.h (LIBS_DEBUG):
2527 * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
2528 * m/iris4d.h (LIBS_DEBUG):
2529 * m/hp800.h (LIBS_DEBUG): Remove definitions.
2530
2531 * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
2532 (LIBS_DEBUG): Remove definition.
2533
2534 2010-03-27 Chong Yidong <cyd@stupidchicken.com>
2535
2536 * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
2537 Windows.
2538
2539 2010-03-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2540
2541 * process.c (Fmake_network_process): Don't call turn_on_atimers around
2542 `connect' (Bug#5723).
2543
2544 2010-03-25 Helmut Eller <eller.helmut@gmail.com>
2545
2546 * process.c (Fmake_network_process): Call `select' for interrupted
2547 `connect' rather than creating new socket (Bug#5173).
2548
2549 2010-03-24 Jan Djärv <jan.h.d@swipnet.se>
2550
2551 * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
2552
2553 * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
2554
2555 * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
2556
2557 2010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2558
2559 * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
2560 XLoadQueryFont.
2561
2562 2010-03-24 Kenichi Handa <handa@m17n.org>
2563
2564 * coding.c (decode_coding_ccl): Fix previous change for the
2565 multibyte case.
2566 (encode_coding_ccl): Don't setup ccl program here. Fix for the
2567 case that the output buffer is fullfilled.
2568 (encode_coding): Setup ccl program here.
2569
2570 2010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
2571
2572 * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
2573
2574 Simplify LIBS_MACHINE definitions.
2575 * m/hp800.h (LIBS_MACHINE): Remove, same as default.
2576 * m/iris4d.h (LIBS_MACHINE): Likewise.
2577 * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
2578 * s/aix4-2.h (LIBS_SYSTEM): ... here.
2579 * s/netbsd.h: Remove commented out code.
2580
2581 2010-03-22 Dan Nicolaescu <dann@ics.uci.edu>
2582
2583 Remove dead code dealing with POSIX_SIGNALS.
2584 * atimer.c (set_alarm): Remove dead code, all USG systems define
2585 POSIX_SIGNALS.
2586 * data.c (arith_error): Likewise.
2587 * keyboard.c (input_available_signal, handle_user_signal)
2588 (interrupt_signal): Likewise.
2589 * process.c (sigchld_handler): Likewise.
2590 (create_process): Remove if 0 code. Remove HPUX conditional when
2591 !defined (POSIX_SIGNALS), it cannot be true.
2592 * syssignal.h: Remove USG5_4 and USG conditionals when
2593 !POSIX_SIGNALS, they cannot be true.
2594
2595 * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
2596 NO_SOCK_SIGIO, not used anymore.
2597
2598 2010-03-21 Dan Nicolaescu <dann@ics.uci.edu>
2599
2600 * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
2601 support vax on BSDs.
2602
2603 * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
2604 * s/aix4-2.h (ORDINARY_LINK): ... here.
2605
2606 2010-03-21 Andreas Schwab <schwab@linux-m68k.org>
2607
2608 * Makefile.in (abs_builddir): Define.
2609 (bootstrap_exe): Use it.
2610 (VPATH): Use $(srcdir) instead of @srcdir@.
2611
2612 2010-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
2613
2614 * Makefile.in (bootstrap_exe): Use an absolute name.
2615
2616 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
2617
2618 Remove support for old GNU/Linux using libc version 5.
2619 * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
2620 * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
2621
2622 Consolidate redundant definitions in s/bsd-common.h.
2623 * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
2624 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
2625 (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
2626 doing it in all files that include this one.
2627 * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
2628 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
2629 (LDAV_SYMBOL, KERNEL_FILE): Remove.
2630 * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
2631 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
2632 (LDAV_SYMBOL, KERNEL_FILE): Remove.
2633 * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
2634 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
2635 (LDAV_SYMBOL, KERNEL_FILE): Remove.
2636
2637 Consolidate redundant definitions.
2638 * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
2639 it's undefined in all files that include this one.
2640 (POSIX_SIGNALS): Define here instead of doing it in all files that
2641 include this one.
2642 * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
2643 (POSIX_SIGNALS): Do not define.
2644 * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
2645 (POSIX_SIGNALS): Do not define.
2646 * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
2647 (POSIX_SIGNALS): Do not define.
2648
2649 Remove support for old UNIX System V systems.
2650 * s/unixware.h: Add the contents of s/usg-5-4-2.h.
2651 * s/usg-5-4-2.h: Remove.
2652
2653 Remove support for Solaris on PPC and for old versions.
2654 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
2655 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
2656 that cancel each other.
2657 * s/sol2-3.h:
2658 * s/sol2-4.h:
2659 * s/sol2-5.h: Remove.
2660 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
2661 (NO_REMAP): Remove, unused.
2662 (UNEXEC): Move definition ...
2663 * s/aix4-2.h (UNEXEC): ... here.
2664
2665 * s/openbsd.h: Remove support for non-ELF and for systems that do
2666 not support shared libraries.
2667 * s/netbsd.h:
2668 * s/freebsd.h: Likewise.
2669
2670 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
2671
2672 Remove non-working support for lynxos 3.0.
2673 * s/lynxos.h: Remove file.
2674
2675 * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
2676 COFF_BSD_SYMBOLS, nothing defines it anymore.
2677
2678 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
2679
2680 Remove obsolete uses of HAVE_SHM.
2681 * emacs.c (standard_args):
2682 (Fdump_emacs):
2683 (syms_of_emacs): Remove code depending on HAVE_SHM.
2684
2685 * alloc.c: Remove HAVE_SHM dependent definition.
2686
2687 * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
2688
2689 2010-03-18 Glenn Morris <rgm@gnu.org>
2690
2691 * emacs.c (USAGE4): Hard-code bug address.
2692 (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
2693 (bug_reporting_address): Remove.
2694 (main): Don't call bug_reporting_address.
2695
2696 * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
2697 (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
2698
2699 2010-03-15 Chong Yidong <cyd@stupidchicken.com>
2700
2701 * xfns.c (Fx_create_frame):
2702 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
2703 on left.
2704
2705 2010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change)
2706
2707 * editfns.c (Fformat): Account for string precision when computing
2708 field width (Bug#5710).
2709
2710 2010-03-12 Chong Yidong <cyd@stupidchicken.com>
2711
2712 * xfns.c (Fx_create_frame): Set default to Qright.
2713
2714 * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
2715 all window systems.
2716
2717 2010-03-12 Eli Zaretskii <eliz@gnu.org>
2718
2719 These changes remove termcap.c from the build on Posix platforms.
2720 * Makefile.in (termcapobj): Move termcap.o from here...
2721 (MSDOS_OBJ): ...to here.
2722 (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
2723 now identical to when LIBS_TERMCAP is defined.
2724
2725 * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
2726
2727 * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
2728
2729 * config.in: Regenerated. (See top-level ChangeLog.)
2730
2731 2010-03-10 Chong Yidong <cyd@stupidchicken.com>
2732
2733 * Branch for 23.2.
2734
2735 2010-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
2736
2737 Cleanup setup of gl_state in various parts of the code.
2738 * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
2739 (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
2740 * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
2741 (skip_chars):
2742 * regex.c (regex_compile): Use it.
2743 (re_compile_pattern): Don't set gl_state.current_syntax_table since
2744 it's now set in regex_compile when/if we need it.
2745
2746 2010-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
2747
2748 Make it possible to C-g in a tight bytecode loop again (bug#5680).
2749 * lisp.h (ELSE_PENDING_SIGNALS): New macro.
2750 (QUIT): Use it to consolidate code and remove redundancy.
2751 * bytecode.c (BYTE_CODE_QUIT): Use it as well.
2752
2753 * regex.c (regex_compile): Setup gl_state as well.
2754
2755 * syntax.c (skip_chars): Setup gl_state (bug#3823).
2756 (in_classes): Use CONSP before XCAR/XCDR.
2757
2758 2010-03-03 Chong Yidong <cyd@stupidchicken.com>
2759
2760 * keymap.c (Fwhere_is_internal): Use Fequal to compare
2761 definitions, so that keyboard macros are correctly handled
2762 (Bug#5481).
2763
2764 2010-03-02 Eli Zaretskii <eliz@gnu.org>
2765
2766 * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
2767 text that could be relocated inside the call to emacs_mule_char.
2768 (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
2769 (CODING_DECODE_CHAR): Add a comment describing its purpose.
2770
2771 2010-03-02 Kenichi Handa <handa@m17n.org>
2772
2773 * character.c (parse_str_as_multibyte): Fix handling of the
2774 multibyte form of raw-bytes.
2775 (str_as_multibyte): Likewise.
2776
2777 * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
2778 form of raw-bytes.
2779
2780 2010-02-28 Chong Yidong <cyd@stupidchicken.com>
2781
2782 * charset.c (load_charset_map_from_file)
2783 (load_charset_map_from_vector): Zero out allocated
2784 charset_map_entries before using them.
2785
2786 2010-02-27 Andreas Schwab <schwab@linux-m68k.org>
2787
2788 * w32uniscribe.c (uniscribe_check_otf): Fix length check.
2789
2790 2010-02-27 Chong Yidong <cyd@stupidchicken.com>
2791
2792 * font.c (font_parse_fcname): Recognize "Book", "Condensed",
2793 "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
2794
2795 2010-02-26 Kenichi Handa <handa@m17n.org>
2796
2797 * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
2798
2799 * xdisp.c (reseat_to_string): Fix previous change.
2800
2801 2010-02-26 David Reitter <david.reitter@gmail.com>
2802
2803 * nsfont.m (nsfont_draw): ns_antialias_text should be a
2804 Lisp_Object (Bug#4736).
2805
2806 2010-02-25 Kenichi Handa <handa@m17n.org>
2807
2808 * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
2809
2810 2010-02-24 Jan Djärv <jan.h.d@swipnet.se>
2811
2812 * xterm.c (XTflash): Move declarations before statements.
2813
2814 * gtkutil.c (xg_get_gdk_display): Remove (unused).
2815 (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
2816 (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
2817 (xg_create_tool_bar): Remove unused variables.
2818 (x_wm_set_size_hint): Move declarations before statements.
2819 (xg_create_frame_widgets): Remove variable grav.
2820
2821 2010-02-21 Chong Yidong <cyd@stupidchicken.com>
2822
2823 * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
2824
2825 2010-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
2826
2827 * term.c (fatal): Add a final \n if needed (bug#5596).
2828
2829 2010-02-18 Chong Yidong <cyd@stupidchicken.com>
2830
2831 * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
2832
2833 2010-02-18 Glenn Morris <rgm@gnu.org>
2834
2835 * callint.c (Finteractive): Doc fix.
2836
2837 2010-02-18 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change)
2838
2839 * coding.c (record_conversion_result):
2840 Handle CODING_RESULT_INSUFFICIENT_DST.
2841 (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
2842 memory allocation error.
2843
2844 2010-02-17 Kenichi Handa <handa@m17n.org>
2845
2846 * coding.c (decode_coding_ccl): Don't setup ccl program here.
2847 Fix for the case that the output buffer is fullfilled.
2848 (decode_coding): Setup ccl program here. Keep looping when the
2849 decoder stopped because the output buffer is
2850 fullfilled (bug#5534).
2851
2852 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
2853
2854 2010-02-13 Jan Djärv <jan.h.d@swipnet.se>
2855
2856 * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
2857 bug #5571.
2858 (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
2859 overdrawn.
2860
2861 2010-02-10 Jan Djärv <jan.h.d@swipnet.se>
2862
2863 * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
2864 doing_interact here.
2865 (ice_connection_closed): New function.
2866 (x_session_check_input, smc_die_CB, ice_io_error_handler)
2867 (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
2868 (x_session_check_input): Call IceCloseConnection if IceProcessMessages
2869 returns I/O error.
2870 (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
2871 bug #5512.
2872
2873 2010-02-08 Francis Devereux <francis@devrx.org> (tiny change)
2874
2875 * nsfont.m (nsfont_open): The system's value for the font descent
2876 is negative, so round it down to avoid clipping.
2877
2878 2010-02-06 Chong Yidong <cyd@stupidchicken.com>
2879
2880 * charset.c (load_charset_map_from_file)
2881 (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
2882 instead of xmalloc (Bug#5526). Suggested by Vivek Dasmohapatra.
2883
2884 2010-02-05 Chong Yidong <cyd@stupidchicken.com>
2885
2886 * charset.c (load_charset_map_from_file): Allocate large
2887 charset_map_entries structure on the heap rather than the stack.
2888 (Bug#5526).
2889
2890 2010-01-31 Kenichi Handa <handa@m17n.org>
2891
2892 * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
2893 size in NAME is invalid, return -1 (Bug#5396).
2894
2895 2010-01-31 Chong Yidong <cyd@stupidchicken.com>
2896
2897 * nsterm.m (ns_defined_color): Block input. Suggested by Mike
2898 <deactivated@gmail.com> (Bug#3605).
2899
2900 2010-01-31 David De La Harpe Golden <david@harpegolden.net>
2901
2902 * fileio.c (Frename_file): Correctly rename symlinks to
2903 directories (Bug#5496).
2904
2905 2010-01-31 Filipe Cabecinhas <filcab@gmail.com> (tiny change)
2906
2907 * nsterm.m (ns_ring_bell): Handle visible bell like X.
2908
2909 2010-01-30 Andreas Schwab <schwab@linux-m68k.org>
2910
2911 * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
2912
2913 2010-01-29 Chong Yidong <cyd@stupidchicken.com>
2914
2915 * frame.c (DEFAULT_ROWS): Change default to 35.
2916
2917 * xfns.c (x_default_font_parameter): Change default XFT font to
2918 monospace-10 (Bug#3643).
2919
2920 2010-01-29 Eli Zaretskii <eliz@gnu.org>
2921
2922 * w32inevt.c (key_event): Remove unnecessary comparison of
2923 event->uChar.AsciiChar with 128.
2924
2925 2010-01-28 Chong Yidong <cyd@stupidchicken.com>
2926
2927 * fileio.c (Frename_file): Fix last change (Bug#5487).
2928
2929 * m/mips.h: Remove DATA_START. Suggested by Dan Nicolaescu.
2930
2931 * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
2932
2933 2010-01-28 Jan Djärv <jan.h.d@swipnet.se>
2934
2935 * xfns.c (Fx_create_frame): Remove window size matching code from
2936 2010-01-15.
2937 (x_get_current_desktop, x_get_desktop_workarea): Remove.
2938
2939 2010-01-27 Jason Rumney <jasonr@gnu.org>
2940
2941 * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
2942 (key_event): Use unicode for characters 128 and higher (Bug#4567).
2943
2944 2010-01-27 Kenichi Handa <handa@m17n.org>
2945
2946 * regex.c (analyse_first): Fix setting of fastmap for unibyte
2947 pattern string (Bug#4209).
2948
2949 2010-01-27 David De La Harpe Golden <david@harpegolden.net>
2950
2951 * fileio.c (Frename_file): Call copy-directory and
2952 delete-directory for directories, in order to handle cross-device
2953 renaming (Bug#3353).
2954
2955 2010-01-25 Jan Djärv <jan.h.d@swipnet.se>
2956
2957 * xfns.c (Fx_create_frame): If frame height is too big, try
2958 sizes 24 and 10. Bug #3643.
2959
2960 2010-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
2961
2962 Try and fix bug#788, hopefully for real this time.
2963 * keymap.c (shadow_lookup): Add `remap' arg.
2964 (describe_map, describe_vector): Update calls to shadow_lookup.
2965 (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
2966 `remapped' so this flag is applicable to `sequence'. Be careful to
2967 perform remapping during shadow_lookup check of remapped_sequences.
2968
2969 2010-01-24 Eric Bélanger <snowmaniscool@gmail.com> (tiny change)
2970
2971 * image.c (png_load): Use png_sig_cmp instead of the obsolete
2972 png_check_sig, which has been removed in libpng 1.4.
2973
2974 2010-01-23 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
2975
2976 * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
2977 lacks this header file).
2978
2979 2010-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2980
2981 * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
2982 as in Emacs 22.
2983
2984 2010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2985
2986 * lisp.h (make_pure_string): String pointer arg now points to const.
2987
2988 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
2989 args now point to const.
2990
2991 2010-01-22 Eli Zaretskii <eliz@gnu.org>
2992
2993 * lread.c (Fload): Don't treat files without .elc extension as
2994 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
2995 them. (bug#5303)
2996
2997 2010-01-20 Kenichi Handa <handa@m17n.org>
2998
2999 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
3000 treat the source as actual byte sequence.
3001
3002 2010-01-19 Alan Mackenzie <acm@muc.de>
3003
3004 Fix spurious before-change-functions invocation from (insert ?\n).
3005 * textprop.c (set_text_properties): Rename parameter
3006 `signal_after_change_p' to `coherent_change_p', and make the
3007 invocation of `modify_region' conditional on it.
3008
3009 2010-01-19 Jan Djärv <jan.h.d@swipnet.se>
3010
3011 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
3012 for debug purpose.
3013 (syms_of_xsettings): Declare xft-settings.
3014
3015 2010-01-18 Chong Yidong <cyd@stupidchicken.com>
3016
3017 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
3018
3019 2010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
3020
3021 * xterm.c (event_handler_gdk): Block input (Bug#5037).
3022
3023 2010-01-16 Chong Yidong <cyd@stupidchicken.com>
3024
3025 * emacs.c (standard_args): Adjust arg priorities to reflect how
3026 they are processed in startup.el.
3027
3028 2010-01-16 Andreas Schwab <schwab@linux-m68k.org>
3029
3030 * Makefile.in (lisp, shortlisp): Update.
3031
3032 2010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
3033
3034 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
3035 code, link the new kboard into all_kboard before running Lisp code,
3036 and protect the new terminal with GCPRO (Bug#5365).
3037 (x_term_init): Remove unused var `atom'.
3038 (x_delete_display, x_delete_terminal): Remove unused var `i'.
3039
3040 2010-01-15 Jan Djärv <jan.h.d@swipnet.se>
3041
3042 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
3043 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
3044 to find out usable size of the desktop. Don't make frames larger than
3045 this. Bug #3643.
3046
3047 2010-01-15 Kenichi Handa <handa@m17n.org>
3048
3049 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
3050
3051 2010-01-15 Chong Yidong <cyd@stupidchicken.com>
3052
3053 * nsterm.m (Qnone): Define.
3054
3055 * nsfns.m (Qnone): Move definition to nsterm.m.
3056
3057 2010-01-14 Kenichi Handa <handa@m17n.org>
3058
3059 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
3060 systems.
3061
3062 2010-01-14 Kenichi Handa <handa@m17n.org>
3063
3064 Make auto-composition work on all buffers even if they are
3065 fundamental mode.
3066
3067 * composite.c (Vauto_composition_mode): New variable.
3068 (composition_compute_stop_pos): Check Vauto_composition_mode
3069 instead of Vauto_composition_function.
3070 (composition_adjust_point, Ffind_composition_internal): Likewise.
3071 (syms_of_composite): Declare Lisp variable
3072 "auto-composition-mode" here.
3073
3074 2010-01-13 Chong Yidong <cyd@stupidchicken.com>
3075
3076 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
3077 during call to vendor-specific-keysyms (Bug#5365).
3078
3079 2010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3080
3081 * keyboard.c (input_available_signal) [SYNC_INPUT]:
3082 Call SIGNAL_THREAD_CHECK (Bug#5333).
3083
3084 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
3085 Call SIGNAL_THREAD_CHECK.
3086
3087 2010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
3088
3089 Try to fix bug#5314. This is probably not the final word, tho.
3090 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
3091 recent-auto-save-p as a side-effect.
3092 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
3093 * buffer.c (Fkill_buffer, reset_buffer):
3094 * editfns.c (Fsubst_char_in_region):
3095 * fileio.c (Finsert_file_contents, Fdo_auto_save)
3096 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
3097
3098 2010-01-13 Kenichi Handa <handa@m17n.org>
3099
3100 Display buffer name, etc. in mode line by composing correctly.
3101
3102 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
3103 STRING is not nil.
3104 (display_mode_element): Adjust for the change of
3105 decode_mode_spec and display_line.
3106 (decode_mode_spec): Change arg MULTIBYTE to STRING.
3107 (display_string): Handle the case that STRING is non-null and
3108 LISP_STRING is not nil.
3109
3110 * xterm.c (x_draw_composite_glyph_string_foreground):
3111 Pay attention to s->face->overstrike.
3112
3113 * composite.c (composition_reseat_it): Don't check PT if STRING is
3114 non nil.
3115
3116 2010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3117
3118 * keyboard.c (read_char): Don't apply previous change when current
3119 buffer is unchanged by command execution.
3120
3121 2010-01-12 Jan Djärv <jan.h.d@swipnet.se>
3122
3123 * keyboard.c (read_char): Return after executing from special map.
3124
3125 2010-01-12 Glenn Morris <rgm@gnu.org>
3126
3127 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
3128 bug-gnu-emacs rather than emacs-pretest-bug.
3129
3130 2010-01-11 Chong Yidong <cyd@stupidchicken.com>
3131
3132 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
3133 initializing the Lisp variables that depend on them.
3134
3135 2010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3136
3137 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
3138 Clear areas that will not be updated after change of menu bar lines.
3139 Clear the menu bar window's current matrix when the window gets empty.
3140
3141 2010-01-09 Chong Yidong <cyd@stupidchicken.com>
3142
3143 * intervals.h, textprop.c (extend_property_ranges): Return value
3144 and args changed. Discard properties that begin at or after the
3145 new end (Bug#5306).
3146
3147 * editfns.c (Fformat): Caller changed.
3148
3149 * nsterm.m (ns_set_default_prefs): Delete function.
3150 (syms_of_nsterm): Initialize ns_command_modifier,
3151 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
3152 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
3153
3154 * xdisp.c (pos_visible_p): Check for invisible text at the correct
3155 position (Bug#4040).
3156
3157 2010-01-09 Eli Zaretskii <eliz@gnu.org>
3158
3159 * editfns.c (Ffloat_time): Doc fix.
3160
3161 2010-01-09 Jan Djärv <jan.h.d@swipnet.se>
3162
3163 * xfns.c (Fx_create_frame): Don't create frame larger than display
3164 by default bug#3643.
3165
3166 2010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3167
3168 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
3169 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
3170 windows above internal border.
3171
3172 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
3173 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
3174 windows above internal border.
3175
3176 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
3177 tool bar windows specially.
3178
3179 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
3180
3181 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
3182 specially.
3183 (XTflash): Take account of menu bar height.
3184
3185 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
3186 specially.
3187
3188 2010-01-08 Jan Djärv <jan.h.d@swipnet.se>
3189
3190 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
3191 also be true before we can return early (bug #5339).
3192
3193 2010-01-06 David Reitter <david.reitter@gmail.com>
3194
3195 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
3196 (Fns_display_usable_bounds): Rewrite, computing bounds properly
3197 (Bug#3233).
3198
3199 2010-01-06 Jan Djärv <jan.h.d@swipnet.se>
3200
3201 * font.c (font_open_entity): Enable chache and call cached_font_ok
3202 for the driver if defined.
3203 (QCuser_spec): New symbol.
3204 (font_spec_from_name): Save name as user-spec.
3205 (font_load_for_lface): Keep user-spec instead of name.
3206 (font_open_by_name): Save name as user-spec.
3207 (syms_of_font): Initialize QCuser_spec.
3208 (font_clear_prop): Clear name if it exists in font (bug#5157).
3209
3210 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
3211 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
3212 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
3213
3214 * font.h (struct font_driver): Add cached_font_ok.
3215
3216 * xterm.c (x_clear_frame): Queue draw for scroll bars.
3217
3218 2010-01-05 Jan Djärv <jan.h.d@swipnet.se>
3219
3220 * xterm.c (x_new_font): Move code for setting rows/cols before
3221 resizing ...
3222 (x_set_window_size): ... to here. Bug #2568.
3223
3224 * gtkutil.c (xg_clear_under_internal_border): New function.
3225 (xg_frame_resized, xg_frame_set_char_size):
3226 Call xg_clear_under_internal_border.
3227 (xg_update_scrollbar_pos): Clear under old scroll bar position.
3228
3229 2010-01-05 Chong Yidong <cyd@stupidchicken.com>
3230
3231 * keyboard.c (read_key_sequence): Catch keyboard switch after
3232 making a new tty frame (Bug#5095).
3233
3234 2010-01-05 Kenichi Handa <handa@m17n.org>
3235
3236 * fontset.c (fontset_find_font): Fix getting the frame pointer.
3237
3238 2010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
3239
3240 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
3241 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
3242 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
3243
3244 2010-01-03 Michael Albinus <michael.albinus@gmx.de>
3245
3246 * dbusbind.c (xd_add_watch): Improve debug message.
3247 (xd_remove_watch): Improve debug message. If DATA is the session
3248 bus, unset D-Bus session environment.
3249 (Fdbus_init_bus): Pass the bus as argument to
3250 dbus_connection_set_watch_functions. (Bug#5283)
3251
3252 2010-01-01 Chong Yidong <cyd@stupidchicken.com>
3253
3254 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
3255
3256 * lread.c (syms_of_lread): Make it clearer that these are the
3257 names of loaded files (Bug#5068).
3258
3259 * eval.c (run_hook_with_args): Handle the case where the global
3260 value has the obsolete single-function form (Bug#5026).
3261
3262 2009-12-27 Chong Yidong <cyd@stupidchicken.com>
3263
3264 * minibuf.c (Fall_completions): Minor optimization.
3265
3266 2009-12-26 Eli Zaretskii <eliz@gnu.org>
3267
3268 * .gdbinit (pgx): Fix display of composite glyphs.
3269 Display cmp.from and cmp.to as well.
3270 (pitx): Fix last change.
3271
3272 2009-12-25 Kenichi Handa <handa@m17n.org>
3273
3274 * composite.h (composition_adjust_point): Update prototype.
3275
3276 * composite.c (composition_reseat_it): Don't make a composition
3277 spanning over point.
3278 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
3279 composable characters.
3280 (composition_adjust_point): New arg NEW_PT. Callers changed.
3281
3282 * keyboard.c (command_loop_1): Force redisplay if the last point
3283 was within a composition.
3284 (adjust_point_for_property): Don't adjust point for automatic
3285 composition when called after buffer modification.
3286
3287 2009-12-19 Eli Zaretskii <eliz@gnu.org>
3288
3289 * .gdbinit (pitx): Don't use enum names, use their values.
3290 Remove reference to non-existing value GET_FROM_COMPOSITION.
3291 (pgx): Don't use enum names, use their values.
3292 (pitmethod): New helper command.
3293 (pitx): Use it to display iteration method.
3294 (pgrowit): New command.
3295
3296 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
3297
3298 Update dependencies in Makefile.in.
3299
3300 * Makefile.in (alloc.o): Depend on termhooks.h.
3301 (atimer.o): Depend on blockinput.h.
3302 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
3303 and frame.h.
3304 (callint.o): Depend on systime.h, coding.h, and composite.h.
3305 (callproc.o): Depend on buffer.h.
3306 (casefiddle.o): Don't depend on charset.h.
3307 (casetab.o): Depend on character.h.
3308 (ccl.o): Depend on composite.h.
3309 (chartab.o): Depend on ccl.h.
3310 (cm.o): Depend on dispextern.h.
3311 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
3312 (coding.o): Don't depend on $(INTERVALS_H).
3313 (composite.o): Don't depend on dispextern.h explicitly (it's in
3314 $(INTERVALS_H)). Depend on ccl.h.
3315 (data.o): Depend on systime.h, coding.h, composite.h,
3316 dispextern.h, font.h, and ccl.h.
3317 (dired.o): Depend on composite.h.
3318 (dispnew.o): Depend on coding.h. Don't depend explicitly on
3319 composite.h (it's in $(INTERVALS_H)).
3320 (doc.o): Depend on systime.h, coding.h, and composite.h.
3321 (editfns.o): Don't depend explicitly on dispextern.h.
3322 (emacs.o): Depend on frame.h and coding.h.
3323 (eval.o): Depend on coding.h, composite.h, and xterm.h.
3324 (fileio.o): Depend on frame.h and commands.h. Don't depend
3325 explicitly on dispextern.h.
3326 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
3327 composite.h.
3328 (fns.o): Don't depend on termhooks.h.
3329 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
3330 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
3331 coding.h, $(INTERVALS_H), window.h, xterm.h.
3332 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
3333 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
3334 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
3335 fontset.h, ccl.h, and ftfont.h.
3336 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
3337 (gtkutil.o): Depend on dispextern.h and composite.h.
3338 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
3339 termhooks.h, and ccl.h.
3340 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
3341 (intervals.o): Depend on systime.h and coding.h.
3342 (keyboard.o): Depend on composite.h and coding.h.
3343 (keymap.o): Depend on coding.h and frame.h.
3344 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
3345 (macros.o): Depend on systime.h, coding.h, and composite.h.
3346 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
3347 and atimer.h.
3348 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
3349 dispextern.h explicitly.
3350 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
3351 Don't depend explicitly on dispextern.h and composite.h.
3352 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
3353 (regex.o): Don't depend on charset.h.
3354 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
3355 (search.o): Don't depend explicitly on composite.h.
3356 (sound.o): Depend on atimer.h and systime.h.
3357 (syntax.o): Don't depend explicitly on composite.h.
3358 (sysdep.o): Depend on coding.h and composite.h.
3359 (term.o): Depend on xterm.h and buffer.h.
3360 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
3361 (textprop.o): Don't depend on dispextern.h explicitly.
3362 (undo.o): Depend on dispextern.h.
3363 (window.o): Depend on coding.h and termhooks.h. Don't depend on
3364 dispextern.h and composite.h explicitly.
3365 (xdisp.o): Depend on ccl.h.
3366 (xfaces.o): Depend on coding.h and ccl.h.
3367 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
3368 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
3369 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
3370 ftfont.h.
3371 (xgselect.o): New dependency.
3372 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
3373 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
3374 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
3375 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
3376 (xsmfns.o): Depend on frame.h and dispextern.h.
3377 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
3378 sysselect.h.
3379
3380 2009-12-19 Andreas Schwab <schwab@linux-m68k.org>
3381
3382 * font.c (Fclear_font_cache): Pass correct cache argument to
3383 font_clear_cache.
3384
3385 2009-12-16 Andreas Schwab <schwab@linux-m68k.org>
3386
3387 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
3388 twice.
3389
3390 2009-12-15 Chong Yidong <cyd@stupidchicken.com>
3391
3392 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
3393 calling file-remote-p. Reported by Jim Meyering.
3394
3395 2009-12-15 Michael Albinus <michael.albinus@gmx.de>
3396
3397 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
3398 avoid compiler warnings. (Bug #5217)
3399
3400 2009-12-14 Kenichi Handa <handa@m17n.org>
3401
3402 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
3403 in 8-bit encoding.
3404
3405 2009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
3406
3407 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
3408 tooltip windows.
3409
3410 2009-12-13 Jan Djärv <jan.h.d@swipnet.se>
3411
3412 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
3413 Xatom_net_window_type.
3414
3415 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
3416 Xatom_net_window_type.
3417
3418 * xterm.c (my_log_handler): New function.
3419 (x_term_init): Set my_log_handler as log handler during gtk_init
3420 so we can filter out buggy messages. (Bug #5120).
3421
3422 * xterm.c (xg_scroll_callback): Parameter list changed,
3423 use parameter GtkScrollType to determine scroll/line/page.
3424 Only allow dragging if a button < 4 is grabbed (bug #5177).
3425 (xg_end_scroll_callback): New function.
3426 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
3427 xg_create_scroll_bar.
3428
3429 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
3430 (scroll_end_callback): Remove.
3431 (xg_create_scroll_bar): Add parameter end_callback, bind it to
3432 button-release-event. Replace value-changed event with change-value,
3433 bug #5177,
3434 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
3435 bug #5177.
3436
3437 * gtkutil.h (XG_LAST_SB_DATA): Remove.
3438 (xg_create_scroll_bar): Add GCallback end_callback.
3439
3440 * xftfont.c (QClcdfilter): New variable.
3441 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
3442 (syms_of_xftfont): Initialize QClcdfilter.
3443
3444 2009-12-12 Jan Djärv <jan.h.d@swipnet.se>
3445
3446 * xsettings.c (struct xsettings): Add member seen.
3447 (parse_xft_settings): Update member seen with what we have read.
3448 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3449 (apply_xft_settings): Only update Xft settings with what member seen
3450 indicates as new.
3451
3452 2009-12-12 Eli Zaretskii <eliz@gnu.org>
3453
3454 * dispextern.h (struct text_pos): Use EMACS_INT;
3455 (struct glyph): Use EMACS_INT for charpos.
3456 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
3457 region_beg_charpos, region_end_charpos,
3458 redisplay_end_trigger_charpos, and also for
3459 iterator_stack_entry.end_charpos and
3460 iterator_stack_entry.stop_charpos.
3461
3462 2009-12-12 Jan Djärv <jan.h.d@swipnet.se>
3463
3464 * gtkutil.c (scroll_end_callback): New function (bug #5177).
3465 (xg_create_scroll_bar): Call scroll_end_callback on button release
3466 event (bug #5177).
3467 (xg_event_is_for_scrollbar): != replaced with ==.
3468
3469 2009-12-12 Kenichi Handa <handa@m17n.org>
3470
3471 * ftfont.c (struct ftfont_info): New member matrix.
3472 (ftfont_open): Setup xftfont_info->matrix.
3473 (MFLTFontFT): New member matrix.
3474 (FLOOR, CEIL, ROUND): New macros.
3475 (ftfont_get_metrics): Handle matrix transformation.
3476 (ftfont_shape_by_flt): New arg matrix. Callers changed.
3477
3478 * xftfont.c (struct xftfont_info): New member matrix.
3479 (xftfont_open): Setup xftfont_info->matrix.
3480
3481 2009-12-10 Kenichi Handa <handa@m17n.org>
3482
3483 * xdisp.c (append_space_for_newline): Consider face-remapping.
3484
3485 2009-12-09 Andreas Schwab <schwab@linux-m68k.org>
3486
3487 * xsettings.c: Include "keyboard.h".
3488
3489 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
3490
3491 Fix implicit function declarations.
3492 * cmds.c: Include "frame.h".
3493 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
3494 * frame.h: Move declaration of delete_frame outside of
3495 HAVE_WINDOW_SYSTEM.
3496
3497 2009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
3498
3499 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
3500
3501 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
3502 GTK builds.
3503
3504 2009-12-07 Andreas Schwab <schwab@linux-m68k.org>
3505
3506 * unexelf.c (unexec): Don't search for .data twice.
3507
3508 2009-12-05 Chong Yidong <cyd@stupidchicken.com>
3509
3510 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
3511 if push failed.
3512 (handle_line_prefix): Set avoid_cursor_p here. Check return value
3513 of push_display_prop (Bug#5000).
3514
3515 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
3516 value of font_list_entities (Bug#5085).
3517
3518 2009-12-04 Juanma Barranquero <lekktu@gmail.com>
3519
3520 Fix `string-to-number' to deal consistently with integers and floats.
3521 * lread.c (isfloat_string): New argument ignore_trailing to accept all
3522 trailing characters, not just whitespace.
3523 (read1): Pass new arg 0 to keep old behavior.
3524 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
3525 trailing chars, as it is already done for integers. Doc fixes.
3526 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
3527
3528 2009-12-04 Eli Zaretskii <eliz@gnu.org>
3529
3530 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
3531 Delete unused enumeration value.
3532
3533 2009-12-03 Eli Zaretskii <eliz@gnu.org>
3534
3535 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
3536
3537 2009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
3538
3539 * process.c (Fmake_network_process): Fix up the tests for
3540 "connectionless socket", so they DTRT for seqpacket sockets as well.
3541
3542 2009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
3543
3544 * process.c (Qseqpacket): New symbol.
3545 (HAVE_SEQPACKET): New macro.
3546 (Fmake_network_process): Accept new :type `seqpacket'.
3547 (init_process): Add `seqpacket' feature when applicable.
3548 (syms_of_process): Initialize Qseqpacket.
3549
3550 2009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3551
3552 * font.c (font_load_for_lface, font_open_by_name): Don't store name
3553 if entity is Qnil.
3554
3555 2009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
3556
3557 * print.c (print_preprocess): Preprocess the key_and_value table of
3558 hashtables, even tho they're "hidden" (bug#5082).
3559
3560 2009-11-29 Jan Djärv <jan.h.d@swipnet.se>
3561
3562 * frame.c (frame_make_pointer_invisible)
3563 (frame_make_pointer_visible): Declare f before statements.
3564
3565 2009-11-28 Eli Zaretskii <eliz@gnu.org>
3566
3567 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
3568 omitted dependencies on lisp.h.
3569
3570 2009-11-27 Jan Djärv <jan.h.d@swipnet.se>
3571
3572 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
3573 is NULL.
3574
3575 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
3576
3577 * frame.c (frame_make_pointer_invisible)
3578 (frame_make_pointer_visible): Just return if there isn't any selected
3579 frame.
3580
3581 * search.c (simple_search): Remove warning by making *p const.
3582
3583 2009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
3584
3585 * xdisp.c (power_letter): Remove duplicate const.
3586
3587 2009-11-25 Jan Djärv <jan.h.d@swipnet.se>
3588
3589 * term.c (delete_tty): Remove check for last terminal (bug#4970).
3590
3591 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
3592 defaults (bug #5025).
3593
3594 2009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
3595
3596 * insdel.c (adjust_markers_for_delete): Move it in the
3597 right direction! (bug#4803)
3598
3599 2009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3600
3601 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
3602
3603 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
3604
3605 2009-11-24 Glenn Morris <rgm@gnu.org>
3606
3607 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
3608
3609 2009-11-23 Jan Djärv <jan.h.d@swipnet.se>
3610
3611 * Makefile.in: Must create deps for ecrt0.o in its rule.
3612
3613 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
3614 because that is what Gtk+ font dialog understands.
3615
3616 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
3617 of Fcopy_sequence.
3618 (font_open_by_name): Put name given into QCname for font-object returned.
3619
3620 * frame.c (x_set_font): Save original font name as frame parameter
3621 font-parameter.
3622
3623 * xsettings.c (set_default_xft_settings): New function.
3624 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
3625 is found.
3626
3627 2009-11-22 Andreas Schwab <schwab@linux-m68k.org>
3628
3629 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
3630 searching backwards through multibyte buffer.
3631
3632 2009-11-21 Jan Djärv <jan.h.d@swipnet.se>
3633
3634 * xterm.c: #include xgselect.h.
3635 (x_initialize): Call xgselect_initialize.
3636
3637 * xsettings.c (something_changedCB): C++ comments => C comments.
3638 (init_gconf): Do not deal with any GLib file descriptors, xg_select
3639 does that now.
3640
3641 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
3642 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
3643 (scroll_bar_button_cb): Remove.
3644 (create_menus): C++ comments => C comments. Don't bind grab-notify
3645 event.
3646 (xg_create_scroll_bar): Don't bind button-press-event and
3647 button-release-event.
3648
3649 * process.c: Include xgselect.h if defined (USE_GTK) ||
3650 defined (HAVE_GCONF).
3651 (wait_reading_process_output): Call xg_select for the same condition.
3652
3653 * xgselect.c (xg_select): New function to better integrate with
3654 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
3655
3656 * xgselect.h: New file, declare xg_select, xgselect_initialize.
3657
3658 * Makefile.in (XOBJ): Add xgselect.o.
3659
3660 2009-11-21 Andreas Schwab <schwab@linux-m68k.org>
3661
3662 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
3663 Remove ignored second argument. All callers changed.
3664 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
3665 (RE_STRING_CHAR_AND_LENGTH): Likewise.
3666 * xdisp.c (string_char_and_length): Likewise.
3667
3668 2009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
3669
3670 * xterm.c (x_new_font):
3671 * print.c (print_object):
3672 * cmds.c (Fself_insert_command): Move declarations before statements.
3673
3674 2009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
3675
3676 * s/cygwin.h: Remove unneeded linker flags.
3677
3678 2009-11-20 Jan Djärv <jan.h.d@swipnet.se>
3679
3680 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
3681
3682 * xsettings.h: Declare xsettings_get_system_font.
3683
3684 * xsettings.c (xsettings_get_system_font): New function.
3685 (init_gconf): No use initiating gconf unless we have Xft also.
3686 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
3687 HAVE_GCONF.
3688
3689 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
3690 add a blank entry so it doesn't collapse into nothing.
3691
3692 2009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
3693
3694 * lread.c (Funintern): Comment out last change.
3695
3696 2009-11-19 Richard Stallman <rms@gnu.org>
3697
3698 * lread.c (Funintern): Error if symbol is t or nil.
3699
3700 2009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
3701
3702 * insdel.c (make_gap_larger): Don't make as many assumptions about the
3703 representation of Lisp integers.
3704 Reported by MJ Chan <mjchan.inbox@gmail.com>.
3705
3706 2009-11-17 Andreas Schwab <schwab@linux-m68k.org>
3707
3708 * lisp.h: Remove declaration of Ffont_get_system_font.
3709 * xfns.c: Move include of "xsettings.h".
3710 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
3711
3712 2009-11-17 Jan Djärv <jan.h.d@swipnet.se>
3713
3714 * xsettings.c (something_changedCB, Ffont_get_system_font):
3715 Check use_system_font.
3716 (syms_of_xsettings): DEFVAR font-use-system-font.
3717
3718 2009-11-17 Andreas Schwab <schwab@linux-m68k.org>
3719
3720 * xfns.c (x_default_font_parameter): Remove dead assignment.
3721
3722 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
3723
3724 2009-11-17 Jan Djärv <jan.h.d@swipnet.se>
3725
3726 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
3727 not have FC_LCD_*. #define them if not there.
3728
3729 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
3730
3731 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
3732
3733 * xterm.c (handle_one_xevent): Call xft_settings_event for
3734 ClientMessage, PropertyNotify and DestroyNotify.
3735 (x_term_init): If we have XFT, get DPI from Xft.dpi.
3736 Call xsettings_initialize.
3737
3738 * xftfont.c (xftfont_fix_match): New function.
3739 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
3740 Call xftfont_fix_match after XftFontMatch.
3741
3742 * xfont.c (xfont_driver): Initialize all members.
3743
3744 * xfns.c (x_default_font_parameter):
3745 Try font from Ffont_get_system_font.
3746 Do not get font from x_default_parameter if we got one from
3747 Ffont_get_system_font.
3748 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
3749
3750 * w32font.c (w32font_driver): Initialize all members.
3751
3752 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
3753
3754 * lisp.h: Declare syms_of_xsettings.
3755
3756 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
3757 Handle CONFIG_CHANGED_EVENT.
3758
3759 * ftfont.c (ftfont_filter_properties): New function.
3760
3761 * frame.c (x_set_font): Remove unused variable lval.
3762
3763 * font.h (struct font_driver): Add filter_properties.
3764
3765 * font.c (font_put_extra): Don't return if val is nil, it means
3766 boolean option is off.
3767 (font_parse_fcname): Collect all extra properties in extra_props
3768 and call filter_properties for all drivers with extra_props and
3769 font as parameter.
3770 (font_open_entity): Do not use cache, it does not pick up new
3771 fontconfig settings like hinting.
3772 (font_load_for_lface): If spec had a name in it, store it in entity.
3773
3774 * emacs.c (main): Call syms_of_xsettings.
3775
3776 * config.in: HAVE_GCONF is new.
3777
3778 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
3779 xsettings.o is new.
3780
3781 2009-11-17 Kenichi Handa <handa@m17n.org>
3782
3783 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
3784 back to the default font in case that no suitable font is found.
3785
3786 2009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3787
3788 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
3789 Suggested by Chad Brown <yandros@mit.edu>.
3790 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
3791
3792 2009-11-16 Jan Djärv <jan.h.d@swipnet.se>
3793
3794 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
3795
3796 2009-11-14 Andreas Schwab <schwab@linux-m68k.org>
3797
3798 * Makefile.in: Ignore errors from mkdir when creating deps directory.
3799
3800 2009-11-14 Jan Djärv <jan.h.d@swipnet.se>
3801
3802 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
3803 has a parent.
3804
3805 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
3806 dependency files in deps/. Include those files into Makefile.
3807
3808 * config.in: Generated (AUTO_DEPEND).
3809
3810 2009-11-13 Michael Albinus <michael.albinus@gmx.de>
3811
3812 * dbusbind.c (Vdbus_registered_objects_table): Rename from
3813 Vdbus_registered_functions_table, because it contains also
3814 properties. Fix docstring.
3815 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
3816
3817 2009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
3818
3819 * alloc.c (mark_object): Don't reprocess marked strings.
3820 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
3821 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
3822
3823 2009-11-13 Kenichi Handa <handa@m17n.org>
3824
3825 * category.c (word_boundary_p): Adjust for the change of the
3826 semantics of Vword_combining_categories.
3827 (Vword_combining_categories): Describe the slight change of the
3828 semantics.
3829
3830 2009-11-13 Eli Zaretskii <eliz@gnu.org>
3831
3832 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
3833
3834 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
3835
3836 2009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
3837
3838 * xdisp.c (syms_of_xdisp): Fix typo in last change.
3839
3840 2009-11-12 Juanma Barranquero <lekktu@gmail.com>
3841
3842 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
3843
3844 2009-11-11 David Reitter <david.reitter@gmail.com>
3845
3846 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
3847 variables to fix 2009-11-09 change.
3848
3849 2009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
3850
3851 * process.c (ifflag_def): Make flag_sym constant.
3852 (Fnetwork_interface_info): Use a constant pointer.
3853 (ifflag_table):
3854 * xfns.c (cursor_bits):
3855 * xdisp.c (power_letter):
3856 * termcap.c (speeds, esctab):
3857 * sysdep.c (baud_convert):
3858 * keyboard.c (lispy_accent_codes, modifier_names):
3859 * image.c (xbm_format, xpm_format, pbm_format, png_format)
3860 (jpeg_format, tiff_format, gif_format, svg_format)
3861 (interlace_start, interlace_increment, gs_format):
3862 * gtkutil.c (separator_names):
3863 * fringe.c (swap_nibble):
3864 * fns.c (base64_value_to_char, base64_char_to_value):
3865 * fileio.c (make_temp_name_tbl):
3866 * coding.c (suffixes): Make constant.
3867
3868 * frame.c (make_initial_frame):
3869 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
3870 build_string.
3871 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
3872
3873 * s/freebsd.h:
3874 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
3875
3876 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
3877 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
3878
3879 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
3880 * xterm.c (syms_of_xterm):
3881 * xfaces.c (syms_of_xfaces):
3882 * xdisp.c (syms_of_xdisp):
3883 * lread.c (syms_of_lread):
3884 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
3885 build_string.
3886
3887 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
3888
3889 2009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
3890
3891 * fns.c (Fplist_get): Merge the active and the commented out code.
3892
3893 2009-11-10 Jan Djärv <jan.h.d@swipnet.se>
3894
3895 * keyboard.h: Declare timer_check.
3896
3897 * keyboard.c (timer_check_2): New function that does what the old
3898 timer_check did.
3899 (timer_check): Call timer_check_2 until -1 or a non-zero time is
3900 returned, i.e. don't return -1 with timers pending.
3901
3902 * process.c: Remove extern declaration of timer_check.
3903
3904 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
3905 even if timer_check returned -1.
3906
3907 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
3908 xg_dialog_data.
3909 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
3910 the event loop.
3911 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
3912 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
3913 Destroy the dialog after xg_dialog_run.
3914
3915 2009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
3916
3917 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
3918
3919 2009-11-10 Jan Djärv <jan.h.d@swipnet.se>
3920
3921 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
3922
3923 2009-11-09 Juanma Barranquero <lekktu@gmail.com>
3924
3925 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
3926
3927 2009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
3928
3929 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
3930 w32menu.c, and nsmenu.m.
3931 Simplify the obsolete case where position is nil.
3932 (cleanup_popup_menu): New function, moved from nsmenu.m.
3933 (struct skp): Remove slot `notreal'.
3934 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
3935 adjust callers.
3936 (single_menu_item): Adjust call to parse_menu_item.
3937 (syms_of_menu): Defsubr x-popup-menu.
3938 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
3939 (keymap_panes): Don't export any more.
3940 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
3941 (xmenu_show): Declare.
3942 * keyboard.c (parse_menu_item): Remove arg `notreal'.
3943 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
3944 * keyboard.h (parse_menu_item): Update declaration.
3945 * xmenu.c (Fx_popup_menu): Remove.
3946 (syms_of_xmenu): Don't defsubr x-popup-menu.
3947 * w32menu.c (Fx_popup_menu): Remove.
3948 (syms_of_w32menu): Don't defsubr x-popup-menu.
3949 * nsmenu.m (cleanup_popup_menu): Remove.
3950 (ns_menu_show): Rename from ns_popup_menu and remove all the code
3951 moved to menu.c's Fx_popup_menu.
3952 (Fx_popup_menu): Remove.
3953 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
3954 menu_items (it's done in menu.c already).
3955
3956 2009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
3957
3958 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
3959 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
3960
3961 2009-11-08 Chong Yidong <cyd@stupidchicken.com>
3962
3963 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
3964 xmenu_show. Hide any tooltip before opening a menu.
3965 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
3966 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
3967
3968 2009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
3969
3970 Let integers use up 2 tags to give them one extra bit and thus double
3971 their range.
3972 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
3973 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
3974 New macros.
3975 (enum Lisp_Type): Use them. Give explicit values.
3976 (Lisp_Type_Limit): Remove.
3977 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
3978 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
3979 Pay attention to USE_2_TAGS_FOR_INTS.
3980 (INTEGERP): Use LISP_INT_TAG_P.
3981 * fns.c (internal_equal): Simplify the default case.
3982 (sxhash): Use case_Lisp_Int.
3983 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
3984 any more.
3985 (Ftype_of): Use case_Lisp_Int.
3986 (store_symval_forwarding): Take into account the fact that Ints can
3987 now have more than one tag.
3988 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
3989 buffer_slot_type_mismatch):
3990 * xfaces.c (face_attr_equal_p):
3991 * print.c (print_object):
3992 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
3993 Use case_Lisp_Int.
3994
3995 2009-11-06 Eli Zaretskii <eliz@gnu.org>
3996
3997 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
3998
3999 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
4000 warning.
4001
4002 2009-11-06 Jan Djärv <jan.h.d@swipnet.se>
4003
4004 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
4005
4006 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
4007
4008 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
4009 ButtonPressRelease and MotionNotify (bug#4870).
4010
4011 2009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
4012
4013 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
4014
4015 * xterm.c (syms_of_xterm):
4016 * xselect.c (syms_of_xselect):
4017 * xmenu.c (syms_of_xmenu):
4018 * xfns.c (syms_of_xfns):
4019 * xfaces.c (syms_of_xfaces):
4020 * xdisp.c (syms_of_xdisp):
4021 * window.c (syms_of_window):
4022 * w32fns.c (syms_of_w32fns):
4023 * undo.c (syms_of_undo):
4024 * textprop.c (syms_of_textprop):
4025 * terminal.c (syms_of_terminal):
4026 * syntax.c (syms_of_syntax):
4027 * sound.c (syms_of_sound):
4028 * search.c (syms_of_search):
4029 * print.c (syms_of_print):
4030 * minibuf.c (syms_of_minibuf):
4031 * macros.c (syms_of_macros):
4032 * keymap.c (syms_of_keymap, initial_define_key)
4033 (initial_define_lispy_key):
4034 * keyboard.c (syms_of_keyboard):
4035 * insdel.c (syms_of_insdel):
4036 * image.c (syms_of_image):
4037 * fringe.c (syms_of_fringe):
4038 * frame.c (syms_of_frame):
4039 * fontset.c (syms_of_fontset):
4040 * fns.c (syms_of_fns):
4041 * fns.c (syms_of_fns):
4042 * fileio.c (syms_of_fileio):
4043 * fileio.c (syms_of_fileio):
4044 * eval.c (syms_of_eval):
4045 * doc.c (syms_of_doc):
4046 * dispnew.c (syms_of_display):
4047 * dired.c (syms_of_dired):
4048 * dbusbind.c (syms_of_dbusbind):
4049 * data.c (syms_of_data):
4050 * composite.c (syms_of_composite):
4051 * coding.c (syms_of_coding):
4052 * cmds.c (syms_of_cmds):
4053 * charset.c (define_charset_internal, syms_of_character):
4054 * ccl.c (syms_of_ccl):
4055 * category.c (syms_of_category, init_category_once):
4056 * casetab.c (syms_of_casetab):
4057 * casefiddle.c (syms_of_casefiddle):
4058 * callint.c (syms_of_callint):
4059 * bytecode.c (syms_of_bytecode):
4060 * buffer.c (keys_of_buffer, syms_of_buffer):
4061 * alloc.c (syms_of_alloc):
4062 * process.c (syms_of_process, init_process):
4063 * lread.c (syms_of_lread, init_obarray):
4064 * font.c (build_style_table):
4065 * emacs.c (syms_of_emacs, main): Replace calls to intern with
4066 intern_c_string, calls to make_pure_string with
4067 make_pure_c_string. Use pure_cons instead of Fcons.
4068
4069 * process.c (socket_options): Make it const.
4070 (set_socket_option, init_process): Use a const pointer.
4071
4072 * lread.c (intern_c_string): New function.
4073 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
4074 (defvar_int): Uset it. Make the name const char*.
4075
4076 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
4077 (defvar_int): Update prototypes.
4078 (DEFUN, EXFUN): Support for prototypes is now required.
4079 (intern_c_string): New prototype.
4080 (struct Lisp_Subr): Make symbol_name constant.
4081
4082 * font.c (struct table_entry): Remove unused member. Make NAMES
4083 constant.
4084 (weight_table, slant_table, width_table): Make constant.
4085
4086 * emacs.c (struct standard_args): Make name and longname constant.
4087
4088 * character.h (DEFSYM): Use intern_c_string.
4089
4090 2009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
4091
4092 * alloc.c (make_pure_c_string): New function.
4093
4094 * eval.c (Fautoload): Purecopy all arguments.
4095
4096 2009-11-05 Kenichi Handa <handa@m17n.org>
4097
4098 * fileio.c (Finsert_file_contents): Be sure set coding-system of
4099 the buffer in case of replace.
4100
4101 2009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
4102
4103 * puresize.h (BASE_PURESIZE): Increase to 1620000.
4104
4105 2009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
4106
4107 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
4108 when applicable (bug#4851).
4109
4110 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
4111 (P_): Support for prototypes is now required.
4112
4113 2009-10-31 Chong Yidong <cyd@stupidchicken.com>
4114
4115 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
4116 (Bug#4827).
4117
4118 2009-10-30 Eli Zaretskii <eliz@gnu.org>
4119
4120 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
4121
4122 2009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
4123
4124 * puresize.h (BASE_PURESIZE): Increase to 1470000.
4125
4126 * lread.c (Fload): Purecopy the file name when building
4127 Vpreloaded_file_list.
4128
4129 2009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
4130
4131 * w32fns.c (syms_of_w32fns): Change default value of
4132 w32-scroll-lock-modifier to nil. (Bug#2827)
4133
4134 2009-10-26 Juanma Barranquero <lekktu@gmail.com>
4135
4136 * minibuf.c (Fall_completions): Fix typos in docstring.
4137
4138 2009-10-26 Andreas Schwab <schwab@redhat.com>
4139
4140 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
4141
4142 2009-10-26 Juanma Barranquero <lekktu@gmail.com>
4143
4144 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
4145 For delta < 0, skip check that only makes sense when the mini-window
4146 is going to be enlarged. (Bug#4534)
4147
4148 2009-10-25 Chong Yidong <cyd@stupidchicken.com>
4149
4150 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
4151 string in menu maps (Bug#4471).
4152
4153 2009-10-24 Chong Yidong <cyd@stupidchicken.com>
4154
4155 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
4156 FRAME_NS_VIEW on terminal frames (Bug#4765).
4157
4158 2009-10-24 Andreas Schwab <schwab@linux-m68k.org>
4159
4160 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
4161 DBUS_TYPE_UINTnn separately to get proper sign extension.
4162
4163 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
4164 can properly handle unsigned types.
4165 (make_uid, make_gid): Remove.
4166
4167 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
4168 types again.
4169
4170 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
4171 (system_process_attributes): Likewise.
4172
4173 2009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
4174
4175 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
4176
4177 * eval.c (Fautoload): Purecopy the filename. Simplify.
4178
4179 * category.c (Fdefine_category): Purecopy docstring.
4180
4181 2009-10-23 Andreas Schwab <schwab@linux-m68k.org>
4182
4183 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
4184
4185 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
4186
4187 2009-10-23 Chong Yidong <cyd@stupidchicken.com>
4188
4189 * window.c (Fwindow_edges, Fwindow_pixel_edges)
4190 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
4191 (Bug#4775).
4192
4193 2009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
4194
4195 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
4196 (init_fileio_once):
4197 * lisp.h (init_fileio_once): Remove.
4198 * emacs.c (main): Don't call init_fileio_once.
4199
4200 2009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
4201
4202 * puresize.h (BASE_PURESIZE): Increase to 1430000.
4203
4204 2009-10-21 Andreas Schwab <schwab@linux-m68k.org>
4205
4206 * doprnt.c (doprnt): Fix overflow check.
4207
4208 2009-10-21 Jan Djärv <jan.h.d@swipnet.se>
4209
4210 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
4211
4212 * xterm.h (x_wait_for_event): Declare it.
4213
4214 * xterm.c (pending_event_wait): New variable.
4215 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
4216 see pending_event_wait.eventtype.
4217 (handle_one_xevent): Don't change gravity when parent changes.
4218 (x_new_font): Call change_frame_size with new rows/columns before we
4219 try to resize the frame.
4220 (x_wait_for_event): New function.
4221 (x_set_window_size_1): Don't change gravity unless change_gravity
4222 is set.
4223 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
4224 don't change frame size, instead wait for the ConfigureNotify.
4225 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
4226 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
4227 (x_initialize): Initialize pending_event_wait.
4228
4229 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
4230 size.
4231
4232 * widget.c (EmacsFrameSetValues): Add comment.
4233 (EmacsFrameSetCharSize): Just call x_set_window_size.
4234
4235 * gtkutil.c (xg_frame_set_char_size): Flush events and call
4236 x_wait_for_event.
4237 (flush_and_sync): Remove again.
4238 (xg_get_font_name): Suggest monospace if no previous font is known.
4239
4240 2009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
4241
4242 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
4243 8th bit, since that only made sense in the ASCII world (bug#4751).
4244
4245 2009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4246
4247 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
4248 processing pending events when event is filtered for input method.
4249 (Bug#3681)
4250
4251 2009-10-20 Juanma Barranquero <lekktu@gmail.com>
4252
4253 * fns.c: Add #endif accidentally removed in previous change.
4254
4255 2009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
4256
4257 * fns.c: Remove code for unsupported system: MAC_OS.
4258 * image.c: Likewise. Include setjmp.h.
4259
4260 2009-10-19 Jan Djärv <jan.h.d@swipnet.se>
4261
4262 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
4263 pixel -1 (bug #4742).
4264
4265 2009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
4266
4267 * process.c (create_pty): Remove conditionals for no longer
4268 supported systems: UNIPLUS and RTU.
4269
4270 * xterm.c:
4271 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
4272
4273 * alloc.c: Do not define struct catchtag.
4274 * eval.c: Move struct catchtag definition ...
4275 * lisp.h: ... here.
4276
4277 * image.c: Move png.h #include earlier to avoid warnings.
4278
4279 * xterm.c:
4280 * xsmfns.c:
4281 * xselect.c:
4282 * xrdb.c:
4283 * xmenu.c:
4284 * xftfont.c:
4285 * xfont.c:
4286 * xfns.c:
4287 * xfaces.c:
4288 * xdisp.c:
4289 * window.c:
4290 * widget.c:
4291 * w32xfns.c:
4292 * w32uniscribe.c:
4293 * w32term.c:
4294 * w32select.c:
4295 * w32reg.c:
4296 * w32proc.c:
4297 * w32menu.c:
4298 * w32inevt.c:
4299 * w32heap.c:
4300 * w32font.c:
4301 * w32fns.c:
4302 * w32console.c:
4303 * w32.c:
4304 * w16select.c:
4305 * vm-limit.c:
4306 * unexsol.c:
4307 * unexec.c:
4308 * unexcw.c:
4309 * unexaix.c:
4310 * undo.c:
4311 * tparam.c:
4312 * textprop.c:
4313 * terminfo.c:
4314 * terminal.c:
4315 * termcap.c:
4316 * term.c:
4317 * syntax.c:
4318 * sound.c:
4319 * sheap.c:
4320 * search.c:
4321 * scroll.c:
4322 * region-cache.c:
4323 * regex.c:
4324 * ralloc.c:
4325 * process.c:
4326 * print.c:
4327 * nsterm.m:
4328 * nsselect.m:
4329 * nsmenu.m:
4330 * nsimage.m:
4331 * nsfont.m:
4332 * nsfns.m:
4333 * msdos.c:
4334 * minibuf.c:
4335 * menu.c:
4336 * marker.c:
4337 * macros.c:
4338 * keymap.c:
4339 * keyboard.c:
4340 * intervals.c:
4341 * insdel.c:
4342 * indent.c:
4343 * gtkutil.c:
4344 * ftxfont.c:
4345 * ftfont.c:
4346 * fringe.c:
4347 * frame.c:
4348 * fontset.c:
4349 * font.c:
4350 * fns.c:
4351 * floatfns.c:
4352 * filelock.c:
4353 * fileio.c:
4354 * emacs.c:
4355 * editfns.c:
4356 * dosfns.c:
4357 * doprnt.c:
4358 * doc.c:
4359 * dispnew.c:
4360 * dired.c:
4361 * dbusbind.c:
4362 * data.c:
4363 * composite.c:
4364 * coding.c:
4365 * cmds.c:
4366 * cm.c:
4367 * chartab.c:
4368 * charset.c:
4369 * character.c:
4370 * ccl.c:
4371 * category.c:
4372 * casetab.c:
4373 * casefiddle.c:
4374 * callproc.c:
4375 * callint.c:
4376 * bytecode.c:
4377 * buffer.c:
4378 * atimer.c: Include setjmp.h. (Bug#4643)
4379
4380 2009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
4381
4382 Remove leftover table unibyte_to_multibyte_table.
4383 * character.c (unibyte_to_multibyte_table): Remove.
4384 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
4385 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
4386 * character.h (UNIBYTE_TO_CHAR): New macro.
4387 (MAKE_CHAR_MULTIBYTE): Use it.
4388 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
4389 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
4390 (message_dolog, set_message_1):
4391 * search.c (Freplace_match):
4392 * editfns.c (Fcompare_buffer_substrings):
4393 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
4394 (concat):
4395 * insdel.c (copy_text, count_size_as_multibyte):
4396 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
4397 * term.c (produce_glyphs):
4398 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
4399 * regex.c (RE_CHAR_TO_MULTIBYTE):
4400 * cmds.c (internal_self_insert):
4401 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
4402
4403 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
4404
4405 2009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
4406
4407 * puresize.h (BASE_PURESIZE): Increase to 1310000.
4408
4409 2009-10-16 Juanma Barranquero <lekktu@gmail.com>
4410
4411 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
4412
4413 2009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
4414
4415 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
4416 still needed under Tiger.
4417
4418 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
4419
4420 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
4421 __Apple__.
4422
4423 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
4424
4425 2009-10-15 Kenichi Handa <handa@m17n.org>
4426
4427 * print.c (print_object): Escape a symbol like "2E10" too.
4428
4429 2009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
4430
4431 Cleanups and changes for 64-bit compile under Snow Leopard.
4432 Based on suggestions by Erik Charlebois.
4433
4434 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
4435
4436 * nsfont.m (ns_char_width): Replace deprecated call.
4437 (ns_findfonts, nsfont_list_family): Use long format in printf, and
4438 cast argument.
4439 (nsfont_open): Use ns_char_width() everywhere.
4440 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
4441
4442 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
4443
4444 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
4445 where appropriate.
4446
4447 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
4448 where appropriate.
4449 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
4450 Use stringWithUTF8String.
4451 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
4452
4453 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
4454 Add formal protocol mention to inheritance.
4455 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
4456
4457 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
4458 Fix printf format.
4459 (ns_query_color): Use CGFloat where appropriate.
4460 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
4461 (EmacsScroller-mouseDown:): Use long format in printf, and cast
4462 argument.
4463
4464 * config.in (NS_HAVE_NSINTEGER): Drop.
4465
4466 * dbusbind.c (dbus-method-return-internal)
4467 (dbus-method-error-internal): Use long format in printf, and cast
4468 argument.
4469
4470 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
4471 in printf, and cast argument.
4472
4473 * process.c (list_processes_1): Use long format in printf, and
4474 cast argument.
4475
4476 2009-10-11 Glenn Morris <rgm@gnu.org>
4477
4478 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
4479
4480 2009-10-08 Jan Djärv <jan.h.d@swipnet.se>
4481
4482 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
4483 menu bar with a small width so it doesn't enlarge the frame.
4484
4485 2009-10-08 Juanma Barranquero <lekktu@gmail.com>
4486
4487 * fontset.c (Fset_fontset_font): Fix typos in error messages.
4488
4489 2009-10-06 Glenn Morris <rgm@gnu.org>
4490
4491 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
4492 SOME_MACHINE_LISP (this enters indirectly via DOC).
4493
4494 2009-10-05 Eli Zaretskii <eliz@gnu.org>
4495
4496 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
4497
4498 2009-10-04 Eli Zaretskii <eliz@gnu.org>
4499
4500 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
4501 Doc fix.
4502
4503 2009-10-03 Martin Rudalics <rudalics@gmx.at>
4504
4505 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
4506
4507 2009-10-02 Michael Albinus <michael.albinus@gmx.de>
4508
4509 * lisp.h (Qdelete_directory_internal): Remove, because it is not
4510 used anymore outside fileio.c.
4511
4512 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
4513
4514 2009-10-01 Juanma Barranquero <lekktu@gmail.com>
4515
4516 * lisp.h (Qdelete_directory_internal):
4517 Declare, instead of Qdelete_directory.
4518
4519 * w32fns.c (Fsystem_move_file_to_trash): Use it.
4520
4521 2009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
4522
4523 * eval.c (Fcalled_interactively_p): Add `kind' argument.
4524
4525 2009-10-01 Michael Albinus <michael.albinus@gmx.de>
4526
4527 * fileio.c (Fdelete_directory_internal): Rename from
4528 Fdelete_directory. It is not a command anymore. It has no file
4529 name handler.
4530
4531 2009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
4532
4533 * xdisp.c (get_next_display_element): Use an enum in last change.
4534
4535 2009-09-28 Kenichi Handa <handa@m17n.org>
4536
4537 * xdisp.c (get_next_display_element): Pay attention to
4538 unibyte_display_via_language_environment in handling
4539 Vnobreak_char_display.
4540
4541 2009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4542
4543 * nsterm.h (ns_app_name): New extern variable.
4544
4545 * nsterm.m (ns_app_name): New variable.
4546 (ns_term_init): Set and use it.
4547 (ns_term_shutdown): Use it.
4548
4549 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
4550 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
4551
4552 * nsfns.m (ns_set_name_iconic, ns_set_name)
4553 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
4554 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
4555
4556 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
4557 Remove double-casting in client_data comparison.
4558
4559 2009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4560
4561 * keyboard.c (make_lispy_event): Remember last wheel direction.
4562 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
4563
4564 2009-09-26 Glenn Morris <rgm@gnu.org>
4565
4566 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
4567 internal.elc. Add term/pc-win.elc.
4568 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
4569 term/x-win.elc.
4570 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
4571 term/w32-win.elc.
4572 (NS_SUPPORT): New.
4573 (lisp): Add NS_SUPPORT.
4574 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
4575
4576 2009-09-25 David Reitter <david.reitter@gmail.com>
4577
4578 * nsmenu.m (EmacsMenu-clear): Recognize application menu
4579 on Mac OS X 10.6+ (bug#4513).
4580
4581 2009-09-24 Juanma Barranquero <lekktu@gmail.com>
4582
4583 * frame.c (xrdb_get_resource): Return nil for empty string resources;
4584 some parts of Emacs code (like font selection) don't grok them.
4585 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
4586
4587 2009-09-24 Andreas Schwab <schwab@redhat.com>
4588
4589 * coding.c (decode_coding_iso_2022): Fix operator precedence.
4590
4591 2009-09-24 Juanma Barranquero <lekktu@gmail.com>
4592
4593 * dired.c (Fdirectory_files): Fix typo in docstring.
4594
4595 2009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4596
4597 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
4598 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
4599 (EmacsScroller-setPosition:portion:whole:): Remove -display call
4600 under GNUstep.
4601 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
4602
4603 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
4604 glyph advancement.
4605
4606 2009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4607
4608 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
4609 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
4610
4611 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
4612 deleted (bug #4492).
4613
4614 * nsfont.m (Vns_reg_to_script): New lisp variable.
4615 (syms_of_nsfont): Declare it.
4616 (ns_registry_to_script): New function.
4617 (ns_get_req_script): Call it.
4618 (ns_findfonts): Don't give up on non-unicode registry.
4619
4620 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
4621
4622 2009-09-20 Tom Tromey <tromey@redhat.com>
4623
4624 * eval.c (find_handler_clause): Make stack-trace-on-error work in
4625 batch mode (bug#4228).
4626
4627 2009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
4628
4629 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
4630 carefully. (Bug #4339)
4631
4632 2009-09-18 Chong Yidong <cyd@stupidchicken.com>
4633
4634 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
4635
4636 2009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
4637
4638 * emacs.c (inhibit_x_resources): Update doc string for NS.
4639 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
4640 legacy code for -NXHost. Fix error printf in daemon case.
4641
4642 * nsterm.h (ns_no_defaults): Remove.
4643
4644 * nsterm.m (ns_no_defaults): Remove.
4645 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
4646 (ns_use_qd_smoothing): Remove legacy variable.
4647 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
4648 don't update the NSWindow itself.
4649 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
4650 state detection and store user rect ourselves. (Bug #3581)
4651
4652 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
4653 ns_use_qd_smoothing.
4654
4655 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
4656 platform versions. Drop support for emacs-20-style face specs.
4657 (x-close-connection): Drop PSFlush() under OS X.
4658 (x-focus-frame): Activate the app first. (Bug #4180)
4659
4660 2009-09-17 Juanma Barranquero <lekktu@gmail.com>
4661
4662 * emacs.c (inhibit_x_resources): New variable.
4663 (main) [HAVE_NS]: Don't process --quick command line option.
4664 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
4665
4666 * lisp.h (inhibit_x_resources): Declare it extern.
4667
4668 * w32reg.c (x_get_string_resource):
4669 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
4670
4671 2009-09-17 Eli Zaretskii <eliz@gnu.org>
4672
4673 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
4674 Add lisp/term/internal.elc.
4675
4676 2009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
4677
4678 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
4679 (bug#4461).
4680
4681 2009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
4682
4683 * puresize.h (BASE_PURESIZE): Increase to 1290000.
4684
4685 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
4686 (OBJECTS_MACHINE): Remove, unused.
4687
4688 2009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
4689
4690 * frame.c (x_get_resource_string): Remove unused.
4691
4692 2009-09-15 Jan Djärv <jan.h.d@swipnet.se>
4693
4694 * xterm.c (x_new_font): Call change_frame_size before calling
4695 x_set_window_size, in case frame size won't change.
4696
4697 * frame.c (x_set_font): Remove dead code.
4698
4699 2009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
4700
4701 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
4702
4703 2009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4704
4705 * lread.c (Fload): Don't output a message after loading an obsolete
4706 package any more (done in Lisp now).
4707
4708 2009-09-12 Chong Yidong <cyd@stupidchicken.com>
4709
4710 * fns.c (syms_of_fns): Doc fix (Bug#4227).
4711
4712 2009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4713
4714 * keymap.c (Fwhere_is_internal): Use nconc2.
4715
4716 2009-09-11 Alan Mackenzie <acm@muc.de>
4717
4718 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
4719 batch mode.
4720
4721 2009-09-11 Andreas Schwab <schwab@linux-m68k.org>
4722
4723 * xdisp.c (display_mode_element): Detect cycles.
4724
4725 2009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4726
4727 * keymap.c (where_is_internal): Don't erroneously return nil right after
4728 filling the cache.
4729 (where_is_internal_1): Fix up typo.
4730
4731 2009-09-11 Glenn Morris <rgm@gnu.org>
4732
4733 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
4734 share a common doc-string.
4735
4736 2009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4737
4738 * keymap.c (get_keymap): Return the actual keymap symbol rather than
4739 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
4740
4741 * keymap.c (QCadvertised_binding): New constant.
4742 (syms_of_keymap): Initialize it.
4743 (Fwhere_is_internal): Try and use bindings from :advertised-binding
4744 if applicable.
4745
4746 2009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
4747
4748 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
4749 (parse_menu_item): Streamline since bindings are recomputed all the
4750 time anyway. Don't bother checking Vdefine_key_rebound_commands any
4751 more and don't support lmenu's menu-alias any more either.
4752
4753 * keymap.c (where_is_internal_data): Make noindirect a boolean.
4754 (where_is_internal): Strip it down to only traverse the keymaps.
4755 Move the cache handling from Fwhere_is_internal to here.
4756 (Fwhere_is_internal): Move the handling of remapping and the choice of
4757 the best binding from where_is_internal to here.
4758 Unify the cached/noncached paths, so remapping is also handled
4759 correctly when the cache is used, and so the cache can be used to
4760 speed up remap-handling when applicable.
4761 Give preference to non-remapped bindings.
4762 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
4763 non-remapped bindings.
4764 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
4765 command remapping.
4766
4767 * xdisp.c (display_mode_element): Move list length limit from 50 to
4768 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
4769
4770 2009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
4771
4772 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
4773
4774 2009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
4775
4776 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
4777 (Bug#4334)
4778
4779 * keymap.c (where_is_internal): Filter out shadowed remappings.
4780 Assume that where_is_internal returns unshadowed bindings to simplify
4781 the code and get rid of the gotos. Use ASIZE.
4782
4783 2009-09-04 Jan Djärv <jan.h.d@swipnet.se>
4784
4785 * xterm.c (x_focus_changed): If we get a focusout and pointer
4786 is invisible, make it visible.
4787
4788 * xterm.h: Remove condition for declaration of
4789 x_*_window_to_frame.
4790
4791 2009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
4792
4793 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
4794 initial terminal as well.
4795
4796 2009-09-02 Jan Djärv <jan.h.d@swipnet.se>
4797
4798 * xterm.h: Rename x_non_menubar_window_to_frame to
4799 x_menubar_window_to_frame.
4800
4801 * xterm.c: Remove declarations also in xterm.h.
4802 (XTmouse_position): Do not return valid positions
4803 for clicks in the menubar and the toolbar for Gtk+.
4804
4805 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
4806 if the widget for the event has the same top level as a frame,
4807 return the frame.
4808 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
4809 internal windows, bug #4122.
4810 (x_non_menubar_window_to_frame): Remove.
4811
4812 2009-09-02 Glenn Morris <rgm@gnu.org>
4813
4814 * buffer.c (default-major-mode): Move most of the doc from here...
4815 (major-mode): ... to here.
4816
4817 2009-08-30 Nick Roberts <nickrob@snap.net.nz>
4818
4819 * process.c (wait_reading_process_output): Keep the descriptor
4820 when pty is used by a non-child process, e.g., in I/O buffer of
4821 GDB this allows inferior to be restarted.
4822
4823 2009-08-29 Eli Zaretskii <eliz@gnu.org>
4824
4825 * xdisp.c (redisplay_internal): Remove redundant test and collapse
4826 both branches into one.
4827
4828 2009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
4829
4830 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
4831 (main): Use enable-multibyte-characters rather than
4832 default-enable-multibyte-characters. Output a warning message when
4833 running a unibyte session.
4834
4835 2009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4836
4837 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
4838 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
4839 (copy_data_segment): Also copy __program_vars section.
4840 (copy_dyld_info) [LC_DYLD_INFO]: New function.
4841 (dump_it) [LC_DYLD_INFO]: Use it.
4842
4843 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
4844
4845 2009-08-28 Eli Zaretskii <eliz@gnu.org>
4846
4847 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
4848 $(SRC)/buildobj.h.
4849 (buildobj.h): Renamed from $(SRC)/buildobj.h.
4850 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
4851 $(SRC)/buildobj.h.
4852 (clean): Add buildobj.h.
4853
4854 2009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
4855
4856 * print.c (print_object): Set escapeflag to 1 when printing
4857 hashtable keys and values.
4858
4859 2009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
4860
4861 * lread.c (read_integer): Use doubles (and potentially return a float
4862 number) as we do in string-to-number.
4863 (read1): Use strtol to read integers, signal errors on strtol's
4864 overflow and use floats if strtol's output is too large for
4865 Elisp integers.
4866
4867 2009-08-27 Eli Zaretskii <eliz@gnu.org>
4868
4869 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
4870 (make-buildobj-SH): Fix last change.
4871 (SRC): Move to before where it's first used.
4872
4873 2009-08-27 Kenichi Handa <handa@m17n.org>
4874
4875 * process.c (send_process): Use encode_coding_object instead of
4876 encode_coding_string to perform eol-conversion even if the string
4877 is unibyte.
4878
4879 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
4880 character.
4881
4882 * cmds.c (Fself_insert_command): Avoid unnecessay
4883 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
4884
4885 2009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
4886
4887 * callproc.c (Fcall_process): Remove always true #if.
4888
4889 * lisp.h: Replace #if 0 code for checking with text pointing to
4890 the --enable-checking configure flag.
4891
4892 * emacs.c (main): Mention the --enable-profiling configure flag
4893 instead of using CFLAGS.
4894
4895 2009-08-26 Ken Raeburn <raeburn@raeburn.org>
4896
4897 * Makefile.in (buildobj.h): New target.
4898 (doc.o): Depend on it.
4899 (temacs${EXEEXT}): Don't generate buildobj.lst.
4900 (mostlyclean): Delete buildobj.h, not buildobj.lst.
4901 * makefile.w32-in ($(SRC)/buildobj.h): New target.
4902 ($(BLD)/doc.$(O)): Depend on it.
4903 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
4904 provided by Eli Zaretskii.)
4905 ($(TEMACS)): Don't generate buildobj.lst.
4906 * doc.c: Include buildobj.h.
4907 (buildobj): New static variable.
4908 (Fsnarf_documentation): Use it, instead of opening and reading
4909 buildobj.lst.
4910
4911 2009-08-25 Michael Albinus <michael.albinus@gmx.de>
4912
4913 * dbusbind.c (Fdbus_call_method)
4914 (Fdbus_call_method_asynchronously): Use English numeric format for
4915 timeout values in doc string.
4916
4917 2009-08-25 Kenichi Handa <handa@m17n.org>
4918
4919 * alloc.c (mark_char_table): New function.
4920 (mark_object): Use mark_char_table for a char-table.
4921
4922 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
4923 (CHAR_TABLE_REF): Use it.
4924
4925 2009-08-23 Ken Raeburn <raeburn@raeburn.org>
4926
4927 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
4928 before invoking the newly build emacs to check for load-path
4929 shadowing.
4930
4931 2009-08-22 Glenn Morris <rgm@gnu.org>
4932
4933 * Makefile.in (bootstrap_exe): New variable.
4934 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
4935 Use ${bootstrap_exe}.
4936
4937 2009-08-22 Eli Zaretskii <eliz@gnu.org>
4938
4939 * coding.h (encode_coding_string): Don't encode unibyte strings.
4940 (Bug#4047)
4941
4942 2009-08-22 Michael Albinus <michael.albinus@gmx.de>
4943
4944 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
4945
4946 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
4947 intended as hotfix only.
4948 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
4949
4950 2009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4951
4952 * nsterm.m (ns_get_color): Update documentation properly for last
4953 change, and clean up loose ends in the code left by it. Fix
4954 longstanding bug with 16-bit hex parsing, and add support for
4955 yet another X11 format (rgb:r/g/b) for compatibility.
4956 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
4957 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
4958
4959 2009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
4960
4961 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
4962
4963 2009-08-20 Michael Albinus <michael.albinus@gmx.de>
4964
4965 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
4966 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
4967 (xd_initialize, xd_pending_messages): Check, whether
4968 $DBUS_SESSION_BUS_ADDRESS is set.
4969
4970 2009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4971
4972 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
4973
4974 * nsterm.m (ns_get_color): Remove incompatible color formats again.
4975
4976 2009-08-20 Glenn Morris <rgm@gnu.org>
4977
4978 * emacs.c (system-type): Doc fix.
4979
4980 2009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
4981
4982 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
4983 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
4984
4985 2009-08-18 Michael Albinus <michael.albinus@gmx.de>
4986
4987 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
4988 New functions.
4989 (xd_initialize): Revert change from 2009-08-16.
4990
4991 2009-08-18 Kenichi Handa <handa@m17n.org>
4992
4993 * fontset.c (Ffontset_font): If a nil element is found in a
4994 font-group vector, return nil.
4995
4996 2009-08-17 Chong Yidong <cyd@stupidchicken.com>
4997
4998 * process.c (status_notify): Don't perform redisplay.
4999 (Fdelete_process, list_processes_1, process_send_signal):
5000 Expliticly perform redisplay.
5001 (wait_reading_process_output): Always check process status, but
5002 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
5003
5004 2009-08-17 Ken Raeburn <raeburn@raeburn.org>
5005
5006 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
5007 (XFLOAT_INIT): New macro for storing a float value.
5008 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
5009 * fns.c (sxhash): Copy out the value of a float in order to
5010 examine its bytes.
5011 * dbusbind.c (xd_append_arg): Likewise.
5012
5013 * emacs.c (main): Don't call syms_of_data twice.
5014
5015 2009-08-16 Michael Albinus <michael.albinus@gmx.de>
5016
5017 * dbusbind.c (xd_initialize): Add connection file descriptor to
5018 input_wait_mask, in order to let select() detect, whether a new
5019 message has been arrived.
5020 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
5021
5022 2009-08-15 Michael Albinus <michael.albinus@gmx.de>
5023
5024 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
5025 New functions.
5026
5027 * lisp.h (xd_pending_messages): Declare.
5028
5029 * keyboard.c (readable_events): Call xd_pending_messages.
5030
5031 2009-08-15 Chong Yidong <cyd@stupidchicken.com>
5032
5033 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
5034
5035 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
5036
5037 * buffer.c (set_buffer_internal_1)
5038 (swap_out_buffer_local_variables): Check for unbound local
5039 variables (Bug#4138).
5040
5041 2009-08-14 Eli Zaretskii <eliz@gnu.org>
5042
5043 * process.c (create_pty): Fix last change.
5044
5045 2009-08-13 Chong Yidong <cyd@stupidchicken.com>
5046
5047 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
5048 (xbm_load_image): Caller changed.
5049 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
5050
5051 2009-08-13 Nick Roberts <nickrob@snap.net.nz>
5052
5053 * process.c (create_pty): New function.
5054 (Fstart_process): Use it to allow Emacs to just associate a pty
5055 with the buffer. See associated change in gdb-mi.el.
5056 (list_processes_1): Deal with no program name.
5057 (start_process_unwind): Use pid == -2 to mean no process.
5058
5059 2009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
5060
5061 * cmds.c (nonundocount): New global variable.
5062 (keys_of_cmds): Initialize it.
5063 (Fself_insert_command): Use it to combine upto 20 sequential chars
5064 into a single undo entry, just like the Qself_insert_command code in
5065 keyboard.c does.
5066 Call frame_make_pointer_invisible, also like the Qself_insert_command
5067 code in keyboard.c does.
5068 * keyboard.c (command_loop_1): Use the new global nonundocount rather
5069 than its own local replacement for it.
5070
5071 2009-08-10 Ken Raeburn <raeburn@raeburn.org>
5072
5073 * fns.c (concat): Don't re-set string length to its current value.
5074
5075 * coding.h (decode_coding_string, encode_coding_string):
5076 Use SBYTES macro.
5077
5078 * doprnt.c (doprnt_lisp): Delete unused function.
5079 (doprnt): Merge with doprnt1, discarding lispstrings code.
5080 * lisp.h (doprnt_lisp): Don't declare.
5081
5082 2009-08-07 Juri Linkov <juri@jurta.org>
5083
5084 * puresize.h (BASE_PURESIZE): Increase to 1270000.
5085
5086 2009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
5087
5088 * print.c (syms_of_print): Undo previous change.
5089
5090 2009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
5091
5092 * lread.c (read1, syms_of_lread): Read hashtables back from the
5093 readable format.
5094
5095 * print.c (print_preprocess, print_object): Print hashtables fully
5096 and readably.
5097 (syms_of_print): Provide 'hashtable-print-readable.
5098
5099 2009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5100
5101 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
5102 no family set.
5103 (nsfont_open): Handle case when entity has no family.
5104
5105 2009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5106
5107 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
5108 element, not a list, for match case.
5109
5110 2009-07-28 Kenichi Handa <handa@m17n.org>
5111
5112 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
5113 rigidly.
5114
5115 * xfont.c (xfont_list_pattern): Don't ignore the return value of
5116 font_parse_xlfd. Check font properties more rigidly.
5117
5118 2009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
5119
5120 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
5121 bsd-common.h.
5122
5123 2009-07-27 Kenichi Handa <handa@m17n.org>
5124
5125 * xfaces.c (face_with_height): Call font_clear_prop.
5126
5127 2009-07-26 Chong Yidong <cyd@stupidchicken.com>
5128
5129 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
5130
5131 * xterm.c (x_term_init): Use Qx.
5132
5133 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
5134
5135 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
5136 (ns_get_color): Revert 2009-07-16 change.
5137
5138 2009-07-25 Eli Zaretskii <eliz@gnu.org>
5139
5140 * lread.c (syms_of_lread) <force_load_messages>: New variable.
5141 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
5142
5143 2009-07-25 Ken Raeburn <raeburn@raeburn.org>
5144
5145 * coding.h (decode_coding_string, encode_coding_string):
5146 Use SCHARS macro.
5147
5148 * lread.c: Rewrite 2009-07-21 changes.
5149 (load_depth): Delete.
5150 (Qload_in_progress): New variable.
5151 (load_unwind): Don't reference load_depth or load_in_progress.
5152 (Fload): Likewise; specbind Qload_in_progress instead.
5153 (init_lread): Don't initialize load_depth.
5154 (syms_of_lread): Initialize and protect Qload_in_progress.
5155
5156 2009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5157
5158 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
5159
5160 2009-07-23 Yavor Doganov <yavor@gnu.org>
5161
5162 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
5163
5164 2009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
5165
5166 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
5167 Bugs 3792, 3720, 2402.
5168 (ns_lookup_indexed_color): Check for bad index.
5169 (ns_index_color): Init unused slot to 0.
5170 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
5171 Bug 3714, possibly 3082.
5172
5173 2009-07-22 Jason Rumney <jasonr@gnu.org>
5174
5175 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
5176 Position IME window at cursor (Bug#2570).
5177 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
5178 (globals_of_w32fns): Dynamically load functions required above.
5179
5180 * w32term.c (w32_draw_window_cursor): Send message to reposition
5181 any IME window.
5182
5183 2009-07-21 Chong Yidong <cyd@stupidchicken.com>
5184
5185 * fileio.c: Revert 2009-07-16 changes.
5186 (Vauto_save_include_big_deletions): New variable.
5187 (Fdo_auto_save): Disable auto-save only if
5188 auto-save-include-big-deletions is nil.
5189
5190 2009-07-21 Chong Yidong <cyd@stupidchicken.com>
5191
5192 * xdisp.c (move_it_to): For continued lines ending in a tab, take
5193 the overflowed pixels into account (Bug#3879).
5194
5195 2009-07-21 Ken Raeburn <raeburn@raeburn.org>
5196
5197 * lread.c (load_depth): New variable.
5198 (Fload, load_unwind, init_lread): Set it to the load recursion
5199 depth; set load_in_progress as a simple boolean based on the
5200 current load_depth. (Bug#3892)
5201
5202 2009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5203
5204 * nsfont.m (ns_has_attribute): Remove.
5205 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
5206
5207 2009-07-18 Juri Linkov <juri@jurta.org>
5208
5209 * process.c (Fset_process_query_on_exit_flag): Mention killing
5210 a buffer in docstring.
5211
5212 2009-07-17 Kenichi Handa <handa@m17n.org>
5213
5214 * casetab.c (shuffle): Fix the logic of setting up the cycle.
5215
5216 2009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5217
5218 * nsfns.m (Fns_set_alpha): Remove function.
5219 (syms_of_nsfns): Don't defsubr it.
5220
5221 * nsterm.m (ns_get_color): Remove incompatible color formats.
5222 (ns_color_to_lisp): Generate #rrggbb color format string.
5223
5224 2009-07-16 Richard Stallman <rms@gnu.org>
5225
5226 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
5227 (Fset_buffer_auto_saved): Handle save_length = -2.
5228
5229 2009-07-16 Chong Yidong <cyd@stupidchicken.com>
5230
5231 * xterm.c (Qx_gtk_map_stock): New var.
5232
5233 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
5234 of calling intern each time.
5235
5236 2009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5237
5238 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
5239 does tiling.
5240
5241 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
5242
5243 2009-07-14 Kenichi Handa <handa@m17n.org>
5244
5245 * font.c (font_vconcat_entity_vectors): New function.
5246 (struct font_sort_data): New member font_driver_preference.
5247 (font_compare): Check font_driver_preference.
5248 (font_sort_entities): The format of the first argument changed.
5249 (font_delete_unmatched): Likewise.
5250 (font_list_entities): The return type changed.
5251 (font_select_entity): The format of the second argument changed.
5252 (font_find_for_lface): Adjuste for the above changes.
5253 Don't suppress the checking of C even if the repertory supports it.
5254 (Flist_fonts): Adjust for the above changes.
5255
5256 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
5257 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
5258 Reject a font who has adstyle property that is different from a
5259 langname derived from registry property.
5260 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
5261
5262 2009-07-13 Eli Zaretskii <eliz@gnu.org>
5263
5264 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
5265 local copy of dirfilename.
5266
5267 2009-07-13 Kenichi Handa <handa@m17n.org>
5268
5269 * chartab.c (sub_char_table_ref_and_range): Fix the range check
5270 against max_char.
5271
5272 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
5273 calling XSYMBOL (sym).
5274
5275 2009-07-11 Eli Zaretskii <eliz@gnu.org>
5276
5277 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
5278 New function.
5279 (directory_files_internal) [WINDOWSNT]:
5280 Bind w32-get-true-file-attributes to either t or nil, depending whether
5281 the filesystem of the directory is fast or slow.
5282
5283 * w32.c (logon_network_drive): Don't assume PATH is an absolute
5284 file name.
5285 (is_slow_fs): New function.
5286 (stat): Use it to determine whether to issue more system calls to
5287 get accurate file attributes, when w32-get-true-file-attributes is
5288 `local'.
5289
5290 2009-07-10 Jan Djärv <jan.h.d@swipnet.se>
5291
5292 * xfns.c (Fx_select_font): Remember last font selected in
5293 x_last_font_name and use that the next time. Also try the frame
5294 parameter font-parameter as default to the font dialog.
5295
5296 2009-07-10 Kenichi Handa <handa@m17n.org>
5297
5298 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
5299
5300 2009-07-09 Eli Zaretskii <eliz@gnu.org>
5301
5302 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
5303
5304 * w32.c (stat): Treat UNC file names as residing on remote
5305 drives. (Bug#3542)
5306
5307 2009-07-09 Kenichi Handa <handa@m17n.org>
5308
5309 * fontset.c (fontset_find_font): Fix previous change.
5310
5311 2009-07-08 Michael Albinus <michael.albinus@gmx.de>
5312
5313 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
5314 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
5315 error flag.
5316
5317 2009-07-08 Kenichi Handa <handa@m17n.org>
5318
5319 * fontset.c (fontset_find_font): Fix the logic of handling
5320 charset_matched.
5321 (font_for_char): Delete unused var.
5322 (generate_ascii_font_name): Delete it.
5323
5324 * coding.h (JIS_TO_SJIS2): Fix the code range check.
5325
5326 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
5327 (encode_coding_sjis): Fix the code range check.
5328
5329 2009-07-07 Chong Yidong <cyd@stupidchicken.com>
5330
5331 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
5332 (Fexpand_file_name): Copy string data properly (Bug#3772).
5333
5334 2009-07-07 Jan Djärv <jan.h.d@swipnet.se>
5335
5336 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
5337 first MapNotify.
5338
5339 2009-07-07 Kenichi Handa <handa@m17n.org>
5340
5341 * character.h (unibyte_has_multibyte_table): Delete extern.
5342 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
5343
5344 * charset.c (Fset_charset_priority): Update charset_unibyte.
5345 (syms_of_charset): Initialize charset_unibyte.
5346
5347 * character.c (unibyte_has_multibyte_table): Delete it.
5348 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
5349 charset_unibyte.
5350 (multibyte_char_to_unibyte_safe): Likewise.
5351 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
5352
5353 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
5354 (x_produce_glyphs): Likewise.
5355
5356 * .gdbinit (xcharset): Fix the treating $arg0.
5357
5358 2009-07-04 Eli Zaretskii <eliz@gnu.org>
5359
5360 Emulation of `getloadavg' on MS-Windows.
5361 * w32.c: Include float.h.
5362 (g_b_init_get_native_system_info, g_b_init_get_system_times)
5363 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
5364 (get_native_system_info, get_system_times): New functions.
5365 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
5366 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
5367 (globals_of_w32): Initialize g_b_init_get_native_system_info,
5368 g_b_init_get_system_times, and num_of_processors.
5369
5370 2009-07-03 Jason Rumney <jasonr@gnu.org>
5371
5372 * w32term.c (w32_initialize): Use standard types.
5373
5374 2009-07-03 Eli Zaretskii <eliz@gnu.org>
5375
5376 * dired.c (Ffile_attributes): Decode user and group names by the
5377 locale's encoding. (Bug#3443)
5378
5379 2009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
5380
5381 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
5382 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
5383
5384 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
5385
5386 * term.c (init_tty): Remove spurious #ifdef.
5387
5388 * m/mips.h: Mention this file is also used for netbsd.
5389 * m/pmax.h: Remove file.
5390
5391 2009-07-03 Jan Djärv <jan.h.d@swipnet.se>
5392
5393 * xterm.h (struct x_display_info): Add invisible_cursor.
5394 (struct x_output): Add current_cursor.
5395
5396 * xterm.c (XTtoggle_invisible_pointer): New function.
5397 (x_define_frame_cursor): Don't define cursor if invisible or the
5398 same as before. Set current_cursor.
5399 (x_create_terminal): Set toggle_invisible_pointer_hook.
5400
5401 * xfns.c (make_invisible_cursor): New function.
5402 (x_set_mouse_color): Call make_invisible_cursor.
5403 Set current_cursor.
5404 (x_window): Set current_cursor.
5405
5406 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
5407
5408 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
5409 inserting a character.
5410 (read_avail_input): Call frame_make_pointer_visible.
5411
5412 * frame.c (Vmake_pointer_invisible): New variable.
5413 (frame_make_pointer_invisible, frame_make_pointer_visible):
5414 New functions.
5415 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
5416
5417 * frame.h: Declare frame_make_pointer_invisible and
5418 frame_make_pointer_visible.
5419 (struct frame): Add pointer_invisible.
5420
5421 2009-07-02 Jan Djärv <jan.h.d@swipnet.se>
5422
5423 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
5424 frame isn't visible.
5425 (xg_frame_resized): If width/height is -1, get size of window
5426 from X server.
5427
5428 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
5429 for MapNotify.
5430
5431 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
5432 here or call change_frame_size. Just call flush_and_sync.
5433 (flush_and_sync): Reintroduce.
5434
5435 2009-07-01 Jan Djärv <jan.h.d@swipnet.se>
5436
5437 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
5438
5439 * xterm.c (x_handle_net_wm_state): Also look for sticky.
5440 (x_term_init): Initialize Xatom_net_wm_state_sticky.
5441
5442 * frame.h: Declare Qsticky.
5443
5444 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
5445
5446 * nsfns.m (ns_frame_parm_handlers): Ditto.
5447
5448 * frame.c: Declare Qsticky.
5449 (frame_parms): Add sticky.
5450
5451 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
5452
5453 * xterm.h: Declare x_set_sticky.
5454
5455 * xterm.c (x_set_sticky): New function.
5456
5457 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
5458 (xg_tool_bar_menu_proxy): Attach enter/leave events to
5459 xg_tool_bar_proxy_help_callback.
5460
5461 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
5462
5463 * frame.c: Qmaximized is new.
5464 (x_set_frame_parameters): Do not handle fullscreen specially.
5465 Only set width and height if explicitly set.
5466 (x_set_fullscreen): Handle Qmaximized.
5467 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
5468 (syms_of_frame): Initialize Qmaximized.
5469
5470 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
5471 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
5472
5473 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
5474 for Expose event. Add call to x_check_fullscreen for MapNotify event.
5475 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
5476 set gravity to NorthWestGravity when USE_GTK.
5477 (set_wm_state): New function.
5478 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
5479 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
5480 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
5481 or the case when no window manager is running. That means remove calls
5482 to x_real_positions and x_fullscreen_adjust.
5483
5484 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
5485 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
5486 flush_and_sync.
5487 (xg_height_changed): New function.
5488 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
5489 and gtk_window_set_policy. Set frame gravity after parsing the
5490 geometry string.
5491 (xg_update_frame_menubar, free_frame_menubar)
5492 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
5493 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
5494 Remove calls to xg_frame_set_char_size.
5495
5496 2009-07-01 Kenichi Handa <handa@m17n.org>
5497
5498 * keyboard.c (decode_keyboard_code): New function.
5499 (tty_read_avail_input): Decode the input bytes if necessary.
5500
5501 * coding.c (setup_coding_system):
5502 Initialize coding->carryover_bytes to 0.
5503 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
5504 use Qno_conversion.
5505
5506 2009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5507
5508 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
5509
5510 2009-06-30 Chong Yidong <cyd@stupidchicken.com>
5511
5512 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
5513
5514 2009-06-30 Jason Rumney <jasonr@gnu.org>
5515
5516 * w32term.c (w32_initialize): Use GetModuleHandle for library that
5517 is already loaded.
5518 Set user model ID if supported (bug#1849).
5519
5520 2009-06-29 Jim Meyering <meyering@redhat.com>
5521
5522 Remove useless if-before-xfree test.
5523 * nsfont.m (nsfont_close): Remove useless test.
5524 * term.c (delete_tty): Likewise.
5525 * w32.c (system_process_attributes): Likewise.
5526 * w32font.c (w32font_close): Likewise.
5527 * xfaces.c (x_free_gc): Likewise.
5528 * xselect.c (buffer): Likewise.
5529
5530 2009-06-28 Andreas Schwab <schwab@linux-m68k.org>
5531
5532 * process.c (send_process): Keep decoded string in a local
5533 variable and protect it from GC. (Bug#3521)
5534
5535 2009-06-28 Eli Zaretskii <eliz@gnu.org>
5536
5537 * term.c (create_tty_output) [MSDOS]: #ifdef away.
5538 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
5539
5540 2009-06-28 Chong Yidong <cyd@stupidchicken.com>
5541
5542 * xdisp.c (start_display, handle_face_prop)
5543 (move_it_vertically_backward, cursor_row_fully_visible_p)
5544 (redisplay_window, try_window_id, produce_image_glyph):
5545 Delete some #ifdef-ed out code chunks that are now obsolete.
5546
5547 * xterm.c (x_update_window_begin, x_new_focus_frame)
5548 (x_scroll_bar_handle_click, handle_one_xevent)
5549 (handle_one_xevent, XTread_socket, x_focus_on_frame)
5550 (x_make_frame_visible, x_make_frame_invisible)
5551 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
5552 code chunks that are now obsolete.
5553
5554 2009-06-28 Michael Albinus <michael.albinus@gmx.de>
5555
5556 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
5557 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
5558 for hours, when optimzation is enabled.
5559 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
5560 (xd_read_message): Make them static.
5561
5562 2009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
5563
5564 * term.c (turn_on_face): Allow simultaneously bold and dim
5565 terminal faces (Bug#3530).
5566
5567 2009-06-27 Chong Yidong <cyd@stupidchicken.com>
5568
5569 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
5570
5571 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
5572 truncation glyphs (Bug#3686).
5573
5574 2009-06-27 Glenn Morris <rgm@gnu.org>
5575
5576 * m/pmax.h: Restore file, with only netbsd portions.
5577
5578 2009-06-26 David Reitter <david.reitter@gmail.com>
5579
5580 * nsterm.m (keydown): Avoid infinite loop.
5581
5582 2009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
5583
5584 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
5585 the arg FORCE_SYMBOL.
5586
5587 2009-06-25 Kenichi Handa <handa@m17n.org>
5588
5589 * fontset.c (fontset_find_font): When a usable rfont_def is found
5590 in a fallback font-group, make it the first element of the group.
5591
5592 2009-06-24 Chong Yidong <cyd@stupidchicken.com>
5593
5594 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
5595
5596 2009-06-24 Kenichi Handa <handa@m17n.org>
5597
5598 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
5599 set for C.
5600 (fontset_font): Record the availability of a font for C both in
5601 the realized fontsets of the current one and the default one.
5602
5603 2009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
5604
5605 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
5606 conditional, it is always defined on AIX.
5607
5608 2009-06-23 Miles Bader <miles@gnu.org>
5609
5610 * window.c (Vrecenter_redisplay): New variable.
5611 (syms_of_window): Initialize it.
5612 (Qtty): New extern declaration.
5613 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
5614
5615 2009-06-23 Jim Meyering <meyering@redhat.com>
5616
5617 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
5618 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
5619 pointer dereferences are guaranteed to be valid.
5620
5621 2009-06-23 Kenichi Handa <handa@m17n.org>
5622
5623 * emacs.c (main): Call init_font ().
5624
5625 * font.h (Vfont_log): Extern it.
5626 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
5627
5628 * font.c (font_sort_entities, font_list_entities)
5629 (font_matching_entity, font_open_entity)
5630 (font_close_object): Change font_add_log to FONT_ADD_LOG.
5631 (Vfont_log): Delete static.
5632 (font_log_env_checked): Delete this variable.
5633 (font_add_log): Don't check font_log_env_checked.
5634 (font_deferred_log): Check Vfont_log.
5635 (init_font): New function.
5636
5637 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
5638
5639 * w32font.c: Change font_add_log to FONT_ADD_LOG.
5640
5641 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
5642
5643 * xfont.c: Change font_add_log to FONT_ADD_LOG.
5644
5645 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
5646 (face_for_char): Don't call font_deferred_log here.
5647 (font_for_char): Likewise.
5648
5649 2009-06-22 Chong Yidong <cyd@stupidchicken.com>
5650
5651 * w32term.c (x_draw_glyph_string): Use the glyph string's width
5652 rather than its background_width for drawing the overline and
5653 underline (Bug#489).
5654
5655 * xterm.c (x_draw_glyph_string): Use the glyph string's width
5656 rather than its background_width for drawing the overline and
5657 underline (Bug#489).
5658 (xg_default_icon_file): New variable.
5659 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
5660 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
5661
5662 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
5663 (load_overlay_strings): Remove externs.
5664 (fast_find_position): Function deleted.
5665 (mouse_face_from_buffer_pos): New function, based on
5666 fast_find_position. Correctly handle before-strings,
5667 display-strings, and after-strings (Bug#1220).
5668 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
5669
5670 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
5671
5672 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
5673 (move_it_in_display_line_to, move_it_in_display_line_to)
5674 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
5675
5676 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
5677
5678 * Branch for 23.1.
5679
5680 2009-06-21 Jason Rumney <jasonr@gnu.org>
5681
5682 * w32term.c (keyboard_codepage): New static variable.
5683 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
5684 (w32_read_socket) [WM_CHAR]: Use it to decode character
5685 input (bug#3237).
5686 (w32_initialize): Initialize it.
5687 (codepage_for_locale): New function.
5688
5689 2009-06-20 Ken Raeburn <raeburn@raeburn.org>
5690
5691 * process.c (status_message): Pass Faset index argument as a lisp
5692 object, so as to work with USE_LISP_UNION_TYPE.
5693
5694 2009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5695
5696 * coding.c (Ffind_coding_systems_region_internal):
5697 Cache checked characters.
5698
5699 2009-06-18 Kenichi Handa <handa@m17n.org>
5700
5701 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
5702
5703 2009-06-18 Andreas Schwab <aschwab@redhat.com>
5704
5705 * xdisp.c (redisplay_internal): Check that the frame is still
5706 live after redisplay of its windows.
5707 (redisplay_windows): Check that the window is still live.
5708
5709 2009-06-17 Andreas Schwab <schwab@linux-m68k.org>
5710
5711 * coding.c (detect_coding_utf_16): Fix previous change.
5712
5713 2009-06-16 Kenichi Handa <handa@m17n.org>
5714
5715 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
5716 UTF-16 by checking the dispersion of Eth and Oth bytes.
5717
5718 2009-06-15 Andreas Schwab <schwab@linux-m68k.org>
5719
5720 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
5721
5722 2009-06-15 Kenichi Handa <handa@m17n.org>
5723
5724 * process.c (status_message): Fix previous change. Be sure to
5725 decode a localized string.
5726
5727 2009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5728
5729 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
5730 add comment explaining why.
5731
5732 2009-06-14 Sidney Markowitz <sidney@sidney.com>
5733
5734 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5735
5736 2009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
5737
5738 * nsfont.m (ns_attribute_value): Remove.
5739 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
5740 (ns_has_attribute): Shrink the normal range.
5741 (ns_findfonts): Don't worry about requested spec in determining
5742 need for synthItal.
5743 (ns_get_covering_families): Retain scriptToFamilies.
5744
5745 2009-06-14 Seiji Zenitani <zenitani@mac.com>
5746
5747 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
5748
5749 2009-06-11 Kenichi Handa <handa@m17n.org>
5750
5751 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
5752 overhang for the static composition case.
5753
5754 2009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5755
5756 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
5757 overhang for the automatic composition case.
5758
5759 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
5760 composition case.
5761
5762 2009-06-10 Chong Yidong <cyd@stupidchicken.com>
5763
5764 * xdisp.c (get_next_display_element): When handling wrap-prefix
5765 and line-prefix, treat \n as a control character (bug#3502).
5766
5767 2009-06-10 Kenichi Handa <handa@m17n.org>
5768
5769 * font.c (font_parse_family_registry): Fix for one-char foundry.
5770 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
5771
5772 2009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
5773
5774 * process.c (status_message): Fix handling of multibyte signal
5775 string (Bug#3499).
5776
5777 2009-06-09 Jim Meyering <meyering@redhat.com>
5778
5779 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
5780 color name is missing.
5781
5782 2009-06-09 Kenichi Handa <handa@m17n.org>
5783
5784 * charset.c (Fmap_charset_chars): In docstring, state clearly that
5785 FROM-CODE and TO-CODE are codepoints of CHARSET.
5786
5787 2009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
5788
5789 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
5790
5791 2009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
5792
5793 Changes to support :script/:lang/:otf in NS font driver.
5794 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
5795 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
5796 indicate not part of font driver interface, and change callers.
5797 (ns_get_family): Remove pointless null check.
5798 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
5799 ns_spec_to_descriptor, ns_descriptor_to_entity.
5800 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
5801 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
5802 (ns_spec_to_descriptor, ns_descriptor_to_entity)
5803 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
5804 (ns_get_req_script, ns_accumulate_script_ranges)
5805 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
5806 New functions.
5807 (nsfont_list, nsfont_match): Use ns_findfonts.
5808 (nsfont_open): Use font descriptor instead of traits.
5809 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
5810 (dump_glyphstring): Rename to ns_dump_glyphstring.
5811
5812 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
5813
5814 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
5815
5816 * fontset.c (fontset_from_font): Remove NS-specific code.
5817
5818 2009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
5819
5820 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
5821 nonactive windows.
5822
5823 2009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
5824
5825 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
5826
5827 2009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
5828
5829 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
5830
5831 2009-06-07 Chong Yidong <cyd@stupidchicken.com>
5832
5833 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
5834 account for the overflowing of newlines into the last glyph on the
5835 display line (Bug#3482).
5836
5837 2009-06-05 David Reitter <david.reitter@gmail.com>
5838
5839 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
5840 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
5841 Fns_selection_exists_p, Fns_selection_owner_p.
5842
5843 2009-06-03 Jason Rumney <jasonr@gnu.org>
5844
5845 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
5846 available. (Bug#3379)
5847
5848 2009-05-29 Kenichi Handa <handa@m17n.org>
5849
5850 * coding.c (get_translation_table):
5851 Check Venable_character_translation.
5852
5853 2009-05-26 David Reitter <david.reitter@gmail.com>
5854
5855 * nsterm.m (ns_raise_frame): Only raise frame if visible.
5856 (x_make_frame_visible): Move frame to front rather than calling
5857 ns_raise_frame().
5858 (keyDown:): Do not swallow events that aren't re-sent if frame
5859 isn't key window.
5860 (drawRect:): Do not set visibility/iconified flags because
5861 drawRect may be called by NSView even if the frame is hidden.
5862
5863 * nsfns.m (Fx_create_frame): Follow other ports in
5864 determining visibility; default to t. Ensure async_visible is set.
5865
5866 2009-05-23 Eli Zaretskii <eliz@gnu.org>
5867
5868 * dired.c (Ffile_attributes): Doc fix.
5869
5870 2009-05-22 Chong Yidong <cyd@stupidchicken.com>
5871
5872 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
5873
5874 2009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
5875
5876 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
5877 and xfont_scratch_props.
5878 (syms_of_xfont): Do it here instead.
5879 (xfont_find_ccl_program): Delete, unused.
5880 (xfont_open): Delete unused var `i'.
5881
5882 2009-05-21 Kenichi Handa <handa@m17n.org>
5883
5884 * fontset.c (Qlatin): Don't make it static.
5885
5886 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
5887 New functions.
5888 (xfont_scripts_cache, xfont_scratch_props): New variables.
5889 (Qlatin, Vscalable_fonts_allowed): Extern it.
5890 (xfont_list_pattern): Argument changed. Callers changed.
5891 Check Vscalable_fonts_allowed. Check the support of a script.
5892 (xfont_list): Don't reject a font spec with :script property.
5893 (xfont_has_char): Fix setting of encoding.
5894 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
5895 xfont_scratch_props.
5896
5897 2009-05-19 Kenichi Handa <handa@m17n.org>
5898
5899 * font.c (font_sort_entities): Rename from font_sort_entites.
5900 Callers changed.
5901
5902 2009-05-18 Kenichi Handa <handa@m17n.org>
5903
5904 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
5905
5906 2009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
5907
5908 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
5909 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
5910
5911 2009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5912
5913 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
5914 (x_delete_terminal): Dissociate resource database from display and
5915 then call XrmDestroyDatabase before closing display.
5916
5917 2009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
5918
5919 * nsterm.m (ns_read_socket): Remove unused variable.
5920 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
5921 whether selected frame is viable before raising it (based on patch
5922 by David Reitter), and improve commentary.
5923 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
5924
5925 2009-05-15 Kenichi Handa <handa@m17n.org>
5926
5927 * font.c (Ffont_spec): Check arguments.
5928
5929 2009-05-14 Chong Yidong <cyd@stupidchicken.com>
5930
5931 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
5932 weight when testing attributes (Bug#3282).
5933
5934 2009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5935
5936 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
5937 what we expect to get in the next ConfigureNotify event.
5938
5939 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
5940 before Xft one (Bug#1696).
5941
5942 2009-05-07 David Reitter <david.reitter@gmail.com>
5943
5944 * nsfns.m (Fx_display_planes): Compute bitplanes using
5945 NSBitsPerPixelFromDepth (Bug#3207).
5946
5947 2009-05-10 Chong Yidong <cyd@stupidchicken.com>
5948
5949 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
5950
5951 2009-05-10 Ulrich Mueller <ulm@gentoo.org>
5952
5953 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
5954
5955 2009-05-07 David Reitter <david.reitter@gmail.com>
5956
5957 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
5958 Respect mouse face background.
5959
5960 2009-05-07 David Reitter <david.reitter@gmail.com>
5961
5962 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
5963 Mouse movement/highlight: bracket drawing operations
5964 in ns_update_begin and ns_update_end.
5965
5966 2009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
5967
5968 * nsfns.m (ns_get_screen): Rewrite.
5969 Don't presume selected-frame is of type `ns'.
5970
5971 * font.c (font_update_drivers): Sanity fallback to avoid disabling
5972 all drivers.
5973
5974 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
5975
5976 2009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5977
5978 * keyboard.h (add_user_signal): Fix typo in extern.
5979
5980 * lisp.h (add_user_signal): Remove extern.
5981
5982 * unexelf.c (unexec): Consider a section to precede the .bss section
5983 if its addresses overlap that of .bss.
5984 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
5985 instead of dumping process.
5986
5987 2009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
5988
5989 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
5990
5991 2009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
5992
5993 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
5994
5995 2009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
5996
5997 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
5998 any statements.
5999
6000 2009-05-02 Andreas Schwab <schwab@linux-m68k.org>
6001
6002 * process.c (read_process_output): Make sure the current buffer is
6003 always restored.
6004
6005 * coding.c (record_conversion_result): Don't modify
6006 Vlast_code_conversion_error for successful result.
6007 (alloc_destination): Don't clobber conversion result. (Bug#1650)
6008
6009 2009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
6010
6011 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
6012 (load_charset_map): Remove unnecessary code.
6013
6014 2009-04-30 David Reitter <david.reitter@gmail.com>
6015
6016 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
6017 through f24.
6018
6019 2009-04-30 Chong Yidong <cyd@stupidchicken.com>
6020
6021 * xfaces.c (face_at_buffer_position): New arg base_face_id.
6022
6023 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
6024 face_at_buffer_position.
6025 (face_before_or_after_it_pos, get_next_display_element)
6026 (note_mouse_highlight): Update face_at_buffer_position call.
6027
6028 * term.c (term_mouse_highlight):
6029 * msdos.c (IT_note_mouse_highlight):
6030 * fontset.c (Finternal_char_font):
6031 * font.c (font_at, font_range): Update face_at_buffer_position call.
6032
6033 * dispextern.h (face_at_buffer_position): Update prototype.
6034
6035 2009-04-30 Kenichi Handa <handa@m17n.org>
6036
6037 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
6038
6039 2009-04-29 Andreas Schwab <schwab@linux-m68k.org>
6040
6041 * callproc.c (Fcall_process): Fix GC protection. Make sure
6042 current buffer is always restored.
6043
6044 2009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6045
6046 * atimer.c (init_atimer): Also clear stopped_atimers.
6047
6048 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
6049
6050 * process.c (create_process): Clean up merger residues of
6051 2008-07-17 change.
6052
6053 2009-04-29 Ulrich Mueller <ulm@gentoo.org>
6054
6055 * lread.c (Vread_circle): New variable.
6056 (read1): Disable recursive read if Vread_circle is nil.
6057
6058 2009-04-29 Kenichi Handa <handa@m17n.org>
6059
6060 * fontset.h (set_default_ascii_font): Delete extern.
6061
6062 * fontset.c (set_default_ascii_font): Delete this unused function.
6063
6064 * frame.c (x_set_font): When ARG is a font-object, check if the
6065 font-object matches with the ASCII font-spec of the frame's
6066 fontset. If not, create a new fontset for the frame. (Bug #3075)
6067
6068 2009-04-28 Andreas Schwab <schwab@linux-m68k.org>
6069
6070 * fns.c (Flocale_info): Protect vector from GC during decoding.
6071
6072 * process.c (Fstart_process): Protect argv strings from GC during
6073 encoding.
6074
6075 2009-04-27 Andreas Schwab <schwab@linux-m68k.org>
6076
6077 * sysdep.c: Include <ctype.h>.
6078
6079 2009-04-27 David Reitter <david.reitter@gmail.com>
6080
6081 * nsfont.m (nsfont_open): Remove unused variable shrink.
6082 Remove commented-out code.
6083
6084 2009-04-26 Johan Bockgård <bojohan@gnu.org>
6085
6086 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
6087
6088 2009-04-25 Jason Rumney <jasonr@gnu.org>
6089
6090 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
6091
6092 2009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6093
6094 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
6095 Swap bytes in short integer if fringe bitmap width > 8.
6096
6097 2009-04-23 Kenichi Handa <handa@m17n.org>
6098
6099 * xfaces.c (Fx_list_fonts): If a font size is specified in
6100 PATTERN, set it in returned scalable fonts.
6101
6102 2009-04-22 Chong Yidong <cyd@stupidchicken.com>
6103
6104 * keyboard.c (Fset_input_meta_mode): Doc fix.
6105
6106 * dispnew.c (Fsend_string_to_terminal): Doc fix.
6107
6108 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
6109
6110 * coding.c (Fterminal_coding_system): Doc fix.
6111
6112 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
6113 (Fx_display_pixel_height, Fx_display_planes)
6114 (Fx_display_color_cells, Fx_server_max_request_size)
6115 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
6116 (Fx_display_mm_height, Fx_display_mm_width)
6117 (Fx_display_backing_store, Fx_display_visual_class)
6118 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
6119 Doc fixes, replacing "terminal id" with "terminal object".
6120 (check_x_display_info): Handle terminal objects instead of
6121 terminal ids.
6122
6123 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
6124 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
6125 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
6126 Doc fixes, replacing "terminal id" with "terminal object".
6127
6128 2009-04-21 Kenichi Handa <handa@m17n.org>
6129
6130 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
6131 (font_score): Check AVGWIDTH too.
6132
6133 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
6134 worst case.
6135 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
6136 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
6137
6138 2009-04-19 Jason Rumney <jasonr@gnu.org>
6139
6140 The following changes fix Bug#3005 for wide glyphs on each platform,
6141 without reintroducing Bug#1258 for stretch glyphs.
6142
6143 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
6144 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
6145 get_phys_cursor_geometry.
6146
6147 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
6148 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
6149 using get_phys_cursor_geometry.
6150
6151 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
6152 correctly calculated.
6153
6154 2009-04-19 Jan Djärv <jan.h.d@swipnet.se>
6155
6156 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
6157 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
6158 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
6159 is deprecated.
6160
6161 2009-04-18 Andreas Schwab <schwab@linux-m68k.org>
6162
6163 * font.c (font_put_frame_data): Use xfree instead of free.
6164
6165 2009-04-17 Juanma Barranquero <lekktu@gmail.com>
6166
6167 * w32font.c (Qja, Qko): Remove declarations.
6168 (syms_of_w32font): Don't DEFSYM them.
6169
6170 2009-04-17 Chong Yidong <cyd@stupidchicken.com>
6171
6172 * font.c (Qja, Qko): Move definitions here from ftfont.c.
6173
6174 * font.h (Qja, Qko): Extern them.
6175
6176 * ftfont.c (Qja, Qko): Remove declarations.
6177
6178 * xfont.c (Qja, Qko): Remove declarations.
6179
6180 2009-04-17 Kenichi Handa <handa@m17n.org>
6181
6182 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
6183 string from a vector to handle Latin-1 characters correctly.
6184
6185 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
6186 entity even if the cache hits.
6187
6188 2009-04-16 Andreas Schwab <schwab@linux-m68k.org>
6189
6190 * search.c (boyer_moore): Use zero as marker value for a possible
6191 match instead of depending on overflow behavior. (Bug#2844)
6192
6193 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
6194 * lisp.h: Adjust prototypes.
6195
6196 2009-04-16 Chong Yidong <cyd@stupidchicken.com>
6197
6198 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
6199 change (Bug#3003).
6200
6201 2009-04-16 Kenichi Handa <handa@m17n.org>
6202
6203 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
6204
6205 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
6206 adstyle.
6207
6208 * ftfont.c (Qja, Qko): Don't make them static.
6209 (enum ftfont_cache_for): New enum.
6210 (fc_charset_table): Undo the previous change.
6211 (ftfont_get_latin1_charset): Delete it.
6212 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
6213 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
6214 non-scarable font, try to get AVERAGE_WIDTH.
6215 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
6216 Change ft_face_cache from a list of a hash-table. Don't check
6217 `ja' and `ko' adstyle here.
6218 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
6219 FTFONT_CACHE_FOR_CHARET.
6220 (ftfont_get_charset): Undo the previous change.
6221 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
6222 (ftfont_close): Likewise.
6223 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
6224
6225 * font.c (font_sort_entites): Change the meaning of the arg
6226 BEST-ONLY. Don't optimize for VEC of lenght 1.
6227 (font_select_entity): Just return the value of font_sort_entites.
6228
6229 * xfaces.c (merge_face_vectors): Reflect font properties in
6230 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
6231 font_clear_prop if a face attribute doesn't change.
6232
6233 * charset.h (charset_ksc5601): Extern it.
6234
6235 * charset.c (charset_ksc5601): New variable.
6236 (Fdefine_charset_internal): Set charset_ksc5601.
6237 (init_charset_once): Initialize charset_ksc5601 to -1.
6238
6239 2009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
6240
6241 * fileio.c (history_delete_duplicates): Remove unused declaration.
6242
6243 * callint.c (history_delete_duplicates): New declaration.
6244 (Fcall_interactively): Remove command history duplicates when
6245 history_delete_duplicates is true.
6246
6247 2009-04-14 Eli Zaretskii <eliz@gnu.org>
6248
6249 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
6250
6251 2009-04-14 Kenichi Handa <handa@m17n.org>
6252
6253 * font.c (Ffont_info): Fix docstring. Fix the second element of
6254 the returned value (bug#2949).
6255
6256 2009-04-14 Chong Yidong <cyd@stupidchicken.com>
6257
6258 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
6259
6260 2009-04-14 Kenichi Handa <handa@m17n.org>
6261
6262 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
6263 encoding charset is ascii_compatible.
6264
6265 * charset.c (Fdefine_charset_internal): Make charset
6266 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
6267 code_offset is 0, and covers all ASCII characters.
6268
6269 2009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
6270
6271 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
6272 (ns_string_to_pasteboard_internal):
6273 * nsmenu.m (process_dialog):
6274 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
6275 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
6276 * lisp.h (Fx_load_color_file): Declare.
6277
6278 2009-04-13 Kenichi Handa <handa@m17n.org>
6279
6280 * font.c (font_delete_unmatched): Preserve the order of list elements.
6281 (font_select_entity): Suppress the code to optimize for the same
6282 kind of fonts.
6283 (font_load_for_lface): Get a font that supports at least ASCII
6284 characters.
6285
6286 * ftfont.c (Qja, Qko): New variables.
6287 (fc_charset_table): Delete uniquifier data for iso8859-1.
6288 (ftfont_get_latin1_charset): New function.
6289 (get_adstyle_property): New function.
6290 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
6291 bitmap fonts.
6292 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
6293 Delete iso-8859-1 range from the charset of fonts whose adstyle is
6294 `ko' or `ja'.
6295 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
6296 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
6297 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
6298 property.
6299 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
6300 (syms_of_ftfont): DEFSYM Qja and Qko.
6301
6302 2009-04-09 Kenichi Handa <handa@m17n.org>
6303
6304 * charset.c (map_charset_chars): For a charset of `superset'
6305 method, fix calculation of code range.
6306
6307 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
6308 from the list of extra properties.
6309 (font_clear_prop): Be sure to delete `:name' font property.
6310
6311 2009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6312
6313 * dispnew.c (redraw_overlapping_rows): Fix detection of
6314 overlapping for topmost and bottommost rows.
6315
6316 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
6317
6318 2009-04-06 Jason Rumney <jasonr@gnu.org>
6319
6320 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
6321
6322 2009-04-06 Kenichi Handa <handa@m17n.org>
6323
6324 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
6325
6326 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
6327
6328 2009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6329
6330 * ftfont.c (ftfont_open): Fix checking of the return value of
6331 FT_Load_Char. Fix setting font->underline_thickness.
6332
6333 2009-04-04 Chong Yidong <cyd@stupidchicken.com>
6334
6335 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
6336 (Fterminal_parameters, Fterminal_parameter)
6337 (Fset_terminal_parameter): In doc string, refer to terminal
6338 objects rather than terminal ids.
6339
6340 2009-04-04 Eli Zaretskii <eliz@gnu.org>
6341
6342 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
6343 ret_lim_data. (Bug#2867)
6344
6345 2009-04-03 Chong Yidong <cyd@stupidchicken.com>
6346
6347 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
6348 so they don't get wider than the window, matching 2006-01-23
6349 change to the partner function in xdisp.c (Bug#2800).
6350
6351 2009-04-03 Kenichi Handa <handa@m17n.org>
6352
6353 * print.c (print_object): Make each lowest sub_char_table start a
6354 new line (Bug#2866).
6355
6356 2009-04-02 Kenichi Handa <handa@m17n.org>
6357
6358 * fontset.c (fontset_font): Record no-font when a fontset
6359 explicitly tells not to try another font-specs.
6360
6361 2009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
6362
6363 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
6364
6365 2009-03-30 Kenichi Handa <handa@m17n.org>
6366
6367 * fontset.c (fontset_from_font): Specify only registry in a
6368 font-spec for all characters supported by that registry.
6369
6370 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
6371 even if HAVE_M17N_FLT is not defined.
6372
6373 2009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
6374
6375 * ftfont.c: Conditionalize prototyping and use of
6376 ftfont_variation_glyphs.
6377
6378 2009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
6379
6380 * frame.c (delete_frame): Work around compiler bug.
6381
6382 * editfns.c (general_insert_function): Adjust to insdel.c changes.
6383 * insdel.c (prepare_to_modify_buffer, signal_before_change):
6384 Some more EMACS_INT.
6385 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
6386
6387 * xdisp.c (dump_glyph): Fix typo.
6388
6389 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
6390 (adjust_markers_gap_motion, adjust_markers_for_delete)
6391 (adjust_markers_for_insert, adjust_point)
6392 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
6393 (make_gap, copy_text, count_size_as_multibyte, insert)
6394 (insert_and_inherit, insert_before_markers)
6395 (insert_before_markers_and_inherit, insert_1)
6396 (count_combining_before, count_combining_after, insert_1_both)
6397 (insert_from_string, insert_from_string_before_markers)
6398 (insert_from_string_1, insert_from_gap, insert_from_buffer)
6399 (insert_from_buffer_1, adjust_after_replace)
6400 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
6401 (replace_range_2, del_range, del_range_1, del_range_byte)
6402 (del_range_both, del_range_2, modify_region)
6403 (prepare_to_modify_buffer, signal_before_change)
6404 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
6405 for buffer positions and sizes.
6406 * lisp.h: Adjust prototypes accordingly.
6407
6408 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
6409 (non_regular_inserted, non_regular_nbytes, read_non_regular)
6410 (Finsert_file_contents): Use EMACS_INT for buffer positions.
6411
6412 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
6413
6414 2009-03-27 Jan Djärv <jan.h.d@swipnet.se>
6415
6416 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
6417 lines and columns so we keep the same pixel height and width.
6418
6419 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
6420 the property _NET_WM_STATE has changed.
6421 (x_handle_net_wm_state): New function to update frame parameter
6422 fullscreen.
6423 (x_term_init): Initialize atoms for _NET_WM_STATE.
6424
6425 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
6426
6427 2009-03-27 Kevin Ryde <user42@zip.com.au>
6428
6429 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
6430 Gpm_GetEvent as an error that justifies closing the filedescriptor.
6431 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
6432 (Fgpm_mouse_stop): Pass that new parameter.
6433 * termhooks.h (close_gpm): Adjust prototype.
6434
6435 2009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
6436
6437 * lisp.h (Fx_focus_frame): Declare.
6438
6439 * callint.c (Fcall_interactively): For '^' just delegate the work to
6440 handle-shift-selection.
6441 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
6442
6443 2009-03-24 Chong Yidong <cyd@stupidchicken.com>
6444
6445 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
6446
6447 * data.c (Qinteractive_form): New variable.
6448 (Finteractive_form): Use it.
6449
6450 * eval.c (Fcommandp): Use Qinteractive_form.
6451
6452 2009-03-24 Jason Rumney <jasonr@gnu.org>
6453
6454 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
6455 Calculate total size precisely. Decode environment variables
6456 before substituting. (Bug#38)
6457
6458 2009-03-24 Kenichi Handa <handa@m17n.org>
6459
6460 * font.c (find_font_encoding): Return Qnil for unsupported
6461 encoding (Bug#2722).
6462
6463 2009-03-23 Jan Djärv <jan.h.d@swipnet.se>
6464
6465 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
6466 that gdpy is set.
6467
6468 2009-03-22 Alan Mackenzie <acm@muc.de>
6469
6470 * callint.c (Finteractive): Clarify the doc string - even
6471 promptless elements need \n separators.
6472
6473 2009-03-22 Jason Rumney <jasonr@gnu.org>
6474
6475 * w32term.c (syms_of_w32term): Doc fix for
6476 x-use-underline-position-properties.
6477
6478 2009-03-21 Eli Zaretskii <eliz@gnu.org>
6479
6480 * w32.c (getpwuid): Change argument type to unsigned.
6481 (struct w32_id): Change type of `rid' member to unsigned.
6482 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
6483 argument ID to unsigned. All callers changed.
6484 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
6485
6486 2009-03-20 Eli Zaretskii <eliz@gnu.org>
6487
6488 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
6489 negative, produce a float value.
6490
6491 * dired.c (make_uid, make_gid): New functions.
6492 (Ffile_attributes): Use them to avoid negative UID and GID.
6493
6494 2009-03-20 Juanma Barranquero <lekktu@gmail.com>
6495
6496 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
6497 (syms_of_keyboard) <command-hook-internal, input-method-function>:
6498 Fix typos in docstrings.
6499
6500 2009-03-19 Kenichi Handa <handa@m17n.org>
6501
6502 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
6503 changed, use font_load_for_lface to get a new font object.
6504 Call free_realized_fontset after handling ASCII font change.
6505
6506 * frame.c (x_set_font): Handle the case that ARG is a cons.
6507
6508 2009-03-19 Glenn Morris <rgm@gnu.org>
6509
6510 * fileio.c (Fsubstitute_in_file_name): Doc fix.
6511
6512 2009-03-19 Chong Yidong <cyd@stupidchicken.com>
6513
6514 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
6515
6516 2009-03-19 Kenichi Handa <handa@m17n.org>
6517
6518 * charset.c (load_charset_map_from_file): When a mapfile can't be
6519 loaded, signal an error.
6520
6521 2009-03-18 Eli Zaretskii <eliz@gnu.org>
6522
6523 * dired.c (Ffile_attributes): Make sure UID and GID are always
6524 positive, even if the value is too large for a positive EMACS_INT.
6525 Doc fix.
6526
6527 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
6528
6529 2009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6530
6531 * xmenu.c (xdialog_show): Move Fredisplay call ...
6532 (Fx_popup_dialog): ... here.
6533
6534 2009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
6535
6536 * dired.c (file_name_completion): Disable the first optimization just
6537 installed, since it is not implemented correctly.
6538
6539 2009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
6540
6541 * dired.c (file_name_completion): Check completion-ignored-extensions
6542 only if the entry can affect bestmatch.
6543 Stop the search early, as Ftry_completion already does.
6544
6545 2009-03-17 Chong Yidong <cyd@stupidchicken.com>
6546
6547 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
6548
6549 2009-03-15 Chong Yidong <cyd@stupidchicken.com>
6550
6551 * keyboard.c (parse_menu_item): Don't display remappings as menu
6552 equivalent bindings (Bug#788).
6553
6554 2009-03-15 Jason Rumney <jasonr@gnu.org>
6555
6556 * w32term.h (WM_EMACS_PAINT): New message.
6557 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
6558 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
6559 before passing to lisp thread. (Bug#950)
6560
6561 2009-03-14 David Reitter <david.reitter@gmail.com>
6562
6563 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
6564 variable as it was never reset.
6565 (ns_term_init): Remove initialization of Lisp-settable defaults
6566 and ns_expand_space.
6567 (-setPanelFromDefaultValues): Remove ns_expand_space.
6568 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
6569 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
6570 i.e. no additional spacing, similar to Carbon port.
6571
6572 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
6573 * nsfns.m (ns-popup-prefs-panel): Remove.
6574
6575 2009-03-14 Jan Djärv <jan.h.d@swipnet.se>
6576
6577 * sound.c (alsa_configure): Remove call to deprecated
6578 snd_pcm_sw_params_set_xfer_align.
6579
6580 2009-03-14 Stephen Berman <stephen.berman@gmx.net>
6581
6582 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
6583 after clicking in a detached tool bar.
6584 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
6585
6586 2009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
6587
6588 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
6589 int/Lisp_Object mixup).
6590
6591 2009-03-13 Kenichi Handa <handa@m17n.org>
6592
6593 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
6594 Handle NAME nil and t correctly. Callers changed.
6595 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
6596 (set_fontset_font): Change ARG to a vector. Handle range_list in
6597 ARG correctly.
6598 (Fset_fontset_font): Fix the case that TARGET is both a script
6599 name and charset name. Adjust the arg to set_fontset_font for
6600 the above change.
6601 (fontset_from_font): Fix previous change.
6602 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
6603 entry. If FONTSET is the default fontset, don't set the extra
6604 slot of the returning char-table.
6605
6606 2009-03-12 Juanma Barranquero <lekktu@gmail.com>
6607
6608 * nsfns.m (Fx_close_connection): Doc fix.
6609 (Fns_do_applescript): Reflow docstring.
6610 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
6611 (Fx_display_pixel_width, Fx_display_pixel_height)
6612 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
6613 Fix typos in docstrings.
6614 (Fns_set_alpha): Fix typos in error messages.
6615
6616 2009-03-12 David Reitter <david.reitter@gmail.com>
6617
6618 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
6619 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
6620 were used for such events.
6621
6622 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
6623 (toggleToolbar, performDragOperation, runHelp): Use it.
6624
6625 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
6626 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
6627
6628 2009-03-11 Kenichi Handa <handa@m17n.org>
6629
6630 * font.h (font_open_by_spec): Extern it.
6631
6632 * font.c (font_open_by_spec): New function.
6633 (font_open_by_name): Use font_open_by_spec.
6634
6635 * frame.c (x_set_font): When ARG is a font-object, don't alter the
6636 fontset of the frame.
6637
6638 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
6639 modify the default font of frames that use this fontset.
6640 (num_auto_fontsets): New variable.
6641 (fontset_from_font): Use num_auto_fontsets to decide a fontset
6642 name. Be sure to set FONTSET_ASCII to the correct font name.
6643 (update_auto_fontset_alist): New function.
6644
6645 2009-03-11 Juanma Barranquero <lekktu@gmail.com>
6646
6647 * makefile.w32-in: Update dependencies.
6648
6649 2009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6650
6651 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
6652
6653 2009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
6654
6655 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
6656
6657 2009-03-10 Chong Yidong <cyd@stupidchicken.com>
6658
6659 * lread.c (Feval_buffer): Doc fix.
6660
6661 2009-03-09 Kenichi Handa <handa@m17n.org>
6662
6663 * charset.c (Qfile_name_handler_alist): Extern it.
6664 (load_charset_map_from_file): Temporarily bind
6665 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
6666
6667 2009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
6668
6669 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
6670 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
6671
6672 2009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6673
6674 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
6675 (x_set_window_size): Change back to calculated method of setting
6676 toolbar height under Cocoa. (Bug#2546)
6677 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
6678 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
6679
6680 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
6681
6682 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
6683 accelerator in parens under GNUstep.
6684
6685 2009-03-06 Kenichi Handa <handa@m17n.org>
6686
6687 These changes are to detect incorrect composition sequence without
6688 looking ahead the source. (Bug#2370)
6689
6690 * coding.h: Include "composite.h".
6691 (enum compisition_state): New enum.
6692 (struct compisition_status): New struct.
6693 (struct iso_2022_spec): New member cmp_status.
6694 (struct emacs_mule_spec): New struct.
6695 (struct coding_system): New members ctext_extended_segment_len and
6696 embedded_utf_8. Change the union member
6697 spec.emacs_mule_full_support to spec.emacs_mule.
6698
6699 * coding.c (CODING_ISO_CMP_STATUS): New macro.
6700 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
6701 (MAX_ANNOTATION_LENGTH): Define to 5.
6702 (ADD_COMPOSITION_DATA): New arg nbytes.
6703 (emacs_mule_char): New arg cmp_status.
6704 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
6705 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
6706 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
6707 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
6708 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
6709 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
6710 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
6711 (EMACS_MULE_COMPOSITION_END): New macro.
6712 (emacs_mule_finish_composition): New function.
6713 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
6714 (decode_coding_emacs_mule): Avoid long looking ahead while
6715 handling composition.
6716 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
6717 (ENCODE_COMPOSITION_RULE): New macro.
6718 (finish_composition): New function.
6719 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
6720 (DECODE_COMPOSITION_START): New implementation.
6721 (DECODE_COMPOSITION_END): Likewise.
6722 (STORE_COMPOSITION_RULE): New macro.
6723 (decode_coding_iso_2022): Avoid long looking ahead while handling
6724 composition, CTEXT extended segment, and embedded UTF-8.
6725 (setup_coding_system): For a coding of type iso-2022, reset
6726 CODING_ISO_EXTSEGMENT_LEN (coding) and
6727 CODING_ISO_EMBEDDED_UTF_8 (coding).
6728 (get_translation): Delete arguments last_block, from_nchars,
6729 to_nchars. Callers changed.
6730 (produce_chars): Don't modify charbuf. Adjusted for the change of
6731 get_translation.
6732 (produce_composition): Adjust for the new annotation sequence.
6733 (handle_composition_annotation): Likewise.
6734 (consume_chars): Adjust for the change of get_translation.
6735
6736 2009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
6737
6738 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
6739
6740 2009-03-05 Kenichi Handa <handa@m17n.org>
6741
6742 * font.c (font_select_entity): New function.
6743 (font_find_for_lface): Use font_select_entity to select a font.
6744
6745 * fontset.c (fontset_find_font): If a font found without
6746 restricting to the characters C doesn't support C, try to find a
6747 font with C restriction.
6748
6749 2009-03-04 Nikolaj Schumacher <me@nschum.de>
6750
6751 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
6752
6753 2009-03-04 Jason Rumney <jasonr@gnu.org>
6754
6755 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
6756 characters that have already been read. (Bug#2569)
6757
6758 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
6759 Log an error message if check_image_size failed.
6760 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
6761 (gs_load): Mention max-image-size in size error message. (Bug#2560)
6762
6763 2009-03-02 Eli Zaretskii <eliz@gnu.org>
6764
6765 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
6766 when decoding process output.
6767
6768 2009-03-01 Richard M Stallman <rms@gnu.org>
6769
6770 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
6771
6772 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
6773
6774 2009-02-28 Eli Zaretskii <eliz@gnu.org>
6775
6776 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
6777 (decode_coding_emacs_mule, decode_coding_iso_2022)
6778 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
6779 (decode_coding_raw_text, decode_coding_charset)
6780 (setup_coding_system, decode_eol, decode_coding, consume_chars):
6781 Honor inhibit-eol-conversion. (Bug #2186)
6782
6783 2009-02-28 Jason Rumney <jasonr@gnu.org>
6784
6785 * coding.c (detect_coding_charset): If not checking latin extra,
6786 fail on characters between 0x80 and 0xA0. (Bug#2354)
6787
6788 2009-02-28 Eli Zaretskii <eliz@gnu.org>
6789
6790 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
6791 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
6792
6793 2009-02-27 Glenn Morris <rgm@gnu.org>
6794
6795 * callint.c (Finteractive): Doc fix.
6796
6797 2009-02-27 Kenichi Handa <handa@m17n.org>
6798
6799 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
6800
6801 2009-02-27 Chong Yidong <cyd@stupidchicken.com>
6802
6803 * font.c (font_style_to_value): Set value for unknown symbols to
6804 100 instead of 255.
6805 (weight_table, slant_table, width_table): Treat "unspecified" as
6806 the default value.
6807
6808 2009-02-26 Juanma Barranquero <lekktu@gmail.com>
6809
6810 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
6811
6812 2009-02-25 Juanma Barranquero <lekktu@gmail.com>
6813
6814 * lread.c (Fload): Stop checking Vloads_in_progress and signal
6815 error as soon as a recursive load is detected.
6816
6817 2009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
6818
6819 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
6820 before caching.
6821
6822 2009-02-24 Kenichi Handa <handa@m17n.org>
6823
6824 * fontset.c (fontset_find_font): Fix the condition for checking
6825 unavailable font.
6826
6827 2009-02-24 Glenn Morris <rgm@gnu.org>
6828
6829 * xfaces.c (Finternal_set_font_selection_order): Remove leading
6830 whitespace that confuses documentation.
6831
6832 2009-02-23 Miles Bader <miles@gnu.org>
6833
6834 * process.c (Flist_system_processes, Fprocess_attributes)
6835 (syms_of_process): Rename `system-process-attributes' to
6836 `process-attributes'.
6837
6838 2009-02-22 Andreas Schwab <schwab@linux-m68k.org>
6839
6840 * coding.h (struct coding_system): Make safe_charsets a pointer to
6841 unsigned char.
6842 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
6843 being 255.
6844 (SAFE_CHARSET_P): Likewise.
6845 (setup_iso_safe_charsets): Properly setup safe_charsets.
6846 (Fdefine_coding_system_internal): Likewise.
6847 (setup_coding_system): Likewise. Remove unneeded casts.
6848 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
6849 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
6850 unneeded casts.
6851
6852 * insdel.c (del_range_2): Don't modify gap contents when called
6853 from decode_coding_object. (Bug#1809)
6854
6855 2009-02-21 Chong Yidong <cyd@stupidchicken.com>
6856
6857 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
6858 Qfont_object.
6859 (Ftype_of): Recognize font objects.
6860
6861 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
6862
6863 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
6864 moved to data.c.
6865
6866 2009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6867
6868 * nsterm.m (x_make_frame_invisible): Unset async_visible,
6869 async_iconified. Based on a patch by Christian Lynbech
6870 <christian.lynbech@tieto.com>.
6871 (EmacsView-windowDidMiniaturize:): Unset async_visible.
6872
6873 2009-02-20 Glenn Morris <rgm@gnu.org>
6874
6875 * syntax.c (Fskip_chars_forward): Fix doc typo.
6876
6877 2009-02-20 Chong Yidong <cyd@stupidchicken.com>
6878
6879 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
6880
6881 2009-02-19 Chong Yidong <cyd@stupidchicken.com>
6882
6883 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
6884
6885 2009-02-19 Kenichi Handa <handa@m17n.org>
6886
6887 * coding.c (detect_coding): Preserve coding->mode.
6888 Don't overflow coding->carryover. (Bug#2370)
6889
6890 2009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
6891
6892 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
6893
6894 2009-02-18 Kenichi Handa <handa@m17n.org>
6895
6896 * font.c (font_check_otf_features): Fix handling of `nil' element.
6897 (Ffont_spec): Describe :lang and :otf in the docstring.
6898
6899 2009-02-16 Andreas Schwab <schwab@suse.de>
6900
6901 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
6902 string.
6903
6904 2009-02-16 Kenichi Handa <handa@m17n.org>
6905
6906 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
6907 (Bug#1723)
6908
6909 2009-02-14 Chong Yidong <cyd@stupidchicken.com>
6910
6911 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
6912
6913 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
6914 (handle_line_prefix): Suppress wrapping of wrap prefixes.
6915
6916 2009-02-14 Eli Zaretskii <eliz@gnu.org>
6917
6918 * msdos.c (MAX_SCREEN_BUF): New macro.
6919 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
6920 Encode the entire run of glyphs sharing the same face, instead of
6921 doing that one glyph at a time (fixes a bug with displaying
6922 double-size characters).
6923
6924 2009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
6925
6926 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
6927
6928 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
6929 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
6930 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
6931
6932 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
6933 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
6934
6935 2009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
6936
6937 * keyboard.c (adjust_point_for_property): Allow stopping between two
6938 invisible areas.
6939
6940 2009-02-12 Jason Rumney <jasonr@gnu.org>
6941
6942 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
6943 (add_font_entity_to_list): Call check_face_name even when family
6944 is unspecified.
6945
6946 * w32term.c (x_display_pixel_height, x_display_pixel_width):
6947 Release DC when finished. Use NULL window to refer to desktop.
6948 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
6949
6950 * w32font.c (add_font_entity_to_list): Fix check for substituted
6951 raster fonts. (Bug#2219)
6952
6953 2009-02-12 Kenichi Handa <handa@m17n.org>
6954
6955 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
6956 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
6957 (autocmp_chars): Use fast_looking_at. Don't compose more
6958 characters than MAX_COMPOSITION_COMPONENTS.
6959 (find_automatic_composition): While looking forward and backward,
6960 check static composition. Fix where to stop looking forward.
6961 (composition_adjust_point): Fix checking of static composition.
6962 (Fcomposition_get_gstring): Pay attention to
6963 MAX_COMPOSITION_COMPONENTS.
6964
6965 * lisp.h (fast_looking_at): Extern it.
6966
6967 * search.c (fast_looking_at): New function.
6968
6969 * term.c (encode_terminal_code): Adjust for the change of
6970 <struct glyph>.u.cmp.to.
6971 (append_composite_glyph): Likewise.
6972
6973 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
6974 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
6975 composition.
6976 (append_composite_glyph): Adjust for the change of
6977 <strcut glyph>.u.cmp.to.
6978
6979 2009-02-11 Juanma Barranquero <lekktu@gmail.com>
6980
6981 * casetab.c (init_casetab_once):
6982 * coding.c (ALLOC_CONVERSION_WORK_AREA):
6983 * font.c (font_update_lface):
6984 * fontset.c (Fnew_fontset):
6985 * ftfont.c (ftfont_drive_otf):
6986 * xfont.c (xfont_open):
6987 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
6988
6989 2009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
6990
6991 * fileio.c (Fwrite_region): !NILP -> CONSP.
6992
6993 2009-02-10 Andreas Schwab <schwab@suse.de>
6994
6995 * process.c (send_process): Properly relocate pointer into data
6996 when using encoded data. (Bug#2272)
6997
6998 2009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
6999
7000 * coding.c (detect_coding_charset): Fix previous change.
7001
7002 2009-02-08 Jason Rumney <jasonr@gnu.org>
7003
7004 * w32fns.c (w32_hide_hourglass): Handle case where frame
7005 disappeared while hourglass was displayed. (Bug #2193)
7006
7007 2009-02-07 Andreas Schwab <schwab@suse.de>
7008
7009 * unexelf.c (unexec): Fix error message.
7010
7011 2009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
7012
7013 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
7014 when modal window is active. (Bug #2152)
7015 (applicationShouldTerminate:): Remove now-unneeded while loop
7016 around NSRunAlertPanel.
7017
7018 * nsmenu.m (popupSession): New file-global variable.
7019 (pop_down_menu): End the popupSession before closing dialog.
7020 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
7021 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
7022 don't query NSApp for events (just sleep instead).
7023
7024 2009-02-07 Eli Zaretskii <eliz@gnu.org>
7025
7026 * coding.c (syms_of_coding) <translation-table-for-input>:
7027 Modify doc string to discourage use for character code unification.
7028
7029 2009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7030
7031 * atimer.c (run_timers): Update pending_atimers.
7032
7033 2009-02-06 Chong Yidong <cyd@stupidchicken.com>
7034
7035 * image.c (svg_load_image): Fix last change.
7036
7037 * xfns.c (Fx_create_frame): Signal an error if no font is
7038 found (Bug#2147).
7039
7040 2009-02-05 Juanma Barranquero <lekktu@gmail.com>
7041
7042 * character.c (syms_of_character) <script-representative-chars>:
7043 Fix typo in docstring.
7044
7045 2009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
7046
7047 * nsmenu.m (pop_down_menu): New function.
7048 (ns_popup_dialog): Call it on unwind.
7049 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
7050 call timer_check() (Bug#2154).
7051 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
7052 handling_signal is set.
7053 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
7054
7055 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
7056
7057 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
7058
7059 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
7060
7061 * keyboard.c (poll_for_input_1, handle_async_input):
7062 Set handling_signal under HAVE_NS.
7063
7064 2009-02-04 Glenn Morris <rgm@gnu.org>
7065
7066 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
7067
7068 2009-02-04 Kenichi Handa <handa@m17n.org>
7069
7070 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
7071
7072 * charset.c (Fchar_charset): New optional arg restriction.
7073
7074 * coding.h (coding_system_charset_list): Extern it.
7075
7076 * coding.c (coding_system_charset_list): New function.
7077
7078 * composite.c: Include coding.h and termhooks.h.
7079 (composition_gstring_p): Fix for the terminal case.
7080 (composition_gstring_width): Likewise.
7081 (fill_gstring_body): Likewise.
7082 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
7083 the frame.
7084 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
7085 is within a composition.
7086 (Fcomposition_get_gstring): Fix the terminal case.
7087
7088 * term.c (encode_terminal_code): Fix handling of composition.
7089 (produce_composite_glyph): For static composition, get pixel_width
7090 from struct composition.
7091
7092 2009-02-02 Andreas Schwab <schwab@suse.de>
7093
7094 * unexelf.c (unexec): Handle unaligned bss offset.
7095
7096 2009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7097
7098 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
7099 XT,w32read_socket changes to ns_read_socket.
7100
7101 * keyboard.c (handle_interrupt): Don't call
7102 quit_throw_to_read_char() under NS.
7103
7104 * blockinput.h: Remove NS-specific code.
7105
7106 2009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
7107
7108 * dispnew.c (window_change_signal): Don't try to get the size of a
7109 suspended tty frame.
7110 * term.c (Fresume_tty): Resize if the size has changed while the
7111 tty was suspended.
7112
7113 * alloc.c (mark_stack): Properly conditionalize previous change.
7114
7115 2009-01-30 Juanma Barranquero <lekktu@gmail.com>
7116
7117 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
7118 * w32term.c (w32_read_socket) [SYNC_INPUT]:
7119 Remove; this code is not used on Windows.
7120
7121 2009-01-30 Eli Zaretskii <eliz@gnu.org>
7122
7123 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
7124 EOLs that also has stray ^M characters.
7125
7126 2009-01-30 Juanma Barranquero <lekktu@gmail.com>
7127
7128 * atimer.c (run_timers, alarm_signal_handler):
7129 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
7130 * w32inevt.c (w32_console_read_socket):
7131 * w32term.c (w32_read_socket):
7132 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
7133
7134 2009-01-30 Chong Yidong <cyd@stupidchicken.com>
7135
7136 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
7137 Initialize it as a relative filename pattern.
7138 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
7139 (Fcall_process_region): Simplify temp file creation using
7140 temporary-file-directory.
7141
7142 2009-01-29 Eli Zaretskii <eliz@gnu.org>
7143
7144 * msdos.c: Rename pending_signals to msdos_pending_signals.
7145 (sig_suspender, sigprocmask): Adjust.
7146
7147 2009-01-29 Chong Yidong <cyd@stupidchicken.com>
7148
7149 * keyboard.c (pending_signals): New var.
7150 (poll_for_input, input_available_signal, init_keyboard): Set it.
7151 (process_pending_signals): New function.
7152
7153 * lisp.h (QUIT): Check pending_signals instead of
7154 interrupt_input_pending. Use process_pending_signals.
7155
7156 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
7157
7158 * process.c (wait_reading_process_output): Use process_pending_signals.
7159
7160 * sysdep.c (emacs_write): Use process_pending_signals.
7161
7162 * xterm.c (XTread_socket): Update pending_signals.
7163
7164 * w32term.c (w32_read_socket): Update pending_signals.
7165
7166 * w32inevt.c (w32_console_read_socket): Update pending_signals.
7167
7168 2009-01-29 Kenichi Handa <handa@m17n.org>
7169
7170 * xftfont.c (xftfont_has_char): New function.
7171 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
7172
7173 2009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
7174
7175 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
7176 under GNUstep.
7177 (ns_query_color): New declaration.
7178
7179 * nsterm.m (ns_confirm_quit): New variable.
7180 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
7181 (EmacsApp-applicationShouldTerminate:): Use it.
7182 (EmacsPrefsController): Let user set it.
7183 (ns_query_color): New function.
7184 (ns_defined_color): Use it.
7185 (ns_initialize): Drop.
7186 (ns_term_init): Add two lines from ns_initialize(), and set
7187 input_interrupt_mode to nil.
7188
7189 * image.c (svg_load_image): Don't right-shift background RGB when
7190 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
7191
7192 2009-01-28 Kenichi Handa <handa@m17n.org>
7193
7194 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
7195 (fontset_get_font_group): Remember that no font-group is specified
7196 for C.
7197
7198 2009-01-27 Chong Yidong <cyd@stupidchicken.com>
7199
7200 * fns.c (concat): Check for string overflow (bug#1787).
7201
7202 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
7203 Quadruple undo limits (bug#1501).
7204
7205 2009-01-27 Kenichi Handa <handa@m17n.org>
7206
7207 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
7208 directly use GT_Get_Char_index.
7209
7210 * xftfont.c (struct xftfont_info): New member `index'.
7211
7212 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
7213 (Ffontset_font): Adjust for the change of fontset entry.
7214
7215 2009-01-26 Kenichi Handa <handa@m17n.org>
7216
7217 * fontset.c (fontset_find_font): Fix handling of non-cons return
7218 value of fontset_get_font_group.
7219 (fontset_font): Revert last change.
7220
7221 2009-01-26 Jason Rumney <jasonr@gnu.org>
7222
7223 * w32font.c (w32font_list_internal): Return quickly if registry is
7224 unknown. Simplify final return.
7225 (add_font_entity_to_list): Break complex logic down into more
7226 manageable chunks. Move unknown registry check to
7227 w32font_list_internal.
7228
7229 2009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
7230
7231 Changes to remove Feval calls from GUI under NS.
7232
7233 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
7234 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
7235 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
7236
7237 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
7238 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
7239 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
7240 instead of NON_ASCII_KEYSTROKE_EVENT.
7241 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
7242 (EmacsApp-applicationShouldTerminate:): Query user.
7243 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
7244 instead of Feval.
7245
7246 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
7247
7248 * keyboard.c (kbd_buffer_get_event): Check for it.
7249 (keys_of_keyboard): Define lispy keys for
7250 ns-put/unput-working-text.
7251
7252 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
7253 versions.
7254 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
7255
7256 2009-01-25 Chong Yidong <cyd@stupidchicken.com>
7257
7258 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
7259 setting current_buffer directly. (Bug#2044)
7260
7261 2009-01-24 Chong Yidong <cyd@stupidchicken.com>
7262
7263 * fontset.c (fontset_font): If we know there is no font, don't do
7264 any work. (Bug#1952, bug#1990).
7265
7266 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
7267
7268 2009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
7269
7270 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
7271 (ns_no_defaults): New declaration.
7272 (main): Use it.
7273
7274 * nsterm.h (ns_no_defaults): New declaration.
7275
7276 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
7277
7278 * nsterm.m (ns_no_defaults): New variable.
7279 (ns_initialize): Don't read defaults when ns_no_defaults.
7280 (EmacsView-readSelectionFromPasteboard:)
7281 (writeSelectionToPasteboard:types:): New stubbed-out methods for
7282 NSServicesRequests protocol. (Bug#1435)
7283 (ns_dumpglyphs_stretch): New function.
7284 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
7285 of 2008-11-15 to other terms. (Bug#615)
7286
7287 * nsimage.m (setPixmapData:): Set to ignore image DPI.
7288
7289 2009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
7290
7291 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
7292 call for Sparc64.
7293
7294 2009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7295
7296 * nsfns.m:
7297 * nsgui.h:
7298 * nsmenu.m:
7299 * nsselect.m:
7300 * nsterm.h:
7301 * nsterm.m: Remove '23' comments that indicated code added during
7302 update from emacs-20 -> emacs-23.
7303
7304 2009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7305
7306 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
7307 ns_alternate_modifier. (Bug#1217)
7308
7309 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
7310 Display all shortcuts, including those w/o super modifier.
7311
7312 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
7313
7314 2009-01-22 Chong Yidong <cyd@stupidchicken.com>
7315
7316 * fileio.c (Vwrite_region_post_annotation_function)
7317 (Vwrite_region_annotation_buffers): New vars.
7318 (build_annotations_unwind): Just reset
7319 Vwrite_region_annotation_buffers.
7320 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
7321 Call write-region-post-annotation-function.
7322 (build_annotations): Add to Vwrite_region_annotation_buffers if
7323 buffer changes.
7324
7325 2009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
7326
7327 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
7328 Tiger.
7329 * nsfns.m (ns_do_applescript):
7330 Conditionalize typeUTF16ExternalRepresentation on Tiger.
7331
7332 2009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
7333
7334 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
7335
7336 2009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
7337
7338 * nsmenu.m (NSMENUPROFILE): Change #if style.
7339
7340 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
7341
7342 * nsterm.m (x_set_frame_alpha): Add prototype.
7343 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
7344 handle Ctrl-tab. (Bug#1841)
7345 (ns_get_color): Use unsigned long long for scanned hex string value.
7346 (ns_term_shutdown): Abort on non SIGTERM signals.
7347 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
7348 (EmacsPrefsController-setPanelFromDefaultValues): New function.
7349 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
7350 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
7351 (ns_defined_color): Fix settings of the XColor variable fields:
7352 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
7353
7354 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
7355 DPI. (Bug#1316)
7356 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
7357 values in onTiger section.
7358
7359 2009-01-19 Chong Yidong <cyd@stupidchicken.com>
7360
7361 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
7362 Check return value of font_spec_from_name.
7363 (Fx_list_fonts): Doc fix. (Bug#1951)
7364
7365 * font.c (font_spec_from_name): Return Qnil if font name could not
7366 be parsed.
7367 (font_parse_name): Treat a `?' character as part of an XLFD.
7368
7369 * fns.c (Fsubstring): Doc fix.
7370
7371 2009-01-19 Kenichi Handa <handa@m17n.org>
7372
7373 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
7374 (ftfont_list): Likewise.
7375
7376 2009-01-18 Juanma Barranquero <lekktu@gmail.com>
7377
7378 * dbusbind.c (Fdbus_register_signal):
7379 * process.c (conv_sockaddr_to_lisp):
7380 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
7381
7382 * callproc.c (Fgetenv_internal): Doc fix.
7383
7384 2009-01-16 Chong Yidong <cyd@stupidchicken.com>
7385
7386 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
7387 it is not even used.
7388
7389 2009-01-16 Glenn Morris <rgm@gnu.org>
7390
7391 * font.c (Ffont_variation_glyphs): Silence compiler.
7392
7393 2009-01-15 Juanma Barranquero <lekktu@gmail.com>
7394
7395 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
7396 Reported by David Robinow <drobinow@gmail.com>.
7397
7398 2009-01-15 Kenichi Handa <handa@m17n.org>
7399
7400 * coding.c (detect_coding_system): Fix handling of null_byte_found.
7401
7402 2009-01-14 Jason Rumney <jasonr@gnu.org>
7403
7404 * frame.c (x_set_font): Always store a font to the font parameter,
7405 never a fontset. (Bug#1562)
7406
7407 2009-01-14 Kenichi Handa <handa@m17n.org>
7408
7409 * coding.c (TWO_MORE_BYTES): New macro.
7410 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
7411
7412 2009-01-13 Chong Yidong <cyd@stupidchicken.com>
7413
7414 * font.c (font_clear_prop): If clearing the family, clear the font
7415 width index too.
7416
7417 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
7418
7419 2009-01-12 Juanma Barranquero <lekktu@gmail.com>
7420
7421 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
7422 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
7423 functions, use sizeof.
7424
7425 2009-01-12 Martin Rudalics <rudalics@gmx.at>
7426
7427 * keyboard.c (read_char): Fix case where last_nonmenu_event
7428 returned a bad value with submenus. (Bug#447)
7429
7430 2009-01-12 Chong Yidong <cyd@stupidchicken.com>
7431
7432 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
7433 family, clear the font width index too.
7434
7435 2009-01-11 Jason Rumney <jasonr@gnu.org>
7436
7437 * keyboard.c (cmd_error_internal): Exit when errors occur before
7438 frame creation and not in daemon mode. (Bug#1836)
7439
7440 2009-01-10 Chong Yidong <cyd@stupidchicken.com>
7441
7442 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
7443 of a display vector, backtrack.
7444 (try_window_reusing_current_matrix): Check glyph type before
7445 referencing charpos member.
7446
7447 2009-01-10 Eli Zaretskii <eliz@gnu.org>
7448
7449 Fix Bug #876:
7450
7451 * coding.c (inhibit_null_byte_detection): New variable.
7452 (detect_coding, detect_coding_system): Don't pay attention to null
7453 bytes if inhibit_null_byte_detection is non-zero.
7454 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
7455 <inhibit-iso-escape-detection>: Doc fix.
7456
7457 2009-01-09 Jason Rumney <jasonr@gnu.org>
7458
7459 * w32font.c (add_font_entity_to_list): Don't report unknown
7460 Windows charset as any unrecognized registry. (Bug#1548)
7461 Only report Unicode Plane 2 fonts as unicode-sip.
7462
7463 2009-01-09 Chong Yidong <cyd@stupidchicken.com>
7464
7465 * xfaces.c (Fx_font_family_list): Delete function.
7466 Move compatibility version to faces.el.
7467
7468 * font.c (Ffont_family_list): Return a list of strings, not symbols.
7469
7470 2009-01-09 Martin Rudalics <rudalics@gmx.at>
7471
7472 * frame.c (x_set_frame_parameters): Remember requested value for
7473 fullscreen before it's reset by the parameter handler.
7474
7475 2009-01-09 Glenn Morris <rgm@gnu.org>
7476
7477 * keyboard.c (last_command_char): For clarity, rename to...
7478 (last_command_event): ... and update all users.
7479 (last_input_char): For clarity, rename to...
7480 (last_input_event): ... and update all users.
7481 (last-command-char, last-input-char): Move to subr.el as aliases.
7482 * cmds.c, commands.h: Update for last_command_char rename.
7483
7484 2009-01-08 Chong Yidong <cyd@stupidchicken.com>
7485
7486 * font.c (font_open_for_lface): Handle unspecified height attribute.
7487
7488 2009-01-08 Jason Rumney <jasonr@gnu.org>
7489
7490 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
7491 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
7492 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
7493 Don't declare.
7494 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
7495 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
7496
7497 2009-01-07 Kenichi Handa <handa@m17n.org>
7498
7499 * fileio.c (Finsert_file_contents): In the case of replace,
7500 remember the coding system used for decoding in
7501 coding_system (Bug#1039).
7502
7503 * coding.c (decode_coding_utf_8): Check byte_after_cr before
7504 breaking the loop. (Bug#870)
7505 (decode_coding_utf_16, decode_coding_emacs_mule)
7506 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
7507 (decode_coding_charset): Likewise.
7508
7509 2009-01-05 Martin Rudalics <rudalics@gmx.at>
7510
7511 * frame.c (x_set_frame_parameters): Make sure height (width) get
7512 applied when fullwidth (fullheight) is set. (Bug#1522)
7513
7514 2009-01-04 Juanma Barranquero <lekktu@gmail.com>
7515
7516 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
7517 (utc_base): Declare as ULONGLONG, not long double.
7518 (convert_time_raw): Delete.
7519 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
7520 (initialize_utc_base): New function.
7521 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
7522 (convert_from_time_t): Use initialize_utc_base; compute result with
7523 64-bit arithmetic.
7524 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
7525
7526 2009-01-03 Eli Zaretskii <eliz@gnu.org>
7527
7528 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
7529 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
7530 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
7531 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
7532 [!subprocesses]: Define.
7533 (syms_of_process) [!subprocesses]: Intern and staticpro them.
7534 (Flist_system_processes, Fsystem_process_attributes)
7535 [!subprocesses]: Call list_system_processes and
7536 system_process_attributes instead of returning Qnil.
7537
7538 * dosfns.c (system_process_attributes, list_system_processes):
7539 New functions.
7540
7541 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
7542
7543 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
7544 Don't use the default (no-op) implementation.
7545
7546 2009-01-03 Jason Rumney <jasonr@gnu.org>
7547
7548 * keyboard.c (parse_modifiers_uncached): Wheel events are
7549 clicks (bug#687).
7550
7551 * w32term.c (x_query_colors, x_query_color): New functions.
7552
7553 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
7554 (svg_load_image): Cast returned pointers from dynamically loaded
7555 functions. Eliminate W32 specific code.
7556
7557 2009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
7558
7559 * nsfns.m (x_set_foreground_color, x_set_background_color)
7560 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
7561 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
7562 x_ prefix instead of ns_. Update references.
7563 (syms_of_nsfns): Add a FIXME comment.
7564
7565 * nsterm.m (x_set_cursor_type): New prototype.
7566 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
7567
7568 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
7569 for Solaris instead of incorrectly providing Qutime and Qcutime.
7570
7571 2009-01-02 Eli Zaretskii <eliz@gnu.org>
7572
7573 * w32.c (process_times): Compute sum of utime and stime.
7574 (system_process_attributes): Add Qtime to the alist.
7575
7576 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
7577 and add them to the alist.
7578
7579 * process.c (top level) <Qtime, Qctime>: New variables.
7580 (syms_of_process): staticpro them.
7581 (Fsystem_process_attributes): Add their documentation to the doc
7582 string.
7583
7584 * process.h: Declare Qtime and Qctime.
7585
7586 2009-01-02 Jason Rumney <jasonr@gnu.org>
7587
7588 * image.c (Qgobject): New symbol.
7589 (syms_of_image): Initialize it.
7590 (init_svg_functions): Load some functions from gobject library.
7591
7592 2009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
7593
7594 * frame.c (make_terminal_frame): Remove redundant code and useless
7595 block.
7596
7597 2009-01-01 Andreas Schwab <schwab@suse.de>
7598
7599 * process.c (conv_sockaddr_to_lisp): Add workaround for
7600 getsockname bug on BSD.
7601
7602 2009-01-01 Chong Yidong <cyd@stupidchicken.com>
7603
7604 * xfns.c (x_create_tip_frame): Set border width of the X window.
7605
7606 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
7607
7608 2009-01-01 Jason Rumney <jasonr@gnu.org>
7609
7610 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
7611 Don't block input, as per earlier xterm.c changes.
7612
7613 2008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
7614
7615 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
7616 (ns_appkit_version_int): New function.
7617 (x-server-version): Use ns_appkit_version_int and follow 21+
7618 convention of returning 3 integers.
7619
7620 2008-12-30 Kenichi Handa <handa@m17n.org>
7621
7622 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
7623 (CHAR_SURROGATE_PAIR_P): New macro.
7624
7625 * font.h (struct font_driver): New member get_variation_glyphs.
7626
7627 * font.c (font_range): Don't require a font for a variation selector.
7628 (Ffont_variation_glyphs): New function.
7629 (syms_of_font): Defsubr it.
7630
7631 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
7632 ftfont_variation_glyphs.
7633 (setup_otf_gstring): New function.
7634 (ftfont_drive_otf): Use it.
7635 (ftfont_shape_by_flt): Handle variation selector.
7636 (ftfont_variation_glyphs): New function.
7637
7638 2008-12-30 Martin Rudalics <rudalics@gmx.at>
7639
7640 * frame.c (Vemacs_iconified): Remove.
7641
7642 2008-12-30 Jason Rumney <jasonr@gnu.org>
7643
7644 * frame.c (store_frame_param, x_get_arg): Enable newer code on
7645 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7646
7647 2008-12-30 Chong Yidong <cyd@stupidchicken.com>
7648
7649 * indent.c (Fvertical_motion): Don't advance iterator if we have
7650 reseated to the desired position.
7651
7652 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
7653 checking for pos match.
7654
7655 2008-12-30 Kenichi Handa <handa@m17n.org>
7656
7657 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
7658 just get the low 8-bit of the code.
7659
7660 * font.c (font_intern_prop): Validate str as multibyte.
7661
7662 2008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
7663
7664 * dispextern.h (struct face): Move lface and hash from the middle
7665 of bitfields.
7666
7667 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
7668
7669 2008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
7670
7671 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
7672 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
7673 instead of intervals.h.
7674
7675 2008-12-26 Andreas Schwab <schwab@suse.de>
7676
7677 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
7678 cons.
7679
7680 2008-12-26 Martin Rudalics <rudalics@gmx.at>
7681
7682 * textprop.c (Qminibuffer_prompt): New variable.
7683 (syms_of_textprop): Initialize it.
7684 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
7685 in minibuffer-prompt face. (Bug#1662)
7686
7687 2008-12-25 Jason Rumney <jasonr@gnu.org>
7688
7689 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
7690
7691 2008-12-24 Jason Rumney <jasonr@gnu.org>
7692
7693 * ralloc.c (r_alloc_reset_variable): New function.
7694
7695 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
7696 record of what points where. (Bug#716)
7697
7698 2008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
7699
7700 * minibuf.c (read_minibuf): Follow the non-interactive case when
7701 running as a daemon, before detaching.
7702
7703 2008-12-22 Andreas Schwab <schwab@suse.de>
7704
7705 * buffer.c (init_buffer): Use realloc instead of xrealloc.
7706 * gtkutil.c (free_widget_value): Use xfree instead of free.
7707
7708 2008-12-22 Martin Rudalics <rudalics@gmx.at>
7709
7710 * frame.c (delete_frame): New function derived from
7711 Fdelete_frame to handle Qnoelisp value for FORCE argument.
7712 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
7713 (Fdelete_frame): Call delete_frame. Remove line from doc-string
7714 saying that FORCE non-nil doesn't run `delete-frame-functions'.
7715 * frame.h: Extern delete_frame.
7716 * window.c (window_loop):
7717 * terminal.c (delete_terminal):
7718 * xterm.c (x_connection_closed):
7719 * xfns.c (Fx_hide_tip):
7720 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
7721
7722 2008-12-21 Jason Rumney <jasonr@gnu.org>
7723
7724 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
7725 when character maps to .notdef character.
7726
7727 2008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
7728
7729 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
7730
7731 2008-12-20 Jason Rumney <jasonr@gnu.org>
7732
7733 * frame.c (Fmake_terminal_frame): Raise an error when called from
7734 a graphical frame on Windows. (Bug#1325)
7735
7736 2008-12-20 Jan Djärv <jan.h.d@swipnet.se>
7737
7738 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
7739
7740 2008-12-20 Chong Yidong <cyd@stupidchicken.com>
7741
7742 * minibuf.c (Fread_buffer): Doc fix.
7743
7744 2008-12-20 Jason Rumney <jasonr@gnu.org>
7745
7746 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
7747 server name in UNC paths. (Bug#719)
7748
7749 * coding.c (decode_coding): Clear chars_at_source flag when using
7750 charbuf. (Bug#1035)
7751
7752 2008-12-19 Daniel Engeler <engeler@gmail.com>
7753
7754 * sysdep.c (serial_configure): Fix typo.
7755
7756 2008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
7757
7758 * sysdep.c: Include alloca.h.
7759 (system_process_attributes): Add implementation for Solaris.
7760
7761 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
7762
7763 2008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
7764
7765 Reorganize implementation of Flist_system_processes and
7766 Fsystem_process_attributes. No functional changes.
7767 * process.c: Don't #include pwd.h, grp.h and limits.h.
7768 (Flist_system_processes): Just call list_system_processes.
7769 (Fsystem_process_attributes): Just call system_process_attributes.
7770 (procfs_list_system_processes, time_from_jiffies)
7771 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
7772 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
7773
7774 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
7775 (list_system_processes): Rename from
7776 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
7777 Provide a do nothing implementation.
7778 (system_process_attributes): Rename from
7779 procfs_list_system_processes.
7780 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
7781 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
7782
7783 * w32.c (list_system_processes): Rename from
7784 w32_list_system_processes.
7785 (system_process_attributes): Rename from
7786 w32_system_process_attributes.
7787
7788 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
7789
7790 * process.h (w32_list_system_processes)
7791 (w32_system_process_attributes): Remove.
7792 (list_system_processes, system_process_attributes):
7793 New prototypes.
7794
7795 2008-12-19 Kenichi Handa <handa@m17n.org>
7796
7797 * xfont.c (xfont_decode_coding_xlfd): New function.
7798 (xfont_encode_coding_xlfd): New function.
7799 (xfont_list_pattern): Decode XLFD by iso-8859-1.
7800 (xfont_list): Decode and encode XLFD by iso-8859-1.
7801 (xfont_match): Likewise.
7802 (xfont_list_family): Likewise.
7803 (xfont_open): Likewise.
7804
7805 * ftfont.c (ftfont_open): Generate a multibyte string if given
7806 names are utf-8.
7807
7808 * xftfont.c (xftfont_open): Generate a multibyte string if given
7809 names are utf-8.
7810
7811 2008-12-18 Jan Djärv <jan.h.d@swipnet.se>
7812
7813 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
7814 changed.
7815 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
7816 clicked on a detached tool bar button.
7817
7818 2008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
7819
7820 * emacs.c (main): Print and error and exit when no data is read
7821 from the pipe.
7822
7823 2008-12-17 Jason Rumney <jasonr@gnu.org>
7824
7825 * w32font.c (w32font_has_char): Always return -1.
7826
7827 2008-12-16 Kenichi Handa <handa@m17n.org>
7828
7829 * font.c (font_open_entity): Fix previous change.
7830
7831 2008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
7832
7833 * process.c: Include <limits.h>.
7834
7835 2008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
7836
7837 * font.c (font_update_drivers): Fix mistake in reconstructing the
7838 driver list.
7839
7840 2008-12-16 Chong Yidong <cyd@stupidchicken.com>
7841
7842 * font.c (font_clear_cache): Fix format of font cache data.
7843
7844 2008-12-15 Chong Yidong <cyd@stupidchicken.com>
7845
7846 * xftfont.c (xftfont_open): Free Xft font pattern if
7847 XftFontOpenPattern fails.
7848
7849 * xterm.c (x_free_frame_resources): Remove extraneous call to
7850 free_frame_faces.
7851
7852 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
7853
7854 * xterm.c (x_delete_display): Move xim_close_dpy call to
7855 x_delete_terminal.
7856 (x_delete_terminal): Call xim_close_dpy.
7857
7858 2008-12-13 Jason Rumney <jasonr@gnu.org>
7859
7860 * w32font.c (intern_font_name): New function.
7861 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
7862 (w32font_open_internal, Fx_select_font): Decode font name.
7863 (fill_in_logfont, list_all_matching_fonts): Encode font name.
7864
7865 * w32font.h (intern_font_name): Declare new function.
7866
7867 * w32uniscribe.c (add_opentype_font_name_to_list):
7868 Use intern_font_name.
7869
7870 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
7871
7872 * frame.c (Fdelete_frame): Call free_font_driver_list.
7873
7874 * font.c (free_font_driver_list): Implement missing function.
7875
7876 * w32term.c (w32_term_init): Don't initialize the image cache
7877 here; it will be done in init_frame_faces.
7878
7879 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
7880 (struct x_display_info): Remove unused member null_pixel. New
7881 member xim_callback_data.
7882
7883 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
7884 (xim_initialize): Save pointer to callback function data.
7885 (xim_close_dpy): Free callback function data. Call XCloseIM,
7886 reverting 2008-11-04 change by David Smith.
7887 (x_term_init): Don't initialize the image cache here; it will be
7888 done in init_frame_faces. Remove ancient "null_pixel" cruft.
7889 (x_delete_display): Free x_dnd_atoms member.
7890
7891 2008-12-13 Kenichi Handa <handa@m17n.org>
7892
7893 * font.c (font_rescale_ratio): Moved from xfaces.c.
7894 Argument type changed. Handle a font-spec too.
7895 (font_score): Check Vface_font_rescale_alist.
7896 (font_open_entity): Likewise. (Bug#1547)
7897
7898 * xfaces.c (font_rescale_ratio): Moved to font.c.
7899
7900 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
7901
7902 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
7903
7904 2008-12-12 Jason Rumney <jasonr@gnu.org>
7905
7906 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
7907 Vwindow_system_version to the real w32 major version.
7908
7909 2008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
7910
7911 * term.c (init_tty): Move setting the terminal name before the
7912 potential user: maybe_fatal.
7913
7914 2008-12-11 Chong Yidong <cyd@stupidchicken.com>
7915
7916 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
7917 all callers changed. Call free_frame_faces to free the face cache.
7918
7919 2008-12-11 Jason Rumney <jasonr@gnu.org>
7920
7921 * w32font.c (fill_in_logfont): Don't assume symbol script means
7922 SYMBOL_CHARSET. (Bug#547)
7923
7924 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
7925 size for surrogates. (Bug#1096, bug#872)
7926
7927 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
7928
7929 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
7930
7931 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
7932
7933 * process.c (Fsystem_process_attributes, syms_of_process):
7934 Fix typo in name of Ssystem_process_attributes.
7935 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
7936
7937 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
7938
7939 * syntax.c (Fmodify_syntax_entry): Doc fix.
7940
7941 2008-12-10 Juanma Barranquero <lekktu@gmail.com>
7942
7943 * font.c (Ffont_spec): Move usage to end of docstring.
7944
7945 2008-12-10 Jason Rumney <jasonr@gnu.org>
7946
7947 * w32font.c (Qcham): New symbol.
7948 (font_supported_scripts): Add cham, and comments for other new
7949 scripts in bitfield from OpenType spec.
7950 (add_font_entity_to_list): Limit unicode-sip fonts to those that
7951 contain characters beyond the bmp.
7952
7953 2008-12-10 Kenichi Handa <handa@m17n.org>
7954
7955 * ftfont.c (fc_charset_table): Add "unicode-sip".
7956 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7957 Qunicode_sip.
7958
7959 2008-12-10 Juanma Barranquero <lekktu@gmail.com>
7960
7961 * coding.c (QCdefault_char): Rename from QCdefalut_char.
7962 (Fcoding_system_put): Use QCdefault_char.
7963 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
7964
7965 2008-12-09 Chong Yidong <cyd@stupidchicken.com>
7966
7967 * xftfont.c (syms_of_xftfont): Fix typo.
7968
7969 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
7970
7971 2008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
7972
7973 * emacs.c (main): Close daemon_pipe on exec.
7974
7975 2008-12-08 Chong Yidong <cyd@stupidchicken.com>
7976
7977 * termchar.h (struct tty): New members termcap_term_buffer and
7978 termcap_strings_buffer.
7979
7980 * term.c (encode_terminal_code): Free any previous memory blocks
7981 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
7982 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
7983 All callers changed.
7984 (init_tty): Store termcap data and string buffers in new struct
7985 tty members termcap_term_buffer and termcap_strings_buffer.
7986 (delete_tty): Free them.
7987 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
7988
7989 2008-12-07 Seiji Zenitani <zenitani@mac.com>
7990
7991 * nsfns.m (ns_set_background_color): Remove code duplication.
7992 It was a substitute for face-transparency on OS X 10.3.
7993
7994 2008-12-06 Chong Yidong <cyd@stupidchicken.com>
7995
7996 * coding.c (make_conversion_work_buffer): Disable buffer
7997 modification hooks in the work buffer.
7998
7999 2008-12-05 Eli Zaretskii <eliz@gnu.org>
8000
8001 * process.c (procfs_system_process_attributes): If `nread' has a
8002 negative value, assign zero to it.
8003
8004 2008-12-05 Chong Yidong <cyd@stupidchicken.com>
8005
8006 * eval.c (Vdebug_on_error): Doc fix.
8007
8008 2008-12-05 Kenichi Handa <handa@m17n.org>
8009
8010 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
8011 second character is a combining character.
8012
8013 2008-12-05 Eli Zaretskii <eliz@gnu.org>
8014
8015 * process.c (procfs_system_process_attributes): Don't use cmd,
8016 cmdsize, and q without initializing them first.
8017
8018 2008-12-04 Jason Rumney <jasonr@gnu.org>
8019
8020 * w32font.c (w32font_draw): Initialize orig_clip before getting
8021 it, and delete it when finished.
8022
8023 2008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
8024
8025 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
8026 case when running as a daemon before detaching.
8027
8028 2008-12-03 Juanma Barranquero <lekktu@gmail.com>
8029
8030 * w32.c (init_environment): Don't unload library shell32.dll.
8031
8032 2008-12-03 Kenichi Handa <handa@m17n.org>
8033
8034 * font.c (font_at): Set `multibyte' at first.
8035
8036 * coding.c (decode_coding_charset): Check type of an element of
8037 vector VALIDS.
8038 (encode_coding_emacs_mule): Be sure to set `code'.
8039
8040 * fontset.c (face_for_char): Handle invalid charset property correctly.
8041 (font_for_char): Likewise.
8042
8043 2008-12-03 Chong Yidong <cyd@stupidchicken.com>
8044
8045 * font.c (Fopen_font): Compute pixel size correctly.
8046 (font_update_lface): Handle fonts with corrupted size specs,
8047 i.e. non-int and non-float.
8048
8049 * ftfont.c (ftfont_match): Initialize entity variable.
8050 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8051 (ftfont_list_family): Initialize list var earlier.
8052
8053 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
8054
8055 * xterm.c (x_draw_glyph_string): Fall back on
8056 underline_minimum_offset for underline position.
8057
8058 2008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
8059
8060 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
8061
8062 * character.c (c_string_width): Specify the type for LEN.
8063
8064 2008-12-03 Kenichi Handa <handa@m17n.org>
8065
8066 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
8067 (decode_coding_utf_8): Likewise.
8068 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
8069 (produce_chars): Initialize consumed_chars to 0.
8070
8071 2008-12-02 Chong Yidong <cyd@stupidchicken.com>
8072
8073 * keyboard.c (make_lispy_position): Only use PT if the selected
8074 window is current.
8075
8076 2008-12-02 Andreas Schwab <schwab@suse.de>
8077
8078 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
8079
8080 * doprnt.c (doprnt1): Fix size of charbuf.
8081
8082 2008-12-02 Chong Yidong <cyd@stupidchicken.com>
8083
8084 * keyboard.c (timer_check): Revert last change.
8085
8086 2008-12-02 Juanma Barranquero <lekktu@gmail.com>
8087
8088 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
8089
8090 2008-12-01 Juanma Barranquero <lekktu@gmail.com>
8091
8092 * makefile.w32-in: Update dependencies.
8093 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
8094
8095 2008-12-01 Andreas Schwab <schwab@suse.de>
8096
8097 * font.c (register_font_driver): Use xmalloc.
8098 (font_put_frame_data): Likewise.
8099
8100 2008-12-01 Chong Yidong <cyd@stupidchicken.com>
8101
8102 * xfaces.c (realize_x_face): Make abort condition clearer.
8103
8104 * gtkutil.c (update_frame_tool_bar): Initialize variable.
8105
8106 2008-11-30 Chong Yidong <cyd@stupidchicken.com>
8107
8108 * keyboard.c (timer_check): After a timer runs, ensure that the
8109 selected window's buffer is current.
8110
8111 2008-11-30 Juanma Barranquero <lekktu@gmail.com>
8112
8113 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
8114 It was accidentally restored by the Unicode merge.
8115
8116 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
8117
8118 2008-11-29 Juanma Barranquero <lekktu@gmail.com>
8119
8120 * w32proc.c: Include "coding.h".
8121 (Fw32_short_file_name): Encode filename passed to Windows API.
8122 (Fw32_long_file_name): Encode filename passed to Windows API and
8123 decode back the result. (Bug#1433)
8124
8125 2008-11-29 Kenichi Handa <handa@m17n.org>
8126
8127 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
8128 not before accessing it.
8129
8130 * charset.c (Fdefine_charset_internal): After calculating
8131 min_char, max_char, and fastmap, copy the charset structure again.
8132 (encode_char): Fix the previous change.
8133
8134 2008-11-28 Seiji Zenitani <zenitani@mac.com>
8135
8136 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
8137
8138 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
8139
8140 * nsterm.m (x_set_frame_alpha): New function.
8141
8142 2008-11-27 Eli Zaretskii <eliz@gnu.org>
8143
8144 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
8145
8146 2008-11-27 Juanma Barranquero <lekktu@gmail.com>
8147
8148 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
8149 pointer to check_face_name.
8150
8151 2008-11-27 Kenichi Handa <handa@m17n.org>
8152
8153 * category.h (SET_CATEGORY_SET): Call set_category_set.
8154 (set_category_set): Extern it.
8155
8156 * category.c (hash_get_category_set): New function.
8157 (Fmodify_category_entry): Adjusted for the change of
8158 char_table_ref_and_range. Call hash_get_category_set to get a
8159 category set to store in the table.
8160
8161 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
8162 Funify_charset.
8163
8164 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
8165 (DECODE_CHAR): Check if the decoder vector is ready.
8166 (ENCODE_CHAR): Check if the encoder char-table is ready.
8167 (maybe_unify_char): Extern it.
8168
8169 * charset.c (Vchar_unified_charset_table): Delete it.
8170 (inhibit_load_charset_map): New variable.
8171 (temp_charset_work): New variable.
8172 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
8173 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
8174 New macros.
8175 (load_charset_map): Meaning of control_flag changed. If
8176 inhibit_load_charset_map is nonzero, setup a table in
8177 temp_charset_work.
8178 (load_charset): New argument control_flag.
8179 (map_charset_for_dump): New function.
8180 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
8181 map_charset_for_dump.
8182 (Fdefine_charset_internal): If the charset method is MAP, load
8183 mapping tables by calling load_charset.
8184 (Funify_charset): Don't load a mapping table but directly set
8185 Vchar_unify_table.
8186 (maybe_unify_char): New function.
8187 (decode_char): Don't handle the deleted method MAP_DEFERRED.
8188 Handle the case of inhibit_load_charset_map being nonzero.
8189 (encode_char): Don't handle the deleted method MAP_DEFERRED.
8190 Handle the case of inhibit_load_charset_map being nonzero.
8191 (Fclear_charset_maps): Just free temp_charset_work.
8192 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
8193 variable.
8194
8195 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
8196 change of char_table_ref_and_range.
8197 (char_table_ref_and_range): Change the meaning of argument FROM
8198 and TO. Now the caller must provide initial values for *FROM
8199 and *TO.
8200
8201 * fontset.c (fontset_add): Adjusted for the change of
8202 char_table_ref_and_range.
8203 (fontset_get_font_group): Likewise.
8204 (Ffontset_info): Likewise.
8205
8206 * keymap.c (describe_vector): Adjusted for the change of
8207 char_table_ref_and_range. For char-table, put boundary between
8208 non-ASCII and 8-bit characters.
8209
8210 * print.c (print_object): For bool-vector, delete unnecessary
8211 check of ASCII_BYTE_P.
8212
8213 2008-11-26 Jason Rumney <jasonr@gnu.org>
8214
8215 * w32font.c (w32font_open_internal): Don't include external
8216 leading in font height. (Bug#879)
8217
8218 2008-11-26 Glenn Morris <rgm@gnu.org>
8219
8220 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
8221 redefinition with ifdef. (Bug#1383)
8222
8223 2008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
8224
8225 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
8226
8227 2008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
8228
8229 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
8230 New EmacsView methods.
8231 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
8232 Fixes bug #1048,1357,1414.
8233
8234 2008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
8235
8236 Fix bug #1362.
8237 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
8238 is not an indexed color.
8239 * nsterm.m (free_indexed_color): Add argument checking.
8240 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
8241
8242 2008-11-24 Chong Yidong <cyd@stupidchicken.com>
8243
8244 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
8245 Document confirm-after-completion value for
8246 minibuffer-completion-confirm.
8247
8248 2008-11-24 Jason Rumney <jasonr@gnu.org>
8249
8250 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
8251 warning.
8252
8253 2008-11-23 Jason Rumney <jasonr@gnu.org>
8254
8255 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
8256 restored before returning.
8257
8258 * w32font.c (check_face_name): New function.
8259 (add_font_entity_to_list): Use it to filter out common substituted
8260 fonts. (Bug#642)
8261
8262 2008-11-22 Martin Rudalics <rudalics@gmx.at>
8263
8264 * buffer.c (Fswitch_to_buffer): Reword and mention new option
8265 confirm-nonexistent-file-or-buffer in doc-string.
8266
8267 2008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
8268
8269 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
8270 Fix copy/paste typo. Add checks.
8271
8272 2008-11-21 Kenichi Handa <handa@m17n.org>
8273
8274 * coding.c (detect_coding_iso_2022): Reject invalid composition
8275 sequence.
8276 (DECODE_COMPOSITION_START): If the current source is the last
8277 block, and the current composition doesn't end, regard this
8278 sequence as invalid.
8279 (decode_coding_iso_2022): Handle invalid composition sequence.
8280
8281 2008-11-20 Martin Rudalics <rudalics@gmx.at>
8282
8283 * window.c (coordinates_in_window): Don't return
8284 ON_VERTICAL_BORDER for the rightmost position of a mode/header
8285 line when the window is not the rightmost one. (Bug#1372)
8286
8287 2008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
8288
8289 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
8290
8291 2008-11-15 Eli Zaretskii <eliz@gnu.org>
8292
8293 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
8294 and bright_bg if noninteractive is non-zero.
8295
8296 2008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8297
8298 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
8299 x_draw_glyph_string_background.
8300
8301 * w32term.c (x_draw_glyph_string): Likewise.
8302
8303 2008-11-15 Chong Yidong <cyd@stupidchicken.com>
8304
8305 * xterm.c (x_draw_glyph_string): Stop drawing the background of
8306 the next glyph string once past the overhang width.
8307
8308 * nsterm.m (ns_draw_glyph_string): Likewise.
8309
8310 * w32term.c (x_draw_glyph_string): Likewise.
8311
8312 2008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
8313
8314 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
8315 double file close.
8316
8317 2008-11-14 Martin Rudalics <rudalics@gmx.at>
8318
8319 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
8320 dedicated status of window before attempting to display another
8321 buffer in it.
8322
8323 2008-11-14 Juanma Barranquero <lekktu@gmail.com>
8324
8325 * msdos.c (Fmsdos_long_file_names):
8326 (syms_of_msdos) <dos-unsupported-char-glyph>:
8327 * dosfns.c (Fint86): Fix typos in docstrings.
8328
8329 2008-11-14 Eli Zaretskii <eliz@gnu.org>
8330
8331 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
8332
8333 2008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
8334
8335 * puresize.h (BASE_PURESIZE): Increase to 1260000.
8336
8337 2008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
8338
8339 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
8340
8341 * frame.h: Negative alpha means "don't touch".
8342
8343 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
8344
8345 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
8346
8347 2008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
8348
8349 * hftctl.c:
8350 * chpdef.h:
8351 * acldef.h: Remove files used only for systems no longer supported.
8352
8353 * Makefile.in: Fix .o alphabetical ordering.
8354 (hftctl.o): Remove dependency, file removed.
8355 (keymap.o, print.o): Depend on charset.h.
8356
8357 2008-11-10 Kenichi Handa <handa@m17n.org>
8358
8359 * character.c (Fget_byte): Fix and make it faster for unibyte target.
8360
8361 2008-11-08 Chong Yidong <cyd@stupidchicken.com>
8362
8363 * dired.c (file_name_completion): If completion_ignore_case is
8364 enabled, ignore case when checking completion-regexp-list.
8365
8366 2008-11-08 Eli Zaretskii <eliz@gnu.org>
8367
8368 * vm-limit.c (get_lim_data): Fix last change.
8369
8370 2008-11-08 Kenichi Handa <handa@m17n.org>
8371
8372 * character.c (Fget_byte): New function.
8373 (syms_of_character): Defsubr Fget_byte.
8374
8375 2008-11-07 Chong Yidong <cyd@stupidchicken.com>
8376
8377 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
8378 cursor position is valid after scrolling.
8379
8380 2008-11-06 Juanma Barranquero <lekktu@gmail.com>
8381
8382 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
8383
8384 2008-11-06 Glenn Morris <rgm@gnu.org>
8385
8386 * xterm.c (handle_one_xevent): Don't let popup menus cause
8387 mouse-autoselect-window related window switching. (Bug#1261)
8388
8389 2008-11-04 David Smith <davidsmith@acm.org> (tiny change)
8390
8391 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
8392
8393 2008-11-04 Andreas Schwab <schwab@suse.de>
8394
8395 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
8396
8397 2008-11-03 Chong Yidong <cyd@stupidchicken.com>
8398
8399 * xfns.c (Fx_wm_set_size_hint): New function.
8400
8401 2008-11-03 Martin Rudalics <rudalics@gmx.at>
8402
8403 * textprop.c (Fprevious_single_char_property_change): Return 0
8404 when there's no change in a string. (Bug#1301)
8405
8406 2008-11-02 Martin Rudalics <rudalics@gmx.at>
8407
8408 * frame.c (do_switch_frame): New argument NORECORD passed to
8409 Fselect_window.
8410 (Fselect_frame): New argument NORECORD passed to
8411 do_switch_frame.
8412 (Fset_frame_selected_window): New argument NORECORD passed to
8413 Fselect_frame.
8414 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
8415 in call of do_switch_frame.
8416 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
8417 Handle NORECORD argument in call of Fselect_frame.
8418 * lisp.h (do_switch_frame, Fselect_frame)
8419 (Fset_frame_selected_window): Adjust declarations.
8420 * window.c (select_frame_norecord): New function.
8421 (run_window_configuration_change_hook): Use it and call
8422 Fselect_frame with NORECORD set.
8423 (Fselect_window): Pass NORECORD to Fselect_frame.
8424 (Fset_window_configuration): Handle NORECORD argument in call of
8425 do_switch_frame.
8426 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
8427 Fset_frame_selected_window.
8428 * keyboard.c (command_loop_1): Handle NORECORD in call of
8429 Fselect_frame (currently ifdefd).
8430
8431 2008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
8432
8433 * emacs.c (USAGE2): Untabify.
8434
8435 2008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
8436
8437 * composite.c (fill_gstring_header): Fix copy/paste typo.
8438
8439 2008-10-31 Martin Rudalics <rudalics@gmx.at>
8440
8441 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
8442 (Fother_window): Rename argument and rewrite doc-string.
8443 (select_window_norecord): Fix return value. (Bug#1276)
8444
8445 2008-10-30 Juanma Barranquero <lekktu@gmail.com>
8446
8447 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
8448 new frames overriding foreground for tooltips. Based on similar patch
8449 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
8450
8451 2008-10-29 Chong Yidong <cyd@stupidchicken.com>
8452
8453 * emacs.c (Fdaemon_initialized): Initialize nfd.
8454
8455 2008-10-29 Martin Rudalics <rudalics@gmx.at>
8456
8457 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
8458 (Fwindow_text_height): Clarify doc-strings.
8459 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
8460 doc-string of window-scroll-functions.
8461
8462 2008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
8463
8464 * category.c (syms_of_category): Fix typo in docstring.
8465
8466 2008-10-28 Juanma Barranquero <lekktu@gmail.com>
8467
8468 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
8469 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
8470 Fix typos in docstrings.
8471
8472 2008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
8473
8474 * emacs.c (daemon_pipe): Make non-static.
8475 (IS_DAEMON): Move definition ...
8476 * lisp.h (IS_DAEMON): ... here.
8477 (daemon_pipe): Declare.
8478 (is_daemon): Remove.
8479 * dispnew.c (init_display): Use IS_DAEMON.
8480
8481 2008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
8482
8483 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
8484 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
8485
8486 * emacs.c (is_daemon): Remove.
8487 (main): Don't set is_daemon.
8488 (IS_DAEMON): New macro.
8489 (Fdaemonp, Fdaemon_initialized): Use it.
8490 (Fdaemon_initialized): Write a char into the pipe to make sure the
8491 parent exits.
8492 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
8493
8494 2008-10-27 Chong Yidong <cyd@stupidchicken.com>
8495
8496 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
8497 over-sized glyph, draw it with the default glyph width.
8498
8499 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
8500 glyph, draw it with the default glyph width.
8501
8502 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
8503 glyph, draw it with the default glyph width.
8504
8505 * xdisp.c (try_scrolling): When computing the distance from the
8506 scroll margin to PT, try moving some distance past the window
8507 bottom before giving up.
8508
8509 2008-10-27 Martin Rudalics <rudalics@gmx.at>
8510
8511 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
8512 (Fset_window_buffer): Explain in doc-string that a window can be
8513 "strongly" dedicated to its buffer.
8514
8515 2008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
8516
8517 * emacs.c (daemon_name): New variable.
8518 (main): Deal with --daemon=SERVER_NAME.
8519 (Fdaemonp): Return a name if one was passed to --daemon.
8520
8521 2008-10-26 Romain Francoise <romain@orebokech.com>
8522
8523 * emacs.c (daemon_pipe): New variable.
8524 (main): Create a pipe before forking, make the parent exit only after
8525 the child has closed its end of the pipe. Move closing the
8526 descriptors ...
8527 (Fdaemon_initialized): ... here. New function.
8528
8529 2008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
8530
8531 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
8532 the previous unoptimized table.
8533
8534 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
8535 the distinction between non-nil and non-t value of `dedicated'.
8536
8537 2008-10-25 Chong Yidong <cyd@stupidchicken.com>
8538
8539 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
8540 read_char_minibuf_menu_text is large enough to hold the menu string.
8541
8542 2008-10-25 Martin Rudalics <rudalics@gmx.at>
8543
8544 * window.c (Fget_buffer_window, Fdelete_windows_on)
8545 (Freplace_buffer_in_windows): Make buffer argument optional and
8546 rename to buffer_or_name.
8547
8548 2008-10-24 Chong Yidong <cyd@stupidchicken.com>
8549
8550 * xdisp.c (handle_single_display_spec, handle_display_prop):
8551 Undo 2005-05-16 change.
8552 (handle_stop): Pop iterator if it's loaded with an empty string.
8553 (get_overlay_strings_1): Don't save iterator if it's loaded with
8554 an empty string (bug#1201).
8555
8556 2008-10-24 Kenichi Handa <handa@m17n.org>
8557
8558 * ftfont.c (ftfont_otf_features): Fix previous change.
8559 (ftfont_otf_capability): Check FeatureList.FeatureCount before
8560 calling ftfont_otf_features.
8561
8562 2008-10-24 Kenichi Handa <handa@m17n.org>
8563
8564 * font.c (font_match_p): Fix for the case that a vector of
8565 characters is in script-representative-chars.
8566
8567 2008-10-24 Michael Albinus <michael.albinus@gmx.de>
8568
8569 * dbusbind.c (xd_in_read_queued_messages): New variable.
8570 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
8571 (xd_read_queued_messages): Catch Qdbus_error from the macros.
8572 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
8573 macro. (Bug#1186)
8574
8575 2008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
8576
8577 * s/sol2-10.h: New file.
8578
8579 2008-10-23 Juanma Barranquero <lekktu@gmail.com>
8580
8581 * xdisp.c (fill_glyph_string): Fix typo in source (though the
8582 poor beast has survived 9+ years and the jump from xterm.c!).
8583
8584 2008-10-23 Martin Rudalics <rudalics@gmx.at>
8585
8586 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
8587 Reword doc-string.
8588 (Fbury_buffer): In doc-string say what happens to the buffer's window.
8589
8590 2008-10-23 Juanma Barranquero <lekktu@gmail.com>
8591
8592 * character.c (syms_of_character) <script-representative-chars>:
8593 <unicode-category-table>: Doc fixes.
8594
8595 2008-10-23 Noah Friedman <friedman@splode.com>
8596
8597 * coding.c (make_conversion_work_buffer): Check that
8598 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
8599 Fget_buffer_create.
8600
8601 2008-10-23 Kenichi Handa <handa@m17n.org>
8602
8603 * font.c (font_add_log): Check the values of extra properties.
8604
8605 2008-10-22 Martin Rudalics <rudalics@gmx.at>
8606
8607 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
8608 Reword doc-string.
8609 (Fset_window_parameter): Use NILP.
8610 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
8611 (Frecenter): Use "selected" instead of "current" window in doc-strings.
8612
8613 2008-10-22 Juanma Barranquero <lekktu@gmail.com>
8614
8615 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
8616
8617 2008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
8618
8619 * nsfns.m (ns_appkit_version): New function.
8620 (x-server-version): Use it.
8621 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
8622 (x-server-vendor): Don't check_ns().
8623
8624 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
8625
8626 2008-10-22 Juanma Barranquero <lekktu@gmail.com>
8627
8628 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
8629 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
8630
8631 2008-10-22 Kenichi Handa <handa@m17n.org>
8632
8633 * syntax.c (scan_words): Call word_boundary_p instead of comparing
8634 scripts.
8635
8636 * category.c (word_boundary_p): Check scripts instead of charset.
8637 Handle nil value in word-separating-categories and
8638 word-combining-categories.
8639 (syms_of_category): Fix docstrings of word-separating-categories
8640 and word-combining-categories.
8641
8642 2008-10-21 Eli Zaretskii <eliz@gnu.org>
8643
8644 * coding.c (Fencode_coding_region, Fdecode_coding_region)
8645 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
8646
8647 2008-10-21 Martin Rudalics <rudalics@gmx.at>
8648
8649 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
8650 Rename arg "buffer" to "buffer_or_name".
8651 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
8652 it optional.
8653 (no_switch_window): Remove since the return value is not used.
8654 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
8655 Consider window as dedicated when Fwindow_dedicated_p returns a
8656 non-nil value.
8657 * lisp.h: Remove prototype for no_switch_window.
8658
8659 2008-10-21 Jan Djärv <jan.h.d@swipnet.se>
8660
8661 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
8662 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
8663
8664 2008-10-21 Kenichi Handa <handa@m17n.org>
8665
8666 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
8667 check Vlatin_extra_code_table.
8668
8669 2008-10-20 Eli Zaretskii <eliz@gnu.org>
8670
8671 * fileio.c (Fset_file_modes): Doc fix.
8672
8673 2008-10-19 Michael Albinus <michael.albinus@gmx.de>
8674
8675 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
8676 in arrays.
8677
8678 2008-10-19 Martin Rudalics <rudalics@gmx.at>
8679
8680 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
8681 Mention kill-buffer in doc-string.
8682 (Fset_window_buffer): Reinsert tem check removed in last commit.
8683 (Fenlarge_window, Fshrink_window): Have argument names and
8684 doc-string follow Elisp manual more closely.
8685
8686 2008-10-18 Eli Zaretskii <eliz@gnu.org>
8687
8688 * fileio.c (Fset_file_modes): Doc fix.
8689
8690 2008-10-18 Martin Rudalics <rudalics@gmx.at>
8691
8692 * window.c (Fwindow_width, Fset_window_start)
8693 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
8694 (Fdelete_windows_on, Freplace_buffer_in_windows):
8695 Make doc-strings follow code and Elisp manual more closely.
8696 (Fwindow_dedicated_p): Make window argument optional.
8697 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
8698 (Fset_window_buffer): Respect any non-nil dedicated value for
8699 window. Rename "buffer" argument to "buffer_or_name".
8700
8701 2008-10-18 Ulrich Mueller <ulm@gentoo.org>
8702
8703 * m/sh3.h: New file, machine description for SuperH.
8704
8705 2008-10-17 Martin Rudalics <rudalics@gmx.at>
8706
8707 * window.c (Fsplit_window): Rename arg horflag to horizontal.
8708
8709 2008-10-17 Kenichi Handa <handa@m17n.org>
8710
8711 * ftfont.c (ftfont_otf_features): Fix indexing
8712 gsub_gpos->FeatureList.Feature. Check the validity of indices.
8713
8714 2008-10-16 Magnus Henoch <mange@freemail.hu>
8715
8716 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
8717 (Fdbus_call_method_asynchronously): Ditto.
8718 This change makes C-h f display the argument list.
8719
8720 2008-10-16 Chong Yidong <cyd@stupidchicken.com>
8721
8722 * fileio.c (Fexpand_file_name): Doc fix.
8723
8724 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
8725 of :foreground and :background equivalent to unspecified (20.x
8726 compatibility).
8727
8728 2008-10-15 Eli Zaretskii <eliz@gnu.org>
8729
8730 * buffer.c (syms_of_buffer): Doc fix.
8731
8732 2008-10-14 Kenichi Handa <handa@m17n.org>
8733
8734 * font.c (font_clear_prop): When clearing font width, clear the
8735 average width field too.
8736
8737 2008-10-12 Andreas Schwab <schwab@suse.de>
8738
8739 * ftfont.c (ftfont_shape_by_flt): Make static.
8740 * ftfont.h (ftfont_shape_by_flt): Don't declare.
8741
8742 * font.c: Don't include <m17n-flt.h>.
8743
8744 2008-10-10 Eli Zaretskii <eliz@gnu.org>
8745
8746 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
8747
8748 2008-10-09 Eli Zaretskii <eliz@gnu.org>
8749
8750 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
8751 away code.
8752
8753 2008-10-09 Chong Yidong <cyd@stupidchicken.com>
8754
8755 * dispnew.c (update_text_area): Avoid looping due to large glyph
8756 overhangs (bug#1070).
8757
8758 2008-10-09 Kenichi Handa <handa@m17n.org>
8759
8760 * fontset.c (face_for_char): If face->fontset is negative, just
8761 return ascii_face.
8762
8763 * font.c (font_delete_unmatched): Fix previous change.
8764 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
8765
8766 2008-10-09 Martin Rudalics <rudalics@gmx.at>
8767
8768 * frame.c (Fraise_frame): On text-only terminals select frame in
8769 order to make it visible. (Bug#1061)
8770
8771 2008-10-08 Chong Yidong <cyd@stupidchicken.com>
8772
8773 * fontset.c (fontset_find_font): Check frame validity.
8774
8775 2008-10-07 Chong Yidong <cyd@stupidchicken.com>
8776
8777 * gtkutil.c (xg_display_open): Reset default display if none exists.
8778 (xg_display_close): Allow Emacs to close all displays (bug#985).
8779
8780 2008-10-06 Andreas Schwab <schwab@suse.de>
8781
8782 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
8783
8784 2008-10-06 Chong Yidong <cyd@stupidchicken.com>
8785
8786 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
8787
8788 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
8789
8790 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
8791 during initialization.
8792
8793 2008-10-04 Eli Zaretskii <eliz@gnu.org>
8794
8795 * xdisp.c (redisplay_internal): If frame switched, redisplay the
8796 whole thing on MSDOS frames as well as on a TTY.
8797
8798 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
8799 well as for TTY.
8800 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
8801 well as on a TTY.
8802
8803 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
8804 as well as for TTY.
8805
8806 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
8807
8808 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
8809 MSDOS frames as well.
8810
8811 2008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
8812
8813 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
8814 correct arguments.
8815 * menu.c (find_and_return_menu_selection): Add cast.
8816
8817 2008-10-03 Glenn Morris <rgm@gnu.org>
8818
8819 * emacs.c (USAGE1): Add --daemon.
8820
8821 2008-10-02 Eli Zaretskii <eliz@gnu.org>
8822
8823 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
8824 100, so it's in percents as advertised.
8825
8826 2008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
8827
8828 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
8829 (ns_output.current_cursor, ns_output.desired_cursor)
8830 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
8831 (FRAME_NEW_CURSOR_COLOR): Remove.
8832
8833 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
8834 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
8835 enumeration (HOLLOW_BOX_CURSOR, etc.).
8836
8837 * nsterm.m (ns_frame_rehighlight): Remove commented code.
8838 (draw_window_cursor): Simplify code.
8839 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
8840 Don't change cursor type. In latter, call rehighlight instead of doing
8841 updates manually.
8842 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
8843 Use core Emacs cursor types.
8844
8845 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
8846
8847 2008-10-02 Martin Rudalics <rudalics@gmx.at>
8848
8849 * process.c (Faccept_process_output): Fix doc-string.
8850
8851 2008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
8852
8853 * gmalloc.c (__sbrk): Also define for uClibc.
8854
8855 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
8856 for uClibc.
8857
8858 2008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8859
8860 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
8861 styles.
8862 (nsfont_open): Reenable the cache.
8863
8864 2008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8865
8866 * font.c (font_matching_entity): Reflect ATTRS in font selection.
8867 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
8868
8869 2008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
8870
8871 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
8872 a suspended terminal.
8873
8874 2008-09-30 Michael Albinus <michael.albinus@gmx.de>
8875
8876 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
8877
8878 2008-09-30 Eli Zaretskii <eliz@gnu.org>
8879
8880 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
8881
8882 2008-09-30 Chong Yidong <cyd@stupidchicken.com>
8883
8884 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
8885 in a continued line coincides with a line beginning.
8886
8887 2008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
8888
8889 * nsfont.m (nsfont_trait_distance): Fix bug.
8890 (nsfont_list): Return a list rather than a vector (syncs with Handa
8891 changes of 2008-05-14).
8892 (nsfont_open): Improve logging.
8893
8894 2008-09-29 Andreas Schwab <schwab@suse.de>
8895
8896 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
8897
8898 2008-09-28 Martin Rudalics <rudalics@gmx.at>
8899
8900 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
8901 name as char-resolve-modifiers.
8902 Reported by: Markus Triska <markus.triska@gmx.at>
8903
8904 2008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
8905
8906 * dispnew.c (init_display): Return earlier when running as a daemon.
8907
8908 2008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
8909
8910 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
8911
8912 2008-09-27 Eli Zaretskii <eliz@gnu.org>
8913
8914 * composite.c (Fcomposition_get_gstring)
8915 (Fcompose_region_internal, Fcompose_string_internal)
8916 (Ffind_composition_internal): Doc fix.
8917 (syms_of_composite) <compose-chars-after-function>: Doc fix.
8918 (syms_of_composite) <auto-composition-function>: Doc fix.
8919 (syms_of_composite) <composition-function-table>: Doc fix.
8920
8921 2008-09-25 Chong Yidong <cyd@stupidchicken.com>
8922
8923 * search.c (wordify): New argument for lax word-ends.
8924 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
8925
8926 2008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
8927
8928 * lisp.h (is_daemon): Declare.
8929 * dispnew.c (init_display): Do not try to initialize the terminal
8930 when running as a daemon.
8931
8932 2008-09-22 Chong Yidong <cyd@stupidchicken.com>
8933
8934 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
8935 x_display_pixel_height.
8936
8937 2008-09-22 Martin Rudalics <rudalics@gmx.at>
8938
8939 * undo.c (record_point): Don't call Fundo_boundary for first
8940 change. (Bug#731)
8941
8942 2008-09-22 Juanma Barranquero <lekktu@gmail.com>
8943
8944 * emacs.c (Fdaemonp): Doc fix.
8945
8946 2008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
8947
8948 * emacs.c (main): Place #ifdef in the proper place.
8949
8950 2008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
8951
8952 * emacs.c (standard_args): Add --daemon.
8953 (main): Disconnect from the terminal when --daemon is passed.
8954 (is_daemon): New variable.
8955 (Fdaemonp): New function.
8956 (syms_of_emacs): Defsubr it.
8957
8958 2008-09-20 Chong Yidong <cyd@stupidchicken.com>
8959
8960 * xdisp.c (get_next_display_element): Handle string display
8961 correctly when checking for the end of a box run.
8962
8963 2008-09-20 Glenn Morris <rgm@gnu.org>
8964
8965 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
8966 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
8967 (Frename_file): Avoid copying to trash if a rename involves
8968 a delete. (Bug#964).
8969
8970 2008-09-20 Eli Zaretskii <eliz@gnu.org>
8971
8972 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
8973 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
8974 frames as well as termcap frames.
8975 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
8976 get_named_tty.
8977
8978 2008-09-19 Eli Zaretskii <eliz@gnu.org>
8979
8980 * process.c (procfs_system_process_attributes): Fix cmdline in
8981 case /proc/PID/cmdline is empty.
8982
8983 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
8984 x_display_pixel_height.
8985
8986 2008-09-19 Juanma Barranquero <lekktu@gmail.com>
8987
8988 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
8989
8990 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
8991 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
8992
8993 2008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
8994
8995 * dispextern.h (struct it): Move line_wrap away from the middle of
8996 bitfields. Move voffset in struct iterator_stack_entry after the
8997 bitfields. Move tab_width near after another short.
8998
8999 2008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
9000
9001 * frame.h (struct frame): Move alpha from the middle of bitfields.
9002
9003 * window.h (struct window): Move frozen_window_start_p after the
9004 rest of the bitfields to reduce padding.
9005
9006 2008-09-18 Chong Yidong <cyd@stupidchicken.com>
9007
9008 * xterm.h (x_display_info): Remove `height' and `width' members.
9009
9010 * nsterm.h (ns_display_info): Remove `height' and `width' members.
9011
9012 * w32term.h (w32_display_info): Remove `height', `width',
9013 `height_in', and `width_in' members.
9014
9015 * xterm.c (x_display_pixel_height, x_display_pixel_width):
9016 New functions.
9017 (x_calc_absolute_position): Use them.
9018 (x_term_init): Omit removed `height' and `width' members.
9019
9020 * w32term.c (x_display_pixel_height, x_display_pixel_width):
9021 New functions.
9022 (w32_read_socket, x_calc_absolute_position): Use them.
9023 (w32_initialize_display_info, w32_term_init): Omit removed members
9024 of w32_display_info.
9025
9026 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
9027 New functions.
9028 (ns_initialize_display_info): Omit removed members of ns_display_info.
9029
9030 * xterm.c (x_display_pixel_height, x_display_pixel_width):
9031 New functions.
9032 (x_calc_absolute_position): Use them.
9033 (x_term_init): Omit removed `height' and `width' members.
9034
9035 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
9036 (compute_tip_xy):
9037 * frame.c (x_fullscreen_adjust):
9038 * xmenu.c (menu_position_func): Use x_display_pixel_height and
9039 x_display_pixel_width.
9040
9041 2008-09-18 Kenichi Handa <handa@m17n.org>
9042
9043 * composite.c (fill_gstring_header): Don't check FROM and TO here.
9044 (composition_compute_stop_pos): Fix handling of static composition.
9045 (Fcomposition_get_gstring): Check FROM and TO at first.
9046
9047 2008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
9048
9049 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
9050 mixup (YAILOM).
9051
9052 2008-09-17 Chong Yidong <cyd@stupidchicken.com>
9053
9054 * indent.c (Fvertical_motion): Use position reported by iterator
9055 instead of PT for determining screen motion (bug#943).
9056
9057 2008-09-17 Romain Francoise <romain@orebokech.com>
9058
9059 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
9060
9061 2008-09-17 Kenichi Handa <handa@m17n.org>
9062
9063 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
9064
9065 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
9066 if necessary.
9067
9068 2008-09-16 Kenichi Handa <handa@m17n.org>
9069
9070 * coding.c (make_conversion_work_buffer): Avoid calling
9071 Fget_buffer_create if it is not necessary.
9072
9073 2008-09-15 Martin Rudalics <rudalics@gmx.at>
9074
9075 * window.c (Fselect_window): Don't update window_select_count and
9076 use_time when norecord is not nil.
9077
9078 2008-09-14 Kenichi Handa <handa@m17n.org>
9079
9080 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
9081 specpdl_ptr.
9082
9083 2008-09-12 Kenichi Handa <handa@m17n.org>
9084
9085 * indent.c (scan_for_column): Don't handle automatic composition
9086 if the current buffer is not associated with a window.
9087
9088 * composite.c (composition_reseat_it): If the current buffer is
9089 not associated with a window, ignore the automatic composition.
9090 (find_automatic_composition): Likewise.
9091
9092 2008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
9093
9094 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
9095 (Fgpm_mouse_stop): Use it.
9096 * termhooks.h (close_gpm): Declare.
9097 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
9098 connection if Gpm_GetEvent fails.
9099
9100 * window.c (set_window_buffer): Always preserve current-buffer.
9101
9102 2008-09-12 Glenn Morris <rgm@gnu.org>
9103
9104 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
9105
9106 2008-09-11 Glenn Morris <rgm@gnu.org>
9107
9108 * charset.c (charset-map-path): Doc fix.
9109
9110 2008-09-10 Kenichi Handa <handa@m17n.org>
9111
9112 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
9113
9114 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
9115 compose a grapheme cluster with the preceding base glyph.
9116
9117 * composite.c (composition_compute_stop_pos): Fix previous change.
9118 Reset cmp_it->id to -1 at first.
9119
9120 2008-09-10 Glenn Morris <rgm@gnu.org>
9121
9122 * Makefile.in (character.o, chartab.o): Fix config.h typo.
9123
9124 2008-09-09 Chong Yidong <cyd@stupidchicken.com>
9125
9126 * keyboard.c (read_key_sequence): Reapply translation maps when
9127 switching keyboards.
9128
9129 2008-09-09 Kenichi Handa <handa@m17n.org>
9130
9131 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
9132 characters.
9133
9134 * composite.c (FORWARD_CHAR): Fix calculation
9135 of (POSITION).pos_byte.
9136 (composition_compute_stop_pos): Limit the search of composition to
9137 at most 500 characters ahead. If we reach the limit or find a
9138 newline, set cmp_it->ch to -2 and return 0.
9139 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
9140
9141 2008-09-08 Kenichi Handa <handa@m17n.org>
9142
9143 * indent.c (Fvertical_motion): Be sure to set
9144 it_overshoot_expected if it.cmp_it.id is non-negative.
9145
9146 2008-09-07 Andreas Schwab <schwab@suse.de>
9147
9148 * callproc.c (Fcall_process): Don't hold references to string data
9149 across garbage collection. Move initialisation of new_argv down
9150 to avoid compiler bug.
9151
9152 2008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
9153
9154 * process.c (Fsystem_process_attributes): Doc fix.
9155
9156 2008-09-07 Chong Yidong <cyd@stupidchicken.com>
9157
9158 * callproc.c (Fcall_process): Canonicalize current directory name.
9159
9160 * xdisp.c (move_it_to): When moving by vpos, ensure that the
9161 iterator advances to the next line if the current line ends in a
9162 continued tab.
9163
9164 2008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
9165
9166 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
9167 member to point to cmp_from.
9168
9169 * xdisp.c: Doc fix for references to gidx data member.
9170
9171 2008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
9172
9173 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
9174
9175 2008-09-07 Kenichi Handa <handa@m17n.org>
9176
9177 * composite.c (FORWARD_CHAR): Check STOP after
9178 incrementing (POSITION).pos.
9179
9180 2008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
9181
9182 * process.c (Fsystem_process_attributes): Doc fix.
9183
9184 2008-09-06 Chong Yidong <cyd@stupidchicken.com>
9185
9186 * keyboard.c (Ftop_level): Doc fix.
9187
9188 2008-09-06 Eli Zaretskii <eliz@gnu.org>
9189
9190 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
9191 minibuffer, don't let lower part of menu invade the echo area.
9192
9193 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
9194 "char *q" to access menu text and advance through it. Revert the
9195 change that displayed ">" instead of ASCII character 0x10.
9196
9197 2008-09-05 Eli Zaretskii <eliz@gnu.org>
9198
9199 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
9200 toggle boxes and radio buttons on MS-DOS as well.
9201
9202 2008-09-05 Kenichi Handa <handa@m17n.org>
9203
9204 * composite.c (autocmp_chars): Check lookback count.
9205 (composition_compute_stop_pos): Set cmp_it->lookback.
9206 (composition_reseat_it): Check lookback count.
9207 (struct position_record): New struct.
9208 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
9209 (find_automatic_composition): New function.
9210 (composition_adjust_point): Use find_automatic_composition.
9211
9212 * dispextern.h (struct composition_it): New member lookback.
9213
9214 2008-09-02 Chong Yidong <cyd@stupidchicken.com>
9215
9216 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
9217 if moving by a single line.
9218
9219 2008-09-02 Andreas Schwab <schwab@suse.de>
9220
9221 * xterm.c (x_delete_display): Fix merge error.
9222
9223 * fileio.c (Fexpand_file_name): Remove unused variables.
9224
9225 2008-09-02 Eli Zaretskii <eliz@gnu.org>
9226
9227 * fileio.c (Fexpand_file_name): Copy argument `name' into local
9228 storage on all platforms, not just on DOS_NT.
9229
9230 2008-09-02 Jason Rumney <jasonr@gnu.org>
9231
9232 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
9233 Ensure mouse is not grabbed after menu is finished.
9234
9235 2008-09-01 Chong Yidong <cyd@stupidchicken.com>
9236
9237 * xfaces.c (Finternal_set_alternative_font_family_alist)
9238 (Finternal_set_alternative_font_registry_alist): Properly copy
9239 entire alist structure.
9240
9241 2008-09-01 Kenichi Handa <handa@m17n.org>
9242
9243 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
9244 representative chars of the script is a vector.
9245 (ftfont_list): Handle the case where the representative chars of
9246 the script is a vector.
9247
9248 * character.c (syms_of_character): Docstring of
9249 script-representative-chars fixed.
9250
9251 2008-08-31 Eli Zaretskii <eliz@gnu.org>
9252
9253 * msdos.c (BUILD_CHAR_GLYPH): New macro.
9254 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
9255 the menu. Allocate larger buffer for `text', to account for
9256 possible ^C characters.
9257
9258 2008-08-31 Martin Rudalics <rudalics@gmx.at>
9259
9260 * xdisp.c (prepare_menu_bars): Don't call
9261 Vwindow_size_change_functions with arg Qt.
9262
9263 2008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
9264
9265 * font.h (font_range):
9266 * fileio.c (report_file_error):
9267 * composite.c (composition_update_it): Yet another int/Lisp_Object
9268 mixup (YAILOM).
9269
9270 2008-08-30 Glenn Morris <rgm@gnu.org>
9271
9272 * data.c (Fmake_variable_frame_local): Doc fix.
9273
9274 * frame.c (Fmodify_frame_parameters): Doc fix.
9275
9276 2008-08-30 Eli Zaretskii <eliz@gnu.org>
9277
9278 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
9279 needed by GetTokenInformation.
9280 (w32_system_process_attributes): Check return values of all system
9281 APIs.
9282
9283 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
9284 only when the state changes.
9285 (IT_update_begin, IT_update_end): Add termscript trace.
9286
9287 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
9288 clipboard is unavailable. Set dst to NULL if it doesn't point to
9289 malloc'ed data.
9290 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
9291 passing random values to xfree.
9292
9293 * dispnew.c (init_display): Set `tty's association in frame's
9294 parameters alist to the name of the terminal device, if that is known.
9295
9296 2008-08-29 Jason Rumney <jasonr@gnu.org>
9297
9298 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
9299
9300 2008-08-29 Eli Zaretskii <eliz@gnu.org>
9301
9302 * composite.c (fill_gstring_body): Avoid compiler warnings.
9303
9304 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
9305 LGLYPH_SET_CODE to avoid compiler warnings.
9306
9307 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
9308
9309 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
9310
9311 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
9312 LGLYPH_SET_CODE.
9313
9314 2008-08-29 Kenichi Handa <handa@m17n.org>
9315
9316 * fileio.c (report_file_error): Don't downcase the first character
9317 of errstring if it is still unibyte.
9318
9319 2008-08-29 Kenichi Handa <handa@m17n.org>
9320
9321 These changes are to re-implement the automatic composition so
9322 that it doesn't use text properties.
9323
9324 * Makefile.in (ftfont.o): Depend on composite.h.
9325 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
9326
9327 * character.h (Vunicode_category_table): Extern it.
9328
9329 * character.c (Vunicode_category_table): New variable.
9330 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
9331
9332 * chartab.c (optimize_sub_char_table): Perform more greedy
9333 optimization.
9334
9335 * composite.h (enum composition_method):
9336 Delete COMPOSITION_WITH_GLYPH_STRING.
9337 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
9338 (Vcomposition_function_table): Extern it.
9339 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
9340 (composition_gstring_put_cache, composition_gstring_from_id)
9341 (composition_gstring_p, composition_gstring_width)
9342 (composition_compute_stop_pos, composition_reseat_it)
9343 (composition_update_it, composition_adjust_point): Extern them.
9344 (Fcomposition_get_gstring): EXFUN it.
9345
9346 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
9347 (Vcomposition_function_table)
9348 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
9349 (gstring_hash_table, gstring_work, gstring_work_headers):
9350 New variables.
9351 (gstring_lookup_cache, composition_gstring_put_cache)
9352 (composition_gstring_from_id, composition_gstring_p)
9353 (composition_gstring_width, fill_gstring_header)
9354 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
9355 (composition_reseat_it, composition_update_it)
9356 (composition_adjust_point, Fcomposition_get_gstring): New functions.
9357 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
9358 and gstring_work_headers. DEFVAR_LISP composition-function-table.
9359 Defsubr composition_get_gstring.
9360
9361 * dispextern.h (struct glyph): New union u.cmp. Delete the member
9362 cmp_id.
9363 (struct glyph_string): Delete the member gidx. New members
9364 cmp_id, cmp_from, and cmp_to.
9365 (enum it_method): Delete GET_FROM_COMPOSITION.
9366 (struct composition_it): New struct.
9367 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
9368 Delete c, len, cmp_id, cmp_len in u.comp.
9369
9370 * font.h (enum lgstring_indices): Delete it.
9371 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
9372 (enum lglyph_indices): Likewise.
9373 (font_range): Adjust extern.
9374 (font_fill_lglyph_metrics): Extern it.
9375
9376 * font.c (QCf): New variable.
9377 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
9378 (font_prepare_composition): Delete this function.
9379 (font_range): Type and arguments changed.
9380 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
9381 (font_fill_lglyph_metrics): New function.
9382 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
9383 (syms_of_font): DEFSYM QCf. Delete defsubr for
9384 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
9385 Defsubr Sfont_shape_gstring.
9386
9387 * fontset.h (font_for_char): Extern it.
9388
9389 * fontset.c (font_for_char): New function.
9390
9391 * ftfont.c: Include composite.h.
9392 (ftfont_resolve_generic_family): Add langset "en" to pattern.
9393 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
9394
9395 * indent.c: Include composite.h and dispextern.h.
9396 (check_composition): Delete this function.
9397 (scan_for_column): Handle composition by
9398 composition_compute_stop_pos, composition_reseat_it, and
9399 composition_update_it.
9400 (compute_motion): Likewise.
9401 (Fvertical_motion): Fix checking of composition.
9402
9403 * keyboard.c (adjust_point_for_property): Check composition by
9404 composition_adjust_point.
9405
9406 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
9407 struct glyph_string.
9408
9409 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
9410 (append_composite_glyph): Adjust for the change of struct it and
9411 struct glyph.
9412 (produce_composite_glyph): Likewise.
9413
9414 * w32term.c (x_draw_composite_glyph_string_foreground):
9415 Adjust for the change of struct glyph_string.
9416 (x_draw_glyph_string): Likewise.
9417
9418 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
9419 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
9420
9421 * xdisp.c: Include font.h.
9422 (it_props): Delete the entry for Qauto_composed.
9423 (init_iterator): Initialize it->cmp_it.id to -1.
9424 (compute_stop_pos): Call composition_compute_stop_pos.
9425 (face_before_or_after_it_pos): Adjust for the change of struct it.
9426 (handle_auto_composed_prop): Delete it.
9427 (handle_composition_prop): Handle only static composition.
9428 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
9429 from xassert. Initialize it->cmp_it.stop_pos.
9430 (push_it): Adjust for the change of struct it.
9431 (pop_it): Likewise.
9432 (get_next_element): Delete next_element_from_composition.
9433 (CHAR_COMPOSED_P): New macro.
9434 (get_next_display_element): For automatic composition, get a face
9435 from the font in the glyph-string.
9436 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
9437 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
9438 (next_element_from_string): Check if the character at the current
9439 position is composed by CHAR_COMPOSED_P.
9440 (next_element_from_buffer): Likewise.
9441 (next_element_from_composition): Adjust for the change of struct it.
9442 Update it->cmp_it.
9443 (dump_glyph): Adjust for the change of struct glyph.
9444 (fill_composite_glyph_string): Adjust for the change of struct
9445 it and struct glyph. Don't handle automatic composition here.
9446 (fill_gstring_glyph_string): New function.
9447 (x_get_glyph_overhangs): Handle automatic composition.
9448 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
9449 (BUILD_GSTRING_GLYPH_STRING): New macro.
9450 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
9451 automatic composition.
9452 (append_composite_glyph): Adjust for the change of struct it and
9453 struct glyph.
9454 (x_produce_glyphs): Adjust for the change of struct it.
9455
9456 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
9457 the change of struct glyph_string.
9458 (x_draw_glyph_string): Likewise.
9459
9460 2008-08-29 Glenn Morris <rgm@gnu.org>
9461
9462 * buffer.c (word-wrap): Doc fix.
9463 * xdisp.c (truncate-partial-width-windows): Doc fix.
9464 Increase default to 50.
9465
9466 2008-08-29 Chong Yidong <cyd@stupidchicken.com>
9467
9468 * xdisp.c (update_tool_bar_unwind): New function.
9469 (update_tool_bar): Temporarily set selected frame before building
9470 tool-bar items.
9471
9472 2008-08-28 Michael Albinus <michael.albinus@gmx.de>
9473
9474 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
9475 snprintf, respectively.
9476 (xd_append_arg): Convert strings with Fstring_make_unibyte.
9477
9478 2008-08-28 Chong Yidong <cyd@stupidchicken.com>
9479
9480 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
9481 LDFLAGS to GNUstep CC invocation.
9482
9483 2008-08-27 Chong Yidong <cyd@stupidchicken.com>
9484
9485 * indent.c (Fvertical_motion): Revert last change. Handle the
9486 general case where we are moving forward, and PT spans multiple
9487 screen lines.
9488
9489 * eval.c (find_handler_clause): Temporarily increase
9490 max-lisp-eval-depth while printing the backtrace buffer, to
9491 guarantee that help-mode code can run.
9492
9493 2008-08-27 Eli Zaretskii <eliz@gnu.org>
9494
9495 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
9496 colors under -rv.
9497 (IT_set_frame_parameters): Don't swap foreground and background
9498 colors if `(reverse . t)' is present in the frame properties.
9499 (internal_terminal_init): Call init_frame_faces only for the
9500 initial frame.
9501
9502 2008-08-27 Andreas Schwab <schwab@suse.de>
9503
9504 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
9505
9506 2008-08-27 Andreas Schwab <schwab@suse.de>
9507
9508 * search.c (search_buffer): Set char_base to zero only at the end.
9509
9510 2008-08-27 Kenichi Handa <handa@m17n.org>
9511
9512 * fileio.c (report_file_error): Fix handling of multibyte error string.
9513
9514 2008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
9515
9516 * xterm.c (x_term_init): Temporarily hide the partially
9517 initialized terminal while calling vendor-specific-keysyms.
9518
9519 2008-08-26 Eli Zaretskii <eliz@gnu.org>
9520
9521 * msdos.c (internal_terminal_init): Most initializations done only
9522 once, especially initial_screen_colors[] and termscript open.
9523
9524 2008-08-26 Chong Yidong <cyd@stupidchicken.com>
9525
9526 * eval.c (Fcondition_case): Doc fix.
9527
9528 * widgetprv.h (EmacsFramePart): Change font member to the new font
9529 struct.
9530
9531 * widget.c: Include character.h and font.h for XSETFONT.
9532 (setup_frame_gcs): Compute X font id from font struct, just once.
9533
9534 2008-08-26 Eli Zaretskii <eliz@gnu.org>
9535
9536 * term.c (get_named_tty): Fix last change.
9537
9538 2008-08-26 Chong Yidong <cyd@stupidchicken.com>
9539
9540 * indent.c (Fvertical_motion): If moving forward starting from a
9541 multi-line string, move the iterator to the last line of that string.
9542
9543 2008-08-25 Eli Zaretskii <eliz@gnu.org>
9544
9545 * frame.c (do_switch_frame): Mark previously displayed frame as
9546 obscured for FRAME_MSDOS_P frames as well.
9547
9548 2008-08-24 Eli Zaretskii <eliz@gnu.org>
9549
9550 * frame.c (make_terminal_frame): Initialize f->terminal,
9551 f->terminal->reference_count, and scroll bars on MS-DOS as well.
9552 Set the top frame to newly created frame.
9553 (Fmake_terminal_frame): Reuse the_only_display_info.
9554
9555 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
9556 estimating available memory.
9557
9558 2008-08-23 David Reitter <david.reitter@gmail.com>
9559
9560 * nsterm.m (ns_draw_window_cursor): Don't call
9561 NSDisableScreenUpdates and NSEnableScreenUpdates on
9562 non-NS_IMPL_COCOA systems.
9563
9564 2008-08-23 Andreas Schwab <schwab@suse.de>
9565
9566 * process.c (procfs_system_process_attributes): Fix use of
9567 uninitialized variables.
9568
9569 2008-08-23 Eli Zaretskii <eliz@gnu.org>
9570
9571 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
9572
9573 * dispnew.c (init_display): Remove MS-DOS specific conditions for
9574 calling tty-set-up-initial-frame-faces.
9575
9576 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
9577 Allow MSDOS frames along with X frames.
9578
9579 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
9580 addition to output_termcap.
9581
9582 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
9583
9584 * termchar.h (FRAME_TTY): Support output_msdos_raw.
9585 (struct tty_display_info) [MSDOS]: Add fields related to mouse
9586 highlight.
9587
9588 * process.c [!subprocesses]: Define QCname.
9589 (syms_of_process): Intern and staticpro it.
9590
9591 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
9592 Adjust for changes in encoding/decoding routines.
9593 Use encode_coding_object and decode_coding_object instead of
9594 encode_coding and decode_coding.
9595
9596 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
9597
9598 * dosfns.c: Include frame.h before termhooks.h.
9599 (dos_cleanup): Use CURTTY ()->termscript instead of a global
9600 variable termscript.
9601
9602 * s/msdos.h (USER_FULL_NAME): Define.
9603 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
9604
9605 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
9606 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
9607 pw->pw_gecos.
9608
9609 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
9610 SELECTED_FRAME as additional (1st) argument.
9611 (tty_read_avail_input): Handle output_msdos_raw in
9612 addition to output_termcap.
9613
9614 * msdos.c: Include frame.h before termhooks.h.
9615 (mouse_on, mouse_off, mouse_moveto, mouse_init)
9616 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
9617 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
9618 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
9619 (IT_set_terminal_modes, IT_reset_terminal_modes)
9620 (IT_set_frame_parameters): Use tty->termscript instead of a global
9621 variable termscript.
9622 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
9623 global variable terminal_coding. Don't refer to
9624 Vnonascii_translation_table.
9625 (internal_terminal_init): Set Vwindow_system in current_kboard.
9626 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
9627 Announce date and time of session start, if termscript is open.
9628 Don't zero out the_only_display_info (it is done in
9629 term.c:init_tty). Open termscript only of not already open.
9630 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
9631 here instead of dos_ttraw. Don't initialize display if this is an
9632 initial tty. Don't set FRAME_FONT.
9633 (Vwindow_system_version): Bump to 23.
9634 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
9635 is available, set up mouse_position_hook.
9636 (dos_ttraw, IT_set_terminal_modes): If called with initial
9637 terminal, do nothing.
9638 (IT_set_frame_parameters): Handle the Qtty_type frame
9639 parameter by calling internal_terminal_init.
9640 (dos_set_window_size, show_mouse_face)
9641 (clear_mouse_face, IT_note_mode_line_highlight)
9642 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
9643 (dos_rawgetc): Use tty_display_info instead of x_display_info.
9644 (initialize_msdos_display): New function.
9645 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
9646 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
9647 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
9648 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
9649 Accept additional argument: a pointer to a frame. Update all callers.
9650 (request_sigio, unrequest_sigio): Don't define, now defined on
9651 sysdep.c.
9652 (IT_write_glyphs): Rewrite to use encode_terminal_code.
9653
9654 * term.c [MSDOS]: Include msdos.h.
9655 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
9656 conditional to DOS_NT. Allow only one call to this function in a
9657 session. Don't allocate a new struct tty_display_info; instead,
9658 reuse the_only_display_info. Call get_tty_size to get screen
9659 dimensions. Call init_baud_rate to set bad_rate.
9660 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
9661 (Fsuspend_tty) [MSDOS]: Don't close input and output.
9662 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
9663 (get_tty_terminal, get_named_tty, Ftty_type)
9664 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
9665 output_termcap.
9666 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
9667 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
9668 only when subprocesses are supported.
9669
9670 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
9671 f->output_data.x.
9672 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
9673 terminal devices.
9674
9675 * msdos.h: Remove definition of struct x_display_info and struct
9676 x_output.
9677 (FRAME_FONT): Use output_data.tty.
9678 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
9679 (struct x_display_info): Rename from display_info. Update all users in
9680 msdos.c.
9681 (struct x_output): Remove background_pixel and foreground_pixel.
9682 (the_only_display_info): Rename from the_only_x_display.
9683 (dos_ttraw): Update prototype.
9684
9685 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
9686 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
9687
9688 2008-08-23 Jason Rumney <jasonr@gnu.org>
9689
9690 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
9691 (fn_TIFFSetDirectory): New library function used.
9692 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
9693 (tiff_load): Use :index to select among multiple images. Set count
9694 property when multiple images exist.
9695 (gif_format): Use :index, not :image.
9696
9697 2008-08-23 Chong Yidong <cyd@stupidchicken.com>
9698
9699 * xdisp.c (try_scrolling): Check INT_MAX instead of
9700 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
9701 to obtain INT_MAX.
9702
9703 2008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
9704
9705 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
9706
9707 2008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
9708
9709 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
9710 GNUstep library location.
9711
9712 2008-08-21 Chong Yidong <cyd@stupidchicken.com>
9713
9714 * xfaces.c (x_update_menu_appearance): Check validity of menu font
9715 before using it.
9716
9717 * puresize.h (BASE_PURESIZE): Increase to 1250000.
9718
9719 2008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9720
9721 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
9722 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
9723 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
9724 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
9725 (EmacsApp-cursor_blink_handler): Remove declaration.
9726 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
9727 match 01 Feb 2008 changes in xterm.c.
9728 (ns_read_socket): Add cast to avoid warning.
9729 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
9730 GNUstep.
9731
9732 2008-08-20 Chong Yidong <cyd@stupidchicken.com>
9733
9734 * xselect.c (x_get_foreign_selection): Return nil if desired
9735 selection could not be obtained, instead of signalling an error.
9736
9737 2008-08-20 David Reitter <david.reitter@gmail.com>
9738
9739 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
9740 * nsterm.m: Remove ns-specific code for cursor blinking.
9741 (ns_draw_window_cursor): Clear cursor properly rather than
9742 redrawing the area. Respect width of bar cursors.
9743 These changes enable the use of generic blink-cursor-mode and
9744 generic cursor types in NS and support smooth cursor movements (do
9745 not blink off after command).
9746 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
9747 Nextstep, too.
9748
9749 2008-08-19 Kenichi Handa <handa@m17n.org>
9750
9751 * font.c (Vfont_log_deferred): New variable.
9752 (font_add_log): Check Vfont_log_deferred.
9753 (font_deferred_log): New function.
9754
9755 * font.h (font_deferred_log): Extern it.
9756
9757 * fontset.c (reorder_font_vector): Use encoding charset of fonts
9758 for sorting.
9759 (face_for_char): Use deferred log.
9760
9761 2008-08-18 Kenichi Handa <handa@m17n.org>
9762
9763 * fontset.c (face_for_char): Add font log.
9764
9765 * font.c (font_add_log): Add the font properties :script, :lang,
9766 and :otf in the log.
9767
9768 2008-08-17 Chong Yidong <cyd@stupidchicken.com>
9769
9770 * xdisp.c: Remove dead code.
9771 (handle_invisible_prop, next_overlay_string): Defer call to
9772 setup_for_ellipsis.
9773 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
9774
9775 2008-08-15 Chong Yidong <cyd@stupidchicken.com>
9776
9777 * xfaces.c (lookup_derived_face): Properly handle possible zero
9778 return value of get_lface_attributes.
9779 (merge_faces): Don't tell lookup_derived_face to signal an error
9780 if face is not found.
9781
9782 * dired.c (Fdirectory_files): Doc fix.
9783
9784 * process.c (make_process): Initialize kill_without_query struct
9785 member.
9786
9787 2008-08-15 Eli Zaretskii <eliz@gnu.org>
9788
9789 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
9790 Alternative calculation of totphys for Visual Studio 6.
9791
9792 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
9793
9794 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
9795 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
9796 All users changed.
9797 (stat): Only root directory passed to GetDriveType. Allow RAM
9798 disk as well as local fixed disk when w32-get-true-file-attributes
9799 is set to `local'.
9800 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
9801 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
9802 (w32_cached_id, w32_add_to_cache): New functions.
9803 (get_name_and_id): Look account names in the cache before calling
9804 lookup_account_sid.
9805 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
9806 New initialization flags.
9807 (globals_of_w32): Initialize them to zero.
9808 (w32_system_process_attributes): Use w32_cached_id and
9809 w32_add_to_cache.
9810
9811 2008-08-14 Lawrence Mitchell <wence@gmx.li>
9812
9813 * lread.c (Fread_char, Fread_char_exclusive): If no character
9814 event is read before timeout is reached, return nil, rather than
9815 converting to a number.
9816
9817 2008-08-14 Chong Yidong <cyd@stupidchicken.com>
9818
9819 * fns.c (use_dialog_box): Doc fix.
9820
9821 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
9822 on OS X.
9823
9824 2008-08-13 Chong Yidong <cyd@stupidchicken.com>
9825
9826 * frame.c (Qns_parse_geometry): New var.
9827 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
9828
9829 2008-08-11 Chong Yidong <cyd@stupidchicken.com>
9830
9831 * xdisp.c (x_produce_glyphs): Handle the case when font has no
9832 space character in calculating tabs.
9833
9834 2008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
9835
9836 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
9837
9838 2008-08-10 Glenn Morris <rgm@gnu.org>
9839
9840 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
9841 silence gcc "limited range of data type" warnings in some
9842 make_fixnum_or_float calls.
9843
9844 2008-08-09 Eli Zaretskii <eliz@gnu.org>
9845
9846 * w32.c (w32_system_process_attributes): If the process does not
9847 exist, return nil.
9848
9849 * w32.c: Include thelp32.h, psapi.h and coding.h.
9850 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
9851 declarations.
9852 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
9853 (Process32Next_Proc): New typedefs.
9854 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
9855 (g_b_init_process32_next, g_b_init_open_thread_token)
9856 (g_b_init_impersonate_self, g_b_init_revert_to_self)
9857 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
9858 (g_b_init_get_process_working_set_size)
9859 (g_b_init_global_memory_status_ex): New static variables.
9860 (globals_of_w32): Initialize them.
9861 (create_toolhelp32_snapshot, process32_first, process32_next)
9862 (open_thread_token, impersonate_self, revert_to_self)
9863 (get_process_memory_info, get_process_working_set_size)
9864 (global_memory_status, global_memory_status_ex): New wrapper
9865 functions.
9866 (w32_list_system_processes, w32_system_process_attributes)
9867 (enable_privilege, restore_privilege, ltime, process_times):
9868 New functions.
9869 (convert_time_raw): New function.
9870 (convert_time): Remove conversion of FILETIME into time in 100
9871 nsec units, call convert_time_raw instead.
9872
9873 * process.h (w32_list_system_processes, w32_system_process_attributes):
9874 Add prototypes.
9875 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
9876 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
9877 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
9878 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
9879
9880 * process.c (Fsystem_process_attributes): Doc fix.
9881
9882 2008-08-08 Chong Yidong <cyd@stupidchicken.com>
9883
9884 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
9885 a continued multi-char glyph; if so, advance to the actual glyph.
9886
9887 2008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
9888
9889 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
9890
9891 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
9892 (.m.o): Use it.
9893 * config.in: Regenerate.
9894
9895 2008-08-07 Chong Yidong <cyd@stupidchicken.com>
9896
9897 * xdisp.c (redisplay_window): Revert last change.
9898 (try_window): Check bottom scroll margin too.
9899
9900 2008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
9901
9902 * config.in: Regenerate.
9903
9904 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
9905 -list-load-path-shadows'.
9906 (nsgui.h): Reduce number of things depending on it.
9907
9908 2008-08-06 Chong Yidong <cyd@stupidchicken.com>
9909
9910 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
9911 instead of window-end which does the wrong thing at eob.
9912 (try_cursor_movement): Minor optimization.
9913 (redisplay_window): If scroll margin is defined, don't assume
9914 window doesn't need scrolling.
9915
9916 2008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
9917
9918 * config.in: Regenerate.
9919
9920 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
9921 (mostlyclean): Don't delete *.d under NS.
9922
9923 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
9924
9925 2008-08-06 Kenichi Handa <handa@m17n.org>
9926
9927 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
9928
9929 2008-08-06 Andreas Schwab <schwab@suse.de>
9930
9931 * config.in: Regenerate.
9932
9933 2008-08-05 Chong Yidong <cyd@stupidchicken.com>
9934
9935 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
9936 forcing a window start.
9937
9938 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
9939 (auto_save_1): Update modtime when auto-save-list-file-name is on.
9940
9941 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9942
9943 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
9944 argument.
9945
9946 2008-08-05 Juanma Barranquero <lekktu@gmail.com>
9947
9948 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
9949 <scroll-down-aggressively, before-change-functions>:
9950 <after-change-functions>: Reflow docstrings.
9951
9952 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9953 Ken Raeburn <raeburn@gnu.org>
9954
9955 Dock menu customization, based on a patch by Ken Raeburn, plus some
9956 other fixes.
9957 * nsmenu.m (dockMenu): New variable.
9958 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
9959
9960 * nsterm.h (dockMenu): Declare.
9961
9962 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
9963 (ns_term_init): Initialize dockMenu.
9964 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
9965 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
9966 left.
9967
9968 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
9969
9970 2008-08-04 Chong Yidong <cyd@stupidchicken.com>
9971
9972 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
9973
9974 * config.in: Regenerate.
9975
9976 2008-08-04 Seiji Zenitani <zenitani@mac.com>
9977
9978 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
9979
9980 2008-08-04 Chong Yidong <cyd@stupidchicken.com>
9981
9982 * nsterm.h (find_and_call_menu_selection): Fix prototype.
9983
9984 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9985
9986 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
9987
9988 * keyboard.h: Comment an #endif.
9989
9990 * lisp.h (have_menus_p): Adjust comment.
9991
9992 * menu.c (find_and_return_menu_selection): Fix comparison with
9993 client_data.
9994
9995 * nsmenu.m (popup_activated_flag): New variable.
9996 (popup_activated): New function.
9997 (menu-or-popup-active-p): New exported lisp definition.
9998 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
9999 when popup done.
10000 (ns_popup_dialog): Set popup_activated_flag.
10001
10002 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
10003 version for GNUstep (handled by conditional typedef in nsterm.m).
10004 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
10005 in rgb.txt).
10006
10007 * process.c (init_process): Use DARWIN_OS, not DARWIN.
10008
10009 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
10010
10011 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
10012
10013 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
10014 shortcircuit if popup_activated like GTK and X toolkit.
10015
10016 * m/inter386.h: Change DARWIN to DARWIN_OS.
10017
10018 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
10019 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
10020 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
10021 comment on NO_SOCK_SIGIO.
10022
10023 2008-08-03 Chong Yidong <cyd@stupidchicken.com>
10024
10025 * nsterm.m (windowDidResize): Remove stopModal call.
10026
10027 2008-08-03 Andreas Schwab <schwab@suse.de>
10028
10029 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
10030 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
10031
10032 2008-08-02 Chong Yidong <cyd@stupidchicken.com>
10033
10034 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
10035 Don't use uninitialized pointer variable when using getrlimit.
10036
10037 2008-08-02 Jason Rumney <jasonr@gnu.org>
10038
10039 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
10040
10041 2008-08-02 Eli Zaretskii <eliz@gnu.org>
10042
10043 * alloc.c (NSTATICS): Bump to 0x640.
10044
10045 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
10046
10047 * lisp.h: Add prototype for directory_files_internal.
10048
10049 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
10050 New functions.
10051 (syms_of_process): Defsubr them. Add initializations for various
10052 Q* symbols used in procfs_system_process_attributes.
10053 (procfs_list_system_processes, procfs_system_process_attributes)
10054 [HAVE_PROCFS]: New functions.
10055 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
10056 (procfs_get_total_memory): New functions.
10057
10058 2008-08-01 Juanma Barranquero <lekktu@gmail.com>
10059
10060 * xfaces.c (Fx_load_color_file): Fix previous change;
10061 it is #ifdef WINDOWSNT, not WINDOWS_NT.
10062
10063 2008-08-01 Michael Albinus <michael.albinus@gmx.de>
10064
10065 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
10066
10067 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
10068
10069 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
10070
10071 2008-08-01 Chong Yidong <cyd@stupidchicken.com>
10072
10073 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
10074
10075 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
10076 define NSApplicationDelegateReplySuccess.
10077 (EmacsView -converstationIdentifier): Use long instead of
10078 NSInteger for GNUstep, since it doesn't have NSInteger.
10079
10080 * xmenu.c: Revert last change.
10081
10082 * keyboard.h: Fix last change.
10083
10084 2008-08-01 Juanma Barranquero <lekktu@gmail.com>
10085
10086 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
10087 on Windows.
10088
10089 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
10090
10091 Warning clearing and clean-up in NS port.
10092 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
10093 Add prototypes.
10094 * nsgui.h (FACE_DEFAULT): Remove, unused.
10095 (XGCValues): Change colors to unsigned long.
10096 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
10097 nsterm.m.
10098 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
10099 (ns_list_fonts): Remove, unused.
10100 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
10101 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
10102 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
10103 (nsfont_draw): Compare face colors to 0, not nil.
10104 * nsmenu.m (struct widget_value): Drop unneeded declaration.
10105 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
10106 (-addSubmenuWithTitle:): Use NSMenuItem class.
10107 (ns_popup_menu): Use NO, not NULL, for enabled setting.
10108 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
10109 (ns_clip_to_row): Make gc arg a BOOL.
10110 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
10111 ns_clip_to_row() call.
10112 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
10113 used). Cast FRAME_FONT assignments.
10114 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
10115 (ns_string_to_lispmod): Change arg to const char.
10116 (ns_term_init): Use NSMenuItem class.
10117 (EmacsApp -openFile:): Move to different section of file.
10118 (EmacsApp -application:openFiles:): Don't return a value, call
10119 -replyToOpenOrPrint:.
10120 (EmacsView -keyDown:): Fix up cast.
10121 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
10122 (EmacsView -menuDown:): Cast tag in call to
10123 find_and_call_menu_selection().
10124 (ns_list_fonts): Remove, unused.
10125 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
10126 (ns_fontname_to_xlfd): Make static.
10127 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
10128 Remove prototypes (now in keyboard.h).
10129 (next_menubar_widget_id): Remove, unused.
10130 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
10131 Remove prototypes (now in keyboard.h).
10132 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
10133
10134 2008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
10135
10136 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
10137 (floatfns.o): Depend on syssignal.h.
10138 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
10139
10140 * systty.h: Fix previous change that removed BSD_TERMIOS.
10141 Add comments to #ifdefs.
10142
10143 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
10144
10145 * w32fns.c (w32-load-color-file): Remove.
10146 (x-open-connection): Use renamed Fx_load_color_file.
10147 * xfaces.c (x-load-color-file): Add.
10148 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
10149 Emacs.clr.
10150 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
10151
10152 2008-07-31 Michael Albinus <michael.albinus@gmx.de>
10153
10154 * dbusbind.c (Fdbus_call_method_asynchronously)
10155 (Fdbus_method_error_internal): New defuns.
10156 (xd_read_message): Handle also reply messages.
10157 (Vdbus_registered_functions_table): Extend docstring.
10158
10159 2008-07-31 Juanma Barranquero <lekktu@gmail.com>
10160
10161 * keyboard.c (gobble_input): Fix previous change.
10162
10163 2008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
10164
10165 * bitmaps/README:
10166 * xfns.c:
10167 * termcap.c:
10168 * term.c:
10169 * syswait.h:
10170 * systty.h:
10171 * systime.h:
10172 * syssignal.h:
10173 * sysdep.c:
10174 * process.h:
10175 * process.c:
10176 * print.c:
10177 * ndir.h:
10178 * lread.c:
10179 * keyboard.c:
10180 * getpagesize.h:
10181 * floatfns.c:
10182 * fileio.c:
10183 * emacs.c:
10184 * doc.c:
10185 * dispnew.c:
10186 * dired.c:
10187 * data.c:
10188 * callproc.c:
10189 * buffer.c:
10190 * README:
10191 * Makefile.in:
10192 * s/template.h:
10193 * s/msdos.h:
10194 * m/vax.h: Remove VMS support.
10195 * s/vms.h:
10196 * vlimit.h:
10197 * uaf.h:
10198 * temacs.opt:
10199 * param.h:
10200 * ioctl.h: Remove file.
10201
10202 2008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
10203
10204 * s/ms-w32.h (MULTI_KBOARD): Remove.
10205 * xterm.c:
10206 * xselect.c:
10207 * xfns.c:
10208 * window.c:
10209 * w32term.c:
10210 * w32fns.c:
10211 * terminal.c:
10212 * termhooks.h:
10213 * term.c:
10214 * sysdep.c:
10215 * keyboard.h:
10216 * keyboard.c:
10217 * frame.h:
10218 * frame.c:
10219 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
10220 * config.in: Regenerate.
10221
10222 2008-07-30 Jason Rumney <jasonr@gnu.org>
10223
10224 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
10225
10226 * w32font.c (w32font_encode_char): Leave as unicode if in range.
10227 (w32font_open_internal): Get unicode version of textmetrics.
10228 Don't enable or disable glyph indices here.
10229 (w32font_open): Disable use of glyph indices.
10230
10231 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
10232
10233 2008-07-30 Chong Yidong <cyd@stupidchicken.com>
10234
10235 * minibuf.c (Vread_buffer_function): Doc fix.
10236
10237 2008-07-30 John Paul Wallington <jpw@pobox.com>
10238
10239 * minibuf.c (read_buffer_completion_ignore_case): New var.
10240 (Fread_buffer): Use it.
10241
10242 2008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
10243
10244 * systty.h (sensemode): Remove empty #if. Remove reference to
10245 BSD_TERMIOS, unused.
10246
10247 * sysdep.c: Remove reference to DGUX.
10248 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
10249
10250 * config.in: Regenerate.
10251
10252 2008-07-30 Jason Rumney <jasonr@gnu.org>
10253
10254 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
10255
10256 2008-07-29 Jason Rumney <jasonr@gnu.org>
10257
10258 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
10259 is populated.
10260 (uniscribe_encode_char): Always use uniscribe.
10261 Avoid using context if cache is populated.
10262
10263 2008-07-29 Jan Djärv <jan.h.d@swipnet.se>
10264
10265 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
10266 open menu.
10267
10268 * gtkutil.c (menu_nav_ended): Remove.
10269 (create_menus): Remove signal connect for menu_nav_ended.
10270
10271 2008-07-28 Chong Yidong <cyd@stupidchicken.com>
10272
10273 * xdisp.c (redisplay_window): Check return value of
10274 compute_window_start_on_continuation_line before forcing a window
10275 start.
10276
10277 2008-07-28 Jason Rumney <jasonr@gnu.org>
10278
10279 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
10280
10281 * w32term.c (w32_enable_unicode_output, cleartype_active):
10282 Remove obsolete display options.
10283 (x_draw_glyph_string_background): Don't use old cleartype_active
10284 workaround.
10285 (w32_initialize): Remove cleartype_active initialization.
10286 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
10287
10288 2008-07-28 Andreas Schwab <schwab@suse.de>
10289
10290 * lisp.h (init_weak_hash_tables, syms_of_font)
10291 (xd_read_queued_messages, syms_of_dbusbind): Declare.
10292 (remove_hash_entry): Don't declare.
10293 * eval.c (maybe_call_debugger): Make static and move before use.
10294 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
10295 * xdisp.c: Include "gtkutil.h" if USE_GTK.
10296 * xterm.h (x_set_frame_alpha): Declare.
10297
10298 2008-07-28 Jan Djärv <jan.h.d@swipnet.se>
10299
10300 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
10301 (create_menus): Connect selection-done to menu_nav_ended.
10302
10303 2008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
10304
10305 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
10306 Set Vx_resource_name to a fallback. Replace read of 'buffered'
10307 parameter with read of 'alpha' one.
10308 (Qns_frame_parameter): Remove.
10309 * nsselect.m (selection-coding-system)
10310 (next-selection-coding-system, Vselection_coding_system)
10311 (Vnext_selection_coding_system): Drop.
10312
10313 2008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
10314
10315 * nsfns.m (do-applescript, do_applescript): Rename to
10316 ns-do-applescript, ns_do_applescript, and move within file.
10317
10318 2008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
10319
10320 Remove support for Mac Carbon.
10321 * mactoolbox.c:
10322 * macterm.h:
10323 * macterm.c:
10324 * macselect.c:
10325 * macmenu.c:
10326 * macgui.h:
10327 * macfns.c:
10328 * mac.c: Remove file.
10329 * s/darwin.h:
10330 * m/intel386.h:
10331 * xfaces.c:
10332 * xdisp.c:
10333 * window.c:
10334 * tparam.c:
10335 * termhooks.h:
10336 * termcap.c:
10337 * term.c:
10338 * syssignal.h:
10339 * sysselect.h:
10340 * sysdep.c:
10341 * process.c:
10342 * lread.c:
10343 * lisp.h:
10344 * keyboard.c:
10345 * image.c:
10346 * fringe.c:
10347 * frame.h:
10348 * frame.c:
10349 * fontset.c:
10350 * font.h:
10351 * font.c:
10352 * fns.c:
10353 * fileio.c:
10354 * emacs.c:
10355 * dispnew.c:
10356 * dispextern.h:
10357 * config.in:
10358 * atimer.c:
10359 * Makefile.in: Remove code for Carbon.
10360
10361 2008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10362
10363 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
10364
10365 2008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10366
10367 * macterm.h (kCGBitmapByteOrder32Host): New define for
10368 non-universal SDKs.
10369
10370 * image.c (mac_create_cg_image_from_image, image_load_image_io)
10371 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
10372
10373 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
10374 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
10375
10376 2008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
10377
10378 * w32inevt.c: Include dispextern.h.
10379
10380 2008-07-26 Andreas Schwab <schwab@suse.de>
10381
10382 * print.c (print_object): Fix off-by-one in last change.
10383
10384 2008-07-25 Juanma Barranquero <lekktu@gmail.com>
10385
10386 * term.c (syms_of_term): Don't initialize default_orig_pair,
10387 default_set_foreground and default_set_background on Windows.
10388
10389 2008-07-25 Jason Rumney <jasonr@gnu.org>
10390
10391 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
10392 ScriptItemize. Clean up return value checking. Remove unused
10393 variables.
10394 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
10395 shaping engine.
10396
10397 * w32font.c (w32font_has_char): Handle the case where we can't
10398 determine the script for a character.
10399
10400 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
10401
10402 * term.c (syms_of_term): Initialize default_orig_pair,
10403 default_set_foreground, and default_set_background.
10404
10405 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
10406 clash (bug#86).
10407 (getloadavg): Callers changed.
10408
10409 * image.c (svg_load_image): Fix last change.
10410 (svg_load_image): Use rsvg_handle_get_dimensions to check that
10411 image size is valid. Use g_object_unref instead of deprecated
10412 rsvg_handle_free to free rsvg handle.
10413 (x_from_xcolors): Don't initialize pixmap (silence compiler).
10414
10415 2008-07-25 Jason Rumney <jasonr@gnu.org>
10416
10417 * w32font.c (w32font_encode_char): Encode characters outside BMP as
10418 surrogates before looking up glyph index.
10419 (w32font_text_extents): Encode as surrogates if falling back to
10420 functions that need UTF-16 wide chars.
10421
10422 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
10423 BMP as surrogates before looking up glyph index.
10424
10425 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
10426
10427 * image.c (svg_load_image): Check for failure in return value of
10428 rsvg_handle_get_pixbuf. Free rsvg handle when done.
10429
10430 2008-07-25 Jason Rumney <jasonr@gnu.org>
10431
10432 * w32font.c (Fx_select_font): Reverse sense of second arg.
10433
10434 2008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
10435
10436 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
10437 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
10438
10439 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
10440 (PURESIZE): Use it.
10441
10442 2008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
10443
10444 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
10445 * m/alpha.h (TEXT_END):
10446 * m/ibmrs6000.h (TEXT_END):
10447 * m/macppc.h (TEXT_END):
10448 * s/darwin.h (TEXT_END):
10449 * s/msdos.h (TEXT_END): Remove, unused.
10450 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
10451 * s/cygwin.h: Remove comment.
10452
10453 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
10454 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
10455 * m/intel386.h (DOT_GLOBAL_START):
10456 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
10457 (USG): Remove, file not used on USG platforms.
10458
10459 * Makefile.in (HAVE_X11): Remove empty #else.
10460
10461 2008-07-24 Andreas Schwab <schwab@suse.de>
10462
10463 * fileio.c (Finsert_file_contents): Properly adjust undo list
10464 after format conversion.
10465
10466 2008-07-24 Jan Djärv <jan.h.d@swipnet.se>
10467
10468 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
10469 (menu_nav_ended): Remove.
10470 (create_menus): Remove signal connect for menu_nav_ended.
10471 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
10472 create_menus.
10473 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
10474
10475 2008-07-23 Jason Rumney <jasonr@gnu.org>
10476
10477 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
10478 with opened font.
10479 (w32font_open): Set font type to gdi.
10480
10481 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
10482
10483 2008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
10484
10485 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
10486 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
10487 defines it.
10488 * unexec.c (ADDR_CORRECT): Define unconditionally.
10489
10490 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
10491
10492 * unexec.c: Remove code depending on !COFF and USG, the file is
10493 not used for such systems.
10494
10495 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
10496 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
10497 (LD_SWITCH_SYSTEM_1): Remove, update users.
10498
10499 * s/darwin.h (DATA_END):
10500 * m/intel386.h (DATA_END):
10501 * m/ibmrs6000.h (DATA_END):
10502 * m/alpha.h (DATA_END): Remove, unused.
10503
10504 * config.in: Regenerate.
10505 * s/ms-w32.h (subprocesses): Define unconditionally.
10506 * s/template.h (subprocesses): Update comment.
10507 * s/vms.h (subprocesses):
10508 * s/usg5-4.h (subprocesses):
10509 * s/hpux10-20.h (subprocesses):
10510 * s/gnu-linux.h (subprocesses):
10511 * s/cygwin.h (subprocesses):
10512 * s/bsd-common.h (subprocesses):
10513 * s/aix4-2.h (subprocesses):
10514 * s/darwin.h (subprocesses): Do not define, defined by default now.
10515
10516 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
10517 Remove all references.
10518 (temacs): Add GNUstep specific ld flags.
10519
10520 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
10521 similarly to what X does.
10522
10523 2008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
10524
10525 * nsfns.m (x-list-fonts): Remove.
10526 (syms_of_nsfns): Drop the x-list-fonts declaration.
10527 * nsterm.m: Get rid of remaining "//" comments.
10528
10529 2008-07-22 Chong Yidong <cyd@stupidchicken.com>
10530
10531 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
10532
10533 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
10534 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
10535 (Fns_own_selection_internal, Fx_disown_selection_internal)
10536 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
10537
10538 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
10539 ... */' style of docstrings. Doc fixes.
10540
10541 2008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
10542
10543 * terminfo.c (UP, BC, PC): Undo previous change.
10544
10545 * nsfns.m: Rename ns prefixed functions/variables to the
10546 corresponding x versions. Update references.
10547
10548 2008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
10549
10550 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
10551
10552 2008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
10553
10554 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
10555 Remove forwarding functions.
10556 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
10557 non-static.
10558 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
10559 non-static.
10560 (ns_frame_parm_handlers): Use the new names.
10561 (syms_of_nsfns): Move to the end of file.
10562
10563 * nsterm.m (syms_of_nsterm): Move to the end of file.
10564
10565 * dispnew.c (init_display): Remove code for X10.
10566
10567 2008-07-22 Jason Rumney <jasonr@gnu.org>
10568
10569 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
10570 bare drive.
10571
10572 2008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
10573
10574 * nsterm.m (syms_of_nsterm): Remove debugging println.
10575
10576 2008-07-22 David Reitter <david.reitter@gmail.com>
10577
10578 * nsfns.m (do_applescript, F_do_applescript): NS version of the
10579 Carbon implementation of the same functionality: execute arbitrary
10580 AppleScript code.
10581
10582 2008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
10583
10584 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
10585 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
10586 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
10587 (Fx_display_mm_height, Fx_display_mm_width)
10588 (Fx_display_backing_store, Fx_display_visual_class)
10589 (Fx_display_save_under, Fx_open_connection)
10590 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
10591 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
10592 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
10593 (Fx_display_pixel_width, Fx_display_pixel_height)
10594 (Fx_display_usable_bounds, Fx_display_planes)
10595 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
10596 ... */' style of docstrings.
10597
10598 2008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
10599
10600 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
10601 on this platform.
10602 (mips):
10603 * m/iris4d.h (mips): Do not define.
10604 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
10605
10606 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
10607
10608 * image.c:
10609 * nsfns.m:
10610 * nsselect.m:
10611 * nsterm.h:
10612 * nsterm.m: Rename ns prefixed functions/variables to the
10613 corresponding x versions. Update references.
10614
10615 * m/ibms390x.h (NO_REMAP): Do not undefine.
10616
10617 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
10618
10619 2008-07-21 Chong Yidong <cyd@stupidchicken.com>
10620
10621 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
10622 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
10623 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
10624 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
10625 (Fns_display_mm_height, Fns_display_mm_width)
10626 (Fns_display_backing_store, Fns_display_visual_class)
10627 (Fns_display_save_under, Fns_open_connection)
10628 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
10629 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
10630 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
10631 (Fns_display_pixel_width, Fns_display_pixel_height)
10632 (Fns_display_usable_bounds, Fx_display_planes)
10633 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
10634
10635 2008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
10636
10637 * print.c (print_object): Check print_depth before searching for
10638 circularities.
10639
10640 2008-07-21 Michael Albinus <michael.albinus@gmx.de>
10641
10642 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
10643 only sprintf.
10644
10645 2008-07-21 Kenichi Handa <handa@m17n.org>
10646
10647 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
10648
10649 2008-07-20 Andreas Schwab <schwab@suse.de>
10650
10651 * syntax.c (find_start_pos, find_start_value)
10652 (find_start_value_byte, find_start_begv, find_defun_start)
10653 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
10654
10655 2008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
10656
10657 * s/sol2-3.h: Insert contents of s/sol2.h.
10658 (LD_SWITCH_SYSTEM): Remove redundant definition.
10659 * s/sol2.h: Remove, unused.
10660
10661 2008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
10662
10663 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
10664
10665 2008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
10666
10667 * Makefile.in (ns_appdir): Fix typo in find command.
10668
10669 2008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
10670
10671 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
10672
10673 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
10674 added not supported anymore.
10675
10676 * s/usg5-4-2.h (LIBS_SYSTEM):
10677 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
10678
10679 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
10680 * s/lynxos.h (GETPGRP_NO_ARG):
10681 * s/hpux10-20.h (NO_SIOCTL_H):
10682 * s/gnu.h (GETPGRP_NO_ARG):
10683 * s/gnu-linux.h (NO_SIOCTL_H):
10684 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
10685 * s/cygwin.h (GETPGRP_NO_ARG):
10686 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
10687 (C_DEBUG_SWITCH): Remove duplicate definition.
10688
10689 * m/ibms390.h: Remove boilerplate comments.
10690
10691 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
10692
10693 * process.c (HAVE_SERIAL): Consolidate ifdefs.
10694 (wait_reading_process_output): Remove code for SunOS, platform not
10695 supported anymore. Use SOLARIS2 instead of sun.
10696
10697 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
10698
10699 * font.c (font_open_by_name): Under NS, default lface height to zero.
10700 (font_open_for_lface): Under NS, set size based on frame fontsize.
10701 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
10702 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
10703
10704 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
10705
10706 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
10707 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
10708 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
10709 YES/NO.
10710 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
10711 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
10712 * Makefile.in (clean): Clear out build destination dir.
10713
10714 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
10715
10716 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
10717 xterm, xselect.
10718 * lisp.h: Remove declaration of hash_remove.
10719 * nsgui.h: Remove redefinitions of hash_remove.
10720 * fns.c (hash_remove): Rename to hash_remove_from_table.
10721
10722 2008-07-19 Seiji Zenitani <zenitani@mac.com>
10723
10724 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
10725 strdup() the family UTF8String before modifying it.
10726
10727 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
10728
10729 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
10730 NS_FACE_BACKGROUND with 0 instead of nil.
10731 * nsfont.m (nsfont_draw): Same.
10732
10733 2008-07-19 Chong Yidong <cyd@stupidchicken.com>
10734
10735 * nsfns.m (ns_set_background_color): Fix crash.
10736
10737 2008-07-18 Chong Yidong <cyd@stupidchicken.com>
10738
10739 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
10740
10741 2008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
10742
10743 * puresize.h (BASE_PURESIZE): Increase to 1240000.
10744
10745 2008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10746
10747 * gtkutil.c: Include <config.h> instead of "config.h".
10748
10749 * lisp.h (Foverlay_buffer): Add EXFUN.
10750
10751 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
10752 child process to complete child_setup. Undo 2005-09-21 change.
10753
10754 * s/darwin.h: Mention setsid after vfork.
10755
10756 2008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10757
10758 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
10759 Depend on macgui.h.
10760
10761 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
10762 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
10763
10764 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
10765 and f19.
10766 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
10767
10768 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
10769 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
10770 Remove enumerators.
10771
10772 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
10773 Check if FACE_FROM_ID returns NULL.
10774
10775 2008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
10776
10777 * w32inevt.c (change_frame_size): Remove extern declaration.
10778 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
10779 change_frame_size.
10780
10781 2008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
10782
10783 * getloadavg.c: Revert last change (2008-07-15).
10784
10785 2008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
10786
10787 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
10788 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
10789 from configure.
10790
10791 2008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
10792
10793 * s/sol2.h:
10794 * s/sol2-4.h: Reorganize conditionals.
10795
10796 * ecrt0.c: Remove code depending on m68000, not used anymore.
10797
10798 * fns.c (hash_remove): Make static.
10799 * lisp.h (hash_remove): Don't prototype.
10800
10801 * m/ibmrs6000.h:
10802 * m/ibms390x.h:
10803 * m/macppc.h: Remove boilerplate comments.
10804
10805 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
10806 Solaris, which does not need them.
10807
10808 * m/vax.h: Remove comments about unsupported systems.
10809
10810 * s/darwin.h: Reorganize ifdefs.
10811
10812 2008-07-17 Andreas Schwab <schwab@suse.de>
10813
10814 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
10815
10816 2008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
10817
10818 Use SDATA. Follow coding convention of placing operators at
10819 beginning of next line rather than end of previous line, and placing
10820 spaces around infix operators.
10821
10822 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
10823 in case it was defined already.
10824 USE @GNUSTEP_MAKEFILES@ rather than envvars.
10825 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
10826 ns_default.
10827 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
10828 Lisp_Objects.
10829 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
10830 (ns_defined_color, ns_color_to_lisp): Declare.
10831 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
10832 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
10833 it's accepted even with USE_LISP_UNION_TYPE.
10834 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
10835 (update_frame_tool_bar): Remove apparently obsolete tests for
10836 non-integerness of f->tool_bar_lines.
10837 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
10838 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
10839 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
10840 (nsfont_open): Don't confuse NULL for Qnil.
10841 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
10842 * menu.h (find_and_call_menu_selection):
10843 * menu.c (find_and_call_menu_selection): Use just int for vector size.
10844 (find_and_return_menu_selection): Always return something.
10845 * frame.h: Include dispextern.h for Display_Info.
10846 (display_x_get_resource): Declare.
10847
10848 2008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
10849
10850 * syntax.c: Remove stdio.h include accidentally introduced in
10851 Emacs.app commit.
10852 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
10853 NS_IMPL_COCOA.
10854 * keyboard.c (handle_async_input, input_available_signal): Remove
10855 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
10856
10857 2008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
10858
10859 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
10860 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
10861 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
10862 Use SDATA.
10863
10864 * keymap.c: Remove all NS-specific code.
10865 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
10866 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
10867 where_is_preferred_modifier, return a different value depending on how
10868 preferred is the binding.
10869 (where_is_internal): Adjust accordingly.
10870 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
10871 Adjust to new preferred_sequence_p.
10872 (syms_of_keymap): Declare `where-is-preferred-modifier'.
10873 * keyboard.c (parse_solitary_modifier): Not static any more.
10874 * keyboard.h (parse_solitary_modifier): Declare.
10875
10876 2008-07-16 Andreas Schwab <schwab@suse.de>
10877
10878 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
10879 of easymenu.
10880
10881 2008-07-16 Chong Yidong <cyd@stupidchicken.com>
10882
10883 * xdisp.c (move_it_in_display_line): Account for word wrap, so
10884 that we don't move off the line.
10885
10886 2008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
10887
10888 * keyboard.c (Qsuper): Remove.
10889 (parse_menu_item): Don't call where_is_internal specially for NS.
10890
10891 2008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
10892
10893 * s/gnu-linux.h: Remove boilerplate comments.
10894
10895 * m/alpha.h (__ELF__): Consolidate conditions.
10896
10897 * m/m68k.h (linux): Use GNU_LINUX instead.
10898 Remove boilerplate comments.
10899
10900 * m/intel386.h: Undo refactoring from previous change.
10901 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
10902 too, remove dead code.
10903 (linux): Use GNU_LINUX instead.
10904
10905 2008-07-16 Jason Rumney <jasonr@gnu.org>
10906
10907 * w32gui.h: Repeat 26 June changes lost by last change.
10908
10909 2008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
10910
10911 * systty.h: Remove code for Aix on 386, unsupported platform.
10912
10913 * s/ms-w32.h: Remove boilerplate comments.
10914 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
10915
10916 * s/gnu-linux.h (TERM): Remove support.
10917 (HAVE_SYSVIPC): Remove, unused.
10918 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
10919 for this system.
10920
10921 * process.c: Remove support for IRIS, unused.
10922 Remove support for TERM, not relevant anymore.
10923
10924 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
10925 used with the definition.
10926
10927 * s/aix4-2.h (static): Do not undef.
10928
10929 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
10930 only used on Aix.
10931 (HAVE_SYSVIPC): Remove, unused.
10932
10933 * m/hp800.h (CANNOT_DUMP): Do not undef.
10934
10935 * m/alpha.h: Fix comment.
10936
10937 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
10938 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
10939 used by this configuration.
10940 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
10941 * unexec.c: Remove code depending on HPUX and
10942 USG_SHARED_LIBRARIES, not used with this file. Remove code
10943 depending on IRIS, unused. Remove if 0-ed code.
10944
10945 * s/template.h: Remove comments about static.
10946
10947 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
10948 Remove if 0-ed code.
10949 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
10950 were the same as the default.
10951 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
10952 Remove boilerplate comments.
10953 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
10954 (HAVE_SYSVIPC): Remove, unused.
10955 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
10956
10957 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10958 Remove boilerplate comments.
10959 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10960 Remove boilerplate comments.
10961 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10962 Remove boilerplate comments.
10963 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
10964
10965 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
10966 USG systems which do not use DATA_SEG_BITS.
10967 Refactor code. Remove boilerplate comments.
10968
10969 * m/ibms390.h:
10970 * m/m68k.h:
10971 * s/bsd-common.h:
10972 * s/cygwin.h:
10973 * s/darwin.h:
10974 * s/freebsd.h:
10975 * s/gnu.h:
10976 * s/msdos.h: Remove boilerplate comments.
10977
10978 * m/iris4d.h: Remove boilerplate comments and code for systems that
10979 do not use this file.
10980 (IRIS_4D): Remove, unused.
10981
10982 * m/mips.h: Remove boilerplate comments and code for systems that
10983 do not use this file.
10984 (SIGN_EXTEND_CHAR):
10985 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
10986 * unexmips.c: Remove file, unused.
10987
10988 * editfns.c (Fuser_full_name): Replace the only use of
10989 USER_FULL_NAME with its value.
10990 * config.in: Regenerate.
10991
10992 2008-07-16 David Reitter <david.reitter@gmail.com>
10993
10994 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
10995 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
10996
10997 2008-07-16 Glenn Morris <rgm@gnu.org>
10998
10999 * emacs.c (system-type): Doc fix.
11000
11001 2008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
11002
11003 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
11004 If the cache doesn't work, let's fix it, rather than work around it.
11005
11006 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
11007
11008 * Makefile.in: Correct additions for nsfont.o in last commit.
11009 * nsfont.m: New file (forgot last commit).
11010
11011 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
11012
11013 * callproc.c (set_initial_environment): Initialize
11014 Vprocess_environment under CANNOT_DUMP (fixes crash when
11015 batch-compiling for bootstrap).
11016
11017 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
11018 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11019
11020 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
11021 fix crash due to different init order.
11022
11023 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
11024
11025 Changes and additions for NeXTstep windowing system (Cocoa and
11026 GNUstep) support.
11027
11028 * Makefile.in:
11029 * config.in: Support defines and build commands for NS port.
11030 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
11031 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
11032 * dispextern.h: Include nsgui.h and add needed typedefs under NS
11033 windowing.
11034 (struct face): Add synth_ital field.
11035 * dispnew.c: Include nsterm.h when compiling under NS windowing.
11036 (init_display): Initialize Vinitial_window_system to "ns" when so
11037 compiled.
11038 * emacs.c: Include GSConfig.h when compiling under GNUstep.
11039 (display_arg): Use under NS.
11040 (main): Under NS, allocate autorelease pool and handle command line
11041 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
11042 (standard_args): Add NS-specific args.
11043 (shut_down_emacs): Shut down NS terminal if compiled under NS.
11044 * font.c (DEFAULT_ENCODING): New variable.
11045 (font_find_for_lface): Use it.
11046 (syms_of_font): Load syms_of_nsfont under NS.
11047 * font.h: Declare nsfont_driver when compiled under NS.
11048 * fontset.c: When compiling under NS, include nsterm.h.
11049 (fontset_from_font): Autoconstruct fontset under NS.
11050 * frame.c (various): Under NS, include nsterm.h, add Qns window system
11051 symbol, document and use it.
11052 (do_switch_frame): When for_deletion under Cocoa, add
11053 Fraise_frame(Qnil).
11054 (x_set_frame_parameters): Ensure font attribute changes are picked up.
11055 (x_get_arg): Allow "yes" and "no" as boolean values.
11056 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
11057 Qright under Cocoa.
11058 (focus-follows-mouse): Default to 0 under NS.
11059 * frame.h (enum output_method): Add output_ns.
11060 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
11061 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
11062 (FRAME_WINDOW_P): NS-specific definition.
11063 * fringe.c (max_used_fringe_bitmap): Make public.
11064 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
11065 (getloadavg): Use NeXT code under descendant OS's.
11066 * image.c (includes and header section, x_create_bitmap_from_data)
11067 (x_create_bitmap_from_file, free_bitmap_record, image_background)
11068 (image_background_transparent, x_clear_image_1)
11069 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
11070 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
11071 (x_to_xcolors, x_from_xcolors, x_disable_image)
11072 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
11073 other GUIs, including XPM support using code originally written for
11074 Carbon GUI.
11075 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
11076 using NS API.
11077 (image_ascent): Use font metrics macros instead of direct struct field
11078 access.
11079 * keyboard.c (includes): Add nsterm.h when compiling under NS.
11080 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
11081 Also, handle NS as GTK for menu bar purposes.
11082 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
11083 toolkit where they differ.
11084 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
11085 use cachelist, still needed under NS.
11086 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
11087 (struct widget_value): Define it here for menu.c.
11088 * keymap.c (includes): Include modifier internals.
11089 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
11090 NS.
11091 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
11092 support for preferring sequences using certain modifiers, specified by
11093 the FIRSTONLY argument.
11094 * lisp.h (hash_remove): Rename to avoid name clash when compiling
11095 under NS GNUstep implementation.
11096 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
11097 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
11098 * menu.c: Include nsterm.h under NS.
11099 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
11100 (free_menubar_widget_tree_value, update_submenu_strings)
11101 (find_and_call_menu_selection): Treat NS as X and NT.
11102 (find_and_return_menu_selection): New function, used for popup menus.
11103 * nsgui.h:
11104 * nsterm.h:
11105 * nsfns.m:
11106 * nsimage.m:
11107 * nsmenu.m:
11108 * nsselect.m:
11109 * nsterm.m: New files.
11110 * process.c (wait_reading_process_output): Under NS, call ns_select()
11111 instead of plain select().
11112 * syntax.c (char_quoted): Under NS, avoid a crash when called near
11113 beginning of buffer.
11114 * sysselect.h (init_process): Rename when compiling under Cocoa to
11115 avoid name conflict.
11116 * termhooks.h (display_info): Add ns_display_info to union.
11117 * terminal.c (Fterminal_live_p): Add ns to terminal types.
11118 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
11119 COCOA environment.
11120 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
11121 unexec() signature. (Note, this will dump, but the resulting file
11122 crashes; unexosx is used instead; keeping around for reference and
11123 possible aid in getting dump working under GNUstep.)
11124 * w32gui.h (button_type, widget_value): Remove definitions (now in
11125 keyboard.h).
11126 * window.c: Include nsterm.h when compiling under NS.
11127 * xdisp.c (includes): Include nsterm.h when compiling under NS.
11128 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
11129 other GUI windowing systems.
11130 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
11131 GTK.
11132 (x_consider_frame_title): Under NS, set icon type and frame
11133 modified-state indicator; use ns_set_name_as_filename() when using
11134 formatted title.
11135 (update_window_cursor): Make public when compiling under NS.
11136 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
11137 (hourglass_atimer, Vhourglass_delay
11138 * xfaces.c (header section, init_frame_faces, clear_font_table)
11139 (defined_color, unload_color, x_face_list_fonts)
11140 (prepare_face_for_display): Add NS support parallel to other GUIs.
11141 Emulate GCs like other non-X GUIs.
11142 (split_font_name): Don't lowercase font name under NS.
11143 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
11144 under NS.
11145 * s/darwin.h: Add support for compilation under NS.
11146
11147 2008-07-15 Jason Rumney <jasonr@gnu.org>
11148
11149 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
11150 (w32_show_hourglass): Rename from show_hourglass.
11151 (w32_hide_hourglass): Rename from hide_hourglass.
11152 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
11153 (Vhourglass_delay): Declare extern.
11154 (hourglass_started): Remove.
11155
11156 * xdisp.c (Vhourglass_delay): Remove static.
11157 (hourglass_started, start_hourglass, cancel_hourglass):
11158 Don't include these versions on WINDOWSNT.
11159
11160 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
11161
11162 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
11163 variables (formerly in xfns.c).
11164 (show_hourglass, hide_hourglass): New prototypes (same).
11165 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
11166 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
11167 in xfns.c).
11168 (syms_of_xdisp): Declare/initialize display-hourglass,
11169 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
11170 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
11171 formerly in xfns.c.
11172 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
11173 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
11174 (start_hourglass, cancel_hourglass): Remove.
11175 (show_hourglass, hide_hourglass): Remove prototypes and static
11176 modifiers.
11177 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
11178 hourglass_atimer, hourglass_shown_p declaration/initialization.
11179 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
11180 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
11181 (start_hourglass, cancel_hourglass): Remove.
11182 (show_hourglass, hide_hourglass): Remove prototypes and static
11183 modifiers.
11184 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
11185 hourglass_atimer, hourglass_shown_p declaration/initialization.
11186 * w32fns.c (display_hourglass_p, Vhourglass_delay)
11187 (DEFAULT_HOURGLASS_DELAY): Remove.
11188 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
11189 hourglass_shown_p declaration/initialization.
11190
11191 2008-07-14 Jason Rumney <jasonr@gnu.org>
11192
11193 * w32fns.c (w32_get_arg): Remove wrapper function.
11194 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
11195 directly.
11196 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
11197
11198 2008-07-14 Kenichi Handa <handa@m17n.org>
11199
11200 * xfont.c (xfont_open): Add workaround for X's bug.
11201
11202 2008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
11203
11204 * fontset.c: Include <stdio.h> unconditionally.
11205
11206 2008-07-13 Michael Albinus <michael.albinus@gmx.de>
11207
11208 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
11209 for filtering.
11210
11211 2008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
11212
11213 * s/vms.h: Use __GNUC__ instead of _GNUC_.
11214
11215 * m/macppc.h:
11216 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
11217
11218 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
11219 (SPECIAL_EMACS_INT):
11220 * m/ia64.h (SPECIAL_EMACS_INT):
11221 * m/amdx86-64.h (SPECIAL_EMACS_INT):
11222 * s/gnu.h (NLIST_STRUCT):
11223 * s/aix4-2.h (X11R5_INHIBIT_I18N):
11224 * s/gnu-linux.h (LINUX):
11225 * s/msdos.h (HAVE_FACES):
11226 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
11227
11228 * systty.h:
11229 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
11230 anymore.
11231
11232 2008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
11233
11234 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
11235 always defined as int.
11236
11237 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
11238 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
11239 * s/gnu-linux.h (HAVE_WAIT_HEADER):
11240 * s/freebsd.h (HAVE_WAIT_HEADER):
11241 * s/bsd-common.h (HAVE_UNION_WAIT):
11242 * s/aix4-2.h (HAVE_WAIT_HEADER):
11243 * m/mips.h (HAVE_UNION_WAIT):
11244 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
11245 (COFF, static): Do not define, they are undefined later in the file.
11246
11247 * process.c (update_status): Don't use a union.
11248 (status_convert):
11249 (sigchld_handler): Use int instead of WAITTYPE.
11250
11251 2008-07-12 Chong Yidong <cyd@stupidchicken.com>
11252
11253 * indent.c (Fvertical_motion): Restore hscroll before moving to
11254 goal column.
11255
11256 2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
11257
11258 * lisp.h: Remove left over code.
11259
11260 2008-07-11 Andreas Schwab <schwab@suse.de>
11261
11262 * lisp.h: Fix logic in last change.
11263
11264 * menu.h: New file.
11265 * menu.c: Include it.
11266 * xmenu.c: Likewise.
11267 * Makefile.in: Update dependencies.
11268
11269 2008-07-11 Kenichi Handa <handa@m17n.org>
11270
11271 * fontset.c (fontset_from_font): Cancel the previous change.
11272
11273 2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
11274
11275 * lisp.h:
11276 * w32heap.c:
11277 * emacs.c:
11278 * alloc.c: Replace all references of NO_UNION_TYPE with
11279 USE_LISP_UNION_TYPE.
11280
11281 * m/xtensa.h (NO_UNION_TYPE):
11282 * m/vax.h (NO_UNION_TYPE):
11283 * m/template.h (NO_UNION_TYPE):
11284 * m/sparc.h (NO_UNION_TYPE):
11285 * m/mips.h (NO_UNION_TYPE):
11286 * m/macppc.h (NO_UNION_TYPE):
11287 * m/m68k.h (NO_UNION_TYPE):
11288 * m/iris4d.h (NO_UNION_TYPE):
11289 * m/intel386.h (NO_UNION_TYPE):
11290 * m/ibms390x.h (NO_UNION_TYPE):
11291 * m/ibms390.h (NO_UNION_TYPE):
11292 * m/ibmrs6000.h (NO_UNION_TYPE):
11293 * m/ia64.h (NO_UNION_TYPE):
11294 * m/hp800.h (NO_UNION_TYPE):
11295 * m/arm.h (NO_UNION_TYPE):
11296 * m/amdx86-64.h (NO_UNION_TYPE):
11297 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
11298 defining it the same.
11299
11300 2008-07-10 Chong Yidong <cyd@stupidchicken.com>
11301
11302 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
11303
11304 2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
11305
11306 * fileio.c:
11307 * sysdep.c:
11308 * systty.h:
11309 * m/ibmrs6000.h:
11310 * m/iris4d.h:
11311 * s/aix4-2.h:
11312 * s/freebsd.h:
11313 * s/gnu-linux.h:
11314 * s/hpux10-20.h:
11315 * s/hpux11.h:
11316 * s/netbsd.h:
11317 * s/sol2-3.h:
11318 * s/sol2-4.h:
11319 * s/sol2.h:
11320 * s/usg5-4.h:
11321 * s/vms.h: Remove references to unused variables.
11322
11323 2008-07-10 Andreas Schwab <schwab@suse.de>
11324
11325 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
11326 pattern before matching the generic family.
11327
11328 2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
11329
11330 * unexec.c:
11331 * s/vms.h:
11332 * s/usg5-4-2.h:
11333 * s/sol2-5.h:
11334 * s/freebsd.h:
11335 * s/darwin.h: Remove dead code.
11336
11337 * m/template.h:
11338 * m/sparc.h:
11339 * m/mips.h:
11340 * m/m68k.h:
11341 * m/iris4d.h:
11342 * m/intel386.h:
11343 * m/ibms390x.h:
11344 * m/ibms390.h:
11345 * m/ia64.h:
11346 * m/hp800.h:
11347 * m/arm.h:
11348 * m/amdx86-64.h: Remove dead code and references to unused
11349 and compiler defined symbols.
11350
11351 * unexmips.c:
11352 * unexelf.c: Remove references to desupported systems.
11353
11354 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
11355
11356 * m/powermac.h: Remove boilerplate comments.
11357 (NO_REMAP): Remove unused definition.
11358
11359 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
11360 define them.
11361
11362 2008-07-10 Kenichi Handa <handa@m17n.org>
11363
11364 * xfont.c (xfont_open): Log the reason of failure.
11365
11366 2008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
11367
11368 * fontset.c (fontset_get_font_group):
11369 * font.c (font_check_otf): Specify argument types.
11370
11371 2008-07-09 Kenichi Handa <handa@m17n.org>
11372
11373 * coding.c (detect_coding_utf_8): Set detect_info->found only when
11374 non-ASCII char is found.
11375
11376 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
11377 (reorder_font_vector): Change the arg preferred_family to font.
11378 Prefer the spec matching with font.
11379 (fontset_get_font_group): New function.
11380 (fontset_find_font): Change the format of an element of a realized
11381 fontset. Use fontset_get_font_group.
11382 (fontset_font): Try the current fontset, the default fontset, the
11383 fallbacks of the current fontset, and the fallbacks of the default
11384 fontset in this order.
11385 (face_for_char): Delete the shortcut to use the current font.
11386 (fontset_from_font): Don't set fonts for Latin in the fontset.
11387
11388 * font.h (font_make_object, font_match_p): Adjust prototypes.
11389
11390 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
11391
11392 * font.c (font_make_object): New arg entity and pixelsize.
11393 (font_check_otf_features, font_check_otf): New functions.
11394 (font_match_p): Check :lang, :script, and :otf properties.
11395
11396 * xfont.c (xfont_open): Adjust it for the change of
11397 font_make_object.
11398 (xfont_text_extents): Fix initial setting of metrics.
11399
11400 * ftfont.c (struct ftfont_info): New member index, delete member
11401 fc_charset_idx. Make the member order compatible with struct
11402 xftfont_info.
11403 (fc_charset_table): Change charset names to registry names.
11404 (ftfont_pattern_entity): Delete the args registry and
11405 fc_charset_idx. Change the value of :font-entity property
11406 to (FONTNAME . INDEX). Always set :registry property to
11407 `iso10646-1'.
11408 (struct ftfont_cache_data): New struct.
11409 (ftfont_lookup_cache): New arg for_face.
11410 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
11411 (ftfont_driver): Set the member otf_capability.
11412 (ftfont_get_charset): Adjust it for the change of
11413 fc_charset_table.
11414 (OTF_TAG_SYM): New macro.
11415 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
11416 for the change of fc_charset_table.
11417 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
11418 ftfont_pattern_entity. Add FC_INDEX to objset.
11419 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
11420 and ftfont_pattern_entity.
11421 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
11422 font_make_object, struct ftfont_info.
11423 (ftfont_has_char): Use ftfont_get_fc_charset.
11424 (ftfont_otf_features, ftfont_otf_capability): New functions.
11425 (ftfont_shape): Use ftfont_get_otf.
11426 (ftfont_text_extents): Fix initial setting of metrics.
11427
11428 * xftfont.c (struct xftfont_info): New member ft_size. Make the
11429 member order compatible with struct ftfont_info.
11430 (xftfont_open): Add FC_CHARSET to the pattern. Set
11431 xftfont_info->ft_size. Don't unlock the face. Check BDF
11432 properties if appropriate.
11433 (xftfont_close): Unlock the face.
11434 (xftfont_anchor_point, xftfont_shape): Deleted.
11435 (syms_of_xftfont): Don't set members anchor_point and shape of
11436 xftfont_driver.
11437
11438 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
11439 font_make_object.
11440
11441 * w32font.c (w32font_open): Adjust it for the change of
11442 font_make_object.
11443 (w32font_open_internal): Don't set properties of font_object here.
11444
11445 2008-07-08 Chong Yidong <cyd@stupidchicken.com>
11446
11447 * macfns.c (x_create_tip_frame):
11448 * w32fns.c (x_create_tip_frame):
11449 * xfns.c (x_create_tip_frame): Pass parameter argument to
11450 face-set-after-frame-default.
11451
11452 * xfaces.c (Finternal_merge_in_global_face): Save merged
11453 attributes for the default face back into the face vector.
11454
11455 2008-07-08 Andreas Schwab <schwab@suse.de>
11456
11457 * fontset.h: Declare fontset_from_font. Don't declare
11458 new_fontset_from_font and fontset_from_font_name.
11459 * xterm.c: Include "fontset.h".
11460 * Makefile.in (xterm.o): Update dependencies.
11461
11462 2008-07-08 Glenn Morris <rgm@gnu.org>
11463
11464 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
11465 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
11466
11467 2008-07-07 Chong Yidong <cyd@stupidchicken.com>
11468
11469 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
11470 (x_set_frame_parameters): Don't bind it.
11471
11472 2008-07-07 Juanma Barranquero <lekktu@gmail.com>
11473
11474 * w32fns.c (map_w32_filename): Declare extern.
11475
11476 2008-07-07 Jason Rumney <jasonr@gnu.org>
11477
11478 * w32term.c (WS_EX_LAYERED): Define if not already.
11479
11480 2008-07-06 Chong Yidong <cyd@stupidchicken.com>
11481
11482 * xfaces.c (set_font_frame_param): Don't try to set the font
11483 parameter if it is still unspecified in the lface.
11484
11485 2008-07-05 Chong Yidong <cyd@stupidchicken.com>
11486
11487 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
11488 face if it didn't already exist.
11489
11490 * xdisp.c (try_window_id): Give up if word-wrapping is on.
11491
11492 2008-07-05 Andreas Schwab <schwab@suse.de>
11493
11494 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
11495
11496 2008-07-05 Chong Yidong <cyd@stupidchicken.com>
11497
11498 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
11499 word-wrapping.
11500 (IT_DISPLAYING_WHITESPACE): New macro.
11501 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
11502 when word-wrapping. Simplify word-wrapping logic. Use correct
11503 pixel positions when saving copies of the iterator.
11504 (display_line): Use proper wrap point if the last character on a
11505 line was preceded by whitespace.
11506
11507 2008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
11508
11509 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
11510
11511 2008-07-04 Kenichi Handa <handa@m17n.org>
11512
11513 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
11514
11515 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
11516
11517 2008-07-02 Jason Rumney <jasonr@gnu.org>
11518
11519 * xfns.c (syms_of_xfns): Only define x-select-font when both
11520 HAVE_FREETYPE and USE_GTK.
11521
11522 * xdisp.c (next_element_from_display_vector): Move assignment out
11523 of if statement.
11524
11525 2008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
11526
11527 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
11528
11529 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
11530 (syms_of_fileio): Initialize and export them.
11531 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
11532
11533 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
11534 (Fsystem_move_file_to_trash): New function.
11535 (syms_of_w32fns): Export it to lisp.
11536
11537 2008-07-01 Jason Rumney <jasonr@gnu.org>
11538
11539 * w32font.c (w32font_text_extents): Don't count overhang as part
11540 of width.
11541
11542 2008-06-30 Miles Bader <miles@gnu.org>
11543
11544 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
11545 Add `avoid_cursor_p' field.
11546
11547 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
11548 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
11549 (append_glyph, append_composite_glyph, produce_image_glyph)
11550 (append_stretch_glyph): Initialize avoid_cursor_p.
11551 (get_it_property): Rename from `get_line_height_property'.
11552 (x_produce_glyphs): Use get_it_property.
11553 (handle_line_prefix, push_display_prop): New functions.
11554 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
11555 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
11556 New variables.
11557 (syms_of_xdisp): Initialize them.
11558
11559 2008-06-30 Kenichi Handa <handa@m17n.org>
11560
11561 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
11562 XftDefaultSubstitute (they are called in XftFontMatch).
11563 (xftfont_open): Fix args to ftfont_font_format.
11564
11565 * ftfont.c (fc_charset_table): New member lang.
11566 (ftfont_resolve_generic_family): New arg pattern.
11567 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
11568 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
11569 (ftfont_open): Fix args to ftfont_font_format.
11570 (ftfont_font_format): New arg filename.
11571
11572 2008-06-30 Chong Yidong <cyd@stupidchicken.com>
11573
11574 * xfaces.c (Finternal_merge_in_global_face): If default face was
11575 modified, realize it again. Update the font face attribute.
11576
11577 2008-06-29 Jason Rumney <jasonr@gnu.org>
11578
11579 * w32term.c (x_set_frame_alpha): Fix logic.
11580
11581 2008-06-29 Kenichi Handa <handa@m17n.org>
11582
11583 * fontset.c (Finternal_char_font): Return font-object instead of
11584 font-name.
11585
11586 * composite.c (get_composition_id): Fix the width calculation for TAB.
11587
11588 2008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
11589
11590 * indent.c (Fvertical_motion): Properly handle float column arg.
11591
11592 2008-06-28 Jason Rumney <jasonr@gnu.org>
11593
11594 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
11595 (pfnSetLayeredWindowAttributes): New function pointer.
11596 (w32_initialize): Initialize it when supported.
11597 (x_set_frame_alpha): New function.
11598
11599 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
11600 (w32_frame_parm_handlers): Set alpha handler.
11601
11602 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
11603
11604 2008-06-27 Jason Rumney <jasonr@gnu.org>
11605
11606 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
11607 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
11608 (w32_to_x_charset, x_to_w32_charset)
11609 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
11610 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
11611 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
11612 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
11613 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
11614 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
11615 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
11616 (Qw32_charset_unicode): Remove.
11617 (syms_of_w32fns): Update for above changes.
11618
11619 * w32font.c (w32_to_x_charset, x_to_w32_charset)
11620 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
11621 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
11622 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
11623 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
11624 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
11625 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
11626 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
11627 (syms_of_w32font): Update for above changes.
11628
11629 2008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
11630
11631 * s/usg5-4.h: Fix previous change: keep the correct branch of a
11632 removed #if.
11633 (USG_SHARED_LIBRARIES): Remove duplicate definition.
11634
11635 2008-06-26 Juanma Barranquero <lekktu@gmail.com>
11636 Eli Zaretskii <eliz@gnu.org>
11637
11638 * makefile.w32-in (LOCAL_FLAGS):
11639 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
11640
11641 * sysdep.c (_spawnlp, _getpid):
11642 Declare with explicit _cdecl instead of _CRTAPI1.
11643
11644 * editfns.c (Fget_internal_run_time):
11645 Check for WINDOWSNT with #ifdef, not #if.
11646
11647 2008-06-26 Jason Rumney <jasonr@gnu.org>
11648
11649 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
11650
11651 * w32term.c (x_draw_glyph_string_foreground)
11652 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
11653 Use FONT_HANDLE macro.
11654 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
11655
11656 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
11657 (uniscribe_encode_char): Use FONT_HANDLE macro.
11658
11659 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
11660 (w32font_text_extents): Use precast w32_font.
11661 (w32font_close): Free cached metrics.
11662 (w32font_open_internal): Allocate space for name on stack.
11663
11664 2008-06-26 Chong Yidong <cyd@stupidchicken.com>
11665
11666 * xdisp.c (extend_face_to_end_of_line): Fix last change.
11667
11668 2008-06-26 Jason Rumney <jasonr@gnu.org>
11669
11670 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
11671 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
11672
11673 2008-06-26 Juanma Barranquero <lekktu@gmail.com>
11674
11675 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
11676
11677 2008-06-26 Jason Rumney <jasonr@gnu.org>
11678
11679 * w32bdf.c, w32bdf.h: Remove obsolete files.
11680
11681 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
11682
11683 * w32gui.h: Don't include w32bdf.h.
11684 (XCharStruct, enum w32_char_font_type, W32FontStruct):
11685 Remove obsolete font support.
11686
11687 * w32font.h (struct w32font_info): Remove compat_w32_font.
11688 Add hfont member.
11689 (FONT_COMPAT): Remove obsolete macro.
11690
11691 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
11692 (w32font_encode_char, w32font_text_extents): Use new hfont member.
11693 (w32font_open_internal): Remove compat code. Set new hfont member.
11694 (Fx_select_font): Use new hfont member.
11695
11696 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
11697 (uniscribe_encode_char): Use new hfont member.
11698
11699 * w32term.c (x_draw_glyph_string_foreground)
11700 (x_draw_composite_glyph_string_foreground): Use new hfont member.
11701 (x_draw_glyph_string): Use metrics in w32font_info.
11702
11703 2008-06-26 Kenichi Handa <handa@m17n.org>
11704
11705 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
11706
11707 2008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
11708
11709 * unexnext.c:
11710 * m/ews4800.h:
11711 * m/hp9000s300.h:
11712 * m/ibm370aix.h:
11713 * m/mips-siemens.h:
11714 * m/ncr386.h:
11715 * m/next.h:
11716 * m/pmax.h:
11717 * m/powerpcle.h:
11718 * m/tandem-s2.h:
11719 * s/386bsd.h:
11720 * s/bsd386.h:
11721 * s/bsd4-1.h:
11722 * s/bsd4-2.h:
11723 * s/bsdos2-1.h:
11724 * s/bsdos2.h:
11725 * s/bsdos3.h:
11726 * s/bsdos4.h:
11727 * s/nextstep.h:
11728 * s/ultrix4-3.h:
11729 * s/usg5-0.h:
11730 * s/usg5-2-2.h:
11731 * s/usg5-2.h:
11732 * s/usg5-4-3.h:
11733 * s/ux4800.h:
11734 * s/uxpds.h:
11735 * s/uxpv.h: Remove support for obsolete systems.
11736 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
11737 Remove, insert contents in s/hpux10-20.h.
11738 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
11739 Remove, insert contents in s/aix4-2.h.
11740 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
11741 * s/bsd4-3.h: Rename to ...
11742 * s/bsd-common.h: ... this.
11743 * data.c:
11744 * doc.c:
11745 * ecrt0.c:
11746 * emacs.c:
11747 * fileio.c:
11748 * floatfns.c:
11749 * keyboard.c:
11750 * mem-limits.h:
11751 * print.c:
11752 * process.c:
11753 * sysdep.c:
11754 * syssignal.h:
11755 * systty.h:
11756 * syswait.h:
11757 * term.c:
11758 * unexec.c:
11759 * unexelf.c:
11760 * unexhp9k800.c:
11761 * m/hp800.h:
11762 * m/ibmrs6000.h:
11763 * m/mips.h:
11764 * m/vax.h:
11765 * s/darwin.h:
11766 * s/freebsd.h:
11767 * s/gnu.h:
11768 * s/ms-w32.h:
11769 * s/msdos.h:
11770 * s/netbsd.h:
11771 * s/template.h: Remove references to obsolete variables.
11772
11773 * Makefile.in: Add dependencies for all unexec files.
11774 (admindir): Remove unused variable.
11775 (UNEXEC_SRC): Remove references.
11776
11777 2008-06-25 Chong Yidong <cyd@stupidchicken.com>
11778
11779 * xfns.c (x_default_font_parameter): If Xft is available, first
11780 try Monospace-12 for the default font.
11781
11782 2008-06-25 Jason Rumney <jasonr@gnu.org>
11783
11784 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
11785
11786 2008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
11787
11788 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
11789
11790 * buffer.c (syms_of_buffer): Remove default-word-wrap.
11791
11792 2008-06-25 Juanma Barranquero <lekktu@gmail.com>
11793
11794 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
11795 <scroll-conservatively>: Fix typo in docstring.
11796
11797 * xselect.c (Fx_send_client_event): Doc fix.
11798
11799 2008-06-25 Kenichi Handa <handa@m17n.org>
11800
11801 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
11802
11803 * font.c (font_parse_fcname): Remove unused variables.
11804 (font_sort_entites): Delete the arg SPEC. Caller changed.
11805 Fix for the case of ! best_only.
11806 (font_delete_unmatched): Check DPI and AVGWIDTH too.
11807
11808 * lisp.h (Fstring_to_unibyte): EXFUN it.
11809
11810 * character.h (str_to_unibyte): Extern it.
11811
11812 * character.c (str_to_unibyte): New function.
11813
11814 * fns.c (Fstring_to_unibyte): New function.
11815 (syms_of_fns): Defsubr it.
11816
11817 2008-06-24 Kenichi Handa <handa@m17n.org>
11818
11819 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
11820 DPI too.
11821 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
11822
11823 2008-06-24 Andreas Schwab <schwab@suse.de>
11824
11825 * Makefile.in (${lispsource}loaddefs.el): Rename from
11826 ../lisp/loaddefs.el.
11827 (bootstrap-clean): Do what distclean does but don't remove
11828 Makefile.
11829 (distclean): Depend on bootstrap-clean and remove Makefile.
11830
11831 2008-06-24 Chong Yidong <cyd@stupidchicken.com>
11832
11833 * buffer.h (struct buffer): New member word_wrap.
11834
11835 * buffer.c (syms_of_buffer): New variables default-word-wrap and
11836 word-wrap.
11837 (init_buffer_once): Initialize them.
11838
11839 * dispextern.h (struct it): Replace bool truncate_lines_p with a
11840 line_wrap enum possessing three possible values.
11841
11842 * termopts.h: Replace truncate_partial_width_windows with
11843 Vtruncate_partial_width_windows.
11844
11845 * dispnew.c (direct_output_for_insert): Avoid direct output when
11846 inserting a space with word wrap on.
11847
11848 * indent.c (compute_motion): Obey integer values of
11849 truncate-partial-width-windows.
11850
11851 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
11852 replacing truncate_partial_width_windows.
11853 (init_iterator): If Vtruncate_partial_width_windows is an integer,
11854 truncate only if the window width is below that integer.
11855 (start_display, resize_mini_window, produce_stretch_glyph)
11856 (display_string, move_it_in_display_line_to): Use line_wrap.
11857 (back_to_previous_visible_line_start, reseat_1): Reset
11858 string_from_display_prop_p.
11859 (display_line): Extend default face to end of line when wrapping.
11860
11861 2008-06-24 Kim F. Storm <storm@cua.dk>
11862
11863 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
11864 to wrap continued lines at word boundaries.
11865
11866 2008-06-24 Jason Rumney <jasonr@gnu.org>
11867
11868 * font.c (Ffont_face_attributes): Multiply pixel size before point
11869 conversion to avoid multiplying rounding error.
11870
11871 2008-06-23 Jason Rumney <jasonr@gnu.org>
11872
11873 * w32term.c (x_draw_glyph_string_background)
11874 (x_draw_glyph_string): Remove old bdf font code.
11875
11876 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
11877
11878 2008-06-22 Kenichi Handa <handa@m17n.org>
11879
11880 * font.c (font_find_for_lface): Try the adstyle specified in
11881 the property of LFACE_FONT of LFACE (if any).
11882
11883 2008-06-21 Seiji Zenitani <zenitani@mac.com>
11884 Ryo Yoshitake <ryo@shiftmode.net>
11885
11886 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
11887
11888 2008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
11889
11890 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
11891 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
11892 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
11893 (witness-emacs): Remove.
11894 (lisp, shortlisp): Move loaddefs.el earlier.
11895 (mostlyclean): Forget about witness-emacs.
11896
11897 2008-06-22 Glenn Morris <rgm@gnu.org>
11898
11899 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
11900 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
11901
11902 2008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
11903
11904 * Makefile.in (PRECOMP): Remove.
11905 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
11906 (witness-emacs): Run `compile-first'.
11907 (.el.elc): Use the new compile-onefile target.
11908
11909 2008-06-21 Kenichi Handa <handa@m17n.org>
11910
11911 * xftfont.c (xftfont_open): Handle QCembolden only when
11912 FC_EMBOLDEN is defined.
11913
11914 2008-06-21 Andreas Schwab <schwab@suse.de>
11915
11916 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
11917 (.el.elc): Likewise.
11918
11919 2008-06-21 Miles Bader <miles@gnu.org>
11920
11921 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
11922 build dir, not the lisp source dir.
11923
11924 2008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
11925
11926 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
11927 (bootstrapclean): Remove.
11928 (.el.elc): New rule.
11929 (PRECOMP): New var.
11930 (../lisp/subdirs.el): Remove.
11931 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
11932 (witness-emacs): New target.
11933 (mostlyclean): Remove witness-emacs as well.
11934 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
11935 Add witness-emacs dependency.
11936
11937 2008-06-20 Chong Yidong <cyd@stupidchicken.com>
11938
11939 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
11940 defined by the font.
11941
11942 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11943
11944 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
11945 (bootstrap-clean): New target that keeps TAGS around.
11946 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
11947 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
11948
11949 2008-06-20 Jason Rumney <jasonr@gnu.org>
11950
11951 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
11952 Remove obsolete font code.
11953
11954 * w32font.c (font_matches_spec): Use csb bitfield from font signature
11955 to determine language support.
11956
11957 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11958
11959 * sysdep.c (cfsetspeed): New fun extracted from the code.
11960 (cfmakeraw): Move before first use.
11961
11962 2008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
11963
11964 * sysdep.c (cfmakeraw): Provide fallback implementation.
11965 (serial_configure): Provide fallback implementation of cfsetspeed.
11966
11967 2008-06-20 Kenichi Handa <handa@m17n.org>
11968
11969 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
11970 the pattern.
11971
11972 * fontset.c (fontset_from_font): Copy font_spec before changing
11973 the elements.
11974
11975 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
11976
11977 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11978
11979 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
11980 for explicit `font' parameters.
11981
11982 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
11983
11984 2008-06-19 Kenichi Handa <handa@m17n.org>
11985
11986 * frame.c: Include <ctype.h>.
11987 (x_set_font_backend): Allow spacing characters in the X resource
11988 for FontBackend.
11989
11990 2008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
11991
11992 * w32fns.c, xfns.c (Qfont_param): New var.
11993 (syms_of_w32fns): Initialize it.
11994 (x_default_font_parameter): Record explicit `font' into
11995 `font-parameter'.
11996
11997 2008-06-18 Kenichi Handa <handa@m17n.org>
11998
11999 * font.c (font_parse_xlfd): Fix previous change.
12000 (font_parse_fcname): Don't use :fc-unknown-spec.
12001 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
12002 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
12003 (font_add_log): Prepend the driver name to the resulting fonts.
12004
12005 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
12006 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
12007 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
12008
12009 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
12010 (QCembolden): New variables.
12011 (syms_of_xftfont): DEFSYM them.
12012 (xftfont_open): Call XftFontMatch. Don't trust the result of
12013 XftTextExtents8 if the pixel_size is less than 5.
12014
12015 2008-06-18 Andreas Schwab <schwab@suse.de>
12016
12017 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
12018 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
12019
12020 2008-06-18 Jason Rumney <jasonr@gnu.org>
12021
12022 * w32font.c (w32font_list, w32font_match): Add logging.
12023
12024 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
12025
12026 2008-06-17 Chong Yidong <cyd@stupidchicken.com>
12027
12028 * font.c (font_parse_fcname): Store divider characters for
12029 unknown-spec list. For known key symbols, intern using correct
12030 symbol name.
12031
12032 2008-06-17 Kenichi Handa <handa@m17n.org>
12033
12034 * xfaces.c (realize_default_face): If the frame is not on window
12035 system, set the fontset of face to nil.
12036
12037 2008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
12038
12039 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
12040
12041 2008-06-16 Juanma Barranquero <lekktu@gmail.com>
12042
12043 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
12044 (build_font_name_from_vector): Delete externs.
12045
12046 * xfaces.c (struct font_name): Don't declare.
12047
12048 2008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
12049
12050 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
12051
12052 2008-06-16 Chong Yidong <cyd@stupidchicken.com>
12053
12054 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
12055
12056 2008-06-16 Juanma Barranquero <lekktu@gmail.com>
12057
12058 * font.c (Ffont_spec): Fix usage in docstring.
12059 (Ffont_face_attributes): Doc fix.
12060
12061 2008-06-16 Andreas Schwab <schwab@suse.de>
12062
12063 * font.c (Ffont_face_attributes): Fix definition.
12064
12065 2008-06-16 Jason Rumney <jasonr@gnu.org>
12066
12067 * font.h (font_style_symbolic_from_value): Remove.
12068
12069 * font.c (font_style_symbolic_from_value): Remove.
12070 (font_style_symbolic): Revert to pre 2008-06-13 version.
12071
12072 * w32font.c (w32_to_fc_weight): New function.
12073 (w32font_full_name, logfont_to_fcname): Use it.
12074
12075 2008-06-16 Kenichi Handa <handa@m17n.org>
12076
12077 * font.c (font_check_object): Delete it.
12078 (font_clear_cache): Check if a font-object is alive.
12079 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
12080 font-object to nil.
12081 (font_close_object): Don't check FONT_CLOSE_OBJECT.
12082 (font_at): Don't call font_check_object.
12083 (Ffont_get): Return a symbol for :weight, :slant, and :width.
12084
12085 2008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
12086
12087 * puresize.h (BASE_PURESIZE): Increase to 1230000.
12088
12089 2008-06-16 Chong Yidong <cyd@stupidchicken.com>
12090
12091 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
12092
12093 2008-06-15 Chong Yidong <cyd@stupidchicken.com>
12094
12095 * font.c (font_parse_fcname): Only one decimal point.
12096 (font_unparse_fcname): Handle data in family and foundry indices
12097 as symbols, not strings.
12098 (font_unparse_gtkname, Ffont_face_attributes): New functions.
12099
12100 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
12101
12102 * font.h (font_unparse_gtkname): Add prototype.
12103
12104 2008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
12105
12106 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
12107
12108 2008-06-15 Andreas Schwab <schwab@suse.de>
12109
12110 * font.c (font_update_drivers): Fix crash when no drivers match.
12111
12112 2008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
12113
12114 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
12115 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
12116
12117 2008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
12118
12119 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
12120
12121 2008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
12122
12123 * process.c (Fserial_process_configure, Fprocess_send_eof):
12124 Use EQ to compare Lisp_Objects.
12125
12126 2008-06-13 Jason Rumney <jasonr@gnu.org>
12127
12128 * w32fns.c (Fw32_select_font): Remove old font API function.
12129
12130 * w32font.c (logfont_to_fcname): New function.
12131 (Fx_select_font): New font dialog function compatible with
12132 GTK/fontconfig version.
12133
12134 * font.c (font_style_symbolic_from_value): New function.
12135 (font_style_symbolic): Use it.
12136
12137 * font.h (font_style_symbolic_from_value): Declare new function.
12138
12139 2008-06-13 Juanma Barranquero <lekktu@gmail.com>
12140
12141 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
12142 <font-width-table>: Fix typos in docstrings.
12143
12144 2008-06-13 Daniel Engeler <engeler@gmail.com>
12145
12146 These changes add serial port access.
12147 * process.c: Add HAVE_SERIAL.
12148 (Fdelete_process, Fprocess_status, Fset_process_buffer)
12149 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
12150 (list_processes_1, select_wrapper, Fstop_process)
12151 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
12152 (status_notify): Modify to handle serial processes.
12153 [HAVE_SERIAL] (Fserial_process_configure)
12154 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
12155 New functions.
12156 * process.h (struct Lisp_Process): Add `type'.
12157 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
12158 New functions.
12159 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
12160 serial ports.
12161 (serial_open, serial_configure): New functions.
12162 * w32.h: Add FILE_SERIAL.
12163 (struct _child_process): Add ovl_read, ovl_write.
12164
12165 2008-06-13 Kenichi Handa <handa@m17n.org>
12166
12167 * dispextern.h (enum lface_attribute_index): New member
12168 LFACE_FOUNDRY_INDEX.
12169
12170 * font.c (font_score): Delete arg alternate_families. Check only
12171 weight, slant, width, and size. Ignore the difference of alias
12172 style symbols.
12173 (font_sort_entites): Adjust for the above change. Reflect the
12174 order of font-driver to scores.
12175 (font_list_entities): Don't check alternate_familes here.
12176 (font_clear_prop): Handle foundry.
12177 (font_update_lface): Don't parse "foundry-family" form here.
12178 Handle FONT_FOUNDRY_INDEX.
12179 (font_find_for_lface): Likewise. Handle alternate families here.
12180 If registry is nil, try iso8859-1 and ascii-0.
12181 (font_open_for_lface): Pay attention to size in ENTITY.
12182 (font_open_by_name): Simplify by calling font_load_for_lface.
12183 (free_font_driver_list): Delete it.
12184 (font_update_drivers): Preserve the order of backends.
12185 (syms_of_font): Setting of sort_shift_bits adjusted for the change
12186 of font_score and font_sort_entites.
12187 (font_update_sort_order): Likewise.
12188
12189 * xfaces.c (LFACE_FOUNDRY): New macro.
12190 (check_lface_attrs): Check foundry.
12191 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
12192 (merge_face_vectors): Check foundry.
12193 (merge_face_ref): Likewise.
12194 (Finternal_set_lisp_face_attribute): Likewise.
12195 (x_update_menu_appearance): Likewise.
12196 (Finternal_get_lisp_face_attribute): Likewise.
12197 (lface_hash): Likewise.
12198 (lface_same_font_attributes_p): Likewise.
12199 (x_supports_face_attributes_p): Likewise.
12200 (tty_supports_face_attributes_p): Likewise.
12201 (Finternal_set_alternative_font_family_alist): Intern strings.
12202 (Finternal_set_alternative_font_registry_alist): Downcase strings.
12203 (realize_default_face): Set LFACE_FOUNDRY (lface).
12204
12205 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
12206 font-driver at first.
12207
12208 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
12209
12210 2008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
12211
12212 * lread.c (Fload): Use xfree, not free on saved_doc_string.
12213
12214 2008-06-12 Jim Meyering <meyering@redhat.com>
12215
12216 Make unexec_free handle NULL the same way free does.
12217 * unexmacosx.c (unexec_free): Ignore a NULL argument.
12218
12219 2008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
12220
12221 * character.h (CHAR_TO_BYTE_SAFE): New macro.
12222 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
12223 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
12224 (WEAK_ALIAS): Simplify.
12225 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
12226 when searching a unibyte buffer.
12227
12228 2008-06-12 Chong Yidong <cyd@stupidchicken.com>
12229
12230 * xfns.c (Fx_select_font): Rename from x-font-dialog.
12231
12232 2008-06-12 Juanma Barranquero <lekktu@gmail.com>
12233
12234 * w32font.c: Include ctype.h.
12235
12236 2008-06-11 Jason Rumney <jasonr@gnu.org>
12237
12238 * w32font.c (w32font_encode_char): Detect missing glyphs that are
12239 misreported as space.
12240 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
12241 as aliases for registry iso10646-1.
12242
12243 2008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
12244
12245 * buffer.c (clone_per_buffer_values): Skip `name'.
12246
12247 2008-06-11 Chong Yidong <cyd@stupidchicken.com>
12248
12249 * font.c (font_parse_fcname): Fix last change; accept decimal
12250 points in font size.
12251
12252 2008-06-10 Jason Rumney <jasonr@gnu.org>
12253
12254 * w32uniscribe.c (add_opentype_font_name_to_list):
12255 Skip non unicode fonts.
12256
12257 2008-06-10 Chong Yidong <cyd@stupidchicken.com>
12258
12259 * xfns.c (Fx_font_dialog): New function.
12260
12261 * gtkutil.c (xg_dialog_response_cb): Rename from
12262 xg_file_response_callback.
12263 (pop_down_dialog): Rename from pop_down_file_dialog.
12264 (xg_get_file_name): Callers changed.
12265 (xg_get_font_name): New function.
12266
12267 * gtkutil.h (xg_get_font_name): Insert prototype.
12268
12269 2008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
12270
12271 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
12272 x_underline_minimum_display_offset.
12273 (syms_of_xdisp): Declare it here rather than in xterm.c.
12274 * dispextern.h (underline_minimum_offset): Declare it.
12275 * w32term.c (x_draw_glyph_string): Use it.
12276 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
12277 (syms_of_xterm): Don't declare it any more.
12278 (x_draw_glyph_string): Adjust to the new name.
12279
12280 2008-06-10 David De La Harpe Golden <david@harpegolden.net>
12281
12282 * xterm.c (x_underline_minimum_display_offset): New var.
12283 (x_draw_glyph_string): Use it.
12284 (syms_of_xterm): Declare it.
12285
12286 2008-06-10 Chong Yidong <cyd@stupidchicken.com>
12287
12288 * font.c (font_parse_fcname): Accept GTK-style font names too.
12289
12290 2008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
12291
12292 * dired.c (file_name_completion): Don't return t if the match is exact
12293 but with different capitalization.
12294 * minibuf.c (Ftry_completion): Simplify.
12295
12296 * window.c (Vwindow_point_insertion_type): New var.
12297 (set_window_buffer): Use it.
12298 (syms_of_window): Init and export it to Lisp.
12299
12300 2008-06-10 Kenichi Handa <handa@m17n.org>
12301
12302 * font.h (font_intern_prop): Prototype adjusted.
12303
12304 * font.c (font_intern_prop): New arg force_symbol.
12305 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
12306 Adjust for the change of font_intern_prop.
12307
12308 * ftfont.c (ftfont_pattern_entity):
12309 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
12310 (w32_registry):
12311 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
12312 the change of font_intern_prop.
12313
12314 2008-06-09 Juanma Barranquero <lekktu@gmail.com>
12315
12316 * w32menu.c (digest_single_submenu): Declare extern.
12317
12318 2008-06-09 Jason Rumney <jasonr@gnu.org>
12319
12320 * w32term.c (x_make_frame_visible): Use alternate restore flags.
12321
12322 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
12323 (parse_single_submenu): Remove.
12324 (digest_single_submenu): Remove.
12325 (syms_of_w32menu): Don't initialise variables that have moved
12326 to menu.c.
12327 (set_frame_menubar): Sync with version in xmenu.c.
12328 (w32_menu_show): Sync with xmenu_show in xmenu.c.
12329
12330 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
12331 Make static again.
12332
12333 2008-06-09 Jason Rumney <jasonr@gnu.org>
12334
12335 Changes to w32 files related to the move of common menu code
12336 to menu.c on 2008-06-08 by Chong Yidong.
12337
12338 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
12339 defs to w32gui.h.
12340 (single_keymap_panes, push_menu_item, push_menu_pane):
12341 Make globally visible.
12342
12343 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
12344 (local_free, malloc_widget_value, free_widget_value)
12345 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
12346 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
12347 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
12348 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
12349 (menu_items, menu_items_allocated, menu_items_used)
12350 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
12351 (init_menu_items, finish_menu_items, discard_menu_items)
12352 (grow_menu_items, push_submenu_start, push_submenu_end)
12353 (push_left_right_boundary, push_menu_pane, push_menu_item)
12354 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
12355 (free_menubar_widget_tree_value, parse_single_submenu)
12356 (update_submenu_strings): Remove functions.
12357 (xmalloc_widget_value): Remove and declare extern.
12358
12359 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
12360 (OBJ1): Build it.
12361
12362 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
12363 (local_heap, local_alloc, local_free, malloc_widget_value)
12364 (free_widget_value): Define here.
12365
12366 2008-06-09 Kenichi Handa <handa@m17n.org>
12367
12368 * font.h (Qascii_0): Extern it.
12369
12370 * font.c (Qascii_0): New variable.
12371 (syms_of_font): DEFSYM it.
12372 (font_open_by_name): If the registry "iso8859-1" fails, try also
12373 "ascii-0".
12374
12375 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
12376
12377 2008-06-08 Kenichi Handa <handa@m17n.org>
12378
12379 * .gdbinit (xfont): New command.
12380
12381 2008-06-08 Andreas Schwab <schwab@suse.de>
12382
12383 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
12384 * Makefile.in (menu.o): Update dependencies.
12385
12386 * Makefile.in (obj): Always add menu.o.
12387 * emacs.c (main): Always call syms_of_menu.
12388 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
12389
12390 2008-06-08 Chong Yidong <cyd@stupidchicken.com>
12391
12392 * Makefile.in: Compile menu.c.
12393
12394 * lisp.h: Declare syms_of_menu.
12395
12396 * emacs.c (main): Call syms_of_menu.
12397
12398 * keyboard.h: Relocate platform-independent menu definitions from
12399 xmenu.c.
12400
12401 * menu.c: New file. Relocate platform-independent menu
12402 definitions from xmenu.c. Suggested by Adrian Robert.
12403
12404 * xmenu.c: Remove platform-independent menu definitions.
12405 (menu_items, menu_items_inuse, menu_items_allocated)
12406 (menu_items_used, menu_items_n_panes)
12407 (menu_items_submenu_depth): Move to keyboard.h.
12408 (init_menu_items, finish_menu_items, unuse_menu_items)
12409 (discard_menu_items, restore_menu_items, save_menu_items)
12410 (grow_menu_items, push_submenu_start, push_submenu_end)
12411 (push_left_right_boundary, push_menu_pane, push_menu_item)
12412 (keymap_panes, single_keymap_panes, single_menu_item)
12413 (list_of_panes, list_of_items, find_and_call_menu_selection)
12414 (xmalloc_widget_value, free_menubar_widget_value_tree)
12415 (parse_single_submenu, digest_single_submenu)
12416 (update_submenu_strings): Move to menu.c.
12417
12418 2008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
12419
12420 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
12421
12422 2008-06-06 Miles Bader <miles@gnu.org>
12423
12424 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
12425 face, not frame default.
12426
12427 2008-06-05 Martin Rudalics <rudalics@gmx.at>
12428
12429 * window.c (pop_up_windows, pop_up_frames)
12430 (display_buffer_reuse_frames, Vpop_up_frame_function)
12431 (Vdisplay_buffer_function, Veven_window_heights)
12432 (Vspecial_display_buffer_names, Vspecial_display_regexps)
12433 (Vspecial_display_function, Vsame_window_buffer_names)
12434 (Vsame_window_regexps, split_height_threshold)
12435 (Vsplit_window_preferred_function): Move those vars to window.el.
12436 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
12437 (Fdisplay_buffer): Move those functions to window.el.
12438 (syms_of_window): Remove corresponding declarations.
12439 (display_buffer): New function.
12440 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
12441 * dispnew.c (Flast_nonminibuf_frame): New function.
12442 * buffer.c (Fpop_to_buffer): Move to window.el.
12443
12444 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
12445
12446 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
12447
12448 2008-06-05 Kenichi Handa <handa@m17n.org>
12449
12450 * coding.c (detect_coding): Fix previous change.
12451 (detect_coding_system): Likewise.
12452
12453 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
12454
12455 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
12456
12457 * keymap.c (Vminibuffer_local_filename_must_match_map):
12458 Rename from Vminibuffer_local_must_match_filename_map.
12459 (syms_of_keymap):
12460 * minibuf.c (Fcompleting_read): Adjust accordingly.
12461 * commands.h: Rename declaration as well.
12462
12463 2008-06-05 Kenichi Handa <handa@m17n.org>
12464
12465 * font.c (Ffont_spec): Don't use font_parse_family_registry for
12466 family name.
12467 (Ffont_put): Likewise.
12468
12469 * fontset.c (fontset_find_font): Call font_open_for_lface with the
12470 current font-spec.
12471
12472 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
12473 is unspecified.
12474
12475 * xfaces.c (realize_x_face): If the font-related face attributes
12476 are the same as those of default face, realize a new fontset from
12477 default->fontset.
12478 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
12479
12480 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
12481
12482 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
12483 (move_it_in_display_line): New wrapper.
12484
12485 * window.c (window_scroll_pixel_based_preserve_x)
12486 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
12487 (window_scroll_pixel_based, window_scroll_line_based):
12488 Use them to preserve column positions.
12489 (syms_of_window): Initialize them.
12490
12491 * indent.c (Fvertical_motion): Extend first arg to allow passing an
12492 (HPOS . VPOS) pair.
12493
12494 * dispextern.h (move_it_in_display_line): Declare.
12495
12496 2008-06-05 Juanma Barranquero <lekktu@gmail.com>
12497
12498 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
12499 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
12500 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
12501
12502 2008-06-04 Juanma Barranquero <lekktu@gmail.com>
12503
12504 * window.c (Fset_window_parameter): Doc fix.
12505 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
12506
12507 2008-06-04 Joakim Verona <joakim@verona.se>
12508
12509 * window.h (struct window): Add new member window_parameters.
12510
12511 * window.c (Fwindow_parameters, Fwindow_parameter)
12512 (Fset_window_parameter): New defuns.
12513 (syms_of_window): Defsubr the new defuns.
12514 (make_window): Initialize window_parameters to nil.
12515
12516 2008-06-04 John Paul Wallington <jpw@pobox.com>
12517
12518 * eval.c (Fdefmacro): Doc fix.
12519
12520 2008-06-04 Kenichi Handa <handa@m17n.org>
12521
12522 * coding.c (detect_coding): Fix handling of coding->head_ascii.
12523 Be sure to call setup_coding_system when we find a proper coding system.
12524 (detect_coding_system): Fix handling of coding->head_ascii.
12525
12526 2008-06-03 Andreas Schwab <schwab@suse.de>
12527
12528 * font.c (font_prop_validate_spacing): Fix last change.
12529
12530 2008-06-03 Kenichi Handa <handa@m17n.org>
12531
12532 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
12533 (font_parse_fcname): Fix handling of unknown key.
12534
12535 * xfont.c (xfont_list): Try an alias.
12536
12537 * charset.c (char_charset): Return NULL if the arg charset_list is
12538 specified and C doesn't belong to any of them.
12539
12540 2008-06-02 Chip Coldwell <coldwell@redhat.com>
12541
12542 * font.c (font_pixel_size): Don't take cdr of an integer.
12543
12544 2008-06-02 Jim Meyering <meyering@redhat.com>
12545
12546 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
12547 * alloc.c (xfree): Return right away for a NULL arg.
12548 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
12549 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
12550 * mac.c (create_apple_event_from_event_ref): Likewise.
12551 (create_apple_event_from_drag_ref, cfstring_create_normalized):
12552 Likewise.
12553 * doprnt.c (doprnt1): Likewise.
12554 * frame.c (frame): Likewise.
12555 * keyboard.c (wipe_kboard): Likewise.
12556 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
12557 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
12558 * term.c (tty_default_color_capabilities, maybe_fatal)
12559 (delete_tty): Likewise.
12560 * w16select.c (string): Likewise.
12561 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
12562 * w32bdf.c (w32_free_bdf_font): Likewise.
12563 * w32fns.c (w32_unload_font): Likewise.
12564 * w32font.c (w32font_close): Likewise.
12565 * window.c (size_window): Likewise.
12566 * xselect.c (receive_incremental_selection): Likewise.
12567 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
12568 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
12569 * w32.c (stat): Likewise.
12570
12571 Remove useless if-before-free tests.
12572 * editfns.c (Fset_time_zone_rule): Likewise.
12573 * lread.c (nosuffix): Likewise.
12574 * ralloc.c (get_bloc): Likewise.
12575 * regex.c (reg_free): Likewise.
12576 * xftfont.c (xftfont_open, xftfont_close): Likewise.
12577 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
12578 * xsmfns.c (smc_save_yourself_CB): Likewise.
12579
12580 2008-06-02 Kenichi Handa <handa@m17n.org>
12581
12582 * font.c (font_find_for_lface): Handle float font size.
12583 (font_open_for_lface): Likewise.
12584
12585 * xfaces.c (x_supports_face_attributes_p): Check face->font before
12586 comparing the properties.
12587
12588 2008-06-01 Jason Rumney <jasonr@gnu.org>
12589
12590 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
12591 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
12592 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
12593 Don't add empty script list.
12594 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
12595
12596 2008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
12597
12598 * Makefile.in (dot, dotdot): Remove, update users.
12599 ".." has been used elsewhere in the file for a long time.
12600 (LIBXT_STATIC): Remove conditional based on unused variable.
12601
12602 2008-06-01 Miles Bader <miles@gnu.org>
12603
12604 * xfaces.c (Vface_remapping_alist): New variable.
12605 (syms_of_xfaces): Initialize it.
12606 (enum named_merge_point_kind): New type.
12607 (struct named_merge_point): Add `named_merge_point_kind' field.
12608 (push_named_merge_point): Make cycle detection respect different
12609 named-merge-point kinds.
12610 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
12611 Remove face-name alias resolution.
12612 (lface_from_face_name): New definition using
12613 `lface_from_face_name_no_resolve'.
12614 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
12615 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
12616 (get_lface_attributes): New definition that layers face-remapping on
12617 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
12618 (lookup_basic_face): New function.
12619 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
12620 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
12621 `get_lface_attributes'.
12622 (face_at_buffer_position): Use `lookup_basic_face' to lookup
12623 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
12624 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
12625
12626 * xdisp.c (init_iterator): Pass base_face_id through
12627 `lookup_basic_face' when we actually use it as a face-id.
12628 (handle_single_display_prop): Use `lookup_basic_face' to lookup
12629 DEFAULT_FACE_ID.
12630
12631 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
12632 lookup the initial face-id.
12633
12634 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
12635
12636 2008-06-01 Juanma Barranquero <lekktu@gmail.com>
12637
12638 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
12639 (Fremove_text_properties): Fix typos in docstrings.
12640
12641 2008-05-31 Kenichi Handa <handa@m17n.org>
12642
12643 * font.c (font_list_entities): Fix the car part of data to be
12644 stored in the cache.
12645
12646 * ftfont.c (ftfont_font_format): Don't use strcasestr.
12647
12648 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
12649
12650 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
12651 Add a `test' argument so another predicate than `equal' can be used.
12652 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
12653 (map_char_table): Remove unused vars `c' and `i'.
12654 * lisp.h (Foptimize_char_table): Adjust declaration.
12655 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
12656
12657 2008-05-30 Kenichi Handa <handa@m17n.org>
12658
12659 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
12660 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
12661 defined.
12662
12663 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
12664
12665 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
12666 (Fmake_variable_frame_local): Disallow mixing buffer-local and
12667 frame-local settings for the same variable.
12668
12669 2008-05-30 Kenichi Handa <handa@m17n.org>
12670
12671 * fontset.c (Ffont_info): Move to font.c.
12672 (syms_of_fontset): Delete defsubr of Sfont_info.
12673
12674 * font.c (font_style_to_value, font_score): Delete casting of the
12675 args to xstcasecmp.
12676 (register_font_driver): Increment num_font_drivers only when
12677 registering the driver globally.
12678 (Ffont_info): Move from fontset.c. Handle a font object too.
12679 (syms_of_font): Defsubr Sfont_info.
12680
12681 2008-05-29 Kenichi Handa <handa@m17n.org>
12682
12683 * coding.h (enum define_coding_utf8_arg_index): New enum.
12684 (enum coding_attr_index): Change coding_attr_utf_16_bom to
12685 coding_attr_utf_bom.
12686 (enum utf_bom_type): Rename from utf_16_bom_type.
12687 (struct utf_16_spec): Adjust for the above change.
12688 (struct coding_system): Add utf_8_bom in `spec' union.
12689
12690 * coding.c (CODING_UTF_8_BOM): New macro.
12691 (enum coding_category): Delete coding_category_utf_8, add
12692 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
12693 coding_category_utf_8_sig.
12694 (CATEGORY_MASK_UTF_8): Delete it.
12695 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
12696 (CATEGORY_MASK_UTF_8_SIG): New macros.
12697 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
12698 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
12699 CATEGORY_MASK_UTF_8_SIG.
12700 (CATEGORY_MASK_UTF_8): New macro.
12701 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
12702 (detect_coding_utf_8): Check BOM.
12703 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
12704 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
12705 (encode_coding_utf_16): Likewise.
12706 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
12707 (detect_coding, detect_coding_system): Handle utf-8-auto.
12708 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
12709 (syms_of_coding): Fix setting up of Vcoding_category_table.
12710
12711 2008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
12712
12713 * process.c (Faccept_process_output): If `millisec' is non-nil,
12714 `seconds' default to 0.
12715 (wait_reading_process_output): Also return non-nil if we read output
12716 from a non-running process.
12717
12718 2008-05-29 Jason Rumney <jasonr@gnu.org>
12719
12720 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
12721 `raster' specified.
12722 (add_font_entity_to_list): Allow non-opentype truetype fonts back
12723 in the uniscribe backend, but disallow any font that has no
12724 unicode subrange support.
12725
12726 2008-05-29 Juanma Barranquero <lekktu@gmail.com>
12727
12728 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
12729 Fix typos in docstrings.
12730
12731 2008-05-29 Kenichi Handa <handa@m17n.org>
12732
12733 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
12734 (Fx_family_fonts): Set frame correctly.
12735
12736 2008-05-28 Jason Rumney <jasonr@gnu.org>
12737
12738 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
12739
12740 2008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
12741
12742 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
12743 calling build_annotations.
12744
12745 2008-05-28 Juanma Barranquero <lekktu@gmail.com>
12746
12747 * coding.c (Fdecode_coding_region, Fencode_coding_region)
12748 (Fencode_coding_string):
12749 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
12750 <latin-extra-code-table>: Fix typos in docstrings.
12751 (syms_of_coding) <coding-system-alist>: Doc fix.
12752 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
12753
12754 2008-05-28 Kenichi Handa <handa@m17n.org>
12755
12756 * fontset.c (Ffont_info): Don't call font_close_object.
12757
12758 * font.c (font_parse_family_registry): Use Ffont_put to validate
12759 foundry and family.
12760 (font_delete_unmatched): Don't check spacing.
12761 (font_list_entities): Add spacing to the spec to list fonts.
12762
12763 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
12764 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
12765
12766 * coding.c (encode_coding_raw_text): Fix previous change.
12767 (encode_coding_object): When the dst_object is a buffer and is
12768 different from src_object, move gap to PT.
12769
12770 2008-05-27 Chong Yidong <cyd@stupidchicken.com>
12771
12772 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
12773
12774 2008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
12775
12776 * coding.c (encode_coding_raw_text): Set coding->produced_char for
12777 all branches. Compute it differently.
12778
12779 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
12780
12781 2008-05-27 Juanma Barranquero <lekktu@gmail.com>
12782
12783 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
12784 into "else if () ... else ...".
12785
12786 2008-05-27 Jason Rumney <jasonr@gnu.org>
12787
12788 * w32font.c (w32font_open_internal): Determine if glyph indices
12789 are likely to work here.
12790
12791 2008-05-27 Chong Yidong <cyd@stupidchicken.com>
12792
12793 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
12794 draw overlap glyphs with appropriate highlighting.
12795
12796 2008-05-27 Kenichi Handa <handa@m17n.org>
12797
12798 * xfont.c (xfont_open): Fix calculation of font->average_width.
12799
12800 2008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
12801
12802 * casefiddle.c (casify_object): Try to guess better whether the
12803 argument is a byte or a char.
12804
12805 2008-05-26 Andreas Schwab <schwab@suse.de>
12806
12807 * xselect.c (x_reply_selection_request): Properly handle format == 32.
12808 Always send multiples of format size.
12809
12810 * xterm.c (x_set_frame_alpha): Fix type mismatch.
12811
12812 2008-05-26 Jason Rumney <jasonr@gnu.org>
12813
12814 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
12815 (compute_metrics): Don't set failure if we just cleared the cache.
12816 (w32_weight_table): Remove unused variable.
12817 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
12818 backwards compatibility.
12819
12820 2008-05-25 Kenichi Handa <handa@m17n.org>
12821
12822 * w32term.c (x_draw_glyph_string):
12823 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
12824
12825 * xfaces.c: Delete unused function prototypes.
12826 (xstrlwr, font_frame): Delete them.
12827 (clear_face_cache): Delete unused variable.
12828
12829 * xftfont.c (xftfont_open): Delete unused variable.
12830 If underline_thickness is not 1, adjust underline_position.
12831
12832 * ftxfont.c (ftxfont_open): Delete unused variable.
12833
12834 * fontset.c (face_for_char): Optimize for the case of no charset
12835 property.
12836
12837 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
12838 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
12839 (otf_open, font_otf_capability, generate_otf_features)
12840 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
12841 Comment out by surrounding "#if 0" and "#endif" for the moment.
12842 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
12843 (syms_of_font): Codes for accessing above commented out.
12844
12845 2008-05-24 Eli Zaretskii <eliz@gnu.org>
12846
12847 * w32proc.c: Include dispextern.h.
12848
12849 * w32.c: Include dispextern.h.
12850
12851 2008-05-23 Juanma Barranquero <lekktu@gmail.com>
12852
12853 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
12854 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
12855 Fix typos in docstrings.
12856
12857 2008-05-23 Jason Rumney <jasonr@gnu.org>
12858
12859 * xsmfns.c: Remove includes that are already included by config.h.
12860
12861 2008-05-23 Kenichi Handa <handa@m17n.org>
12862
12863 * charset.c (Qemacs, charset_emacs): New variables.
12864 (char_charset): Fix for non-Unicode characters.
12865 (syms_of_charset): Define charset_emacs.
12866
12867 * w32term.c (x_draw_glyph_string): Be sure to update
12868 s->underline_thickness and s->underline_position. Be sure to draw
12869 underline within the current line area.
12870
12871 * xterm.c (x_draw_glyph_string): Be sure to update
12872 s->underline_thickness and s->underline_position. Be sure to draw
12873 underline within the current line area.
12874
12875 * fontset.c: Delete unused variables and add casting for char *
12876 throughout the file.
12877 (fontset_font): Try the fallback fonts of the current fontset
12878 before consulting the default fontset.
12879
12880 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
12881
12882 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
12883
12884 2008-05-22 Jason Rumney <jasonr@gnu.org>
12885
12886 * font.c: Don't include strings.h.
12887
12888 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
12889
12890 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
12891 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
12892 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
12893 to call xstrcasecmp.
12894
12895 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
12896
12897 * fontset.c (fs_query_fontset): Use xstrcasecmp.
12898
12899 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
12900
12901 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
12902
12903 2008-05-22 Kenichi Handa <handa@m17n.org>
12904
12905 * puresize.h (BASE_PURESIZE): Increase to 1220000.
12906
12907 * font.c (font_prop_validate_style): Adjust for the format
12908 change of font_style_table.
12909
12910 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
12911 two args.
12912
12913 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
12914 two args.
12915
12916 2008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
12917
12918 * minibuf.c (keys_of_minibuf): Delete.
12919 * lisp.h (keys_of_minibuf): Delete.
12920 * emacs.c (main): Don't call keys_of_minibuf.
12921
12922 2008-05-22 Kenichi Handa <handa@m17n.org>
12923
12924 * ftfont.c (ftfont_resolve_generic_family): Rename from
12925 ftfont_list_generic_family. Return a single family for each
12926 generic family.
12927 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
12928 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
12929 Call font_add_log.
12930 (ftfont_match): Call font_add_log.
12931
12932 * font.h (Ffont_xlfd_name): EXFUN adjusted.
12933 (FONT_DEBUG): Define it.
12934 (font_add_log): Extern it.
12935 (font_assert): Rename from xassert.
12936
12937 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
12938 (xfont_list_family): Call font_add_log.
12939 (xfont_match): Likewise.
12940 (memq_no_quit): Delete.
12941
12942 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
12943 call of Ffont_xlfd_name.
12944
12945 * xfaces.c (struct table_entry, slant_table, weight_table)
12946 (swidth_table): Move to font.c.
12947
12948 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
12949 xassert are changed to font_assert. Delete many unused variables.
12950 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
12951 New variables.
12952 (struct table_entry): Move from xfaces.c and modified.
12953 (weight_table, slant_table, width_table): Move from xfaces.c and
12954 contents adjusted for the change of struct table_entry.
12955 (font_style_to_value, font_style_symbolic): Adjust for the
12956 format change of font_style_table.
12957 (font_parse_family_registry): Don't overwrite existing foundry and
12958 family of font_spec.
12959 (font_score): Fix calculation of diff for sizes.
12960 (font_sort_entites): Call font_add_log.
12961 (font_delete_unmatched): Return a newly created list.
12962 (font_list_entities): Fix previous change. Call font_add_log.
12963 (font_matching_entity, font_open_entity, font_close_entity):
12964 Call font_add_log.
12965 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
12966 (Finternal_set_font_style_table): Delete.
12967 (BUILD_STYLE_TABLE): New macro.
12968 (build_style_table): New function.
12969 (Vfont_log, font_log_env_checked): New variables.
12970 (font_add_log): New function.
12971 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
12972 Declare Lisp variables "font-weight-table", "font-slant-table",
12973 "font-width-table", and "font-log". Initialize font_style_table.
12974
12975 2008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
12976
12977 * xterm.c (x_set_frame_alpha): Move declarations before statements.
12978
12979 2008-05-21 Seiji Zenitani <zenitani@mac.com>
12980 Ryo Yoshitake <ryo@shiftmode.net>
12981
12982 * frame.c (Qalpha): Add a new frame parameter `alpha'.
12983 (Vframe_alpha_lower_limit): New variable.
12984 (x_set_alpha): New function.
12985
12986 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
12987
12988 * xfns.c (x-create-frame, Qalpha):
12989 Initialize the frame parameter `alpha'.
12990 * xterm.c (OPAQUE, OPACITY): New.
12991 (x_set_frame_alpha): New function.
12992 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
12993
12994 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
12995 * w32fns.c (w32_frame_parm_handlers): Likewise.
12996
12997 2008-05-20 Jason Rumney <jasonr@gnu.org>
12998
12999 * w32font.c (add_font_entity_to_list): Don't add non-opentype
13000 truetype fonts to opentype list.
13001
13002 2008-05-20 Juanma Barranquero <lekktu@gmail.com>
13003
13004 * fontset.c (Ffontset_info): Doc fix.
13005 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
13006 <ignore-relative-composition>: Fix typos in docstrings.
13007
13008 * font.c (syms-of-font) <font-encoding-alist>:
13009 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
13010 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
13011 (Ffont_otf_alternates): Doc fixes.
13012
13013 2008-05-20 Kenichi Handa <handa@m17n.org>
13014
13015 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
13016 font.h through out the file.
13017 (FONT_DRIVERS): Rename from FONTOBJ.
13018 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
13019 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
13020
13021 * emacs.c (main): Call syms_of_font unconditionally.
13022
13023 * font.h (find_font_encoding): Extern it.
13024
13025 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
13026 fontset.c.
13027 (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
13028 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
13029 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
13030 only when HAVE_WINDOW_SYSTEM is defined.
13031 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
13032 when HAVE_WINDOW_SYSTEM is defined.
13033
13034 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
13035 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
13036
13037 * xfaces.c: Include font.h unconditionally.
13038 (merge_face_ref, merge_face_vectors)
13039 (Finternal_set_lisp_face_attribute): Cancel the previous change.
13040
13041 2008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
13042
13043 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
13044 indirect_variable.
13045 * eval.c (lisp_indirect_variable): New fun.
13046 (Fuser_variable_p): Use it.
13047
13048 2008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
13049
13050 * lisp.h (indirect_variable):
13051 * data.c (indirect_variable, let_shadows_buffer_binding_p):
13052 Use Lisp_Symbol pointers rather than Lisp_Object.
13053 Adjust callers.
13054 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
13055 To this end, change calling-convention.
13056
13057 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
13058 if some non-hidden buffers are selected by string&pred.
13059
13060 2008-05-19 Chong Yidong <cyd@stupidchicken.com>
13061
13062 * process.c (wait_reading_process_output): Always check status
13063 when in batch mode.
13064
13065 2008-05-19 Kenichi Handa <handa@m17n.org>
13066
13067 * font.c (font_list_entities): Fix handling of cache.
13068 (font_matching_entity): Likewise.
13069
13070 * ftfont.c (cs_iso8859_1): Delete.
13071 (ft_face_cache): New variable.
13072 (struct ftfont_info): New member fc_charset_idx.
13073 (ftfont_build_basic_charsets): Delete.
13074 (fc_charset_table): New variable.
13075 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
13076 . FC_CHARSET_IDX) as :font-entity property in the font entity.
13077 Callers changed.
13078 (ftfont_lookup_cache, ftfont_get_charset): New functions.
13079 (ftfont_spec_pattern): New argument fc_charset_idx.
13080 Check registry more rigidly. Change callers.
13081 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
13082 change of :font-entity property of the font.
13083
13084 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
13085 property of the font.
13086
13087 2008-05-18 Juanma Barranquero <lekktu@gmail.com>
13088
13089 * coding.c (Fcoding_system_p): Rename argument to match docstring.
13090 (Funencodable_char_position, Fcheck_coding_systems_region)
13091 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
13092 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
13093 (Ffind_operation_coding_system, Fset_coding_system_priority)
13094 (Fcoding_system_eol_type): Doc fixes.
13095
13096 2008-05-17 Glenn Morris <rgm@gnu.org>
13097
13098 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
13099
13100 2008-05-16 Eli Zaretskii <eliz@gnu.org>
13101
13102 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
13103 and st_gid.
13104
13105 * frame.c (Fdelete_frame): Don't call font_update_drivers if
13106 HAVE_WINDOW_SYSTEM is not defined.
13107
13108 * xfaces.c (merge_face_ref, merge_face_vectors)
13109 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
13110 HAVE_WINDOW_SYSTEM is defined.
13111 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
13112
13113 2008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
13114
13115 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
13116
13117 2008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13118
13119 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
13120
13121 2008-05-15 Kenichi Handa <handa@m17n.org>
13122
13123 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
13124 preference.
13125
13126 2008-05-15 Glenn Morris <rgm@gnu.org>
13127
13128 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
13129
13130 2008-05-15 Chong Yidong <cyd@stupidchicken.com>
13131
13132 * fns.c (init_fns): Don't initialize weak_hash_tables here.
13133 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
13134
13135 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
13136
13137 2008-05-15 Kenichi Handa <handa@m17n.org>
13138
13139 * ftfont.c (ftfont_list): Downcase family name to check generic
13140 families.
13141
13142 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
13143 font-spec for QCfont value.
13144
13145 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
13146 buffer. Check the return value of it.
13147
13148 2008-05-14 Jason Rumney <jasonr@gnu.org>
13149
13150 * w32term.c (w32_get_glyph_overhangs): Remove.
13151 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
13152
13153 2008-05-14 Kenichi Handa <handa@m17n.org>
13154
13155 * font.c (font_prop_validate): Make nil a valid value.
13156 (font_clear_cache): Check if the cached vector of entities is nil
13157 or not.
13158
13159 2008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13160
13161 * emacs.c (main_thread): Conditionalize on
13162 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
13163 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
13164
13165 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
13166 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
13167 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
13168
13169 2008-05-14 Kenichi Handa <handa@m17n.org>
13170
13171 * coding.c (detect_coding_iso_2022): Ignore a coding category that
13172 has no corresponding coding system.
13173
13174 2008-05-14 Jason Rumney <jasonr@gnu.org>
13175
13176 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
13177
13178 * w32font.h (w32font_open_internal): Update declaration.
13179
13180 * w32font.c (w32font_open_internal): Change last argument from
13181 w32font_info struct to font object. Fill in font object from
13182 font_entity. Get Outline metrics if possible. Use them to
13183 calculate underline position and thickness. Use xlfd name as name
13184 property. Don't set codepage.
13185 (w32font_open): Pass font_object to w32font_open_internal. Don't
13186 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
13187 (w32font_draw): Use s->font.
13188 (clear_cached_metrics): Don't clear non-existent blocks.
13189
13190 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
13191 font was not found.
13192 (x_draw_glyph_string): Use underline position and thickness from font.
13193
13194 * w32uniscribe.c (uniscribe_open): Pass font_object to
13195 w32font_open_internal.
13196
13197 2008-05-14 Kenichi Handa <handa@m17n.org>
13198
13199 These changes are to delete all legacy font-handling codes, and
13200 make Emacs use only font-backends.
13201
13202 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
13203 (frame.o, image.o, print.o): Depend on $(FONTSRC).
13204
13205 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
13206
13207 * charset.h (Vcharset_non_preferred_head)
13208 (Vcurrent_iso639_language): Extern them.
13209
13210 * charset.c (Vcharset_non_preferred_head): New variable.
13211 (Vcurrent_iso639_language): New variable.
13212 (syms_of_charset): Declare it as a Lisp variable.
13213 (char_charset): Don't check non preferred charsets. As a last
13214 resort, return charset_unicode.
13215 (Fset_charset_priority): Update Vcharset_non_preferred_head.
13216
13217 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
13218 conditionals. Don't check enable_font_backend. Delete all codes
13219 used only when USE_FONT_BACKEND is not defined.
13220
13221 * dispextern.h (struct glyph_string): Change type of `font' to
13222 `struct font *'.
13223 (struct glyph_string): New member underline_position and
13224 underline_thickness.
13225 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
13226 (struct face): Change type of `font' to `struct font *'. Remove
13227 members `font_name', `font_info_id'.
13228 (per_char_metric, encode_char): Delete externs.
13229 (calc_pixel_width_or_height): Adjust the prototype.
13230
13231 * emacs.c (enable_font_backend): Delete extern.
13232 (main): Don't set enable_font_backend. Don't check the command
13233 line argument "-disable-font-backend".
13234
13235 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
13236 (enum font_property_index): New members FONT_DPI_INDEX,
13237 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
13238 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
13239 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
13240 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
13241 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
13242 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
13243 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
13244 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
13245 (struct font_spec, struct font_entity): New structs.
13246 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
13247 (struct font): Many members from old "struct font_info" moved to
13248 here. Members font and entity deleted.
13249 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
13250 the new font-related objects.
13251 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
13252 (CHECK_FONT_GET_OBJECT): Likewise.
13253 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
13254 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
13255 (struct font_driver): New members case_sensitive anc check. Type
13256 of the member list and open changed.
13257 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
13258 (font_symbolic_width, font_find_object, font_get_spec)
13259 (font_set_lface_from_name): Delete extern.
13260 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
13261
13262 * font.c: Include <strings.h>.
13263 (enable_font_backend): Delete it.
13264 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
13265 (CHECK_VALIDATE_FONT_SPEC): Delete it.
13266 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
13267 (null_string): Delete it.
13268 (null_vector): Make it static.
13269 (font_family_alist): Delete it.
13270 (Qnormal): Extern it.
13271 (QCextra, QClanguage): Delete it.
13272 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
13273 (font_make_spec, font_make_entity, font_make_object)
13274 (font_intern_prop): Renamed from intern_downcase. Don't downcase
13275 the string. Callers changed.
13276 (font_pixel_size): Adjusted for the format change of font-related
13277 objects.
13278 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
13279 (font_style_to_value, font_style_symbolic): New function.
13280 (build_font_family_alist): Delete it.
13281 (font_registry_charsets): Use Fassoc_string instead of
13282 assq_no_quit.
13283 (font_prop_validate_symbol): Don't return null_string.
13284 (font_prop_validate_style): Adjusted for the change of
13285 style-related values in a font vector.
13286 (font_property_table): Delete entries for QClanguage and
13287 QCantialias, add entries for QCavgwidth.
13288 (get_font_prop_index): Delete the 2nd argument FROM.
13289 (font_prop_validate): Arguments changed.
13290 (font_put_extra): Adjusted for the change of font-related objects.
13291 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
13292 (font_parse_fcname, font_unparse_fcname)
13293 (font_prepare_composition): Likewise.
13294 (font_parse_family_registry): Renamed from font_merge_old_spec.
13295 (otf_open): Delete the 1st arg entity.
13296 (font_otf_capability): Adjusted for the above change.
13297 (font_score): New arg alternate_families. Adjusted for the change
13298 of font-related objects.
13299 (font_sort_entites): New arg best_only.
13300 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
13301 Delete them.
13302 (font_match_p): Check alternate families.
13303 (font_find_object): Delete it.
13304 (font_check_object): New function.
13305 (font_clear_cache): Adjusted for the change of font-related objects.
13306 (font_delete_unmatched): New arg.
13307 (font_list_entities): Call font_driver->list with a spec that
13308 doesn't specify style-related properties.
13309 (font_matching_entity): Arguments changed. Caller changed.
13310 (font_open_entity): Adjusted for the change of font-related objects.
13311 (font_close_object, font_has_char, font_encode_char)
13312 (font_get_name, font_get_spec): Likewise.
13313 (font_spec_from_name, font_clear_prop, font_update_lface):
13314 New functions.
13315 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
13316 (font_prepare_for_face, font_done_for_face, font_open_by_name)
13317 (font_at): Adjusted for the change of font-related objects.
13318 (font_range): New function.
13319 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
13320 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
13321 (Fcopy_font_spec, Fmerge_font_spec): New function.
13322 (Ffont_family_list): Renamed from list-families.
13323 (Finternal_set_font_style_table): Arguments changed.
13324 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
13325 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
13326 change of font-related objects.
13327 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
13328
13329 * fontset.h (struct font_info): Delete it. Most members go to
13330 struct font.
13331 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
13332 (enum FONT_SPEC_INDEX): Delete it.
13333 (font_info, list_fonts_func, load_font_func, query_font_func)
13334 (set_frame_fontset_func, find_ccl_program_func)
13335 (get_font_repertory_func, new_fontset_from_font_name): Delete
13336 externs.
13337 (fontset_from_font_name): Extern it.
13338 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
13339 (FONT_INFO_FROM_FACE): Deleted.
13340 (face_for_font): Adjust prototype.
13341
13342 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
13343 conditionals. Don't check enable_font_backend. Delete all codes
13344 used only when USE_FONT_BACKEND is not defined.
13345 (get_font_info_func, list_font_func, load_font_func)
13346 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
13347 (get_font_repertory_func): Delete them.
13348 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
13349 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
13350 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
13351 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
13352 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
13353 (fontset_compare_rfontdef): New function.
13354 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
13355 rfont-defs by qsort. Adjusted for the change of font-group vector.
13356 (load_font_get_repertory): Deleted.
13357 (fontset_find_font): Use new macros to ref/set elements of
13358 font-def and rfont-def.
13359 (fontset_font): Fix the timing of remembering that no font for C.
13360 (free_face_fontset): Do nothing if the face has no fontset.
13361 (face_suitable_for_char_p): Use new macros to ref/set elements of
13362 rfont-def.
13363 (face_for_char): Likewise. Call face_for_char with font_object.
13364 (fs_load_font): Delete. Delete #pragma surrounding it.
13365 (fs_query_fontset): Use strcasecmp instead of strcmp.
13366 (generate_ascii_font_name): Adjusted for the format change of
13367 font-spec.
13368 (Fset_fontset_font): Likewise. Use new macros to set elements of
13369 font-def.
13370 (Fnew_fontset): Use font_unparse_xlfd to generate
13371 FONTSET_ASCII (fontset).
13372 (new_fontset_from_font_name): Deleted.
13373 (fontset_from_font): Renamed from new_fontset_from_font. Check if
13374 a fontset is already created for the font. FIx updating of
13375 Vfontset_alias_alist.
13376 (fontset_ascii_font): Deleted.
13377 (Ffont_info): Adjusted for the format change of font-spec.
13378 (Finternal_char_font): Likewise.
13379 (Ffontset_info): Likewise.
13380 (syms_of_fontset): Don't check load_font_func.
13381
13382 * fns.c (internal_equal): Handle PREV_FONT.
13383
13384 * frame.h: Delete USE_FONT_BACKEND conditional.
13385
13386 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
13387 conditionals. Don't check enable_font_backend. Delete all codes
13388 used only when USE_FONT_BACKEND is not defined.
13389 (x_set_font): Call x_new_font, not x_new_fontset2.
13390 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
13391 already set for the frame.
13392
13393 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
13394 a font-entity by font_make_entity. Use font_intern_prop instead
13395 of intern_downcase. Use FONT_SET_STYLE to set a style-related
13396 font property. If a font is scalable, set avgwidth property to 0.
13397 Set font-entity property by font_put_extra.
13398 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
13399 (ffont_driver): Adjusted for the change of struct font_driver.
13400 (ftfont_spec_pattern): New function.
13401 (ftfont_list): Return a list, not vector.
13402 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
13403 (ftfont_list_family): Don't downcase names.
13404 (ftfont_free_entity): Deleted.
13405 (ftfont_open): Return a font-object. Adjusted for the change of
13406 struct font. Get underline_thickness and underline_position from
13407 font property. Don't update dpyinfo->smallest_font_height and
13408 dpyinfo->smallest_char_width.
13409 (ftfont_close): Don't free `struct font'.
13410 (ftfont_has_char): Adjusted for the format change of font-entity.
13411 (ftfont_encode_char, ftfont_text_extents): Likewise.
13412
13413 * ftxfont.c (ftxfont_list): Return a list, not vector.
13414 (ftxfont_open): Return a font-object. Adjusted for the change of
13415 struct font. Get underline_thickness and underline_position from
13416 font property. Don't update dpyinfo->smallest_font_height and
13417 dpyinfo->smallest_char_width.
13418 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
13419 (ftxfont_draw): Adjusted for the change of struct font.
13420
13421 * image.c (image_ascent): Don't include "charset.h". Include
13422 "character.h" and "font.h".
13423
13424 * lisp.h (enum pvec_type): New member PREV_FONT.
13425 (Fassoc_string): EXFUN it.
13426
13427 * print.c: Include font.h.
13428 (print_object): Handle font-related objects.
13429
13430 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
13431 conditionals. Don't check enable_font_backend. Delete all codes
13432 used only when USE_FONT_BACKEND is not defined.
13433 (handle_auto_composed_prop): Do nothing if it->f is not on a
13434 window system. Check how many following characters can be
13435 displayed by the same font.
13436 (calc_pixel_width_or_height): Type of the 4th arg is changed to
13437 'struct font *'.
13438 (get_char_face_and_encoding): Assign the whole encoding task to
13439 the `encode-char' method of a font driver.
13440 (fill_composite_glyph_string): Adjusted for the change of `struct
13441 face' and `struct glyph_string'.
13442 (fill_glyph_string): Likewise.
13443 (get_per_char_metric): Arguments changed.
13444 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
13445 and `struct glyph_string'.
13446 (produce_stretch_glyph, calc_line_height_property)
13447 (x_produce_glyphs): Likewise.
13448
13449 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
13450 conditionals. Don't check enable_font_backend. Delete all codes
13451 used only when USE_FONT_BACKEND is not defined. Use
13452 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
13453 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
13454 (Qp): Extern them.
13455 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
13456 Deleted.
13457 (struct font_name): Deleted.
13458 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
13459 (compare_fonts_by_sort_order): New function.
13460 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
13461 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
13462 Deleted.
13463 (Fx_family_fonts): Use font_list_entities, and sort fonts by
13464 compare_fonts_by_sort_order.
13465 (Fx_font_family_list): Call Ffont_family_list.
13466 (face_numeric_value, face_numeric_weight, face_numeric_slant)
13467 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
13468 (face_symbolic_slant, face_symbolic_swidth)
13469 (split_font_name_into_vector, build_font_name_from_vector)
13470 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
13471 (font_rescale_ratio, split_font_name, build_font_name)
13472 (free_font_names, sort_fonts, x_face_list_fonts)
13473 (face_font_available_p, sorted_font_list, cmp_font_names)
13474 (font_list_1, concat_font_list, font_list, remove_duplicates):
13475 Deleted.
13476 (Fx_list_fonts): Use Ffont_list.
13477 (LFACE_AVGWIDTH): Deleted.
13478 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
13479 by FONTP.
13480 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
13481 (set_lface_from_font_name): Delete it.
13482 (set_lface_from_font): Renamed from
13483 set_lface_from_font_and_fontset. Caller changed. Don't set
13484 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
13485 for face.
13486 (merge_face_vectors): Copy font-spec if necessary.
13487 Clear properties of the font-spec if necessary.
13488 (merge_face_ref): Clear properties of the font-spec if necessary.
13489 (Finternal_set_lisp_face_attribute): Likewise.
13490 (set_font_frame_param): Use font_load_for_lface to load a
13491 font-object, and call Fmodify_frame_parameters with it.
13492 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
13493 font name by Ffont_xlfd_name.
13494 (Finternal_lisp_face_attribute_values): Don't check QCweight,
13495 QCslant, and QCwidth.
13496 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
13497 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
13498 Compare fonts by EQ.
13499 (lookup_non_ascii_face): Deleted.
13500 (face_for_font): The 2nd argument changed.
13501 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
13502 Check atomic font properties by case insensitive.
13503 (realize_non_ascii_face): Set face->overstrike correctly.
13504 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
13505 (dump_realized_face): Get font name from
13506 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
13507
13508 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
13509 conditionals. Don't check enable_font_backend. Delete all codes
13510 used only when USE_FONT_BACKEND is not defined.
13511 (xic_create_xfontset): Original code deleted and renamed from
13512 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
13513 (x_make_gc): Don't set GCFont in GCs.
13514 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
13515 opened by "fixed".
13516 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
13517 find_ccl_program_func, query_font_func, set_frame_fontset_func,
13518 get_font_repertory_func.
13519
13520 * xfont.c: Include <stdlib.h> and "ccl.h".
13521 (struct xfont_info): New structure.
13522 (xfont_query_font): Deleted.
13523 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
13524 moved from xterm.c.
13525 (xfont_driver): Adjusted for the change of struct font_driver.
13526 (compare_font_names): New function.
13527 (xfont_list_pattern): Sort font names case insensitively. Make
13528 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
13529 (xfont_list): Return a list, not vector.
13530 (xfont_match): If the font doesn't have QCname property, generate
13531 a name from the other font properties.
13532 (xfont_open): Return a font-object. Adjusted for the change of
13533 struct font. Get underline_thickness and underline_position from
13534 font property. Don't update dpyinfo->smallest_font_height and
13535 dpyinfo->smallest_char_width.
13536 (xfont_close): Don't free struct font.
13537 (xfont_prepare_face): Adjusted for the change of struct font.
13538 (xfont_done_face): Deleted.
13539 (xfont_has_char): Adjusted for the change of struct font.
13540 (xfont_encode_char, xfont_draw): Likewise.
13541 (xfont_check): New function.
13542
13543 * xftfont.c (xftfont_list): Adjusted for the change of `list'
13544 callback function.
13545 (xftfont_match): Adjusted for the format change of font-entity.
13546 (xftfont_open): Adjusted for the format change of font-entity and
13547 font-object. Adjusted for the change of struct font. Return a
13548 font-object. Don't update dpyinfo->smallest_font_height and
13549 dpyinfo->smallest_char_width.
13550 (xftfont_close): Block input while calling XftFontClose.
13551 (xftfont_prepare_face): Don't block input while calling
13552 xftfont_get_colors. Adjusted for the change of struct font.
13553 (xftfont_shape): Return value of error case fixed.
13554
13555 * xrdb.c (x_load_resources): Don't setup a fontset resource.
13556
13557 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
13558 conditionals.
13559 (FONT_WIDTH): Return (f)->max_width.
13560 (struct x_display_info): Delete member `font'.
13561 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
13562 (x_find_ccl_program, x_get_font_repertory): Delete externs.
13563 (struct x_output): Change type of `font' to `struct font *'.
13564
13565 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
13566 conditionals. Don't check enable_font_backend. Delete all codes
13567 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
13568 (x_per_char_metric, x_encode_char): Deleted.
13569 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
13570 (x_compute_glyph_string_overhangs): Adjusted for the change of
13571 `struct face'.
13572 (x_draw_glyph_string_foreground)
13573 (x_draw_composite_glyph_string_foreground): Likewise.
13574 (x_draw_glyph_string): Likewise. Use font->underline_position and
13575 font->underline_thickness.
13576 (x_new_font): Renamed from x_new_fontset2.
13577 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
13578 (x_check_font): Call `check' method of a font driver.
13579 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
13580 (x_query_font, x_get_font_repertory): Deleted.
13581 (x_find_ccl_program): Renamed and moved to xfont.c.
13582 (x_redisplay_interface): Adjusted for the change of `struct
13583 redisplay_interface'.
13584
13585 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
13586 conditionals. Don't check enable_font_backend. Delete all codes
13587 used only when USE_FONT_BACKEND is not defined. Surround non-used
13588 code by "#ifdef OLD_FONT" and "endif".
13589 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
13590
13591 * w32font.h (struct w32font_info): New member.
13592 (FONT_COMPAT): New macro.
13593 (w32font_open_internal): Prototype adjusted.
13594
13595 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
13596 OLD_FONT" and "endif".
13597
13598 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
13599 conditionals. Don't check enable_font_backend. Delete all codes
13600 used only when USE_FONT_BACKEND is not defined.
13601 (w32font_open): Return a font-object. Make a font-object by
13602 font_make_object. Adjusted for the change of struct w32font_info.
13603 (w32font_close): Don't free struct font. Adjusted for the change
13604 of struct w32font_info.
13605 (w32font_encode_char, w32font_text_extents, w32font_draw):
13606 Adjusted for the change of struct w32font_info.
13607 (w32font_draw): Likewise.
13608 (w32font_list_internal): Return a list, not vector.
13609 (w32font_open_internal): Change the 4th arg to font-object.
13610 Adjusted for the change of struct w32font_info and font-object format.
13611 (add_font_name_to_list): Don't downcase names.
13612 (w32_enumfont_pattern_entity): Make a font-entity by
13613 font_make_entity. Adjusted for the format change of font-entity.
13614 Use FONT_SET_STYLE to set a style-related font property. If a
13615 font is scalable, set avgwidth property to 0. Set font-entity
13616 property by font_put_extra.
13617 (font_matches_spec): Adjusted for the format change of font-entity.
13618 (w32_weight_table, w32_decode_weight): New variables.
13619 (w32_encode_weight): New function.
13620 (fill_in_logfont): Adjusted for the format change of font-spec.
13621 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
13622 weight value.
13623 (w32font_driver): Adjusted for the change of struct font_driver.
13624
13625 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
13626 conditionals. Don't check enable_font_backend. Surround non-used
13627 code by "#ifdef OLD_FONT" and "endif".
13628 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
13629 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
13630
13631 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
13632 conditionals. Don't check enable_font_backend. Delete all codes
13633 used only when USE_FONT_BACKEND is not defined. Surround non-used
13634 code by "#ifdef OLD_FONT" and "endif".
13635
13636 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
13637 (uniscribe_open): Return value changed to font-object.
13638 Adjusted for the format change of font-object.
13639 (uniscribe_otf_capability): Adjusted for the change of struct font.
13640 (add_opentype_font_name_to_list): Don't downcase names.
13641 (uniscribe_font_driver): Adjusted for the change of struct
13642 font_driver.
13643
13644 2008-05-13 Chong Yidong <cyd@stupidchicken.com>
13645
13646 * dispnew.c (update_frame_1): Check if tty output is still valid
13647 before flushing it.
13648
13649 2008-05-13 Jan Djärv <jan.h.d@swipnet.se>
13650
13651 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
13652 to Gtk+ menus.
13653
13654 2008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
13655
13656 * dired.c (file_name_completion): Tweak the code so as to always do it
13657 in a single pass. Tighten the scope of some variables.
13658
13659 * dired.c (Qdefault_directory): New var.
13660 (file_name_completion): Use it instead of Fexpand_file_name.
13661 (syms_of_dired): Initialize it.
13662
13663 2008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
13664
13665 * fileio.c (double_dollars): Remove dead code.
13666
13667 2008-05-10 Eli Zaretskii <eliz@gnu.org>
13668
13669 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
13670 Mention w32-get-true-file-attributes in doc string.
13671
13672 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
13673
13674 2008-05-09 Glenn Morris <rgm@gnu.org>
13675
13676 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
13677 2008-04-23.
13678
13679 2008-05-09 Eli Zaretskii <eliz@gnu.org>
13680
13681 Support for reporting owner and group of each file on MS-Windows:
13682 * dired.c (stat_uname, stat_gname): New functions, with special
13683 implementation for w32.
13684 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
13685
13686 * w32.c: Rename the_passwd_* to dflt_passwd_*.
13687 (dflt_group_name): New static variable.
13688 (dflt_group): Rename from the_group.
13689 (init_user_info): Init dflt_group fields. Get user's group name
13690 from LookupAccountSid.
13691 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
13692 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
13693 New initialization states.
13694 (globals_of_w32): Initialize them to zero. Initialize the default
13695 group name to "None".
13696 (GetFileSecurity_Name): New global var, the name of the function
13697 to call for GetFileSecurity.
13698 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
13699 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
13700 (get_file_security, get_security_descriptor_owner)
13701 (get_security_descriptor_group, is_valid_sid)
13702 (get_file_security_desc, get_rid, get_name_and_id)
13703 (get_file_owner_and_group): New functions.
13704 (stat): Use get_file_security_desc and get_file_owner_and_group to
13705 report the owner and primary group of each file. Don't ignore the
13706 high 32 bits of file's size, now that st_size is 64-bit wide.
13707 Fix test when to get true file attributes.
13708 (init_user_info): Use get_rid instead of equivalent inline code.
13709 (fstat): Don't ignore the high 32 bits of file's size.
13710
13711 2008-05-09 Chong Yidong <cyd@stupidchicken.com>
13712
13713 * image.c (png_load): Use correct bit-depth for setting background
13714 color.
13715
13716 2008-05-08 Eli Zaretskii <eliz@gnu.org>
13717
13718 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
13719 epa-hook.elc.
13720
13721 2008-05-08 Juanma Barranquero <lekktu@gmail.com>
13722
13723 * font.c (Ffont_match_p): Don't use `iff' in docstring.
13724
13725 2008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
13726
13727 * macfns.c (Fx_create_frame): Make a copy of frame parameters
13728 because the original parameters are in pure storage now.
13729 (mac_window): Remove unused params. Update callers.
13730
13731 2008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
13732
13733 * lread.c (substitute_object_recurse): Use lower-level primitives.
13734 Don't signal errors when traversing sub-char-tables.
13735 Don't loop over all the possible characters when traversing char-tables.
13736
13737 * print.c (print_preprocess): Add sub-char-tables to the print-table,
13738 just like we do in print.c.
13739
13740 2008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
13741
13742 * minibuf.c (Ftry_completion): Remove code left over from when we used
13743 scmp instead of Fcompare_strings.
13744
13745 2008-05-04 Juanma Barranquero <lekktu@gmail.com>
13746
13747 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
13748
13749 2008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13750
13751 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
13752 Create bitmap context in native byte order.
13753
13754 * macterm.c (XDrawLine)
13755 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
13756 context in native byte order.
13757
13758 2008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13759
13760 * config.in: Regenerate.
13761
13762 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
13763 New definitions for Image I/O support.
13764 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
13765 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
13766 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
13767 (mac_data_provider_release_data, image_load_image_io)
13768 [USE_MAC_IMAGE_IO]: New functions.
13769 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
13770 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
13771 (init_image_func_pointer) [MAC_OSX]: Remove function.
13772 (image_load_quartz2d) [MAC_OSX]: Check availability of
13773 CGImageCreateWithPNGDataProvider at compile time.
13774 Use lowercase `false' for boolean constant.
13775 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
13776 Use image_load_image_io.
13777 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
13778 Don't check MyCGImageCreateWithPNGDataProvider.
13779 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
13780 Don't call init_image_func_pointer.
13781
13782 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
13783
13784 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
13785 Make variable non-static.
13786 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
13787 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
13788
13789 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
13790 (RED_FROM_ULONG): Mask off higher bits.
13791 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
13792
13793 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
13794 Include AvailabilityMacros.h.
13795 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
13796 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
13797
13798 2008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
13799
13800 * chartab.c (Fset_char_table_range): If range is t, really set all
13801 chars to that value.
13802
13803 2008-05-03 Eli Zaretskii <eliz@gnu.org>
13804
13805 * dired.c (Ffile_attributes): Don't allow the device number become
13806 negative.
13807
13808 2008-05-02 Daiki Ueno <ueno@unixuser.org>
13809
13810 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
13811
13812 2008-05-02 Juri Linkov <juri@jurta.org>
13813
13814 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
13815 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
13816 DEFAULT argument as a list of default values in docstrings.
13817
13818 2008-05-01 Chong Yidong <cyd@stupidchicken.com>
13819
13820 * puresize.h (BASE_PURESIZE): Increase to 1210000.
13821
13822 2008-05-01 Martin Rudalics <rudalics@gmx.at>
13823
13824 * dispnew.c (change_frame_size_1): Preserve small windows when
13825 shrinking frames by calling set_window_height|width with third
13826 arg 2.
13827
13828 * window.h (struct window): Replace field too_small_ok by field
13829 resize_proportionally.
13830
13831 * window.c (make_window): Initialize resize_proportionally.
13832 (enlarge_window): Temporarily set resize_proportionally to make
13833 sure that shrink_windows does scale the window proportionally.
13834 (shrink_windows): When window has resize_proportionally set try
13835 to shrink it proportionally by stealing from other windows.
13836 (struct saved_window, Fset_window_configuration)
13837 (compare_window_configurations): Handle resize_proportionally.
13838 (WINDOW_TOTAL_SIZE): New macro.
13839 (window_min_size, shrink_windows, size_window): Use it.
13840 (check_min_window_sizes): Remove. Invalid values of
13841 window-min-height|width are handled by window_min_size_2 now.
13842 (size_window, Fsplit_window, enlarge_window)
13843 (adjust_window_trailing_edge, grow_mini_window): Don't call
13844 check_min_window_sizes.
13845 (window_min_size_2, window_min_size_1, window_min_size):
13846 New argument safe_p for retrieving "safe" minimum sizes.
13847 (Fdisplay_buffer, Fsplit_window, enlarge_window)
13848 (adjust_window_trailing_edge, grow_mini_window):
13849 Adjust arguments of window_min_size... functions.
13850 (shrink_windows): Argument min_size removed. New argument
13851 safe_p allows shrinking windows to their safe minimum sizes.
13852 Calculate minimum size and decide whether a window shall be
13853 deleted for each window individually.
13854 (size_window): When nodelete_p equals 2, tell shrink_windows to
13855 delete windows only if their new minimum size is no more safe.
13856 (shrink_window_lowest_first): Call window_min_size_1 to make
13857 sure to preserve modeline of bottom-most window when resizing
13858 the minibuffer.
13859 (Fset_window_configuration, Fcurrent_window_configuration)
13860 (compare_window_configurations): Do not handle
13861 window-min-height|width any more.
13862 (syms_of_window): Clarify window-min-height|width doc-strings.
13863
13864 2008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
13865
13866 * dired.c (file_name_completion): Fix up the encoding/decoding issue
13867 some more. Copy some of the code from Ftry_completions.
13868 Remove special case code that dates back to initial revision when the
13869 slash was only added when necessary and that can't trigger nowadays.
13870
13871 2008-04-27 Kenichi Handa <handa@m17n.org>
13872
13873 * font.c (font_prop_validate): Signal `error' instead of `font'.
13874
13875 2008-04-29 Jason Rumney <jasonr@gnu.org>
13876
13877 * w32fns.c (Fw32_battery_status): New defun.
13878 (syms_of_w32fns): Defsubr it.
13879
13880 2008-04-28 Andreas Schwab <schwab@suse.de>
13881
13882 * dired.c (file_name_completion): Fix another mixing of encoded
13883 and decoded names.
13884
13885 2008-04-28 Juanma Barranquero <lekktu@gmail.com>
13886
13887 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
13888
13889 2008-04-27 Juanma Barranquero <lekktu@gmail.com>
13890
13891 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
13892
13893 2008-04-27 Andreas Schwab <schwab@suse.de>
13894
13895 * dired.c (file_name_completion): Fix inappropriate mixing of
13896 encoded and decoded names.
13897
13898 * xterm.c (XTread_socket): Fix use of uninitialized variable.
13899
13900 * puresize.h (BASE_PURESIZE): Increase to 1200000.
13901
13902 2008-04-26 Eli Zaretskii <eliz@gnu.org>
13903
13904 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
13905 2008-03-31, it's not needed anymore with `struct stat' definition
13906 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
13907 for the same reasons.
13908
13909 2008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
13910
13911 * m/sparc.h: Additional redefinitions for GNU/Linux.
13912
13913 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13914
13915 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
13916 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
13917 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
13918 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
13919 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
13920 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
13921 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
13922 Likewise.
13923
13924 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
13925 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
13926 (mac_ax_number_of_characters): Add externs.
13927 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
13928 [USE_MAC_TSM]: Likewise.
13929 (mac_handle_text_input_event) [MAC_OSX]:
13930 Handle kEventTextInputOffsetToPos for no active input area case.
13931 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
13932 (mac_handle_document_access_event)
13933 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
13934 (install_application_handler) [MAC_OSX]: Register handlers for
13935 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
13936 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
13937 Register mac_handle_document_access_event.
13938
13939 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
13940 Make functions non-static.
13941
13942 2008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
13943
13944 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
13945 (read_file_name_completion_ignore_case, insert_default_directory)
13946 (Qdefault_directory): Move to minibuffer.el.
13947 (Fread_file_name): Call the new `read-file-name' instead.
13948
13949 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13950
13951 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
13952 Make function non-static.
13953 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
13954 Remove function.
13955 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
13956 Move to mactoolbox.c.
13957 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
13958
13959 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
13960 (mac_rect_make): New macro.
13961
13962 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
13963 instead of float.
13964 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
13965 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
13966 (XSetBackground) [USE_CG_DRAWING]: Likewise.
13967 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
13968 CGRectMake.
13969 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
13970 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
13971 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
13972 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
13973 instead of WindowRef in argument type.
13974 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
13975 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
13976 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
13977 instead of DISPLAY. All uses changed.
13978 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
13979 (x_calc_absolute_position): Simplify so as not to use
13980 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
13981
13982 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
13983 instead of WindowRef in argument type.
13984 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
13985 [TARGET_API_MAC_CARBON]: Remove externs.
13986 (create_apple_event, mac_event_parameters_to_lisp)
13987 [TARGET_API_MAC_CARBON]: Add externs.
13988
13989 * mactoolbox.c (Vmac_ts_script_language_on_focus)
13990 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
13991 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
13992 is clicked.
13993 (x_activate_menubar): Remove extern for saved_menu_event_location.
13994 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
13995 Move from mac.c.
13996
13997 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13998
13999 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
14000 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
14001
14002 2008-04-23 Jason Rumney <jasonr@gnu.org>
14003
14004 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
14005 attributes only for local files.
14006
14007 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
14008 default to Qlocal.
14009
14010 2008-04-22 Juri Linkov <juri@jurta.org>
14011
14012 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
14013 read-buffer-to-switch instead of using the letter "B".
14014
14015 2008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
14016
14017 * fileio.c (Qdefault_directory): New variable.
14018 (Fread_file_name): Use it to pass `dir' to the completion functions.
14019
14020 2008-04-20 Chong Yidong <cyd@stupidchicken.com>
14021
14022 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
14023
14024 2008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
14025
14026 * keyboard.c (Vpre_help_message): Remove.
14027 (show_help_echo): Remove default C code.
14028
14029 * dired.c (directory_files_internal, file_name_completion):
14030 Only call ENCODE_FILE if the string is indeed decoded.
14031
14032 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
14033
14034 * Makefile.in (TOOLKIT_DEFINES): Remove.
14035 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
14036
14037 2008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14038
14039 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
14040 (mactoolbox.o): New target.
14041
14042 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
14043 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
14044
14045 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
14046 Use mac_set_frame_window_background instead of XSetWindowBackground.
14047 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
14048 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
14049 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
14050 instead of SetWindowTitleWithCFString.
14051 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
14052 Move function to mactoolbox.c.
14053 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
14054 Use mac_set_window_modified instead of SetWindowModified.
14055 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
14056 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
14057 (Fx_focus_frame): Use mac_front_non_floating_window instead of
14058 FrontNonFloatingWindow. Use mac_activate_window instead of
14059 ActivateWindow. Use mac_active_non_floating_window instead of
14060 ActiveNonFloatingWindow.
14061 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
14062 Use mac_show_hourglass and mac_hide_hourglass.
14063 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
14064 instead of GetGlobalMouse.
14065 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
14066 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
14067 Use mac_bring_window_to_front instead of BringToFront.
14068 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
14069 mactoolbox.c.
14070 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
14071 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
14072 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
14073 mactoolbox.c.
14074
14075 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
14076 (XtPointer): Move typedef from macmenu.c.
14077 (enum button_type): Move enum from macmenu.c.
14078 (widget_value): Move typedef from macmenu.c.
14079 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
14080 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
14081 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
14082 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
14083 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
14084 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
14085 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
14086 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
14087 (Selection): Move typedef from macselect.c.
14088 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
14089 macterm.c.
14090 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
14091 (mac_is_window_collapsed, mac_bring_window_to_front)
14092 (mac_send_window_behind, mac_hide_window, mac_show_window)
14093 (mac_collapse_window, mac_front_non_floating_window)
14094 (mac_active_non_floating_window, mac_activate_window)
14095 (mac_move_window_structure, mac_move_window, mac_size_window)
14096 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
14097
14098 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
14099 (enum mac_menu_kind): Move enum to mactoolbox.c.
14100 (min_menu_id): Move variable to mactoolbox.c.
14101 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
14102 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
14103 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
14104 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
14105 [TARGET_API_MAC_CARBON]: Likewise.
14106 (XtPointer): Move typedef to macgui.h.
14107 (enum button_type): Move enum to macgui.h.
14108 (widget_value): Move typedef to macgui.h.
14109 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
14110 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
14111 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
14112 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
14113 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
14114 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
14115 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
14116 (popup_activated_flag): Make variable non-static.
14117 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
14118 (add_menu_item, fill_menu, dispose_menus):
14119 Move functions to mactoolbox.c.
14120 (restore_show_help_function, menu_target_item_handler)
14121 (install_menu_target_item_handler, mac_handle_dialog_event)
14122 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
14123 [TARGET_API_MAC_CARBON]: Likewise.
14124 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
14125 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
14126 (find_and_call_menu_selection, name_is_separator): Make function
14127 non-static.
14128 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
14129 to mactoolbox.c.
14130 (set_frame_menubar): Don't call install_menu_quit_handler.
14131 (menu_item_selection): New variable.
14132 (mac_menu_show): Use create_and_show_popup_menu.
14133 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
14134 selection but set variable menu_item_selection. All uses changed.
14135 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
14136 Call install_menu_quit_handler. Move to mactoolbox.c.
14137
14138 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
14139 (Selection): Move typedef to macgui.h.
14140 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
14141 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
14142 Make variables non-static.
14143 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
14144 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
14145 Make functions non-static.
14146 (Vmac_service_selection) [MAC_OSX]: Likewise.
14147 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
14148 (mac_valid_selection_target_p, mac_clear_selection)
14149 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
14150 (mac_put_selection_value, mac_selection_has_target_p)
14151 (mac_get_selection_value, mac_get_selection_target_list)
14152 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
14153 Move functions to mactoolbox.c.
14154 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
14155 Likewise.
14156 (copy_scrap_flavor_data, mac_handle_service_event)
14157 (install_service_handler) [MAC_OSX]: Likewise.
14158 (syms_of_macselect) <Vmac_dnd_known_types>:
14159 Use mac_dnd_default_known_types.
14160
14161 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
14162 Move to mactoolbox.c.
14163 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
14164 (Fx_selection_owner_p): Add EXFUN.
14165 (install_window_handler, remove_window_handler, XSetWindowBackground):
14166 Remove externs.
14167 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
14168 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
14169 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
14170 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
14171 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
14172 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
14173 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
14174 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
14175 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
14176 (create_and_show_popup_menu, mac_get_selection_from_symbol)
14177 (mac_valid_selection_target_p, mac_clear_selection)
14178 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
14179 (mac_put_selection_value, mac_selection_has_target_p)
14180 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
14181 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
14182 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
14183 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
14184 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
14185 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
14186 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
14187 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
14188 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
14189
14190 * mactoolbox.c: New file.
14191
14192 2008-04-18 Jason Rumney <jasonr@gnu.org>
14193
14194 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
14195
14196 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
14197
14198 * character.c (Fmultibyte_char_to_unibyte):
14199 Return latin1 chars unchanged.
14200
14201 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
14202 relocated if it points to `name'.
14203
14204 2008-04-17 Kenichi Handa <handa@m17n.org>
14205
14206 * data.c (Faset): Allow setting a multibyte character in an
14207 ASCII-only unibyte string.
14208
14209 * lisp.h (STRING_SET_MULTIBYTE): New macro.
14210
14211 2008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
14212
14213 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
14214 done in config.h.
14215
14216 2008-04-16 Juanma Barranquero <lekktu@gmail.com>
14217
14218 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
14219 (Fchar_direction): Add usage in the docstring.
14220
14221 2008-04-15 Chong Yidong <cyd@stupidchicken.com>
14222
14223 * keyboard.c (read_key_sequence): Remove always-true checks.
14224
14225 2008-04-14 Jason Rumney <jasonr@gnu.org>
14226
14227 * w32font.c (w32font_open_internal): Set max_bounds.descent in
14228 compatibility struct, for better underline positioning.
14229
14230 2008-04-13 David Hansen <david.hansen@gmx.net>
14231
14232 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
14233 string.
14234
14235 2008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
14236
14237 * m/hp800.h (XUINT, XSET): Remove.
14238
14239 2008-04-12 Juanma Barranquero <lekktu@gmail.com>
14240
14241 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
14242 previous change.
14243
14244 2008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
14245
14246 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
14247 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
14248
14249 2008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
14250
14251 * keymap.h (map_keymap_canonical): Declare.
14252 * xmenu.c (single_keymap_panes): Use it.
14253
14254 2008-04-11 Glenn Morris <rgm@gnu.org>
14255
14256 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
14257 set the target's value to that of the alias.
14258
14259 2008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
14260
14261 * term.c (set_tty_color_mode): Left over typo.
14262
14263 2008-04-10 Michael Albinus <michael.albinus@gmx.de>
14264
14265 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
14266 only after check for file name handler functions. Signal, when
14267 native functionality is not supported.
14268 (syms_of_fileio): Declare it unconditionally.
14269
14270 2008-04-10 Jason Rumney <jasonr@gnu.org>
14271
14272 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
14273 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
14274
14275 * w32.c (logon_network_drive): Also logon to remote drives that
14276 are mapped to drive letters.
14277
14278 2008-04-10 Glenn Morris <rgm@gnu.org>
14279
14280 * xdisp.c (truncate-partial-width-windows): Doc fix.
14281
14282 2008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
14283
14284 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
14285 Move functions to minibuffer.el.
14286 (syms_of_fileio): Don't declare them.
14287
14288 2008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
14289
14290 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
14291 (syms_of_minibuf): Remove its initialization.
14292
14293 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
14294
14295 2008-04-09 Juanma Barranquero <lekktu@gmail.com>
14296
14297 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
14298
14299 2008-04-09 Jason Rumney <jasonr@gnu.org>
14300
14301 * makefile.w32-in (distclean): Delete makefile too.
14302 (maintainer-clean): New target.
14303
14304 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
14305
14306 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
14307 for new font backend and composite cases.
14308
14309 2008-04-09 Jan Djärv <jan.h.d@swipnet.se>
14310
14311 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
14312 Most of the code moved to run_timers.
14313 (do_pending_atimers): Call run_timers.
14314 (run_timers): New function.
14315
14316 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
14317 run atimers.
14318
14319 * process.c (wait_reading_process_output): The same as above.
14320
14321 2008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
14322
14323 * minibuf.c (last_exact_completion): Remove variable.
14324 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
14325 (complete_and_exit_1, complete_and_exit_2)
14326 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
14327 (Fdisplay_completion_list, display_completion_list_1)
14328 (Fminibuffer_completion_help, Fself_insert_and_exit)
14329 (Fexit_minibuffer, Fminibuffer_message): Move functions to
14330 minibuffer.el.
14331 (syms_of_minibuf): Remove corresponding initializations.
14332
14333 * keyboard.c (Qdeactivate_mark): New var.
14334 (command_loop_1): Use it to call `deactivate-mark'.
14335 (syms_of_keyboard): Initialize it.
14336
14337 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
14338 to another frame.
14339 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
14340 Don't call set_tty_color_mode.
14341 (store_frame_param): Reset previous_frame rather than call
14342 set_tty_color_mode.
14343 * term.c (set_tty_color_mode): Rewrite.
14344 * dispextern.h (set_tty_color_mode): New type.
14345 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
14346
14347 2008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
14348
14349 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
14350 for generic chars, which do not exist any more in emacs-unicode.
14351
14352 2008-04-08 Michael Albinus <michael.albinus@gmx.de>
14353
14354 * coding.c (detect_coding_emacs_mule)
14355 (Ffind_operation_coding_system): Fix typo.
14356
14357 2008-04-08 Jason Rumney <jasonr@gnu.org>
14358
14359 * w32uniscribe.c (SNAME): Extract only symbol name.
14360
14361 * w32font.h (struct w32_metric_cache): New struct.
14362 (w32font_info): Use it.
14363 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
14364 (CACHE_BLOCKSIZE): New constants.
14365
14366 * w32font.c (Qja, Qko, Qzh): New symbols.
14367 (syms_of_w32font): Initialise them.
14368 (font_matches_spec): Use them to filter by language.
14369 (recompute_cached_metrics): Remove function.
14370 (compute_metrics, clear_cached_metrics): New functions.
14371 (w32font_encode_char): Use them to manage metric cache.
14372 (w32font_text_extents): Cache metrics for all glyphs on demand.
14373 Delay converting glyph indices to WORD until needed.
14374 (w32font_open_internal): Initialize metric cache to empty.
14375 (registry_to_w32_charset): Charset should always be a symbol.
14376 (fill_in_logfont, list_all_matching_fonts): Family should
14377 always be a symbol.
14378
14379 2008-04-06 Jason Rumney <jasonr@gnu.org>
14380
14381 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
14382 Give up if glyph indices not supported. Use uniscribe obtained
14383 ABC widths for individual metrics. Map glyph clusters back to
14384 characters using fClusterStart flag. Return number of glyphs
14385 produced, not chars processed.
14386 (uniscribe_shape): Map char at FROM to current glyph.
14387
14388 2008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14389
14390 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
14391 Use SetMenuItemHierarchicalMenu.
14392
14393 2008-04-05 Jason Rumney <jasonr@gnu.org>
14394
14395 * image.c (pbm_load): Allow color values up to 65535.
14396 Throw an error if max_color_idx is outside the supported range.
14397 Report an error when image size is invalid.
14398 Read two bytes at a time when raw images have max_color_idx above 255.
14399
14400 2008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
14401
14402 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
14403 append "CCL: Quitted" when the CCL program is quitted.
14404 (setup_ccl_program): Initialize ccl->quit_silently to zero.
14405
14406 * ccl.h (struct ccl_program): New member quit_silently.
14407
14408 2008-04-05 Chong Yidong <cyd@stupidchicken.com>
14409
14410 * search.c (compile_pattern_1): Treat non-nil and non-string of
14411 search-spaces-regexp as nil.
14412
14413 * minibuf.c (Fassoc_string): Tweak docstring.
14414
14415 2008-04-05 Eli Zaretskii <eliz@gnu.org>
14416
14417 * dired.c (Ffile_attributes): Support inode numbers wider than 32
14418 bits. Remove ugly WINDOWSNT-specific kludge introduced on
14419 2008-03-14 to force inode be positive.
14420
14421 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
14422 _S_* ones, since we now use our own sys/stat.h.
14423 (stat, fstat): Don't mangle the inode number.
14424 (init_user_info): Don't restrict UID and GID to 0-60000 range.
14425
14426 2008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
14427
14428 * frame.h (struct frame): Give one more bit to `visible' since we use
14429 values larger than 1 to indicate obscured frames on ttys.
14430
14431 * keymap.c (Qkeymap_canonicalize): New var.
14432 (Fmap_keymap_internal): New fun.
14433 (describe_map): Use keymap-canonicalize.
14434
14435 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
14436 (Fundo_boundary): Set them.
14437 (syms_of_undo): Initialize them.
14438 (record_point): Use them instead of last_point_position*.
14439 (last_undo_buffer): Change type.
14440
14441 2008-04-04 Jason Rumney <jasonr@gnu.org>
14442
14443 * w32font.c (w32font_text_extents): Use font's ascent and descent.
14444 (recompute_cached_metrics): Don't set ascent and descent per char.
14445
14446 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
14447 (uniscribe_check_otf): Add GC protection before consing.
14448 Rearrange loop for counting features.
14449
14450 2008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
14451
14452 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
14453 buffer with byte-size of source buffer.
14454
14455 2008-04-03 Chong Yidong <cyd@stupidchicken.com>
14456
14457 * callint.c (Fcall_interactively): Handle temporary region even
14458 when shift-select-mode is off.
14459
14460 2008-04-03 Jason Rumney <jasonr@gnu.org>
14461
14462 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
14463
14464 2008-04-03 Kenichi Handa <handa@m17n.org>
14465
14466 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
14467 (CATEGORY_MASK_UTF_16): Likewise.
14468 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
14469 binary file.
14470 (detect_coding): Add null-byte detection for a binary file.
14471 (detect_coding_system): Likewise.
14472
14473 2008-04-03 Jason Rumney <jasonr@gnu.org>
14474
14475 * w32uniscribe.c: New file.
14476
14477 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
14478
14479 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
14480
14481 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
14482 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
14483 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
14484 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
14485 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
14486 (Qphonetic): New symbols.
14487 (syms_of_w32font): Initialize them.
14488 (font_supported_scripts): Use them.
14489 (w32font_list_family): List all charsets.
14490 (w32font_text_extents, recompute_cached_metrics): Fix metric
14491 calculations.
14492 (w32_enumfont_pattern_entity): Make full_type a DWORD.
14493 Give opentype fonts their own format.
14494 (font_matches_spec): New arguments backend and logfont.
14495 Handle :otf spec for uniscribe backend.
14496 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
14497 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
14498
14499 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
14500 font backend.
14501 (globals_of_w32fns): Initialize uniscribe font backend.
14502
14503 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
14504 dependencies.
14505 (w32uniscribe.$(O)): New file to build.
14506 (FONT_OBJ): Include w32uniscribe.$(O).
14507 (LIBS): Add uniscribe libraries.
14508
14509 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
14510
14511 2008-04-02 Chong Yidong <cyd@stupidchicken.com>
14512
14513 * callint.c (Vshift_select_mode): New var.
14514 (Finteractive): Document new ^ spec.
14515 (Fcall_interactively): Call handle-shift-selection if the ^ spec
14516 is present.
14517
14518 * keyboard.c (Vthis_command_keys_shift_translated): New var.
14519 (command_loop_1): Avoid running the direct display versions of
14520 forward-char and backward-char if shift-selection may occur.
14521 (read_key_sequence): Set Vthis_command_keys_shift_translated if
14522 shift-translation takes place.
14523
14524 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
14525 avoid clobbering by define-minor-mode.
14526
14527 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
14528 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
14529
14530 * syntax.c (Fforward_word): Add ^ interactive spec.
14531
14532 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
14533 (Fscroll_right): Add ^ interactive spec.
14534
14535 2008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
14536
14537 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
14538
14539 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
14540
14541 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
14542
14543 2008-03-31 Juri Linkov <juri@jurta.org>
14544
14545 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
14546
14547 2008-03-30 Jan Djärv <jan.h.d@swipnet.se>
14548
14549 * gtkutil.c (xg_set_geometry): Fix indentation.
14550 (xg_resize_outer_widget): Remove.
14551 (x_wm_size_hint_off): Fix indentation.
14552 (xg_frame_set_char_size): Call flush_and_sync after
14553 gtk_window_resize.
14554 (x_wm_set_size_hint): Pass NULL as geometry window to
14555 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
14556 Add menu bar and tool bar height to base height.
14557 (xg_update_frame_menubar, free_frame_menubar)
14558 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
14559 (update_frame_tool_bar, free_frame_tool_bar):
14560 Change xg_resize_outer_widget to xg_frame_set_char_size.
14561
14562 2008-03-30 Michael Albinus <michael.albinus@gmx.de>
14563
14564 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
14565 (Fdbus_call_method): New parameter TIMEOUT.
14566 (dbus-send-signal): Optimize UNGCPRO call.
14567
14568 2008-03-29 Juri Linkov <juri@jurta.org>
14569
14570 * window.c (Fdisplay_buffer): Move call to
14571 Vsplit_window_preferred_function out of conditions that check
14572 if window is eligible for vertical splitting.
14573 When Vsplit_window_preferred_function is non-nil, call it and use
14574 its non-nil return value as window. Otherwise, continue doing
14575 vertical splitting using Fsplit_window with arg horflag=nil.
14576 (syms_of_window) <Vsplit_window_preferred_function>: Change the
14577 default value from `split-window' to nil.
14578
14579 2008-03-29 Juri Linkov <juri@jurta.org>
14580
14581 * callint.c (Fcall_interactively): Revert 2008-03-16 change
14582 for interactive code letters 'b' and 'B'.
14583
14584 2008-03-29 Eli Zaretskii <eliz@gnu.org>
14585
14586 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
14587 multibyte string.
14588
14589 2008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
14590
14591 * keyboard.c (pending_funcalls): New var.
14592 (timer_check): Run it.
14593 (syms_of_keyboard): Initialize it.
14594 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
14595 (Vdelete_terminal_functions): New vars.
14596 (syms_of_terminal): Initialize them.
14597 (Fdelete_terminal): Run delete-terminal-functions.
14598 * xdisp.c (safe_eval): Rewrite.
14599 (safe_call2): New fun.
14600 * frame.c (Qdelete_frame_functions): New var.
14601 (syms_of_frame): Initialize it.
14602 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
14603 * lisp.h (safe_call2, pending_funcalls): Declare.
14604
14605 2008-03-28 Andreas Schwab <schwab@suse.de>
14606
14607 * indent.c (Fmove_to_column): Move declaration before statements.
14608
14609 2008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
14610
14611 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
14612 (struct frame): Use bit fields for boolean vars.
14613
14614 * process.c (server_accept_connection): Simplify naming.
14615 (emacs_get_tty_pgrp): Use SDATA.
14616
14617 * coding.c (decode_coding_object): Fix last change.
14618
14619 2008-03-27 Jason Rumney <jasonr@gnu.org>
14620
14621 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
14622
14623 2008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
14624
14625 * charset.c (Fdefine_charset_internal): Change the way of
14626 registering charsets in Vcharset_order_list.
14627 (syms_of_charset): Make the charset `eight-bit' supplementary.
14628
14629 2008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
14630
14631 * regex.c (EXTEND_BUFFER): Change order of pointer addition
14632 operations, to avoid having the difference between pointers
14633 overflow.
14634
14635 2008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
14636
14637 * indent.c (check_display_width): New fun.
14638 (scan_for_column): Use it.
14639
14640 * data.c (syms_of_data): Mark most-positive-fixnum and
14641 most-negative-fixnum as constants.
14642
14643 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
14644
14645 * indent.c (scan_for_column): Extract from current_column_1.
14646 Merge with the same code from Fmove_to_column.
14647 (current_column_1, Fmove_to_column): Use it.
14648
14649 2008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
14650
14651 * keymap.c (map_keymap_internal): New fun.
14652 (map_keymap): Use it.
14653 (Fmap_keymap_internal): New fun.
14654 (Fmap_keymap): Remove left-out test from before make_save_value.
14655
14656 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
14657
14658 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
14659 Use XCAR/XCDR.
14660
14661 * process.h (struct Lisp_Process): Remove filter_multibyte.
14662 * process.c (QCfilter_multibyte): Remove.
14663 (setup_process_coding_systems): Don't use filter_multibyte.
14664 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
14665 (read_process_output): Don't adjust multibyteness to filter_multibyte.
14666 (Fset_process_filter_multibyte): Change the coding-system to
14667 approximate the previous behavior.
14668 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
14669 coding-system.
14670
14671 * coding.c (decode_coding_object): When not decoding into a buffer,
14672 obey the coding system's preference of (uni|multi)byte.
14673
14674 2008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
14675
14676 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
14677 every char is changed and has a different byte-length.
14678 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
14679 Fix int -> EMACS_INT.
14680
14681 2008-03-23 David Hansen <david.hansen@gmx.net>
14682
14683 * dbusbind.c (xd_read_message): Remove extra copying of message
14684 strings. Check for NULL `interface' or `member'.
14685
14686 2008-03-22 Eli Zaretskii <eliz@gnu.org>
14687
14688 * w32.c (readdir): If FindFirstFile/FindNextFile return in
14689 cFileName a file name that includes `?' characters, use the 8+3
14690 alias in cAlternateFileName instead.
14691
14692 2008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
14693
14694 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
14695
14696 2008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
14697
14698 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
14699 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
14700 work on current_buffer only instead (that was already the case
14701 for some of the code anyway).
14702 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
14703 (temp_set_point, temp_set_point_both): Use EMACS_INT.
14704 (SET_PT, SET_PT_BOTH): Adjust.
14705 * intervals.h (set_point, temp_set_point, set_point_both)
14706 (temp_set_point_both): Remove redundant declarations.
14707
14708 2008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
14709
14710 * fileio.c (Finsert_file_contents):
14711 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
14712 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
14713 when buffer != current_buffer anyway.
14714
14715 2008-03-20 Andreas Schwab <schwab@suse.de>
14716
14717 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
14718 as default.
14719
14720 2008-03-19 Jason Rumney <jasonr@gnu.org>
14721
14722 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
14723 (syms_of_w32fns): Initialize them.
14724 (HOURGLASS_ID): New constant.
14725 (x_window_to_frame): Don't check hourglass_window.
14726 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
14727 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
14728 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
14729 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
14730 Only change the cursor if hourglass is not active.
14731 (Fx_create_frame): Initialize frame's current_cursor.
14732 (hourglass_atimer): Remove.
14733 (hourglass_started): New function.
14734 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
14735 (show_hourglass): Adapt to w32, changing argument to frame.
14736
14737 * w32term.h (struct w32_output): Remove hourglass_window.
14738 Add current_cursor.
14739
14740 * eval.c (call_debugger, Fsignal):
14741 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
14742 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
14743 (Fexecute_extended_command, cancel_hourglass_unwind):
14744 * minibuf.c (read_minibuf):
14745 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
14746
14747 2008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
14748
14749 * window.c (run_funs): New fun.
14750 (run_window_configuration_change_hook): Use it to run the buffer-local
14751 and the global part of the hook.
14752
14753 * xdisp.c (format_mode_line_unwind_data): Add window argument.
14754 (unwind_format_mode_line): Restore selected window.
14755 (x_consider_frame_title, Fformat_mode_line): Set selected window.
14756
14757 2008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
14758
14759 * editfns.c (Fchar_equal): Check they are valid characters.
14760
14761 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
14762
14763 2008-03-17 Andreas Schwab <schwab@suse.de>
14764
14765 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
14766 against a charset.
14767
14768 * lisp.h (Fbuffer_list): Declare.
14769
14770 2008-03-17 Jan Djärv <jan.h.d@swipnet.se>
14771
14772 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
14773 handlebox_widget is != 0.
14774
14775 2008-03-16 Juri Linkov <juri@jurta.org>
14776
14777 * callint.c (Fcall_interactively): For interactive code letters
14778 'b' and 'B' put the buffer list into the list of default "future"
14779 values of the minibuffer.
14780
14781 2008-03-16 Andreas Schwab <schwab@suse.de>
14782
14783 * keyboard.c (read_key_sequence): Fix downcasing of letters with
14784 modifiers.
14785
14786 * regex.c (re_match_2_internal): Correct matching of a charset
14787 against latin-1 characters.
14788
14789 2008-03-16 Kenichi Handa <handa@m17n.org>
14790
14791 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
14792 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
14793 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
14794 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
14795 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
14796 CHAR_STRING_ADVANCE.
14797 (produce_chars): Fix for the case that the source and the
14798 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
14799 instead of CHAR_STRING_ADVANCE.
14800 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
14801 STRING_CHAR_ADVANCE.
14802
14803 2008-03-15 Andreas Schwab <schwab@suse.de>
14804
14805 * regex.c (re_match_2_internal): Correct matching of eight bit
14806 characters in unibyte strings.
14807
14808 2008-03-15 Martin Rudalics <rudalics@gmx.at>
14809
14810 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
14811 at end of range when it coincides with the end of the buffer.
14812
14813 2008-03-14 Eli Zaretskii <eliz@gnu.org>
14814
14815 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
14816
14817 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
14818
14819 2008-03-14 Jason Rumney <jasonr@gnu.org>
14820
14821 * editfns.c (initial_tz): New variable.
14822 (syms_of_editfns): Initialize it.
14823 (Fset_time_zone_rule): Set it when first called.
14824 Use it when TZSTRING is nil.
14825
14826 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
14827 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
14828 (monitor_from_point_fn, get_monitor_info_fn): New globals.
14829 (globals_of_w32fns): Initialize them.
14830 (compute_tip_xy): Use them to position tooltips.
14831
14832 2008-03-14 Glenn Morris <rgm@gnu.org>
14833
14834 * emacs.c (main): Revert previous change.
14835 (standard_args): Revert -internal-script back to -scriptload,
14836 and remove the long-option form.
14837
14838 2008-03-13 Glenn Morris <rgm@gnu.org>
14839
14840 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
14841 Remove option -enable-font-backend.
14842
14843 2008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
14844
14845 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
14846
14847 2008-03-11 Jan Djärv <jan.h.d@swipnet.se>
14848
14849 * xterm.c (x_connection_closed): For GTK: If this is the last
14850 terminal just exit without closing the display.
14851
14852 2008-03-11 Jason Rumney <jasonr@gnu.org>
14853
14854 * w32font.c (w32font_full_name): Use floor to round.
14855
14856 2008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
14857
14858 * sound.c (alsa_configure): Declare vol at beginning of block.
14859
14860 * fontset.c (Ffontset_info): Remove extra semicolon.
14861
14862 2008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
14863
14864 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
14865 size of resulting string.
14866
14867 2008-03-10 Jason Rumney <jasonr@gnu.org>
14868
14869 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
14870
14871 2008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14872
14873 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
14874 Don't pretend as if characters with display property haven't been
14875 consumed for string-replacing-string case.
14876
14877 2008-03-08 Kim F. Storm <storm@cua.dk>
14878
14879 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
14880 (get_next_display_element, next_element_from_string)
14881 (next_element_from_ellipsis, next_element_from_buffer): Use it.
14882
14883 2008-03-08 Andreas Schwab <schwab@suse.de>
14884
14885 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
14886
14887 2008-03-06 Jason Rumney <jasonr@gnu.org>
14888
14889 * w32font.c (w32_registry): Take font_type argument. Use ANSI
14890 when charset not specified. Only translate ANSI to unicode when
14891 font_type is truetype.
14892 (w32font_coverage_ok): New function.
14893 (add_font_entity_to_list): Use it to filter unsuitable fonts.
14894
14895 2008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
14896
14897 * lread.c (Fread_char): Resolve modifiers.
14898 (Fread_char_exclusive): Likewise.
14899
14900 * character.c (char_resolve_modifier_mask): New function.
14901 (char_string): Use char_resolve_modifier_mask.
14902 (Fchar_resolve_modifiers): New function.
14903 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
14904 function.
14905
14906 2008-03-04 Jason Rumney <jasonr@gnu.org>
14907
14908 * makefile.w32-in: Always include w32font.c in the build.
14909 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
14910
14911 2008-03-04 Andreas Schwab <schwab@suse.de>
14912
14913 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
14914 (versionclean): Likewise.
14915
14916 2008-03-04 Juanma Barranquero <lekktu@gmail.com>
14917
14918 * .cvsignore: Add oo.
14919
14920 2008-03-03 Andreas Schwab <schwab@suse.de>
14921
14922 * coding.c (decode_coding_object): Inhibit gap shrinking while
14923 decoding in place.
14924
14925 2008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
14926
14927 * w32term.c: Remove unused include "gnu.h".
14928 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
14929
14930 * gnu.h: Rename to ...
14931 * emacs-icon.h: ... this.
14932 * xterm.c: Use emacs-icon.h instead of gnu.h.
14933 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
14934
14935 2008-03-03 Juanma Barranquero <lekktu@gmail.com>
14936
14937 * w32font.c: Include math.h.
14938
14939 2008-03-03 Jason Rumney <jasonr@gnu.org>
14940
14941 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
14942 Compute options separately.
14943 (w32font_open_internal): Set glyph_idx before caching metrics.
14944
14945 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
14946 Define if system headers don't.
14947 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
14948 (w32font_encode_char): Don't declare here.
14949
14950 * w32font.c (Quniscribe, QCformat): New symbols.
14951 (syms_of_w32font): Define them.
14952 (w32font_has_char): Indicate uncertainty.
14953 (w32font_encode_char): Encode as glyph point. Make static.
14954 (recompute_cached_metrics): New function.
14955 (w32font_open_internal): Use it. Set font to use glyph points
14956 initially. Set format based on type of font.
14957 (w32font_text_extents, w32font_draw): Optionally use glyph points.
14958 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
14959 on it. Set format based on information available here.
14960 (add_font_entity_to_list): Identify backend based on opentype_only.
14961
14962 2008-03-02 Andreas Schwab <schwab@suse.de>
14963
14964 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
14965
14966 * coding.c (decode_coding_big5, produce_chars):
14967 Fix typos in last change.
14968
14969 2008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
14970
14971 * gnu.h: New icon.
14972
14973 2008-03-02 Kenichi Handa <handa@m17n.org>
14974
14975 * coding.c (decode_coding_utf_8): When eol-type of CODING is
14976 `dos', don't decode '\r' if that is the last in the source.
14977 (decode_coding_utf_16, decode_coding_emacs_mule)
14978 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14979 (decode_coding_raw_text, decode_coding_charset): Likewise.
14980 (produce_chars): Don't decode EOL here. Use EMACS_INT.
14981
14982 2008-03-01 Jason Rumney <jasonr@gnu.org>
14983
14984 * w32font.c (w32font_full_name): Report point size for scalable fonts.
14985
14986 2008-03-01 Kim F. Storm <storm@cua.dk>
14987
14988 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
14989
14990 2008-03-01 Jason Rumney <jasonr@gnu.org>
14991
14992 * w32font.c (w32font_full_name): New function.
14993 (w32font_open_internal): Use it.
14994
14995 2008-03-01 Kim F. Storm <storm@cua.dk>
14996
14997 * dispnew.c (line_draw_cost): Fix invalid glyph check.
14998
14999 2008-03-01 Jason Rumney <jasonr@gnu.org>
15000
15001 * font.c (font_unparse_fcname): Increase len when style is a symbol.
15002
15003 2008-03-01 Jan Djärv <jan.h.d@swipnet.se>
15004
15005 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
15006 xg_frame_resized when the event is for the edit widget.
15007
15008 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
15009
15010 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
15011 set_char_size.
15012 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
15013 operations on widgets here. Just set frame size if needed.
15014 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
15015 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
15016 (x_wm_set_size_hint): Set size hints on the edit widget only, not
15017 the whole frame.
15018 (xg_create_tool_bar): Move attachment of the tool bar to
15019 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
15020 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
15021
15022 2008-03-01 Jason Rumney <jasonr@gnu.org>
15023
15024 * w32fns.c (w32_msg_pump): Disable debug code.
15025
15026 2008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15027
15028 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
15029
15030 2008-02-29 Chong Yidong <cyd@stupidchicken.com>
15031
15032 * xdisp.c (next_overlay_string): Don't set
15033 overlay_strings_at_end_processed_p if we're currently reading from
15034 a display string.
15035
15036 2008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
15037
15038 * xdisp.c (get_overlay_strings_1): Fix typo.
15039
15040 2008-02-29 Chong Yidong <cyd@stupidchicken.com>
15041
15042 * xdisp.c (get_overlay_strings_1): Add missing argument type.
15043
15044 2008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
15045
15046 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
15047
15048 * xdisp.c (display_mode_element): Cancel the previous change.
15049 (decode_mode_spec): Likewise.
15050 (handle_auto_composed_prop): Don't make composition if it->string
15051 is a string.
15052
15053 2008-02-27 Kim F. Storm <storm@cua.dk>
15054
15055 * lisp.h (GLYPH): Change type from int to struct with separate char
15056 and face_id members.
15057 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
15058 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
15059 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
15060 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
15061 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
15062 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
15063 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
15064 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
15065 handle new Lisp glyph code encoding, either an integer or a cons.
15066
15067 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
15068 (GLYPH_ALIAS): Delete.
15069 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
15070 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
15071 (GLYPH_FROM_CHAR): Replace macro by ...
15072 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
15073
15074 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
15075 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
15076 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
15077 (GLYPH_INVALID_P): New macro.
15078 (spec_glyph_lookup_face): Update prototype.
15079
15080 * dispnew.c (line_draw_cost): Adapt to new glyph type.
15081 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
15082 new glyph code encoding.
15083 (spec_glyph_lookup_face): No return value; update passed glyph instead.
15084 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
15085
15086 * xdisp.c (get_next_display_element, next_element_from_display_vector):
15087 Adapt to new glyph type and new glyph code encoding.
15088
15089 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
15090
15091 * indent.c (current_column, current_column_1, Fmove_to_column)
15092 (compute_motion): Adapt to new glyph code encoding.
15093
15094 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
15095
15096 2008-02-27 Chong Yidong <cyd@stupidchicken.com>
15097
15098 * process.c (wait_reading_process_output): Check for window
15099 changes caused by timers.
15100 Suggested by Johan Bockgård.
15101
15102 2008-02-27 Glenn Morris <rgm@gnu.org>
15103
15104 * emacs.c (USAGE1): Add `--disable-font-backend'.
15105
15106 2008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
15107
15108 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
15109 is made to the buffer.
15110
15111 2008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
15112
15113 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
15114 (face_at_string_position):
15115 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
15116 (face_at_string_position):
15117 * xdisp.c (display_string, next_overlay_change):
15118 * buffer.h (overlays_at):
15119 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
15120 Update callers.
15121
15122 2008-02-26 Chong Yidong <cyd@stupidchicken.com>
15123
15124 * editfns.c (Fformat): Doc fix.
15125
15126 2008-02-26 Juanma Barranquero <lekktu@gmail.com>
15127
15128 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
15129 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
15130 (Ffont_otf_alternates, Fquery_font): Doc fixes.
15131
15132 2008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
15133
15134 * buffer.c (Fbuffer_swap_text): New function.
15135 (syms_of_buffer): Defsubr it.
15136
15137 2008-02-25 Chong Yidong <cyd@stupidchicken.com>
15138
15139 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
15140
15141 2008-02-25 Jason Rumney <jasonr@gnu.org>
15142
15143 * w32font.c (w32font_draw): Draw one character at a time when padding.
15144
15145 2008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
15146
15147 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
15148 Handle a nil arg. Use run_window_configuration_change_hook.
15149 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
15150 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
15151 Use run_window_configuration_change_hook.
15152
15153 2008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
15154
15155 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
15156 1-pixel width.
15157
15158 2008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
15159
15160 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
15161 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
15162 if the glyph in the font is zero pixel with.
15163
15164 * dispextern.h (struct glyph_string): New member padding_p.
15165
15166 * w32font.c (w32font_draw): Pay attention to s->padding_p.
15167
15168 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
15169
15170 * xfont.c (xfont_draw): Pay attention to s->padding_p.
15171
15172 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
15173
15174 * font.c: If the font driver doesn't have `shape' function, return Qnil.
15175
15176 2008-02-25 Jason Rumney <jasonr@gnu.org>
15177
15178 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
15179
15180 2008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
15181
15182 Allow fine-grained image-cache flushing.
15183 * dispextern.h (struct image): Add `dependencies' field.
15184 (clear_image_caches): Change arg to Lisp_Object.
15185 * image.c (make_image): Initialize `dependencies' field.
15186 (clear_image_cache): Change arg to allow fine-grained flushing.
15187 Perform the flush even if image-cache-eviction-delay is nil.
15188 (clear_image_caches): Change arg to Lisp_Object.
15189 (Fclear_image_cache): Expand meaning of the argument.
15190 (mark_image): Mark `dependencies' field.
15191 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
15192 (lface_hash): Use XHASH rather than XFASTINT.
15193 (face_at_buffer_position): Fix int -> EMACS_INT position.
15194 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
15195 (select_frame_for_redisplay): Remove code duplication.
15196 (redisplay_internal): Adapt arg to call to clear_image_caches.
15197
15198 2008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
15199
15200 * s/vms4-0.h:
15201 * s/vms4-2.h:
15202 * s/vms4-4.h:
15203 * s/vms5-5.h: Remove, unused.
15204
15205 * s/irix5-2.h:
15206 * s/irix6-0.h:
15207 * s/riscos5.h:
15208 * s/mach-bsd4-3.h:
15209 * m/mips4.h: Remove files for obsolete systems.
15210
15211 * Makefile.in:
15212 * filelock.c:
15213 * unexmips.c:
15214 * m/hp9000s300.h:
15215 * m/iris4d.h:
15216 * s/aix3-1.h:
15217 * s/hpux.h:
15218 * s/msdos.h:
15219 * s/usg5-0.h:
15220 * s/usg5-2-2.h:
15221 * s/usg5-2.h:
15222 * s/usg5-3.h: Remove references to obsolete variables.
15223
15224 * s/irix5-0.h: Remove, move all the contents ...
15225 * s/irix6-5.h: ... here. Simplify.
15226 * config.in: Regenerate.
15227
15228 2008-02-24 Jason Rumney <jasonr@gnu.org>
15229
15230 * w32term.c (x_draw_glyph_string_background): Clear the background
15231 manually when cleartype is in use.
15232 (x_draw_glyph_string_foreground): Draw text transparently when
15233 cleartype is in use.
15234
15235 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
15236 a font into it unless we have to.
15237
15238 2008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
15239
15240 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
15241 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
15242
15243 2008-02-18 Jason Rumney <jasonr@gnu.org>
15244
15245 * w32fns.c (Fw32_shell_execute): Encode parameters.
15246
15247 2008-02-09 Eli Zaretskii <eliz@gnu.org>
15248
15249 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
15250
15251 2008-02-05 Juanma Barranquero <lekktu@gmail.com>
15252
15253 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
15254
15255 2008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
15256
15257 * xterm.c (x_set_offset): Don't change the gravity if
15258 CHANGE_GRAVITY is -1.
15259
15260 2008-02-23 Chong Yidong <cyd@stupidchicken.com>
15261
15262 * fileio.c (auto_save_error_occurred): New var.
15263 (auto_save_error): Set it.
15264 (Fdo_auto_save): Don't overwrite the error message if an auto-save
15265 error occurred.
15266
15267 2008-02-23 Eli Zaretskii <eliz@gnu.org>
15268
15269 * w32.c (globals_of_w32): Add initializations for
15270 g_b_init_get_sid_sub_authority and
15271 g_b_init_get_sid_sub_authority_count.
15272
15273 2008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
15274
15275 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
15276 (font_parse_xlfd): Use them for sanity check.
15277 (Finternal_set_font_style_table): Make sure the table is bijective.
15278
15279 Consolidate the image_cache to the terminal struct.
15280 * termhooks.h (P_): Remove redundant def.
15281 (struct terminal): New field `image_cache'.
15282 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
15283 of FRAME_X_IMAGE_CACHE.
15284 * xterm.h (struct x_display_info): Remove image_cache field.
15285 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
15286 * w32term.h (struct w32_display_info): Remove image_cache field.
15287 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
15288 * macterm.h (struct mac_display_info): Remove image_cache field.
15289 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
15290 * xterm.c (x_term_init):
15291 * w32term.c (w32_term_init):
15292 * macterm.c (mac_term_init): Set the image_cache in the terminal.
15293 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
15294 Remove declarations.
15295 (clear_image_caches, mark_image_cache): New declarations.
15296 * xfaces.c (clear_face_cache):
15297 * xdisp.c (redisplay_internal): Use clear_image_caches.
15298 * image.c (clear_image_cache): Don't check that a frame is on
15299 a window-system before checking if it shares the same cache.
15300 (clear_image_caches): New function.
15301 (Fclear_image_cache): Use it.
15302 (mark_image): Move from allo.c.
15303 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
15304 * alloc.c (mark_image, mark_image_cache): Move to image.c.
15305 (mark_object): Don't call mark_image_cache for frames.
15306 (mark_terminals): Call mark_image_cache.
15307
15308 * lisp.h (Fdelete_terminal): Declare.
15309
15310 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
15311 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
15312 wrong_type_argument.
15313
15314 2008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
15315
15316 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
15317 malayalam.el, and tamil.el. Add sinhala.el.
15318
15319 2008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
15320
15321 * xterm.c (x_connection_closed): Consolidate identical tests.
15322 (x_delete_terminal): Don't crash if called via x_connection_closed.
15323
15324 2008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
15325
15326 * xdisp.c (decode_mode_spec): New arg string.
15327 (display_mode_element): Adjust for the above change.
15328
15329 2008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
15330
15331 * callint.c (Fcall_interactively): Use AREF.
15332
15333 2008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
15334
15335 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
15336
15337 2008-02-18 Jan Djärv <jan.h.d@swipnet.se>
15338
15339 * xfns.c (Fx_show_tip): Set string to " " if empty.
15340
15341 2008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
15342
15343 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
15344 with Qt.
15345
15346 2008-02-17 Kenichi Handa <handa@m17n.org>
15347
15348 * ftfont.c (ftfont_shape): Return Lispy number.
15349
15350 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
15351 for GCs.
15352 (Finternal_set_font_selection_order): Call font_update_sort_order
15353 only when enable_font_backend is set.
15354 (realize_x_face): Set face->font_info to that of default face only
15355 when enable_font_backend is set.
15356
15357 * xdisp.c (handle_composition_prop): Set it->c to the fist
15358 character of the composed region.
15359 (fill_composite_glyph_string): Set base_face->font_info to
15360 s->font_info. Get a face for ascii from base_face->ascii_face.
15361 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
15362 with a face already decided.
15363 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
15364 non-negative.
15365 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
15366 call font_prepare_composition unconditionally.
15367
15368 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
15369
15370 * xterm.h (struct x_display_info): New member font.
15371
15372 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
15373 (x_set_mouse_face_gc, x_new_font): Likewise.
15374 (x_term_init): Setup display_info->font.
15375 (x_delete_terminal): Free display_info->font.
15376
15377 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
15378
15379 * ftxfont.c (ftxfont_default_fid): Delete it.
15380 (ftxfont_open): Set xfont->fid to 0.
15381 (ftxfont_end_for_frame): Clear data specific to the frame and the
15382 font-driver.
15383
15384 * xftfont.c (xftfont_default_fid): Delete it.
15385 (xftfont_open): Set xfont->fid to 0.
15386
15387 * fontset.c (FONTSET_OBJLIST): New macro.
15388 (fontset_find_font): Update font-object list of the fontset.
15389 (free_realized_fontset): New function.
15390 (free_face_fontset): Call free_realized_fontset.
15391 (Ffont_info): Call font_close_object only when enable_font_backend
15392 is set.
15393
15394 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
15395 [HAVE_NTGUI]: Include w32term.h.
15396 [MAC_OS]: Include macterm.ch.
15397 (font_otf_ValueRecord): Use make_number.
15398 (font_finish_cache): Fix handling of reference count.
15399 (font_clear_cache): Update num_fonts.
15400 (font_open_entity): Update smallest_char_width and
15401 smallest_font_height of the frame.
15402 (font_close_object): Update num_fonts.
15403 (Fclear_font_cache): Fix finding the target cache data.
15404
15405 2008-02-16 Glenn Morris <rgm@gnu.org>
15406
15407 * fontset.c (Finternal_char_font): Fix compilation warning.
15408
15409 2008-02-16 Eli Zaretskii <eliz@gnu.org>
15410
15411 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
15412 instead of char arrays. Enlarge the size of array passed to
15413 get_token_information.
15414
15415 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
15416 warnings.
15417
15418 2008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
15419
15420 * .gdbinit: Don't set `args', it breaks gdb --args.
15421
15422 2008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
15423
15424 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
15425 within a narrowed buffer.
15426
15427 2008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
15428
15429 * coding.c (decode_coding_object, encode_coding_object):
15430 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
15431
15432 2008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
15433
15434 * coding.c (coding_set_destination): Use BEG_BYTE rather than
15435 hardcoding 1.
15436 (detect_coding_system):
15437 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
15438 (string_char_to_byte, string_byte_to_char, insert_from_gap):
15439 * insdel.c (insert_from_gap):
15440 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
15441 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
15442 (string_to_multibyte):
15443 * character.c (chars_in_text, multibyte_chars_in_text):
15444 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
15445
15446 * character.h (FETCH_STRING_CHAR_ADVANCE)
15447 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
15448 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
15449 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
15450
15451 * casefiddle.c (casify_region): Only call after-change and composition
15452 functions on the part of the region that was changed.
15453
15454 * keyboard.c (read_avail_input):
15455 * frame.c (Fdelete_frame): Call Fdelete_terminal.
15456
15457 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
15458
15459 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
15460 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
15461
15462 2008-02-11 Juanma Barranquero <lekktu@gmail.com>
15463
15464 * w32menu.c (push_submenu_start, push_submenu_end)
15465 (push_left_right_boundary, push_menu_pane, push_menu_item):
15466 * keyboard.c (read_key_sequence): Don't pass args with side effects
15467 to AREF, it fails when compiling with -DENABLE_CHECKING.
15468
15469 2008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
15470
15471 * Makefile.in (${lispsource}international/charprop.el):
15472 Delete this target.
15473
15474 * search.c (boyer_moore): Fix incorrect synching of the trunk and
15475 emacs-unicode-2.
15476
15477 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
15478
15479 * terminal.c (Fdelete_terminal): Clean up the `force' path.
15480
15481 2008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
15482
15483 * frame.c (Qnoelisp): New symbol.
15484 (syms_of_frame): Initialize it.
15485 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
15486 harmless Elisp code, from a strong `force' from x_connection_closed.
15487 * frame.h (Qnoelisp): Declare.
15488 * xterm.c (x_connection_closed): Pass `noelisp'.
15489
15490 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
15491 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
15492 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
15493 rather than `int' for the type of `type'.
15494
15495 2008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
15496
15497 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
15498
15499 * Makefile.in (GNUC): Remove support for gcc-1.x.
15500
15501 2008-02-10 Richard Stallman <rms@gnu.org>
15502
15503 * lisp.h (ASET): Use AREF, not ASLOT.
15504
15505 2008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
15506
15507 * lisp.h (ASET): Check bounds.
15508
15509 2008-02-10 Glenn Morris <rgm@gnu.org>
15510
15511 * buffer.c (mode-name): Doc fix.
15512
15513 2008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
15514
15515 * Makefile.in:
15516 * emacs.c:
15517 * gmalloc.c:
15518 * keyboard.c:
15519 * lisp.h:
15520 * m/ibm370aix.h:
15521 * process.c:
15522 * regex.c:
15523 * s/hpux.h:
15524 * sysdep.c:
15525 * sysselect.h:
15526 * systty.h:
15527 * unexec.c:
15528 * w32term.c:
15529 * xsmfns.c:
15530 * xterm.c: Remove code that deals with obsolete variables.
15531
15532 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
15533
15534 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
15535 nothing else needs it anymore.
15536
15537 2008-02-09 Eli Zaretskii <eliz@gnu.org>
15538
15539 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
15540 instead of unibyte_char_to_multibyte.
15541
15542 2008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
15543
15544 * s/gnu-linux.h: Remove commented out code.
15545
15546 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
15547
15548 * Makefile.in: Update what RMS says about using autoconf.
15549 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
15550 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
15551 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
15552 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
15553
15554 2008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
15555
15556 * keymap.c (Fkey_description): Move side effect outside of macro call.
15557
15558 * xfaces.c (Finternal_make_lisp_face):
15559 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
15560
15561 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
15562 (syms_of_fontset): Use ASET.
15563
15564 * fns.c (concat): Move side effect outside of macro call.
15565 (hash_clear): Use ASET.
15566
15567 2008-02-08 Richard Stallman <rms@gnu.org>
15568
15569 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
15570 If FORCE, and frame has a surrogate minibuffer for another frame,
15571 delete the other frame first.
15572
15573 2008-02-07 Timo Savola <timo.savola@iki.fi>
15574
15575 * xterm.c (x_detect_focus_change): Handle embed client message.
15576 (handle_one_xevent): Ditto.
15577 (handle_one_xevent): If embedded and we get a button press/release,
15578 request focus.
15579 (xembed_set_info, xembed_send_message): New functions.
15580 (x_make_frame_visible): Call xembed_set_info if embedded.
15581 (x_make_frame_invisible): Call xembed_set_info if embedded.
15582 (x_term_init): Initialize Xatom_XEMBED.
15583 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
15584 (x_iconify_frame): Ditto.
15585
15586 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
15587 (enum xembed_info, enum xembed_message, enum xembed_focus)
15588 (enum xembed_modifier, enum xembed_accelerator): New.
15589 (xembed_set_info, xembed_send_message): Declare.
15590 (FRAME_X_EMBEDDED_P): New.
15591
15592 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
15593 gtk_plug_new.
15594
15595 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
15596 window ID of a frame.
15597 (x_window): Reparent frame if embedded.
15598 (Fx_create_frame): Don't set border width if embedded.
15599
15600 * emacs.c (USAGE3): Add --parent-id.
15601 (standard_args): Ditto.
15602
15603 2008-02-07 Jan Djärv <jan.h.d@swipnet.se>
15604
15605 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
15606
15607 2008-02-07 Jim Meyering <meyering@redhat.com>
15608
15609 Use "do...while (0)", not "if (1)...else" in macro definitions.
15610 The latter provokes a warning from gcc about the empty else, when
15611 followed by ";". Also, without that trailing semicolon, it would
15612 silently swallow up any following statement.
15613 * syntax.h (SETUP_SYNTAX_TABLE)
15614 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
15615 * buffer.h (DECODE_POSITION): Likewise.
15616 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
15617 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
15618 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
15619 (FETCH_CHAR_ADVANCE): Likewise.
15620 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
15621
15622 2008-02-07 Jim Meyering <meyering@redhat.com>
15623
15624 * lread.c [lint]: Don't include <sys/inode.h>.
15625
15626 2008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
15627
15628 * xselect.c (x_handle_dnd_message):
15629 * xmenu.c (digest_single_submenu, xmenu_show):
15630 * xdisp.c (with_echo_area_buffer_unwind_data)
15631 (format_mode_line_unwind_data, unwind_format_mode_line)
15632 (display_menu_bar):
15633 * eval.c (Ffetch_bytecode):
15634 * doc.c (store_function_docstring):
15635 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
15636 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
15637 * buffer.c (add_overlay_mod_hooklist): Use ASET.
15638
15639 2008-02-07 Kenichi Handa <handa@m17n.org>
15640
15641 * ftxfont.c (ftxfont_open): Don't set
15642 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
15643
15644 * ftfont.c (ftfont_open): Fix previous change.
15645
15646 2008-02-06 Jason Rumney <jasonr@gnu.org>
15647
15648 * w32font.c (w32font_text_extents): Fill in lbearing metric.
15649 Use cached metrics for ASCII characters.
15650 (w32font_open_internal): Don't set font's owning_frame.
15651 Cache metrics for ASCII characters.
15652
15653 * w32font.h (struct w32font_info): Add ascii_metrics.
15654 Remove owning_frame.
15655
15656 2008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
15657
15658 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
15659 to negative value.
15660
15661 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
15662
15663 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
15664
15665 * charset.c (syms_of_charset): Set QCtest and Qeq.
15666
15667 2008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
15668
15669 * process.c (Fstart_process):
15670 * callproc.c (Fcall_process): Handle the case where
15671 Funhandled_file_name_directory returns nil.
15672
15673 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
15674 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
15675 * font.c (check_gstring): Use them and AREF to access the vector before
15676 we know it's really a gstring.
15677 (Ffont_shape_text): Fix typo.
15678 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
15679
15680 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
15681 Declare.
15682
15683 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
15684
15685 2008-02-05 Jason Rumney <jasonr@gnu.org>
15686
15687 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
15688 Set smallest_font_height and smallest_char_width in display info.
15689
15690 2008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
15691
15692 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
15693
15694 2008-02-05 Miles Bader <miles@gnu.org>
15695
15696 * xfaces.c (get_lface_attributes, merge_named_face)
15697 (lookup_named_face, lookup_derived_face, realize_named_face):
15698 Revert 2008-02-01 change by cyd@stupidchicken.com.
15699
15700 2008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
15701
15702 * fontset.c (Ffontset_info): Handle the case of inhibitting the
15703 fallback fonts.
15704 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
15705
15706 2008-02-04 Jason Rumney <jasonr@gnu.org>
15707
15708 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
15709 set full_name.
15710 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
15711
15712 2008-02-03 Jason Rumney <jasonr@gnu.org>
15713
15714 * makefile.w32-in (OBJ1): Include font.o here.
15715 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
15716
15717 2008-02-02 Jason Rumney <jasonr@gnu.org>
15718
15719 * makefile.w32-in (temacs): Bump EMHEAP to 21.
15720
15721 2008-02-01 Jason Rumney <jasonr@gnu.org>
15722
15723 * s/cygwin.h: Define VIRT_ADDR_VARIES.
15724
15725 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
15726
15727 2008-02-01 Andreas Schwab <schwab@suse.de>
15728
15729 * Makefile.in (shortlisp, lisp): Update for rename of
15730 ../lisp/language/myanmar.el.
15731
15732 2008-02-01 Chong Yidong <cyd@stupidchicken.com>
15733
15734 * xfaces.c (get_lface_attributes): Delete function.
15735 (merge_named_face, lookup_named_face, lookup_derived_face)
15736 (realize_named_face): Call lface_from_face_name directly, and use
15737 the fact that merge_face_vectors does not alter its FROM argument.
15738
15739 2008-02-01 Jason Rumney <jasonr@gnu.org>
15740
15741 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
15742 input in the default locale. Handle non-Unicode multibyte input.
15743
15744 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15745
15746 * fontset.c (reorder_font_vector): Exclude nil elements from the
15747 font group. Don't try multiple fonts.
15748 (fontset_font): Adjust for the above change.
15749 (Finternal_char_font): Return nil if the found font doesn't
15750 contain the character ch.
15751
15752 * Makefile.in (lisp, shortlisp): Add cham.el.
15753
15754 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15755
15756 * font.h (FONTP): Make it return 1 also for a font-object.
15757
15758 * .gdbinit (xfontset): New function.
15759
15760 * font.c (font_find_for_lface): Check if the character C is
15761 supported or not only for the first font.
15762
15763 * fontset.c (reorder_font_vector): Fix typo.
15764 (fontset_find_font): Don't add a font-spec specifying a script.
15765 Use 0 (not Qt) for the indication of empty font-group. Change the
15766 format of RFONT-DEF. Return Qt if no font in the font-group
15767 support the character.
15768 (fontset_font): Adjust for the above change. If no font was
15769 found the character, remember that.
15770 (face_for_char): Adjust for the change of RFONT-DEF.
15771 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
15772 no font for the target.
15773 (Finternal_char_font): Adjust for the change of RFONT-DEF.
15774
15775 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15776
15777 * font.c (font_load_for_face): Handle the case that the font in
15778 face->lface is a string.
15779
15780 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15781
15782 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
15783
15784 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15785
15786 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
15787 Fix previous change. If the frame is not on a window system,
15788 signal an error.
15789
15790 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15791
15792 * coding.c (decode_coding_object, encode_coding_object): Adjust
15793 marker positions after conversion.
15794
15795 * lisp.h (struct Lisp_Marker): New member need_adjustment.
15796
15797 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15798
15799 * font.c (font_find_for_lface): Fix the handling of the return
15800 value of font_has_char.
15801 (Ffont_shape_text): Fix previous change.
15802
15803 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
15804 (fontset_ref_and_range): Delete it.
15805 (fontset_find_font): Call char_table_ref_and_range instead of
15806 FONTSET_REF_AND_RANGE.
15807 (make_fontset): Don't setup font groups of Latin here.
15808 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
15809 (new_fontset_from_font): Make the specified font the default for
15810 all Latin characters.
15811
15812 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15813
15814 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
15815 is on a window system before accessing the fontset of the frame.
15816
15817 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15818
15819 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
15820
15821 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
15822 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
15823
15824 * font.c (Ffont_shape_text): If the font driver doesn't have a
15825 shaper function, make zero-width glyphs to have at least one-pixel
15826 width. Fix setting of `to' field of glyphs.
15827
15828 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15829
15830 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
15831 glyphs.
15832
15833 * font.h (struct font_driver): Improve docstring of member `shape'.
15834
15835 2008-02-01 Kenichi Handa <handa@m17n.org>
15836
15837 * composite.c (syms_of_composite): Fix docstring of
15838 auto-composition-function.
15839
15840 * font.h (LGLYPH_SIZE): New macro.
15841
15842 * font.c (Ffont_fill_gstring): Stop filling when a character not
15843 supported by the font is found.
15844 (Ffont_shape_text): When a shape callback function returns nil,
15845 try at most two more times with larger gstring.
15846 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
15847
15848 * xdisp.c (handle_auto_composed_prop): Change the argument to
15849 auto-composition-function.
15850
15851 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
15852 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
15853 Lispy glyph and store it in the lgstring.
15854
15855 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
15856
15857 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
15858
15859 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15860
15861 * font.c (Ffont_shape_text): Avoid unnecessary composition.
15862
15863 * fontset.c (Vfont_encoding_charset_alist): New variable.
15864 (syms_of_fontset): DEFVAR it.
15865 (reorder_font_vector, fontset_find_font): Optimize for the case of
15866 no need of reordering.
15867 (face_for_char): Map the charset property by
15868 Vfont_encoding_charset_alist.
15869
15870 2008-02-01 Jason Rumney <jasonr@gnu.org>
15871
15872 * w32font.c (logfonts_match): Don't check adstyle here.
15873 (font_matches_spec): Check here against physical font instead.
15874 (add_font_entity_to_list): Avoid some substitutions.
15875
15876 * font.c (font_parse_fcname): Default weight and slant to normal.
15877 (font_score): Prefer normal fonts if weight or slant unspecified.
15878 (font_score) [WINDOWSNT]: Scale weight difference down to closer
15879 match freetype scores.
15880
15881 2008-02-01 Jason Rumney <jasonr@gnu.org>
15882
15883 * w32font.c (w32font_text_extents): Don't use the frame stored in the
15884 font, as it may have been deleted.
15885 (w32_enumfont_pattern_entity): Map generic family to adstyle using
15886 most common hyphenless variation.
15887 (logfonts_match): Check generic family.
15888 (font_matches_spec): Don't check generic family here.
15889 (fill_in_logfont): Set generic family based on adstyle.
15890
15891 * w32font.h (w32font_get_cache): Update declaration.
15892
15893 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15894
15895 * ftfont.c (ftfont_get_cache): Adjust the argument type.
15896
15897 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
15898 If none of the new drivers are available, call font_update_drivers
15899 with the old drivers.
15900
15901 * w32font.c (w32font_get_cache): Adjust the argument type.
15902
15903 * xfont.c (xfont_get_cache): Adjust the argument type.
15904
15905 * font.h (struct font_driver): Change argument type of get_cache.
15906
15907 * xftfont.c (xftfont_start_for_frame): Delete prototype.
15908
15909 * font.c (Ffont_get): Fix arguments to Fassoc.
15910 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
15911 (font_clear_cache): New function.
15912 (font_list_entities, font_matching_entity): Use font_get_cache.
15913 (font_update_drivers): Call font_clear_cache when finishing a driver.
15914
15915 * fontset.c (fontset_find_font): Fix previous change.
15916
15917 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15918
15919 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
15920 dpyinfo->font_table.
15921 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
15922 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
15923
15924 * font.c (font_at): Handle the case that the arg C is negative.
15925 Handle the unibyte case.
15926 (Ffont_at): Call font_at with the arg C -1.
15927
15928 * xdisp.c (handle_auto_composed_prop): Don't get a character at
15929 the position here, and call font_at with the arg C -1.
15930 Don't check the range of the existing composition at the point.
15931
15932 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15933
15934 * fontset.c (fontset_add): New args charset_id and family.
15935 Change caller.
15936 (load_font_get_repertory, fontset_find_font): Assume that
15937 font_spec is always a font-spec object.
15938 (Fset_fontset_font): Always store a font-spec object in a fontset.
15939
15940 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
15941 instead of get_property_and_range.
15942
15943 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15944
15945 * xftfont.c (struct xftfont_info): Delete the member ft_face.
15946 (xftfont_open): Don't keep locking face.
15947 (xftfont_close): Don't unlock face.
15948 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
15949
15950 * fontset.c (fontset_find_font): Don't prefer a font of
15951 supplementary charset.
15952
15953 2008-02-01 Kenichi Handa <handa@m17n.org>
15954
15955 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
15956 script, langsys_tag to langsys, new member script.
15957 (OTF_TAG_STR): Terminate by '\0'.
15958 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
15959 listing to the script specified in that property. Fix arg to
15960 OTF_check_features.
15961
15962 2008-02-01 Jason Rumney <jasonr@gnu.org>
15963
15964 * w32font.h: New file.
15965
15966 * w32font.c: Include it.
15967 (struct w32font_info): Add owning_frame field. Move to w32font.h.
15968 (w32font_open): Set owning_frame.
15969 (w32font_text_extents): Use owning_frame.
15970 (struct font_callback_data): Add opentype_only field.
15971 (add_font_entity_to_list): Use it to filter fonts.
15972 Don't check against full name.
15973 (w32font_list_internal): New function.
15974 (w32font_list): Use it.
15975 (w32font_match_internal): New function.
15976 (w32font_match): Use it.
15977 (w32font_open_internal): New function.
15978 (w32font_open): Use it.
15979 (w32font_get_cache, w32font_close, w32font_has_char)
15980 (w32font_encode_char, w32font_text_extents, w32font_draw):
15981 Make non-static.
15982
15983 * makefile.w32-in (w32font.o): Depend on w32font.h.
15984
15985 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15986
15987 * charset.c (Fdefine_charset_internal): Record a supplementary
15988 charset at the tail of Vcharset_order_list.
15989
15990 * font.c (Ffont_shape_text): Fix the return value.
15991
15992 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
15993
15994 * xdisp.c (handle_auto_composed_prop): Fix previous change.
15995
15996 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15997
15998 * ftfont.c (struct OpenTypeSpec): New struct.
15999 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
16000 (ftfont_get_open_type_spec): New function.
16001 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
16002
16003 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
16004
16005 2008-02-01 Jason Rumney <jasonr@gnu.org>
16006
16007 * w32font.c (add_font_entity_to_list): Compare only the beginning
16008 of full name.
16009
16010 2008-02-01 Kenichi Handa <handa@m17n.org>
16011
16012 * xdisp.c (handle_auto_composed_prop): Simplify the code.
16013 Never return HANDLED_RECOMPUTE_PROPS.
16014
16015 2008-02-01 Kenichi Handa <handa@m17n.org>
16016
16017 * font.c (font_gstring_produce): Delete it.
16018
16019 * composite.h (COMPOSITION_METHOD):
16020 Handle COMPOSITION_WITH_GLYPH_STRING.
16021
16022 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16023
16024 * xfont.c (Qx): Delete.
16025 (syms_of_xfont): Don't initialize Qx.
16026
16027 * composite.h (enum composition_method):
16028 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
16029
16030 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16031
16032 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
16033 (choose_face_font): Accept new form of font-spec.
16034
16035 * frame.h (font_driver_list): Declare it unconditionally.
16036 (struct frame): Define members font_driver_list and font_data_list
16037 unconditionally.
16038
16039 * fontset.c: Include "font.h" unconditionally.
16040 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
16041 (Fset_fontset_font): Accept a font-spec object.
16042
16043 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
16044 PIXEL_SIZE part a wild card.
16045
16046 * dispextern.h (struct glyph_string): Define members clip and
16047 num_clips unconditionally.
16048 (struct face): Define members font_info and extra unconditionally.
16049
16050 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
16051 ftfont_info only when HAVE_LIBOTF is defined.
16052
16053 2008-02-01 Andreas Schwab <schwab@suse.de>
16054
16055 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
16056 and end.
16057
16058 2008-02-01 Jason Rumney <jasonr@gnu.org>
16059
16060 * w32font.c (w32font_driver): Add new fields.
16061
16062 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16063
16064 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
16065 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
16066 (LIBES): Add @M17N_FLT_CFLAGS@.
16067
16068 * composite.c (compose_text): Don't treat the new style
16069 composition specially.
16070
16071 * emacs.c (main): Call syms_of_font unconditionally.
16072
16073 * font.h (FONT_ENTITY_NOT_LOADABLE)
16074 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
16075 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
16076 (struct font_driver): New member shape.
16077 (font_registry_charsets): Extern it.
16078 (font_find_for_lface, font_prepare_composition): Adjust prototype.
16079 (font_otf_capability, font_drive_otf): Delete their externs.
16080
16081 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
16082 (font_charset_alist, font_registry_charsets): Move from xfont.c
16083 and rename.
16084 (font_prop_validate_otf): New function.
16085 (font_property_table): Register it for QCotf.
16086 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
16087 (font_drive_otf): Delete.
16088 (font_prepare_composition): New arg F. Adjust for the change of
16089 lispy gstring.
16090 (font_find_for_lface): New arg C.
16091 (font_load_for_face): Adjust for the change of font_find_for_lface.
16092 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
16093 lispy gstring.
16094 (Ffont_shape_text): New function.
16095 (Fopen_font): If the font size is not given, use 12-pixel.
16096 (Ffont_at): New arg STRING.
16097 (syms_of_font): Initalize font_charset_alist.
16098 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
16099 conditionally.
16100
16101 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
16102 fonts of the same font-spec. Change the format of RFONT-DEF.
16103 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
16104 Adjust for the change of RFONT-DEF.
16105 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
16106
16107 * ftfont.h: New file.
16108
16109 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
16110 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
16111 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
16112 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
16113 font_otf_capability and font_drive_otf, set ftfont_shape.
16114 (ftfont_list): Adjust for the change of :otf property value.
16115 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
16116 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
16117 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
16118 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
16119 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
16120 (otf_gstring, gstring, m17n_flt_initialized): New variables.
16121
16122 * w32term.c (x_draw_composite_glyph_string_foreground):
16123 Adjust for the change of lispy gstring.
16124
16125 * xdisp.c (handle_composition_prop): Adjust for the change of
16126 lispy gstring. Call a function for auto-composition with the
16127 third arg it->window.
16128 (fill_composite_glyph_string): Adjust for the change of lispy string.
16129 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
16130
16131 * xfaces.c (set_font_frame_param): Adjust for the change of
16132 font_find_for_lface.
16133
16134 * xfont.c (x_font_charset_alist): Move to font.c and rename.
16135 (xfont_registry_charsets): Likewise. Change caller.
16136 (syms_of_xfont): Don't handle x_font_charset_alist.
16137
16138 * xftfont.c: Include "ftfont.h".
16139 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
16140 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
16141 (xftfont_close) [HAVE_LIBOTF]: Close otf.
16142 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
16143 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
16144 Set xftfont_driver.shape to xftfont_shape.
16145
16146 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
16147 the change of lispy gstring.
16148
16149 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16150
16151 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
16152
16153 2008-02-01 Jason Rumney <jasonr@gnu.org>
16154
16155 * w32font.c (w32font_draw): Fill background manually.
16156
16157 2008-02-01 Jason Rumney <jasonr@gnu.org>
16158
16159 * font.c (Qfontp): Remove unused symbol.
16160 (QCantialias): New symbol.
16161 (syms_of_font): Define it.
16162 (font_property_table): Set a validator for QCantialias.
16163
16164 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
16165 Define if not already.
16166 (QCfamily): Share with xfaces.c.
16167 (Qstandard, Qsubpixel, Qnatural): New symbols.
16168 (syms_of_w32font): Define them. Don't define QCfamily here.
16169 (w32_antialias_type, lispy_antialias_type): New functions.
16170 (w32_enumfont_pattern_entity): New arg requested_font.
16171 Set antialias parameter if non-default was requested.
16172 (fill_in_logfont): Fill in lfQuality if :antialias specified.
16173
16174 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16175
16176 * lread.c (read1): Undo the previous change.
16177
16178 2008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
16179
16180 * frame.c (Fdelete_frame): Call font_update_drivers only when
16181 USE_FONT_BACKEND is defined.
16182
16183 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16184
16185 * font.h (struct font_bitmap): New member bits_per_pixel.
16186 (struct font_driver): New members start_for_frame and end_for_frame.
16187 (struct font_data_list): New struct.
16188 (font_put_frame_data, font_get_frame_data): Extern them.
16189
16190 * frame.h (struct frame): New member font_data_list.
16191
16192 * font.c (font_update_drivers): Call driver->start_for_frame and
16193 driver->end_for_frame at proper timings.
16194 (font_put_frame_data, font_get_frame_data): New functions.
16195 (Ffont_spec): Add usage in the docstring.
16196
16197 * frame.c (make_frame): Initialize f->font_data_list to NULL.
16198 (Fdelete_frame): Call font_update_drivers.
16199
16200 * xftfont.c (struct xftface_info): Delete the member xft_draw.
16201 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
16202 (xftfont_get_xft_draw): New function.
16203 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
16204 (xftfont_end_for_frame): New function.
16205 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
16206
16207 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
16208 Change argument. Cache GCs in the per-frame data.
16209 (struct ftxfont_frame_data): New struct.
16210 (ftxfont_draw_bitmap): New arg gc_fore and flush.
16211 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
16212 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
16213 (ftxfont_end_for_frame): New function.
16214 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
16215
16216 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
16217
16218 2008-02-01 Kenichi Handa <handa@m17n.org>
16219
16220 * xselect.c (Vselection_coding_system)
16221 (Vnext_selection_coding_system): Delete them.
16222 (syms_of_xselect): Don't declare selection-coding-system and
16223 next-selection-coding-system. They are declared in select.el.
16224
16225 2008-02-01 Jason Rumney <jasonr@gnu.org>
16226
16227 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
16228
16229 * w32fns.c: Include imm.h.
16230 (get_composition_string_fn, get_ime_context_fn): New optional
16231 system functions.
16232 (globals_of_w32fns): Load them from imm32.dll.
16233 (ignore_ime_char): New flag.
16234 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
16235 WM_IME_ENDCOMPOSITION messages.
16236
16237 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
16238 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
16239
16240 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16241
16242 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
16243 (READCHAR_REPORT_MULTIBYTE): New macro.
16244 (readchar): New 2nd arg MULTIBYTE.
16245 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
16246 Make symbol's name multibyte according to the multibyteness of the
16247 source.
16248
16249 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16250
16251 * xfaces.c (face_for_overlay_string): Call lookup_face with
16252 correct arguments (fix of synching with the trunk).
16253
16254 2008-02-01 Kenichi Handa <handa@m17n.org>
16255
16256 * font.c (font_prop_validate_symbol, font_prop_validate_style)
16257 (font_prop_validate_non_neg, font_prop_validate_spacing):
16258 Delete argument prop_index.
16259 (font_property_table): Change arguments to validater. Change Callers.
16260 (font_lispy_object): Delete.
16261 (font_at): Use font_find_object instead fo font_lispy_object.
16262
16263 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16264
16265 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
16266 and file names.
16267
16268 2008-02-01 Jason Rumney <jasonr@gnu.org>
16269
16270 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
16271 (font_matches_spec): Remove debug output.
16272 (add_font_entity_to_list): Avoid using substituted fonts.
16273
16274 2008-02-01 Jason Rumney <jasonr@gnu.org>
16275
16276 * doc.c (Fsnarf_documentation):
16277 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
16278
16279 2008-02-01 Miles Bader <miles@gnu.org>
16280
16281 * dispextern.h (struct glyph_row): Only define "clip" field if
16282 HAVE_WINDOW_SYSTEM is defined.
16283
16284 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
16285
16286 Fix up multi-tty merge.
16287
16288 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
16289 and indentation.
16290
16291 * xfaces.c (free_realized_face, clear_face_gcs):
16292 Include font_done_for_face in the input_blocked section, just in case.
16293
16294 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
16295 (get_char_face_and_encoding): Undo last change and remove the *other*
16296 duplicate definition (i.e. keep the one that's better scoped and that
16297 includes code for the font-backend).
16298
16299 * terminal.c (create_terminal): Default keyboard_coding to
16300 `no-conversion' and terminal_coding to `undecided'.
16301
16302 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
16303
16304 * fontset.c (free_realized_fontsets): Check that the table entry does
16305 contain a fontset before trying to compare it to `base'.
16306
16307 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
16308 syms_of_charset, and syms_of_coding earlier because init_window_once
16309 now needs Vcoding_system_hash_table to be setup.
16310
16311 * coding.h (default_buffer_file_coding): Remove.
16312
16313 * coding.c (default_buffer_file_coding): Remove.
16314 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
16315 than ->symbol, and use the terminal-local coding system.
16316 (syms_of_coding): Don't setup the coding-systems that are not
16317 terminal-local.
16318 (Fdefine_coding_system_internal): Use XCAR/XCDR.
16319
16320 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
16321 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
16322
16323 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
16324 in chartab.c and were re-added here by mistake.
16325 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
16326
16327 * doc.c (Fsnarf_documentation):
16328 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
16329 src to etc.
16330
16331 * ChangeLog.10: Add mistakenly removed entry.
16332
16333 2008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
16334
16335 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
16336
16337 2008-02-01 Miles Bader <miles@gnu.org>
16338
16339 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
16340 Add extra args to FACE_FOR_CHAR.
16341
16342 2008-02-01 Kenichi Handa <handa@m17n.org>
16343
16344 * keymap.c (where_is_internal_1): If key is a cons, store the copy
16345 in sequence.
16346
16347 * chartab.c (map_sub_char_table, map_char_table): If the range
16348 contains just one character, call the function with that character
16349 even if the depth is not 3.
16350
16351 2008-02-01 Jason Rumney <jasonr@gnu.org>
16352
16353 * w32font.c (w32font_text_extents): Calculate metrics for the
16354 whole string.
16355
16356 2008-02-01 Jason Rumney <jasonr@gnu.org>
16357
16358 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
16359
16360 2008-02-01 Jason Rumney <jasonr@gnu.org>
16361
16362 * w32term.c (x_set_glyph_string_clipping): Use
16363 get_glyph_string_clip_rects.
16364 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
16365 Adjust for the change of struct glyph_string.
16366
16367 * w32font.c (w32font_draw): Do clipping here.
16368
16369 2008-02-01 Kenichi Handa <handa@m17n.org>
16370
16371 * xftfont.c (xftfont_draw): Adjust for the change of struct
16372 glyph_string.
16373
16374 * xterm.c (x_set_glyph_string_clipping): Use
16375 get_glyph_string_clip_rects.
16376 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
16377 Adjust for the change of struct glyph_string.
16378
16379 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
16380 the resulting clip(s}.
16381 (expose_overlaps): Add arg r. Change callers. Set it to
16382 row->clip temporarily.
16383 (expose_window): Redraw rows overlapping the exposed area.
16384
16385 * dispextern.h (struct glyph_row): New member clip.
16386 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
16387 clip_height, new member clip, and num_clips.
16388
16389 2008-02-01 Kenichi Handa <handa@m17n.org>
16390
16391 * data.c (Fchar_or_string_p): Fix docstring.
16392
16393 2008-02-01 Kenichi Handa <handa@m17n.org>
16394
16395 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
16396 create a temporary XftDraw object.
16397
16398 2008-02-01 Kenichi Handa <handa@m17n.org>
16399
16400 * font.c (Ffontp): Fix docstring.
16401
16402 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
16403 strong evidence of ISO-2022.
16404
16405 2008-02-01 Kenichi Handa <handa@m17n.org>
16406
16407 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
16408 SYNTAX_ENTRY_FOLLOW_PARENT.
16409
16410 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
16411
16412 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
16413 its type.
16414 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
16415 Update to the new type of weak_hash_tables and next_weak.
16416
16417 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
16418 a plain C pointer to Lisp_Hash_Table.
16419
16420 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
16421 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
16422 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
16423 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
16424 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
16425 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
16426 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
16427 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
16428 (GC_EQ): Remove since they've been identical to their non-GC_
16429 alter-egos ever since the markbit was eradicated.
16430
16431 * alloc.c:
16432 * buffer.c:
16433 * buffer.h:
16434 * data.c:
16435 * fileio.c:
16436 * filelock.c:
16437 * fns.c:
16438 * frame.h:
16439 * lisp.h:
16440 * macterm.c:
16441 * print.c:
16442 * process.c:
16443 * w32fns.c:
16444 * w32menu.c:
16445 * w32term.c:
16446 * xfns.c:
16447 * xmenu.c:
16448 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
16449
16450 2008-02-01 Kenichi Handa <handa@m17n.org>
16451
16452 * chartab.c (map_sub_char_table): Make it work for the top-level
16453 char-table. Fix handling of parent char-table.
16454 (map_char_table): Adjust for the above change.
16455
16456 2008-02-01 Jason Rumney <jasonr@gnu.org>
16457
16458 * w32font.c (Qgdi): Rename from Qw32.
16459
16460 2008-02-01 Jason Rumney <jasonr@gnu.org>
16461
16462 * w32bdf.c (get_quoted_string): Make function static.
16463
16464 2008-02-01 Kenichi Handa <handa@m17n.org>
16465
16466 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
16467 bigger ascent and descent than those of the font, use them as
16468 font's ascent and descent.
16469
16470 2008-02-01 Kenichi Handa <handa@m17n.org>
16471
16472 * Makefile.in (${lispsource}international/charprop.el): Move this
16473 target within "#ifdef HAVE_UNIDATA" and "#endif".
16474
16475 2008-02-01 Kenichi Handa <handa@m17n.org>
16476
16477 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
16478 (shortlisp): Add ../lisp/language/tai-viet.el.
16479
16480 2008-02-01 Ulrich Mueller <ulm@gentoo.org>
16481
16482 * Makefile.in (${lispsource}international/charprop.el): Depend on
16483 temacs${EXEEXT}.
16484
16485 2008-02-01 Jason Rumney <jasonr@gnu.org>
16486
16487 * w32font.c (w32font_close): Delete the GDI font object.
16488
16489 * w32menu.c: Include character.h.
16490
16491 * w32proc.c: Likewise.
16492
16493 * w32select.c: Likewise.
16494
16495 * makefile.w32-in (w32proc.o): Depend on character.h.
16496
16497 2008-02-01 Jason Rumney <jasonr@gnu.org>
16498
16499 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
16500
16501 * w32menu.c (syms_of_w32menu): Likewise.
16502
16503 * w32proc.c (syms_of_ntproc): Likewise.
16504
16505 * w32select.c (syms_of_w32select): Likewise.
16506
16507 * w32term.c (syms_of_w32term): Likewise.
16508
16509 2008-02-01 Jason Rumney <jasonr@gnu.org>
16510
16511 * w32font.c (w32font_draw): Delete brush after using it.
16512
16513 2008-02-01 Jason Rumney <jasonr@gnu.org>
16514
16515 * w32font.c (w32font_open): Don't set font_idx.
16516 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
16517 to font settings.
16518 (w32font_draw): Fill background explicitly.
16519
16520 2008-02-01 Jason Rumney <jasonr@gnu.org>
16521
16522 * w32term.c (w32_initialize): Don't call w32font_initialize.
16523
16524 * w32font.c (w32font_info): Remove subranges.
16525 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
16526 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
16527 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
16528 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
16529 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
16530 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
16531 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
16532 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
16533 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
16534 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
16535 New symbols.
16536 (font_callback_data): New struct.
16537 (w32font_list, w32font_match): Use it.
16538 (w32font_open): Don't populate subranges.
16539 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
16540 (w32font_encode_char): Always return unicode code-point as-is.
16541 (w32font_text_extents): Supply a transformation matrix to
16542 GetGlyphOutline. Never look up by glyph index. Avoid looping
16543 twice. Use unicode version of GetTexExtentPoint32 instead of
16544 glyph index version.
16545 (set_fonts_frame): Remove.
16546 (w32_enumfont_pattern_entity): Add frame parameter, use it to
16547 set frame parameter. Use backward compatible fake foundries.
16548 Save generic family in extra slot under QCfamily. Make width slot
16549 constant. Save QCspacing value. Save list of scripts instead of
16550 binary subranges.
16551 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
16552 (add_font_entity_to_list): Use font_callback_data struct. Filter
16553 unwanted fonts.
16554 (add_one_font_entity_to_list): Use font_callback_data struct.
16555 (w32_registry): Default to iso10646_1.
16556 (fill_in_logfont): Use dpi from extra slot. Don't bother with
16557 string font registries. Don't fill in font name if it is a generic
16558 family name, fill family instead. Use spacing, family and script
16559 extra info to fill pitch, family and charset fields.
16560 (list_all_matching_fonts): Use font_callback_data struct.
16561 (unicode_range_for_char): Remove.
16562 (font_supported_scripts): New function.
16563 (w32font_initialize): Remove.
16564 (syms_of_w32font): Update which symbols are defined.
16565
16566 2008-02-01 Jason Rumney <jasonr@gnu.org>
16567
16568 * font.c (font_pixel_size): Reverse assq_no_quit args.
16569
16570 * w32term.h (FONT_WIDTH): Report max width, not average.
16571 (FONT_MAX_WIDTH): Remove.
16572 (FONT_AVG_WIDTH): New macro.
16573
16574 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
16575 redefinition of FONT_WIDTH.
16576
16577 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
16578 (w32_cache_char_metrics): Use FONT_WIDTH.
16579
16580 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
16581
16582 2008-02-01 Jason Rumney <jasonr@gnu.org>
16583
16584 * w32font.c (w32font_open): Make lfHeight negative.
16585
16586 * w32fns.c (x_default_font_parameter): Use new style font name.
16587 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
16588
16589 2008-02-01 Jason Rumney <jasonr@gnu.org>
16590
16591 * w32font.c (QCsubranges): New symbol.
16592 (w32font_open, w32font_has_char): Get subranges from subproperty
16593 of extra.
16594 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
16595 (syms_of_w32font): Define :subranges symbol.
16596
16597 * font.c (font_put_extra): Expose externally.
16598
16599 * font.h (font_put_extra): Move declaration from font.c.
16600
16601 * font.c (Ffont_get): Use font driver to determine otf capability.
16602 (adjust_anchor): Check if driver defines anchor_point before using.
16603
16604 * w32font.c (w32font_open): Handle size, height and pixel_size better.
16605 (w32font_draw): Use options.
16606 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
16607 Fix detection of truetype fonts.
16608 (registry_to_w32_charset): Handle charsets other than iso8859-1
16609 expressed as lisp symbols.
16610 (w32_registry): Express charset as lisp symbol.
16611 (fill_in_logfont): Reverse pixel and point height logic.
16612 Don't set width here. Set quality to default.
16613
16614 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
16615 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
16616
16617 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
16618 Remove redundant loop and allocation.
16619
16620 * makefile.w32-in (font.o, w32font.o): New objects.
16621 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
16622 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
16623
16624 * xdisp.c (fill_composite_glyph_string): Make the first arg to
16625 STORE_XCHARB a valid l-value.
16626
16627 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
16628 calculations for non-Truetype fonts.
16629 (x_draw_glyph_string): Sync with xterm.c.
16630 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
16631 Remove redundant code.
16632 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
16633
16634 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
16635 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
16636
16637 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
16638 (x_to_w32_charset, w32_to_x_charset): Expose externally.
16639
16640 * w32font.c: New file for w32 font backend.
16641
16642 2008-02-01 Kenichi Handa <handa@m17n.org>
16643
16644 * term.c: Don't include "buffer.h" twice.
16645
16646 2008-02-01 Kenichi Handa <handa@m17n.org>
16647
16648 * character.c (Funibyte_string): New function.
16649 (syms_of_character): Defsubr it.
16650
16651 2008-02-01 Jason Rumney <jasonr@gnu.org>
16652
16653 * w32term.c [USE_FONT_BACKEND]:
16654 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
16655 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
16656 (x_draw_glyph_string, x_draw_glyph_string_foreground)
16657 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
16658 (x_free_frame_resources): Sync with xterm.c.
16659
16660 2008-02-01 Andreas Schwab <schwab@suse.de>
16661
16662 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
16663 char-table size.
16664
16665 2008-02-01 Kenichi Handa <handa@m17n.org>
16666
16667 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
16668
16669 2008-02-01 Kenichi Handa <handa@m17n.org>
16670
16671 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
16672 font_otf_gpos, add font_drive_otf.
16673
16674 * fontset.c (fontset_find_font): Pay attention to font size
16675 specified for a font.
16676 (reorder_font_vector): Check contents of font_def.
16677
16678 * font.c (struct otf_list): Delete it.
16679 (otf_list): Make it a lisp variable.
16680 (otf_open): Use lispy otf_list.
16681 (generate_otf_features): Rename from parse_gsub_gpos_spec.
16682 (check_otf_features): New function.
16683 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
16684 New functions.
16685 (font_drive_otf): New function merging font_otf_gsub and
16686 font_otf_gpos.
16687 (font_open_for_lface): New arg spec. Change argument order.
16688 (font_load_for_face): Adjust for the change of font_open_for_lface.
16689 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
16690 Ffont_otf_gpos.
16691 (syms_of_font): Staticpro otf_list. Delete defsubr of
16692 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
16693
16694 * xfaces.c (set_font_frame_param): Adjust for the change of
16695 font_open_for_lface.
16696
16697 * font.h (font_open_for_lface): Adjust prototype.
16698 (struct font_driver): Delete members otf_gsub and otf_gpos, add
16699 member otf_drive.
16700 (font_otf_gsub, font_otf_gpos): Delete externs.
16701 (font_drive_otf): Extern it.
16702
16703 2008-02-01 Kenichi Handa <handa@m17n.org>
16704
16705 * font.c (font_at): If the window W is not on a window system,
16706 return Qnil.
16707
16708 * coding.c (produce_chars, encode_coding): Don't call
16709 insert_from_gap if no characters to produce.
16710
16711 2008-02-01 Kenichi Handa <handa@m17n.org>
16712
16713 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
16714 Fclear_face_cache.
16715
16716 * xfaces.c (face_for_font): Check also face->font==font->font.font.
16717
16718 2008-02-01 Miles Bader <miles@gnu.org>
16719
16720 * emacs.c (main): Change default value of `enable_font_backend' to 1.
16721 Parse "--disable-font-backend" option.
16722 (standard_args): Add "--disable-font-backend" option.
16723
16724 2008-02-01 Kenichi Handa <handa@m17n.org>
16725
16726 * fontset.c (fontset_find_font): New function.
16727 (fontset_font): Use fontset_find_font.
16728 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
16729 Register the specified font for all Latin characters.
16730 (new_fontset_from_font): Register the specified font for all Latin
16731 characters.
16732 (dump_fontset): For a realized fontset, include the base fontset
16733 name in the returned vector.
16734
16735 2008-02-01 Kenichi Handa <handa@m17n.org>
16736
16737 * character.h (CHAR_STRING): Cast C to unsigned on calling
16738 char_string.
16739
16740 * character.c (char_string): Type of arg C changed to unsigned.
16741 Signal an error if C is an invalid character code.
16742
16743 * editfns.c (general_insert_function, Fchar_to_string):
16744 Use CHARACTERP, not INTEGERP.
16745
16746 2008-02-01 Kenichi Handa <handa@m17n.org>
16747
16748 * character.h (MIN_MULTIBYTE_LEADING_CODE)
16749 (MAX_MULTIBYTE_LEADING_CODE): New macros.
16750
16751 * regex.c (analyse_first): Fix for multibyte characters in "case
16752 charset:" and "case categoryspec:".
16753
16754 2008-02-01 Andreas Schwab <schwab@suse.de>
16755
16756 * Makefile.in (LIBES): Move standard libraries to the end.
16757
16758 2008-02-01 Kenichi Handa <handa@m17n.org>
16759
16760 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
16761 nonzero, don't shrink the buffer nextb.
16762
16763 * buffer.h (struct buffer_text): New member inhibit_shrinking.
16764
16765 * coding.c (coding_alloc_by_making_gap): New arg offset.
16766 (alloc_destination): Call coding_alloc_by_making_gap with the arg
16767 offset.
16768 (decode_coding_iso_2022): Update coding->safe_charsets.
16769 (decode_coding_gap): Temporarily set
16770 current_buffer->text->inhibit_shrinking to 1.
16771
16772 2008-02-01 Kenichi Handa <handa@m17n.org>
16773
16774 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
16775 indexing into elements of s->cmp and s->char2b.
16776
16777 2008-02-01 Juanma Barranquero <lekktu@gmail.com>
16778
16779 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
16780
16781 2008-02-01 Kenichi Handa <handa@m17n.org>
16782
16783 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
16784 target_multibyte instead of multibyte.
16785 (re_match_2_internal): Call bcmp_translate with target_multibyte.
16786 (bcmp_translate): Change the argument name from multibyte to
16787 target_multibyte.
16788
16789 2008-02-01 Kenichi Handa <handa@m17n.org>
16790
16791 These changes are to compile a regexp into a pattern that can be
16792 used both for multibyte and unibyte targets.
16793
16794 * Makefile.in (search.o): Depend on charset.h.
16795
16796 * character.c (multibyte_char_to_unibyte_safe): New function.
16797
16798 * search.c: Include "charset.h".
16799 (compile_pattern_1): Delete argument multibyte. Don't set
16800 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
16801 (compile_pattern): Don't compare cp->buf.target_multibyte.
16802 Compare cp->buf.charset_unibyte.
16803 (compile_pattern): Set cp->buf.target_multibyte.
16804
16805 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
16806
16807 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
16808
16809 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
16810 multibyte. Change callers.
16811 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
16812 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
16813 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
16814 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
16815 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
16816 (regex_compile): Make the compiled pattern usable both for
16817 multibyte and unibyte targets.
16818 (analyse_first): Make the fastmap usable both for multibyte and
16819 unibyte targets.
16820 (TRANSLATE_VIA_MULTIBYTE): Delete.
16821 (re_match_2_internal): Pay attention to the case that the
16822 multibyteness of bufp and target may be different.
16823
16824 2008-02-01 Kenichi Handa <handa@m17n.org>
16825
16826 * xdisp.c (x_produce_glyphs): When a font is not found, make the
16827 empty box occupy at least one column width.
16828
16829 2008-02-01 Miles Bader <miles@gnu.org>
16830
16831 * Makefile.in: Remove redundant HAVE_XFT clause.
16832
16833 2008-02-01 Kenichi Handa <handa@m17n.org>
16834
16835 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
16836
16837 2008-02-01 Kenichi Handa <handa@m17n.org>
16838
16839 * fontset.c (Finternal_char_font): Fix for the case of POSITION
16840 being nil.
16841
16842 2008-02-01 Kenichi Handa <handa@m17n.org>
16843
16844 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
16845
16846 2008-02-01 Kenichi Handa <handa@m17n.org>
16847
16848 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
16849
16850 2008-02-01 Kenichi Handa <handa@m17n.org>
16851
16852 * search.c (simple_search): Fix previous change.
16853
16854 2008-02-01 Kenichi Handa <handa@m17n.org>
16855
16856 * xftfont.c (ftfont_font_format): Extern declaration.
16857
16858 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
16859
16860 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
16861 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
16862
16863 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
16864 (ftfont_font_format): Fix previous change.
16865
16866 * font.h (Ffont_xlfd_name): EXFUN it.
16867
16868 * font.c (font_parse_xlfd): Fix the array size of `f'.
16869 (register_font_driver): Use EQ to compare driver->type.
16870
16871 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
16872 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
16873 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
16874
16875 2008-02-01 Kenichi Handa <handa@m17n.org>
16876
16877 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
16878 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
16879
16880 2008-02-01 Kenichi Handa <handa@m17n.org>
16881
16882 * xfont.c (xfont_open): Set font->format.
16883
16884 * xftfont.c (xftfont_open): Set font->format.
16885
16886 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
16887 (ftfont_list): Include FC_FONTFORMAT in FcObject.
16888 (ftfont_open): Set font->format.
16889 (ftfont_font_format): New function.
16890
16891 * font.h (struct font): New member format.
16892
16893 * font.c (Qopentype): New variable.
16894 (syms_of_font): Defsym it.
16895 (Fquery_font): Change the format of the last element of the return
16896 value.
16897
16898 2008-02-01 Kenichi Handa <handa@m17n.org>
16899
16900 * xfns.c (xic_create_xfontset): Try the default fontset name as a
16901 last resort.
16902
16903 2008-02-01 Kenichi Handa <handa@m17n.org>
16904
16905 * coding.c (detect_coding_charset): Fix detection of multi-byte
16906 charset.
16907
16908 2008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
16909
16910 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
16911
16912 2008-02-01 Kenichi Handa <handa@m17n.org>
16913
16914 * xdisp.c (get_next_display_element): Set it->face_id for the
16915 first component of a composition.
16916 (x_produce_glyphs): Check if the font is changed or not for composition.
16917
16918 2008-02-01 Kenichi Handa <handa@m17n.org>
16919
16920 * fontset.c (Qlatin): New variable.
16921 (syms_of_fontset): Define it as a lisp symbol.
16922 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
16923
16924 2008-02-01 Kenichi Handa <handa@m17n.org>
16925
16926 * font.c (font_unparse_fcname): Pay attention to the case that
16927 some of font property is a null string.
16928
16929 2008-02-01 Kenichi Handa <handa@m17n.org>
16930
16931 * term.c: Include "composite.h".
16932 (encode_terminal_code): Output all components of composition.
16933 Check the size of encode_terminal_src.
16934 (produce_glyphs): For composition, call produce_composite_glyph.
16935 (append_composite_glyph, produce_composite_glyph): New functions.
16936
16937 * xdisp.c (x_produce_glyphs): In handling composition, if a font
16938 is not found, get font_info from the current ascii face.
16939
16940 2008-02-01 Kenichi Handa <handa@m17n.org>
16941
16942 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
16943 buffer-file-name to Qnil before calling insert_from_buffer.
16944
16945 * font.c (font_unparse_fcname): Pay attention to the case that
16946 foundry is a null string.
16947
16948 2008-02-01 Kenichi Handa <handa@m17n.org>
16949
16950 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
16951
16952 * font.c (Qunicode_sip): New variable.
16953 (syms_of_font): Declare it as a Lisp symbol.
16954
16955 * font.h (Qunicode_sip): Extern it.
16956
16957 2008-02-01 Kenichi Handa <handa@m17n.org>
16958
16959 * composite.c (get_composition_id): Pay attention to TAB component.
16960
16961 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
16962 TAB. Adjust for the change of s->char2b which always points to
16963 the first element of allocated memory.
16964
16965 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
16966
16967 * xdisp.c (handle_composition_prop): Set it->c to the first
16968 non-TAB component.
16969 (fill_composite_glyph_string): Change argument.
16970 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
16971 (x_produce_glyphs): Fix handling of left/right padding.
16972
16973 2008-02-01 Kenichi Handa <handa@m17n.org>
16974
16975 * coding.c (detect_coding_system): Fix for handling off
16976 inhibit_iso_escape_detection. Fix for the case that no coding
16977 system is defined for a specific coding category.
16978
16979 2008-02-01 Kenichi Handa <handa@m17n.org>
16980
16981 * font.c (font_matching_entity): Delete unused local var.
16982
16983 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
16984 opening a font.
16985
16986 * fileio.c (Finsert_file_contents): On recovering a file, assume
16987 Unix-like eol.
16988 (choose_write_coding_system): On auto-saving a file, force
16989 Unix-like eol.
16990
16991 * coding.c (setup_coding_system): Fix setting of
16992 coding->common_flags based on eol_type.
16993 (coding_inherit_eol_type): If PARENT is not nil, be sure to
16994 inherit from it.
16995
16996 2008-02-01 Kenichi Handa <handa@m17n.org>
16997
16998 * alloc.c (NSTATICS): Increas to 0x600.
16999
17000 2008-02-01 Kenichi Handa <handa@m17n.org>
17001
17002 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
17003 (ftfont_list): Don't check :name property.
17004 (ftfont_match): New function.
17005 (ftfont_pattern_entity): If the pattern doesn't contain
17006 FC_SPACING, don't assume FC_MONO.
17007
17008 * font.h (struct font_driver): New member `match'.
17009 (font_update_drivers): Adjust prototype.
17010
17011 * font.c (font_parse_fcname, font_parse_name): Don't change :name
17012 property of FONT.
17013 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
17014 them unconditionally.
17015 (font_matching_entity): New function.
17016 (font_open_by_name): Try font_matching_entity if exact match is
17017 not found.
17018 (font_update_drivers): Delete the arg FONT. Return a list of
17019 actually used backends. Don't free faces, font caches here.
17020 Don't store data in frame parameters. Don't call x_set_font.
17021 (Ffont_spec): Store :name property as is.
17022 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
17023 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
17024 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
17025 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
17026 Call font->driver->otf_gsub instead of font_otf_gsub.
17027
17028 * frame.c (x_set_font_backend): Do more works that were done in
17029 font_update_drivers before.
17030
17031 * xfont.c (xfont_match): New function.
17032 (xfont_driver): Set xfont_driver.match to xfont_match.
17033 (xfont_draw): Set font in GC if necessary.
17034
17035 * ftxfont.c (ftxfont_match): New function.
17036 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
17037
17038 * xftfont.c (xftfont_match): New function.
17039 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
17040
17041 2008-02-01 Kenichi Handa <handa@m17n.org>
17042
17043 * font.h (struct font): New member scalable.
17044 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
17045 (font_otf_gsub): Adjust prototype.
17046
17047 * font.c (font_otf_capability): Fix handling of the default langsys.
17048 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
17049 Check the contents of SPEC.
17050 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
17051 (check_gstring): New function.
17052 (REPLACEMENT_CHARACTER): New macro.
17053 (font_otf_gsub): New arg alternate_subst. Be sure to set all
17054 glyph codes of GSTRING.
17055 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
17056 (font_prepare_composition): Set cmp->glyph_len.
17057 (font_open_entity): Set font->scalable.
17058 (Ffont_get): Handle :otf property.
17059 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
17060 functions.
17061 (Fquery_font): Use font->font.full_name.
17062 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
17063 Sfont_otf_alternates.
17064
17065 * ftfont.c (ftfont_open): Set font->font.full_name and
17066 font->font.name properly. Fix calculation of font->font.height
17067 and font->min_width.
17068
17069 * ftxfont.c (ftxfont_create_gcs): New function.
17070 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
17071 (ftxfont_draw_backgrond): Fix filling region.
17072 (ftxfont_default_fid): New function.
17073 (ftxfont_open): Set xfont->fid to the return value of
17074 ftxfont_default_fid.
17075 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
17076 (ftxfont_done_face): Free only GCs that are created by
17077 ftxfont_create_gcs.
17078 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
17079
17080 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
17081 Clip to src->width, etc (not src->clip_XXX).
17082
17083 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
17084 FontBackend frame parameter.
17085
17086 2008-02-01 Kenichi Handa <handa@m17n.org>
17087
17088 * font.h (struct font_driver_list): New member `on'.
17089 (Fclear_font_cache): EXFUN it.
17090 (font_update_drivers): Extern it.
17091
17092 * font.c (font_unparse_fcname): Fix typo (swidth->width).
17093 (font_list_entities): Check driver_list->on.
17094 (register_font_driver): Initalize `on' member to 0.
17095 (font_update_drivers): New function.
17096 (Fclear_font_cache): Check driver_list->on.
17097
17098 * frame.h (Qfont_backend): Extern it.
17099 (x_set_font_backend): Extern it.
17100
17101 * frame.c (Qfont_backend): New variable.
17102 (frame_parms): New element for font-backend.
17103 (x_set_font_backend): New function.
17104
17105 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
17106 FontBackend frame parameter.
17107 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
17108 x_set_font_backend.
17109
17110 * xfont.c (xfont_list): Don't try listing by :name property if the
17111 name is not for XLFD.
17112
17113 2008-02-01 Kenichi Handa <handa@m17n.org>
17114
17115 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
17116 (LGLYPH_SET_TO): New macros.
17117 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
17118 element of G is vector or not.
17119 (font_at): Extern it.
17120
17121 * font.c: Include window.h.
17122 (font_lispy_object): New function.
17123 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
17124 end of valid glyph.
17125 (font_close_object): Fix getting (struct font *).
17126 (font_at): New function.
17127 (Ffont_get): If FONT is a font-object, get entity from it.
17128 (Ffont_make_gstring): Initialize elements of glyphs with nil.
17129 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
17130 range check.
17131 (Ffont_at): New function.
17132 (syms_of_font): Defsubr Sfont_at.
17133
17134 * xdisp.c (it_props): Move the entry for Qauto_composed to just
17135 before the entry for Qcomposition.
17136 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
17137 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
17138 the font in gstring.
17139 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
17140 LGLYPH_FORM (g) to detect the end of valid glyph.
17141 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
17142 we are composing with gstring.
17143
17144 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
17145 Check if adjustment is vector or not.
17146
17147 * Makefile.in (font.o): Make it depends on window.h.
17148
17149 2008-02-01 Kenichi Handa <handa@m17n.org>
17150
17151 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
17152 adjustment is vector or not.
17153
17154 2008-02-01 Miles Bader <miles@gnu.org>
17155
17156 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
17157
17158 2008-02-01 Kenichi Handa <handa@m17n.org>
17159
17160 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
17161 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
17162 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
17163
17164 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
17165 (DEVICE_DELTA): Fix typo.
17166 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
17167 LGLYPH format.
17168
17169 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
17170 the change of LGLYPH format.
17171
17172 2008-02-01 Kenichi Handa <handa@m17n.org>
17173
17174 * ftfont.c (ftfont_list): Fix typo.
17175 (ftfont_build_basic_charsets): Don't include letters with diacritics.
17176
17177 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
17178
17179 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
17180
17181 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
17182 xftface_info is non-NULL.
17183
17184 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
17185
17186 * ftfont.c (ftfont_list): Move misplaced #endif.
17187
17188 2008-02-01 Kenichi Handa <handa@m17n.org>
17189
17190 * ftfont.c (ftfont_list): Pay attention to the case that
17191 FC_CAPABILITY is not defined.
17192
17193 2008-02-01 Kenichi Handa <handa@m17n.org>
17194
17195 * xftfont.c (xftfont_open): Set charset related members to -1.
17196
17197 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
17198 QCname.
17199 (ftfont_open): Set charset related members to -1.
17200
17201 * fontset.c (Votf_script_alist): New variable.
17202 (syms_of_fontset): Initialize it.
17203 (fontset_font): Delete unused variable.
17204
17205 * fontset.h (Votf_script_alist): Extern it.
17206
17207 * font.c (font_find_for_lface): Optimize code.
17208
17209 * font.h (font_close_object, font_merge_old_spec): Extern them.
17210
17211 2008-02-01 Kenichi Handa <handa@m17n.org>
17212
17213 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
17214 (syms_of_font): Initialize them.
17215 (font_pixel_size): Allow float value in dpi.
17216 (font_prop_validate_type): Delete.
17217 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
17218 Change caller.
17219 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
17220 (font_prop_validate_extra): Delete.
17221 (font_prop_validate_spacing): New function.
17222 (font_property_table): Add elements for all known properties.
17223 (get_font_prop_index): Rename from check_font_prop_name. New
17224 argument FROM. Change caller.
17225 (font_prop_validate): Validate all known properties.
17226 (font_put_extra): Delete argument force. Change caller.
17227 (font_expand_wildcards): Make it static. Fix the way of shrinking
17228 the possible range.
17229 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
17230 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
17231 Change caller.
17232 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
17233 (font_parse_fcname): Delete argument merge. Fix parsing of point
17234 size. Don't validate properties values here. Change caller.
17235 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
17236 (font_open_by_name): Delete unused variable.
17237 (Ffont_spec): Likewise. Validate property values.
17238 (Ffont_match_p): New function.
17239
17240 * font.h (QCscalable): Extern it.
17241 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
17242
17243 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
17244
17245 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
17246 (xfont_list_pattern): New function.
17247 (xfont_list): Use xfont_list_pattern.
17248
17249 2008-02-01 Kenichi Handa <handa@m17n.org>
17250
17251 * font.h (Flist_fonts): EXFUN it.
17252
17253 2008-02-01 Jason Rumney <jasonr@gnu.org>
17254
17255 * w32term.c (w32_initialize): Add back smoothing_type and
17256 smoothing_enabled definitions.
17257
17258 2008-02-01 Kenichi Handa <handa@m17n.org>
17259
17260 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
17261 s->face->font on determining underline position.
17262
17263 2008-02-01 Kenichi Handa <handa@m17n.org>
17264
17265 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
17266 (font_has_char): Accept font-object too.
17267 (font_find_for_lface): Try at first with a size specified in face.
17268
17269 2008-02-01 Kenichi Handa <handa@m17n.org>
17270
17271 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
17272 font_open_by_name.
17273
17274 2008-02-01 Kenichi Handa <handa@m17n.org>
17275
17276 * font.h (QCspacing, QCdpi): Extern them.
17277 (enum font_spacing): New enum.
17278 (FONT_PIXEL_SIZE_QUANTUM): New macro.
17279
17280 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
17281 (QCspacing, QCdpi): New variables.
17282 (syms_of_font): Initialize them.
17283 (font_pixel_size): New function.
17284 (font_put_extra): New function.
17285 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
17286 in FONT_EXTRA.
17287 (font_parse_fcname): Handle enumerated values (e.g. bold).
17288 Fix handling font size. Add QCname property that contains only
17289 unknown properties.
17290 (font_score): Change argument. Change caller. Pay attention to
17291 FONT_PIXEL_SIZE_QUANTUM.
17292 (font_sort_entites, font_list_entities, font_find_for_lface)
17293 (font_open_for_lface, font_open_by_name): Fix handling of font size.
17294 (Ffont_spec): Add QCname property that contains only unknown properties.
17295
17296 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
17297 include weight in listing pattern, instead check weight of each
17298 listed font. Don't include scalable in pattern. Pay attention to
17299 FONT_PIXEL_SIZE_QUANTUM.
17300
17301 2008-02-01 Kenichi Handa <handa@m17n.org>
17302
17303 * font.c (font_parse_fcname): Fix parsing of point-size.
17304 (font_unparse_fcname): Produce symbolic names for style properties.
17305 (font_list_entities): Handle float size correctly.
17306 (font_open_by_name): Prefer `normal' property values if the name
17307 doesn't specify them.
17308
17309 * fontset.c (Finternal_char_font): Use font_get_name, not
17310 Ffont_xlfd_name.
17311
17312 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
17313 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
17314 pattern. Don't force scalable.
17315
17316 * xftfont.c (xftfont_open): For generating a name, start from
17317 96-byte buffer.
17318
17319 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
17320
17321 * frame.h (x_new_fontset2): Fix prototype.
17322
17323 2008-02-01 Kenichi Handa <handa@m17n.org>
17324
17325 * font.h (struct font_driver): Delete member parse_name.
17326 (font_match_p, font_get_spec, font_parse_fcname)
17327 (font_unparse_fcname): Extern them.
17328 (font_get_name): Adjust prototype.
17329
17330 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
17331 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
17332 (font_expand_wildcards): Fix handling ENCODING field. Avoid
17333 unnecessary checks for weight, slant, and swidth.
17334 (font_parse_fcname): New function.
17335 (font_unparse_fcname): New function.
17336 (font_parse_name): New function.
17337 (font_match_p): New function.
17338 (font_get_name): Change return value to Lisp string.
17339 (font_get_spec): New function.
17340 (Qunspecified, Qignore_defface): Don't extern them.
17341 (font_find_for_lface): Assume that LFACE is fully specified.
17342 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
17343 object, use it for FACE.
17344 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
17345 driver->parse_name.
17346 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
17347
17348 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
17349 prototype.
17350
17351 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
17352 argument F. Don't call Fnew_fontset. Instead, directly call
17353 make_fontset.
17354
17355 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
17356
17357 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
17358 of x_new_fontset2.
17359
17360 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
17361 (Qsans__serif): New variables.
17362 (ftfont_generic_family_list): New variable.
17363 (syms_of_ftfont): Initialize the above variables.
17364 (ftfont_pattern_entity): Delete argument NAME.
17365 (ftfont_list_generic_family): New function.
17366 (ftfont_parse_name): Delete this function.
17367 (ftfont_list): Try generic family only when FcFontList found no font.
17368 (ftfont_list_family): Fix args to FcObjectSetBuild.
17369
17370 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
17371 object in attrs[LFACE_FONT_INDEX].
17372 (set_lface_from_font_name): Cancel all changes for font-backend.
17373 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
17374 function.
17375 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
17376 font object in QCfont attribute.
17377 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
17378 (realize_default_face) [USE_FONT_BACKEND]: Call
17379 set_lface_from_font_and_fontset.
17380
17381 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
17382 "fixed", and signal error here if no suitable font was found.
17383
17384 * xfont.c (xfont_parse_name): Delete this function.
17385
17386 * xftfont.c (xftfont_open): Change coding style of error
17387 handling. Generate fontconfig's fontname pattern.
17388
17389 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
17390 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
17391
17392 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
17393 Both args FONTSET and FONT_OBJECT must be existing ones.
17394
17395 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17396
17397 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
17398
17399 2008-02-01 Kenichi Handa <handa@m17n.org>
17400
17401 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
17402
17403 * font.h (struct font): Fix typo.
17404
17405 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
17406 XLFD_XXX_INDEX.
17407 (enum xlfd_field_mask): New enum.
17408 (intern_font_field): Changed argument. Change caller. If digits
17409 are followed by non-digits, return a symbol.
17410 (font_expand_wildcards): New function.
17411 (font_parse_xlfd): Fix wildcard handling.
17412 (Ffont_spec): If :name is specified, reflect the info in the other
17413 properties.
17414
17415 * ftfont.c (ftfont_pattern_entity): Fix typo.
17416 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
17417 locale.
17418
17419 2008-02-01 Kenichi Handa <handa@m17n.org>
17420
17421 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
17422
17423 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
17424 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
17425 registry doesn't specify encoding part.
17426 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
17427 (font_open_by_name): At first try parsing the name.
17428 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
17429 as Lisp symbols.
17430
17431 * fontset.c (reorder_font_vector): Pay attention to the case that
17432 the 3rd element of font_def is nil.
17433 (fontset_font): For the default fontset, append one more fontset
17434 elements for a script-based font specification. Don't add script
17435 attribute on finding a font.
17436 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
17437 font name.
17438 (fontset_ascii_font): If a font can't be opened, return nil.
17439
17440 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
17441 (ftfont_pattern_entity): New function.
17442 (ftfont_get_cache): Assume that freetype_font_cache is already
17443 initialized.
17444 (ftfont_list): Handle the case that a file is specified in font
17445 name. Use ftfont_pattern_entity to generate entities.
17446 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
17447 (syms_of_ftfont): Initialize freetype_font_cache.
17448
17449 * xftfont.c (xftfont_open): Make the font name fontconfig's
17450 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
17451 (xftfont_close): Free font->font.name if not NULL.
17452
17453 * xfont.c (xfont_list): If script is specified for a font, return
17454 null_vector.
17455 (xfont_list_family): Declare argument type.
17456
17457 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
17458 name, set LFACE_FONT (lface) to nil.
17459
17460 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
17461 return Qnil.
17462
17463 2008-02-01 Kenichi Handa <handa@m17n.org>
17464
17465 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
17466 (standard_args): Add "-enable-font-backend".
17467
17468 2008-02-01 Kenichi Handa <handa@m17n.org>
17469
17470 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
17471 (struct xftdraw_list, xftdraw_list): Delete them.
17472 (register_xftdraw, check_xftdraw): Delete them.
17473 (xftfont_prepare_face): Don't call register_xftdraw.
17474 (xftfont_done_face): Don't call check_xftdraw.
17475 (xftfont_draw): Get background color only when with_background is
17476 nonzero.
17477
17478 * xfont.c (xfont_encode_char): Fix calculation of char2b.
17479
17480 2008-02-01 Kenichi Handa <handa@m17n.org>
17481
17482 These changes are for the new font handling codes.
17483
17484 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
17485 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
17486 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
17487 (FONTSRC, FONTOBJ): New variables.
17488 (obj): Add $(FONTOBJ).
17489 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
17490 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
17491 @LIBOTF_LIBS@.
17492 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
17493 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
17494
17495 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
17496
17497 * character.h (Vscript_representative_chars): Extern it.
17498
17499 * character.c (Vscript_representative_chars): New variable.
17500 (syms_of_character): Declare it as a Lisp variable.
17501
17502 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
17503 enable_font_backend is nonzero, accept the composition method
17504 COMPOSITION_WITH_GLYPH_STRING.
17505
17506 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
17507 enumeration COMPOSITION_WITH_GLYPH_STRING.
17508
17509 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
17510 members clip_x, clip_y, clip_width, and clip_height.
17511 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
17512
17513 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
17514 --enable-font-backend. Call syms_of_font.
17515
17516 * fns.c (assoc_no_quit): New function.
17517
17518 * fontset.h (FONT_INFO_FROM_FACE): New macro.
17519 (face_for_font, new_fontset_from_font)
17520 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
17521
17522 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
17523 (fontset_font, fontset_ascii, face_for_char)
17524 (make_fontset_for_ascii_face, Ffont_info)
17525 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
17526 is nonzero, use font-backend mechanism.
17527 (find_font_encoding): Make it non-static.
17528 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
17529 New functions.
17530
17531 * frame.h (struct frame): New members resx and resy.
17532 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
17533 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
17534
17535 * frame.c [USE_FONT_BACKEND]: Include "font.h".
17536 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
17537
17538 * lisp.h (assoc_no_quit): Extern it.
17539
17540 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
17541 Through out the file, use FONT_INFO_FROM_FACE instead of
17542 FONT_INFO_FROM_ID, use get_per_char_metric instead of
17543 rif->per_char_metric.
17544 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
17545 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
17546 (get_glyph_face_and_encoding, fill_composite_glyph_string)
17547 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
17548 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
17549 nonzero, use font-backend mechanism.
17550 (get_per_char_metric): New function.
17551
17552 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
17553 (set_lface_from_font_name)
17554 (set_font_frame_param, free_realized_face)
17555 (prepare_face_for_display, clear_face_gcs)
17556 (Finternal_set_font_selection_order, realize_x_face)
17557 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
17558 font-backend mechanism.
17559 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
17560 (load_face_font) [USE_FONT_BACKEND]: Abort.
17561 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
17562 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
17563
17564 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
17565 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
17566 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
17567 nonzero, register all available font drivers. Call
17568 x_default_font_parameter for deciding a font.
17569 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
17570
17571 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
17572 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
17573 (x_set_glyph_string_clipping_exactly)
17574 (x_compute_glyph_string_overhangs)
17575 (x_draw_glyph_string_foreground)
17576 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
17577 (x_free_frame_resources) [USE_FONT_BACKEND]: If
17578 enable_font_backend is nonzero, use font-backend mechanism.
17579 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
17580
17581 2008-02-01 Kenichi Handa <handa@m17n.org>
17582
17583 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
17584 system_eol_type.
17585 (syms_of_coding): Initialize system_eol_type.
17586
17587 * process.c (Fset_process_coding_system): Inherit system's eol
17588 format if necessary.
17589
17590 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17591
17592 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
17593
17594 2008-02-01 Kenichi Handa <handa@m17n.org>
17595
17596 * coding.c (decode_eol): Pay attention to buffer relocation in
17597 del_range_2.
17598 (decode_coding): Call decode_eol before restoring undo_list.
17599
17600 2008-02-01 Kenichi Handa <handa@m17n.org>
17601
17602 * charset.c (Fdefine_charset_internal): Fix setting of
17603 emacs_mule_bytes.
17604
17605 2008-02-01 Kenichi Handa <handa@m17n.org>
17606
17607 * keyboard.c (read_char): Check if C is a character or not before
17608 looking up Vkeyboard_translate_table.
17609
17610 2008-02-01 Kenichi Handa <handa@m17n.org>
17611
17612 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
17613 condition to terminate the loop.
17614
17615 2008-02-01 Kenichi Handa <handa@m17n.org>
17616
17617 * coding.c (produce_composition): Compare charbuf[i] instead of
17618 args[i] against 0.
17619 (Fterminal_coding_system): Use EQ to compare Lisp objects.
17620
17621 2008-02-01 Kenichi Handa <handa@m17n.org>
17622
17623 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
17624 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
17625 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
17626 detect_coding.
17627 (emacs_mule_char): Handle old style (Emacs 20) component character
17628 of a composition.
17629 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
17630 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
17631 composition rule.
17632 (decode_coding_emacs_mule): Handle invalid bytes correctly.
17633
17634 2008-02-01 Kenichi Handa <handa@m17n.org>
17635
17636 * coding.c (encode_coding_ccl): Allocate destination dynamically
17637 when necessary.
17638
17639 2008-02-01 Kenichi Handa <handa@m17n.org>
17640
17641 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
17642 the loop. When quitted, show a proper error message.
17643
17644 2008-02-01 Kenichi Handa <handa@m17n.org>
17645
17646 * xterm.c (x_set_glyph_string_clipping_exactly): Set
17647 src->clip_head and src->clip_tail temporarily instead of src->hl.
17648
17649 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
17650 character sequence.
17651 (Fccl_execute_on_string): Use ASET, not XSET.
17652
17653 2008-02-01 Kenichi Handa <handa@m17n.org>
17654
17655 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
17656
17657 2008-02-01 Kenichi Handa <handa@m17n.org>
17658
17659 * coding.c (decode_coding): Fix the condition of terminating the
17660 decoding loop.
17661
17662 2008-02-01 Kenichi Handa <handa@m17n.org>
17663
17664 * data.c (Faset): On setting a character bigger than 255 in a
17665 unibyte string, signal an error instead of make the string multibyte.
17666
17667 2008-02-01 Kenichi Handa <handa@m17n.org>
17668
17669 * charset.c (map_charset_chars): Fix for ascii-compatible charset
17670 made by a mapping table.
17671
17672 2008-02-01 Kenichi Handa <handa@m17n.org>
17673
17674 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
17675 not.
17676 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
17677 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
17678
17679 * xterm.c (x_draw_composite_glyph_string_foreground): Check
17680 s->face is NULL or not.
17681
17682 2008-02-01 Kenichi Handa <handa@m17n.org>
17683
17684 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
17685 (x_draw_glyph_string): Fix drawing of right_overhang and
17686 left_overhang around/on cursor.
17687
17688 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
17689
17690 2008-02-01 Kenichi Handa <handa@m17n.org>
17691
17692 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
17693
17694 2008-02-01 Kenichi Handa <handa@m17n.org>
17695
17696 * coding.c (Fdefine_coding_system_internal)
17697 (Fdefine_coding_system_alias): Avoid a duplicated element in
17698 Vcoding_system_alist.
17699
17700 2008-02-01 Kenichi Handa <handa@m17n.org>
17701
17702 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
17703
17704 * coding.c (Qcoding_system_define_form): New variable.
17705 (syms_of_coding): Intern and staticpro it.
17706 (Fcoding_system_p): Check Qcoding_system_define_form.
17707 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
17708
17709 * coding.h (CODING_SYSTEM_P): If ID is not available, call
17710 Fcoding_system_p.
17711 (CHECK_CODING_SYSTEM): If ID is not available, call
17712 Fcheck_coding_system.
17713 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
17714 Try also Fcheck_coding_system.
17715
17716 2008-02-01 Kenichi Handa <handa@m17n.org>
17717
17718 * coding.c (code_conversion_restore): GCPRO arg.
17719
17720 2008-02-01 Kenichi Handa <handa@m17n.org>
17721
17722 * character.c (lisp_string_width): Check multibyteness of STRING.
17723
17724 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17725
17726 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
17727 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
17728 (decode_mac_font_name): Use decode_coding_c_string instead of
17729 decode_coding.
17730 (x_load_font): Initialize fontp->fontset to -1. Set
17731 fontp->encoding_type.
17732
17733 2008-02-01 Kenichi Handa <handa@m17n.org>
17734
17735 * search.c (search_buffer): Give up BM search on case-fold-search
17736 if one of a target character has a case-equivalence of different
17737 byte length even if that target charcter is an ASCII.
17738 (simple_search): Fix calculation of byte length of matched text.
17739 (boyer_moore): Fix handling of case-equivalent multibyte characters.
17740
17741 2008-02-01 Kenichi Handa <handa@m17n.org>
17742
17743 * coding.c (decode_coding): Fix handling of invalid bytes.
17744
17745 2008-02-01 Kenichi Handa <handa@m17n.org>
17746
17747 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
17748 Unicode characters.
17749
17750 2008-02-01 Kenichi Handa <handa@m17n.org>
17751
17752 * coding.c (encode_coding_object): If a pre-write-conversion
17753 function makes a new buffer, kill it.
17754
17755 2008-02-01 Kenichi Handa <handa@m17n.org>
17756
17757 * coding.c (QCascii_compatible_p): New variable.
17758 (syms_of_coding): Initialize it.
17759 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
17760 calling string_char.
17761 (record_conversion_result): Add `default:' case.
17762 (coding_charset_list): Delete unused variable `coding_type'.
17763 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
17764 property in the plist of the coding system.
17765 (Fcoding_system_put): Check QCascii_compatible_p.
17766
17767 2008-02-01 Miles Bader <miles@gnu.org>
17768
17769 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
17770 removed calculation of frame `f', as it's now used.
17771
17772 2008-02-01 Kenichi Handa <handa@m17n.org>
17773
17774 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
17775 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
17776 (UNIDATA): New variable.
17777 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
17778 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
17779 $(RUN_TEMACS) unconditionally.
17780
17781 2008-02-01 Kenichi Handa <handa@m17n.org>
17782
17783 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
17784 (admindir): New variable.
17785 ($(lispsource)international/charprop.el): New target.
17786
17787 2008-02-01 Miles Bader <miles@gnu.org>
17788
17789 * character.c (chars-in-region): Remove obsolete function.
17790 (syms_of_character): Remove its initialization.
17791
17792 2008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
17793
17794 * w32select.c (validate_coding_system)
17795 (setup_windows_coding_system): New functions.
17796 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
17797 setup_windows_coding_system.
17798 (setup_config, Fw32_get_clipboard_data): Use
17799 validate_coding_system.
17800 (Fx_selection_exists): Move call to setup_config to a place
17801 where signals are allowed.
17802
17803 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
17804 (Fcheck_coding_system): Add declarations.
17805
17806 2008-02-01 Kenichi Handa <handa@m17n.org>
17807
17808 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
17809
17810 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17811
17812 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
17813 string as the second argument for x_new_fontset.
17814
17815 2008-02-01 Kenichi Handa <handa@m17n.org>
17816
17817 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
17818 (encode_coding_object): Use safe_call instead of call2.
17819
17820 2008-02-01 Kenichi Handa <handa@m17n.org>
17821
17822 * fontset.c (Fset_fontset_font): Check family element of a given vector.
17823
17824 * Makefile.in (lisp): Include charprop.el.
17825
17826 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17827
17828 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
17829 Not sure if it's unnecessary.
17830
17831 2008-02-01 Steven Tamm <steventamm@mac.com>
17832
17833 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
17834 some possibly unnecessary fontset checking code that crashed
17835 when creating a new frame.
17836
17837 2008-02-01 Kenichi Handa <handa@m17n.org>
17838
17839 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
17840 lookup_face.
17841
17842 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
17843
17844 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
17845
17846 2008-02-01 Kenichi Handa <handa@m17n.org>
17847
17848 * coding.c: Cancel the change done in HEAD on 2008-02-01.
17849 (coding_charset_list): New function.
17850
17851 * coding.h (coding_charset_list): Extern it.
17852
17853 2008-02-01 Kenichi Handa <handa@m17n.org>
17854
17855 * fontset.c (Fset_fontset_font): Call find_font_encoding with
17856 concatenation of family and registry.
17857
17858 2008-02-01 Kenichi Handa <handa@m17n.org>
17859
17860 * character.h (BYTE8_STRING): Fix typo.
17861
17862 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
17863 string to multibyte (sync to HEAD).
17864
17865 * casefiddle.c (casify_region): Handle changes in byte-length
17866 using replace_range_2 (sync to HEAD).
17867
17868 2008-02-01 Andreas Schwab <schwab@suse.de>
17869
17870 * chartab.c (map_char_table): GCPRO table and arg.
17871
17872 2008-02-01 Kenichi Handa <handa@m17n.org>
17873
17874 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
17875 already at limit.
17876
17877 2008-02-01 Kenichi Handa <handa@m17n.org>
17878
17879 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
17880 instead of fast_c_string_match_ignore_case.
17881 (find_font_encoding): Change argument to Lisp_Object. Use
17882 fast_string_match_ignore_case instead of
17883 fast_c_string_match_ignore_case. Change caller.
17884
17885 2008-02-01 Kenichi Handa <handa@m17n.org>
17886
17887 * xdisp.c (get_next_display_element): In unibyte case, decide to
17888 display in octal form by checking a character by
17889 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
17890
17891 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
17892
17893 * character.c (unibyte_has_multibyte_table): New variable.
17894
17895 * character.h (unibyte_has_multibyte_table): Extern it.
17896 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
17897
17898 2008-02-01 Kenichi Handa <handa@m17n.org>
17899
17900 * coding.c (encode_coding_iso_2022): Fix handling of charset
17901 annotation.
17902
17903 2008-02-01 Kenichi Handa <handa@m17n.org>
17904
17905 * coding.c (setup_coding_system): If coding_system is nil, use
17906 Qundecided.
17907 (Fterminal_coding_system): Return nil if terminal coding system is
17908 `undecided'.
17909 (syms_of_coding): Define coding-system `undecided' here. Setup
17910 terminal_coding as `undecided'.
17911
17912 2008-02-01 Kenichi Handa <handa@m17n.org>
17913
17914 * xdisp.c (message_dolog, set_message_1): Call
17915 unibyte_char_to_multibyte with arg type int.
17916
17917 * lread.c (read1): Fix reading of a char-table.
17918
17919 * print.c (print_object): Include sub char-table in circularities
17920 detection.
17921
17922 2008-02-01 Kenichi Handa <handa@m17n.org>
17923
17924 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
17925 Append the found sequences in car of ARGS instead of prepending.
17926
17927 2008-02-01 Kenichi Handa <handa@m17n.org>
17928
17929 * fileio.c (report_file_error): Make a unibyte string from
17930 strerror (errorno).
17931 (Fsubstitute_in_file_name): Fix the arg to
17932 unibyte_char_to_multibyte. It is evaluated twice.
17933
17934 2008-02-01 Kenichi Handa <handa@m17n.org>
17935
17936 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
17937
17938 2008-02-01 Kenichi Handa <handa@m17n.org>
17939
17940 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
17941 BOM is not found.
17942 (detect_coding, detect_coding_system): Optimization for ISO-2022
17943 when no 8-bit data is found.
17944
17945 2008-02-01 Jason Rumney <jasonr@gnu.org>
17946
17947 * w32fns.c (x_to_w32_font): Update to use new coding struct.
17948
17949 2008-02-01 Kenichi Handa <handa@m17n.org>
17950
17951 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
17952 CHARS.
17953
17954 2008-02-01 Steven Tamm <steventamm@mac.com>
17955
17956 * macterm.c (mac_encode_char): Add charset argument and update
17957 to use encoding_type.
17958 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
17959 switch to pure fontset.
17960 (decode_mac_font_name): Temporarily remove decoding.
17961 (x_font_name_to_mac_font_name): Temporarily remove encoding.
17962 (x_load_font): Temporarily remove encoding.
17963
17964 2008-02-01 Kenichi Handa <handa@m17n.org>
17965
17966 * xfaces.c (Fface_font): If frame is not on a window system,
17967 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
17968 refer to face->font.
17969 (split_font_name_into_vector, build_font_name_from_vector)
17970 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
17971 when HAVE_WINDOW_SYSTEM is defined.
17972
17973 2008-02-01 Kenichi Handa <handa@m17n.org>
17974
17975 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
17976 (x_produce_glyphs): Fix setting of members of cmp in case
17977 cmp->glyph_len is zero.
17978
17979 * fontset.c (Fset_fontset_font): Fix docstring.
17980 (Ffontset_info): Make it backward compatible. New arg ALL.
17981
17982 2008-02-01 Kim F. Storm <storm@cua.dk>
17983
17984 * process.c (read_process_output): Grow decoding_buf when needed;
17985 this could cause a crash in allocate_string and compact_small_strings.
17986
17987 2008-02-01 Kenichi Handa <handa@m17n.org>
17988
17989 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
17990
17991 2008-02-01 Kenichi Handa <handa@m17n.org>
17992
17993 * coding.c (setup_coding_system): Set coding->common_flags
17994 correctly for raw-text.
17995 (consume_chars): On encoding unibyte text by raw-text, don't check
17996 multibyte form.
17997 (encode_coding): On encoding by raw-text, never use translation tables.
17998
17999 * fileio.c (e_write): Short cut for the case of no encoding.
18000
18001 2008-02-01 Kenichi Handa <handa@m17n.org>
18002
18003 * coding.c (detect_coding, detect_coding_system): Delete unused
18004 variables.
18005
18006 2008-02-01 Kenichi Handa <handa@m17n.org>
18007
18008 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
18009 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
18010
18011 2008-02-01 Kenichi Handa <handa@m17n.org>
18012
18013 * coding.c (Ffind_coding_systems_region_internal): Include
18014 raw-text and no-conversion in the result.
18015
18016 2008-02-01 Kenichi Handa <handa@m17n.org>
18017
18018 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
18019 (load_font_get_repertory): Delete unnecessary check of ENCODING of
18020 FONT_DEF.
18021 (font_def_arg, add_arg, from_arg, to_arg): New args.
18022 (set_fontset_font): Change argument.
18023 (Fset_fontset_font): Fix for the case that TARGET is a script
18024 name and charset name.
18025 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
18026
18027 2008-02-01 Kenichi Handa <handa@m17n.org>
18028
18029 * fontset.c (fontset_font): Rename from fontset_face. Change return
18030 value.
18031 (face_suitable_for_char_p, face_for_char): Adjust for the change
18032 of fontset_font.
18033 (make_fontset_for_ascii_face): Fix setting of the fontset element
18034 for ASCII.
18035 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
18036 to get a font name.
18037 (Ffontset_info): Adjust for the change of fontset_font.
18038
18039 * coding.c (emacs_mule_char): Check invalid code more rigidly.
18040
18041 * character.h (LEADING_CODE_LATIN_1_MIN)
18042 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
18043
18044 2008-02-01 Kenichi Handa <handa@m17n.org>
18045
18046 * editfns.c (check_translation): New function.
18047 (Ftranslate_region_internal): Handle M:N mapping.
18048
18049 2008-02-01 Kenichi Handa <handa@m17n.org>
18050
18051 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
18052
18053 2008-02-01 Kenichi Handa <handa@m17n.org>
18054
18055 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
18056 goto invalid_code.
18057 (decode_coding_iso_2022): Fix handling of invalid designation.
18058
18059 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
18060 after calling code_conversion_save.
18061
18062 2008-02-01 Kenichi Handa <handa@m17n.org>
18063
18064 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
18065
18066 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
18067
18068 * fontset.c: Include "intervals.h".
18069 (fontset_face): Fix comparing of Lisp_Objects.
18070 (free_face_fontset, new_fontset_from_font_name): Fix
18071 Lisp_Object/int mixup.
18072
18073 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
18074
18075 * coding.c: Add many prototypes for static functions.
18076 (get_translation_table): Allow max_lookup to be NULL.
18077 (decode_coding, Ffind_coding_systems_region_internal)
18078 (Funencodable_char_position, Fcheck_coding_systems_region): Call
18079 get_translation_table with max_lookup NULL.
18080
18081 2008-02-01 Kenichi Handa <handa@m17n.org>
18082
18083 * coding.c (get_translation_table): Declare it as Lisp_Object.
18084 (LOOKUP_TRANSLATION_TABLE): New macro.
18085 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
18086 instead of CHAR_TABLE_REF.
18087
18088 2008-02-01 Kenichi Handa <handa@m17n.org>
18089
18090 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
18091 annotation data format.
18092 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
18093 Change arguments FROM and TO to single argument NCHARS. Change caller.
18094 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
18095 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
18096 (decode_coding_ccl, decode_coding_charset): Pay attention to
18097 coding->charbuf_used.
18098 (get_translation): New function.
18099 (produce_chars): New arguments translation_table and last_block.
18100 Translate characters here. Return number of carryover chars.
18101 Change caller.
18102 (produce_composition): New argument pos. Change caller.
18103 Adjust for the change of annotation data format.
18104 (produce_charset, produce_annotation): Likewise.
18105 (decode_coding, encode_coding): Don't call translate_chars.
18106 (consume_chars): New arg translation_table. Change caller.
18107 (translate_chars): Delete.
18108 (syms_of_coding): Make translation-table's number of extra slots 2.
18109
18110 2008-02-01 Kenichi Handa <handa@m17n.org>
18111
18112 * search.c (simple_search): Fix setting this_pos_byte in backward
18113 search.
18114
18115 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
18116 byte sequence.
18117 (detect_coding_ccl): Fix setting of the variable valids.
18118
18119 2008-02-01 Kenichi Handa <handa@m17n.org>
18120
18121 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
18122
18123 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
18124
18125 * editfns.c (Ftranslate_region_internal): Rename from
18126 Ftranslate_region. Accept a char-table in TABLE.
18127 (syms_of_editfns): Defsubr Stranslate_region_internal.
18128
18129 * xfaces.c (set_lface_from_font_name): If a font is specified for
18130 a frame, generate a fontset from the font.
18131 (build_scalable_font_name): If the scalable font is requested for
18132 a specific size, don't change that size.
18133 (try_font_list): Try a scalable font also in the case that a
18134 pattern string is specified.
18135
18136 2008-02-01 Kenichi Handa <handa@m17n.org>
18137
18138 * xfaces.c (Fface_font): New optional arg CHARACTER.
18139
18140 2008-02-01 Kenichi Handa <handa@m17n.org>
18141
18142 * charset.h (CHARSET_OFFSET): New macro.
18143
18144 2008-02-01 Kenichi Handa <handa@m17n.org>
18145
18146 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
18147
18148 * fontset.c (fontset_face): Handle the case that repertory is a
18149 char-table.
18150 (find_font_encoding): Return nil for unknown encoding.
18151 (Fset_fontset_font): Ignore a font of unknown encoding.
18152
18153 2008-02-01 Kenichi Handa <handa@m17n.org>
18154
18155 * keymap.c (describe_vector): Handle default value of a char table.
18156
18157 * fontset.c (fontset_face): Handle fallback fonts correctly.
18158 (Ffontset_info): Return infomation about fallback fonts.
18159
18160 2008-02-01 Kenichi Handa <handa@m17n.org>
18161
18162 * fontset.c (FONTSET_DEFAULT): New macro.
18163 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
18164 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
18165 the case that it is nil.
18166 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
18167 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
18168
18169 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
18170 subset or superset.
18171
18172 2008-02-01 Kenichi Handa <handa@m17n.org>
18173
18174 * emacs.c (main): Call init_charset after syms_of_XXX.
18175
18176 * charset.c (Vcharset_map_directory): Delete.
18177 (Vcharset_map_path): New variable.
18178 (load_charset_map_from_file): Use Vcharset_map_path instead.
18179 (init_charset): Initialize Vcharset_map_path.
18180 (syms_of_charset): Delete declaration of "charset-map-directory",
18181 add declaration of "charset-map-path".
18182
18183 2008-02-01 Kenichi Handa <handa@m17n.org>
18184
18185 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
18186 ASCII only string.
18187
18188 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
18189
18190 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
18191 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
18192
18193 2008-02-01 Kenichi Handa <handa@m17n.org>
18194
18195 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
18196
18197 * coding.c (QCmnemonic, QCdefalut_char)
18198 (QCdecode_translation_table, QCencode_translation_table)
18199 (QCpost_read_conversion, QCpre_write_conversion): New variables.
18200 (get_translation_table): Return a list of translation tables if
18201 necessary.
18202 (decode_coding): Call get_translation_table with ENCODEP 0.
18203 (char_encodable_p): If translation_table is non-nil, always call
18204 translate_char.
18205 (Fdefine_coding_system_internal): Accept list of translation
18206 tables as :encode-translation-table and :decode-translation-table.
18207 (Fcoding_system_put): New function.
18208 (syms_of_coding): Declare new symbols. Defsubr
18209 Scoding_system_put.
18210 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
18211 typically JISX0212.
18212
18213 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
18214 when the charset is superset type.
18215
18216 * character.c (translate_char): Accept list of translation tables.
18217
18218 2008-02-01 Kenichi Handa <handa@m17n.org>
18219
18220 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
18221 (CODING_ATTR_TRANS_TBL): New macro.
18222
18223 * coding.c (get_translation_table): New function.
18224 (translate_chars): Fix the bug of skipping annotation data.
18225 (decode_coding, encode_coding): Utilize get_translation_table.
18226 (char_encodable_p, Funencodable_char_position): Translate char if
18227 necessary.
18228 (Ffind_coding_systems_region_internal)
18229 (Fcheck_coding_systems_region): Setup translation table for encode
18230 in a coding system attribute vector in advance.
18231 (Fdefine_coding_system_internal): Allow a symbol as translation
18232 table. For shift-jis type coding system, allow 4th charset.
18233
18234 2008-02-01 Kenichi Handa <handa@m17n.org>
18235
18236 * coding.c (decode_coding_sjis): Check the first byte rigidly.
18237
18238 * xdisp.c (get_next_display_element): Pass -1 as POS to
18239 FACE_FOR_CHAR if displaying a C-string.
18240
18241 2008-02-01 Kenichi Handa <handa@m17n.org>
18242
18243 * composite.c (get_composition_id): Handle xoff and yoff in a
18244 composition rule.
18245
18246 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
18247 (struct composition): New member lbearing and rbearing.
18248
18249 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
18250 (x_get_glyph_overhangs): Handle a composition glyph.
18251 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
18252
18253 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
18254 composition glyph.
18255
18256 2008-02-01 Kenichi Handa <handa@m17n.org>
18257
18258 * print.c: Include charset.h.
18259 (Vprint_charset_text_property): New variable.
18260 (Qdefault): Extern it.
18261 (PRINT_STRING_NON_CHARSET_FOUND)
18262 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
18263 (print_check_string_result): New variable.
18264 (print_check_string_charset_prop): New function.
18265 (print_prune_charset_plist): New variable.
18266 (print_prune_string_charset): New function.
18267 (print_object): Call print_prune_string_charset if
18268 Vprint_charset_text_property is not t.
18269 (print_interval): Print nothing if interval->plist is nil.
18270 (syms_of_print): Declare Vprint_charset_text_property as a lisp
18271 variable. Init and staticpro print_prune_charset_plist.
18272
18273 2008-02-01 Kenichi Handa <handa@m17n.org>
18274
18275 * fontset.c (new_fontset_from_font_name): Use the specified font
18276 for all characters in the new fontset.
18277
18278 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
18279 OBJECT args.
18280
18281 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
18282 OBJECT args for composition too.
18283
18284 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
18285 OBJECT args.
18286
18287 2008-02-01 Kenichi Handa <handa@m17n.org>
18288
18289 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
18290
18291 * fontset.c (reorder_font_vector): Adjust for the change of
18292 FONT_DEF format.
18293 (fontset_face): New arg id. Change caller.
18294 (face_for_char): New args pos and object.
18295 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
18296 (fs_query_fontset): Check NAME by Fassoc too.
18297 (Fset_fontset_font): Allow non-XLFD font name.
18298 (Ffontset_info): Adjust for the change of FONT_DEF format.
18299
18300 * fontset.h (face_for_char): Adjust prototype.
18301
18302 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
18303 (append_space, extend_face_to_end_of_line)
18304 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
18305 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
18306
18307 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
18308 POS and OBJECT args.
18309
18310 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
18311 POS and OBJECT args.
18312
18313 2008-02-01 Jason Rumney <jasonr@gnu.org>
18314
18315 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
18316 of GlobalAlloc'ed memory.
18317
18318 2008-02-01 Kenichi Handa <handa@m17n.org>
18319
18320 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
18321
18322 * charset.h (charset_table_used): Delete extern.
18323
18324 * charset.c (charset_table_used): Make it static.
18325 (map_charset_chars): Fix args to c_function with.
18326
18327 * chartab.c (map_sub_char_table_for_charset): Fix args to
18328 c_function with.
18329
18330 * coding.h (enum coding_result_code): Delete
18331 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
18332
18333 * coding.c (Qinsufficient_source, Qinconsistent_eol)
18334 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
18335 (Vlast_code_conversion_error): New variables.
18336 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
18337 (ONE_MORE_BYTE): Record error if any instead of signaling an
18338 error. If non-ASCII multibyte char is found, return the negative
18339 value of the code. All callers changed to check it.
18340 (ONE_MORE_BYTE_NO_CHECK): Likewise.
18341 (record_conversion_result): New function. Change all codes setting
18342 coding->result to call this function.
18343 (detect_coding_utf_8, decode_coding_utf_8)
18344 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
18345 Don't use the local variable incomplete.
18346 (emacs_mule_char): Change the second arg to `const'.
18347 (decode_coding): Fix of flushing out unprocessed data.
18348 (make_conversion_work_buffer): Fix making of a work buffer.
18349 (decode_coding_object): Return coding->dst_object.
18350
18351 * fontset.c (set_fontset_font): Fix args.
18352
18353 * lisp.h (CHARACTERBITS): Define as 22.
18354
18355 * process.c (send_process): Be sure to set coding->src_multibyte.
18356
18357 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
18358
18359 2008-02-01 Kenichi Handa <handa@m17n.org>
18360
18361 * xdisp.c (handle_auto_composed_prop): Give limit to
18362 Fnext_single_char_property_change.
18363
18364 2008-02-01 Kenichi Handa <handa@m17n.org>
18365
18366 * composite.c (syms_of_composite): Don't make the composition hash
18367 table weak.
18368
18369 * fontset.c (Fset_fontset_font): Fix docstring.
18370
18371 * lisp.h (detect_coding_system): Adjust prototype.
18372
18373 * fileio.c (kill_workbuf_unwind): Delete this function.
18374 (Finsert_file_contents): Adjust the call of detect_coding_system.
18375 Get conversion_buffer by code_conversion_save. Use the macro
18376 CODING_MAY_REQUIRE_DECODING. After decoding, update
18377 coding_system.
18378
18379 * coding.h (make_conversion_work_buffer): Delete extern.
18380 (code_conversion_save): Extern it.
18381
18382 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
18383 (CODING_GET_INFO): Delete argument eol_type. Change callers.
18384 (decode_coding_utf_8): Don't do eol converion.
18385 (detect_coding_utf_16): Check coding->src_chars, not
18386 coding->src_bytes. Add heuristics for those that have no signature.
18387 (decode_coding_emacs_mule, decode_coding_iso_2022)
18388 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
18389 Don't do eol converion.
18390 (adjust_coding_eol_type): Return a new coding system.
18391 (detect_coding): Don't detect eol. Fix for utf-16 detection.
18392 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
18393 each change.
18394 (decode_coding): Pay attention to undo_list. Do eol conversion for
18395 all types of coding-systems (if necessary).
18396 (Vcode_conversion_work_buf_list): Delete it.
18397 (Vcode_conversion_reused_workbuf): Rename from
18398 Vcode_conversion_reused_work_buf.
18399 (Vcode_conversion_workbuf_name): New variable.
18400 (reused_workbuf_in_use): New variable.
18401 (make_conversion_work_buffer): Delete the arg DEPTH.
18402 (code_conversion_restore): Change argument to cons.
18403 (code_conversion_save): Delete the argument BUFFER. Change callers.
18404 (detect_coding_system): New argument src_chars. Change callers.
18405 Fix for utf-16 detection.
18406 (init_coding_once): Don't use ISO_carriage_return.
18407 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
18408 reused_workbuf_in_use.
18409
18410 2008-02-01 Kenichi Handa <handa@m17n.org>
18411
18412 * keymap.c (store_in_keymap): Pay attention to the case that idx
18413 is a cons specifying a character range.
18414
18415 2008-02-01 Kenichi Handa <handa@m17n.org>
18416
18417 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
18418 HANDLED_RECOMPUTE_PROPS.
18419
18420 * coding.c (Fdefine_coding_system_internal): Fix checking of
18421 ascii compatibility.
18422
18423 2008-02-01 Kenichi Handa <handa@m17n.org>
18424
18425 * charset.c (find_charsets_in_text): Delete unused locale variable.
18426 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
18427
18428 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
18429 Resync charset_list to Vemacs_mule_charset_list.
18430
18431 * keymap.c (store_in_keymap): Pay attention to the case that idx
18432 is a cons specifying a character range.
18433
18434 2008-02-01 Kenichi Handa <handa@m17n.org>
18435
18436 * composite.c (update_compositions): Bind inhibit-read-only, etc
18437 to t before calling remove-list-of-text-properties.
18438
18439 * print.c (print_object): Always print ASCII chars as is.
18440
18441 2008-02-01 Kenichi Handa <handa@m17n.org>
18442
18443 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
18444
18445 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
18446 is a char table.
18447
18448 2008-02-01 Kenichi Handa <handa@m17n.org>
18449
18450 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
18451
18452 2008-02-01 Kenichi Handa <handa@m17n.org>
18453
18454 * xfaces.c (set_lface_from_font_name): Fix for the case that
18455 FONTNAME is not fontset name.
18456
18457 2008-02-01 Kenichi Handa <handa@m17n.org>
18458
18459 * fns.c (base64_encode_1): Fix previous change.
18460
18461 2008-02-01 Kenichi Handa <handa@m17n.org>
18462
18463 * fontset.c (set_fontset_font): New function.
18464 (Fset_fontset_font): If a font is specified for a charset, use
18465 map_charset_chars to store the font spec in a fontset.
18466
18467 2008-02-01 Kenichi Handa <handa@m17n.org>
18468
18469 * fontset.c (fontset_face): Create a fallback fontset on demand.
18470 (make_fontset): Don't create a fallback fontset here.
18471 (free_face_fontset): Free a fallback fontset (if any) too.
18472 (n_auto_fontsets): Delete this variable.
18473 (auto_fontset_alist): New variable.
18474 (new_fontset_from_font_name): Check auto_fontset_alist.
18475 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
18476 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
18477 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
18478 Defsubr Sfontset_list_all.
18479
18480 2008-02-01 Kenichi Handa <handa@m17n.org>
18481
18482 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
18483
18484 2008-02-01 Kenichi Handa <handa@m17n.org>
18485
18486 * fontset.c (Fnew_fontset): Check NAME more rigidly.
18487
18488 2008-02-01 Kenichi Handa <handa@m17n.org>
18489
18490 * editfns.c (Fgoto_char): Fix docstring.
18491
18492 2008-02-01 Kenichi Handa <handa@m17n.org>
18493
18494 * insdel.c (insert_from_gap): Adjust intervals correctly.
18495
18496 2008-02-01 Jason Rumney <jasonr@gnu.org>
18497
18498 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
18499 (pfnGetFontUnicodeRanges): New dynamically loaded function.
18500 (w32_initialize): Try to load it.
18501 (x_get_font_repertory): Use it if available.
18502 (w32_encode_char): Add shortcut for unicode output.
18503
18504 * w32fns.c (w32_load_system_font): Default charset to -1.
18505 (x_to_w32_charset): Match all fonts for unicode.
18506 (w32_to_x_charset): New parameter matching. Don't return partial
18507 or wildcard charsets.
18508 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
18509 (w32_codepage_for_font): Return CP_UNICODE for unicode.
18510 (w32_to_x_font): Match charset to real charset.
18511 (enum_font_cb2): Always list unicode versions.
18512
18513 * makefile.w32-in (temacs): Increase EMHEAP.
18514
18515 2008-02-01 Jason Rumney <jasonr@gnu.org>
18516
18517 * w32term.c (w32_encode_char): New charset parameter.
18518 font_info.encoding becomes encoding_type.
18519 (x_get_font_repertory): New function. Warning: stub only!
18520 (x_new_font): Return quickly if font already set.
18521 (x_new_fontset): fontsetname parameter is Lisp_Object.
18522 Use new fs_query_fontset. Try new_fontset_from_font_name.
18523 Use fontset_name for return value.
18524
18525 * w32term.h: Declare x_get_font_repertory.
18526
18527 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
18528 place of find_charset_in_text. Use encode_coding_object in place
18529 of encode_coding.
18530 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
18531 decode_coding.
18532
18533 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
18534 of x_new_fontset.
18535 (w32_load_system_font): Initialize charset as unicode.
18536 font_info.encoding becomes encoding_type.
18537 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
18538 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
18539 (syms_of_w32fns): Set get_font_repertory_func.
18540
18541 * w32console.c: Include character.h. Use terminal_encode_buffer
18542 from term.c.
18543 (write_glyphs): Use new version of encode_terminal_code. Use
18544 encode_coding_object in place of encode_coding.
18545
18546 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
18547 encoding becomes encoding_type.
18548
18549 * term.c (terminal_encode_buffer): Make externally visible.
18550
18551 * makefile.w32-in: Add character.h dependancies.
18552 (character.o, chartab.o): New targets.
18553
18554 2008-02-01 Kenichi Handa <handa@m17n.org>
18555
18556 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
18557 CODING_ID_EOL_TYPE.
18558
18559 2008-02-01 Andreas Schwab <schwab@suse.de>
18560
18561 * coding.c (produce_chars): Revert last change.
18562
18563 2008-02-01 Kenichi Handa <handa@m17n.org>
18564
18565 * charset.h (charset_unicode): Extern it.
18566
18567 * charset.c (string_xstring_p): Check by (C >= 0x100).
18568 (find_charsets_in_text): Change format of the arc CHARSETS. New
18569 arg MULTIBYTE.
18570 (Ffind_charset_region, Ffind_charset_string): Adjust for the
18571 change of find_charsets_in_text.
18572 (Fsplit_char): Fix doc. Never return unknown.
18573
18574 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
18575
18576 * coding.c (Fdefine_coding_system_alias): Update
18577 Vcoding_system_list.
18578
18579 * fontset.c (load_font_get_repertory): Pay attention to the case
18580 that ENCODING of a font is specified by a char-table.
18581
18582 * xterm.c (x_get_font_repertory): Handle the case that the
18583 encoding of font is other than Unicode.
18584
18585 2008-02-01 Kenichi Handa <handa@m17n.org>
18586
18587 * term.c (encode_terminal_code): Don't handle glyph-table. Check
18588 if a character is encodable by the terminal coding system. If
18589 not, produces proper number of `?'s. Update
18590 terminal_encode_buffer and terminal_encode_buf_size if necessary.
18591 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
18592
18593 2008-02-01 Kenichi Handa <handa@m17n.org>
18594
18595 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
18596 variables.
18597 (encode_terminal_code): Change argument. Encode multiple
18598 characters at once. Store the result of encoding in
18599 terminal_encode_buffer.
18600 (write_glyphs, insert_glyphs): Adjust for the change of
18601 encode_terminal_code.
18602 (term_init): Initialize terminal_encode_buffer and
18603 terminal_encode_buf_size.
18604
18605 * coding.c (consume_chars): If coding->src_object is nil, don't
18606 check annotation.
18607
18608 2008-02-01 Kenichi Handa <handa@m17n.org>
18609
18610 * character.c (char_string): Use ASCII_CHAR_P instead of
18611 SINGLE_BYTE_CHAR_P.
18612
18613 2008-02-01 Kenichi Handa <handa@m17n.org>
18614
18615 * xdisp.c (handle_auto_composed_prop): Check if the last
18616 characters of auto-composed region is newly composed with the
18617 following characters.
18618 (handle_composition_prop): Fix checking of point being inside
18619 composition.
18620
18621 2008-02-01 Kenichi Handa <handa@m17n.org>
18622
18623 * fns.c (concat): Don't change multibyteness of the result by
18624 concatenating an 8-bit character.
18625
18626 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
18627 multibyteness of the result when newelt is an 8-bit character.
18628
18629 2008-02-01 Dave Love <fx@gnu.org>
18630
18631 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
18632 EMACS_INT.
18633
18634 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
18635
18636 * xfaces.c (face_numeric_value): Declare dim size_t.
18637 (Finternal_lisp_face_equal_p): Remove unused f.
18638
18639 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
18640 (MATRIX_ROW): Remove unused vars.
18641 (draw_glyphs, x_insert_glyphs, fast_find_position)
18642 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
18643 byte/char counts.
18644
18645 * regex.c (regex_compile): Remove unused var.
18646
18647 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
18648
18649 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
18650 (Faccessible_keymaps, where_is_internal): Remove unused vars.
18651
18652 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
18653
18654 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
18655
18656 * fileio.c (Fwrite_region): Remove unused var.
18657
18658 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
18659 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
18660
18661 * composite.c (Fremove_list_of_text_properties): Declare.
18662
18663 * coding.c (inhibit_pre_post_conversion): Remove (unused).
18664 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
18665 (coding_inherit_eol_type): Remove unused attrs.
18666 (detect_coding): Cast arg of detect_eol.
18667
18668 * charset.c (syms_of_charset): Remove unused var p.
18669 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
18670 byte/char counts.
18671
18672 * casetab.c (set_case_table): Remove unused var.
18673
18674 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
18675 unused vars.
18676
18677 2008-02-01 Dave Love <fx@gnu.org>
18678
18679 * xterm.c (x_bitmap_mask): Declare.
18680
18681 2008-02-01 Dave Love <fx@gnu.org>
18682
18683 * xterm.c (x_term_init): Fix type error.
18684
18685 * lisp.h: Add Funibyte_char_to_multibyte.
18686
18687 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
18688 (Fset_coding_system_priority): Doc fix.
18689
18690 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
18691
18692 * indent.c (check_composition): Make start and end EMACS_INT.
18693
18694 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
18695
18696 * xdisp.c (handle_composition_prop, check_point_in_composition):
18697 Make buffer positions EMACS_INT.
18698
18699 * composite.c (find_composition, run_composition_function)
18700 (update_compositions, Ffind_composition_internal): Make buffer
18701 positions EMACS_INT.
18702
18703 * composite.h (find_composition, update_compositions): Make
18704 position args EMACS_INT.
18705
18706 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
18707
18708 * intervals.c (get_property_and_range):
18709 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
18710
18711 * unexalpha.c: Don't include varargs.h.
18712
18713 2008-02-01 Dave Love <fx@gnu.org>
18714
18715 * coding.h (ENCODE_UTF_8): New.
18716
18717 * Makefile.in (gtkutil.o): Depend on coding.h.
18718
18719 * coding.c (Fset_coding_system_priority): Doc fix.
18720
18721 2008-02-01 Kenichi Handa <handa@m17n.org>
18722
18723 * fileio.c (Finsert_file_contents): Call setup_coding_system in
18724 the case of auto saving.
18725
18726 2008-02-01 Andreas Schwab <schwab@suse.de>
18727
18728 * chartab.c (map_char_table, map_char_table_for_charset): Protect
18729 `range' from GC.
18730
18731 2008-02-01 Kenichi Handa <handa@m17n.org>
18732
18733 * coding.c (decode_coding_sjis): Check bytes more rigidly.
18734
18735 2008-02-01 Kenichi Handa <handa@m17n.org>
18736
18737 * fileio.c (choose_write_coding_system): Return a decided coding system.
18738 (Fwrite_region): Set Vlast_coding_system_used to the return value
18739 of choose_write_coding_system.
18740
18741 2008-02-01 Kenichi Handa <handa@m17n.org>
18742
18743 * charset.c (Fset_charset_priority): Pay attention to duplicated
18744 arguments.
18745
18746 * coding.c (QCcategory): New variable.
18747 (syms_of_coding): Defsym it. Set all elements of
18748 Vcoding_category_table and their symbol values.
18749 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
18750 coding-category-XXX, and coding-category-list.
18751 (Fdefine_coding_system_internal): Add category in the plist.
18752
18753 2008-02-01 Kenichi Handa <handa@m17n.org>
18754
18755 * callproc.c (Fcall_process): Handle carryover correctly.
18756
18757 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
18758 (raw_text_coding_system): Check NILP (coding_system).
18759 (coding_inherit_eol_type): Check NILP (coding_system) and
18760 NILP (parent).
18761 (consume_chars): Fix for the case of raw-text.
18762
18763 * process.c (read_process_output): Handle carryover correctly.
18764
18765 2008-02-01 Dave Love <fx@gnu.org>
18766
18767 * regex.c (re_search_2): Fix last change.
18768
18769 2008-02-01 Kenichi Handa <handa@m17n.org>
18770
18771 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
18772 target_multibyte. Even in a unibyte case, return a converted
18773 multibyte char.
18774 (GET_CHAR_AFTER): New macro.
18775 (PATFETCH): Translate via multibyte char.
18776 (HANDLE_UNIBYTE_RANGE): Delete this macro.
18777 (SETUP_MULTIBYTE_RANGE): New macro.
18778 (regex_compile): Setup compiled code so that its multibyteness
18779 matches that of a target. Fix the handling of "[X-YZ]" using
18780 SETUP_MULTIBYTE_RANGE.
18781 (analyse_first) <charset>: For filling fastmap for all multibyte
18782 characters, don't check by BASE_LEADING_CODE_P.
18783 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
18784 the same as RE_MULTIBYTE_P (bufp) now.
18785 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
18786 (TARGET_CHAR_AND_LENGTH): Delete this macro.
18787 (TRANSLATE_VIA_MULTIBYTE): New macro.
18788 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
18789 It is the same as RE_MULTIBYTE_P (bufp) now.
18790 <exactn>: Translate via multibyte.
18791 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
18792 translate it.
18793 <charset, charset_not>: Fetch a character by
18794 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
18795 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
18796 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
18797 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
18798 by GET_CHAR_AFTER.
18799 (bcmp_translate): Likewise.
18800
18801 * search.c (compile_pattern): Check the member target_multibyte,
18802 not the member multibyte of buf.
18803
18804 * lread.c (read1): While reading a string, set force_singlebyte
18805 and force_multibyte correctly.
18806
18807 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
18808 up of unibyte_to_multibyte_table.
18809
18810 2008-02-01 Kenichi Handa <handa@m17n.org>
18811
18812 * coding.c (setup_coding_system): If coding has
18813 post-read-conversion or pre-write-conversion, set
18814 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
18815 respectively.
18816 (decode_coding_gap): Run post-read-conversion if any.
18817
18818 * fileio.c (Finsert_file_contents): Even if we read into a
18819 unibyte buffer, check if we must decode the result or not.
18820
18821 2008-02-01 Kenichi Handa <handa@m17n.org>
18822
18823 * coding.c (make_conversion_work_buffer): Change the work buffer
18824 name to the same one as that of Emacs 21.
18825
18826 2008-02-01 Kenichi Handa <handa@m17n.org>
18827
18828 * coding.h (make_conversion_work_buffer): Adjust prototype.
18829 (code_conversion_restore): Don't extern it.
18830
18831 * coding.c (detected_mask): Delete unused variable.
18832 (decode_coding_iso_2022): Pay attention to the byte sequence of
18833 CTEXT extended segment, and retain those bytes as is.
18834 (decode_coding_ccl): Delete unused variable `valids'.
18835 (setup_coding_system): Delete unused variable `category'.
18836 (consume_chars): Delete unused variable `category'. Make it work
18837 for non-multibyte case.
18838 (make_conversion_work_buffer): Change argument.
18839 (saved_coding): Delete unused variable.
18840 (code_conversion_restore): Don't check saved_coding->destination.
18841 (code_conversion_save): New function.
18842 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
18843 instead of record_unwind_protect.
18844 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
18845 (detect_coding_system): Delete unused variable `mask'.
18846 (Fdefine_coding_system_internal): Delete unused variable id.
18847
18848 * fileio.c (kill_workbuf_unwind): New function.
18849 (Finsert_file_contents): On replacing, call
18850 make_conversion_work_buffer with correct args, and call
18851 record_unwind_protect with the first arg kill_workbuf_unwind.
18852
18853 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
18854
18855 2008-02-01 Kenichi Handa <handa@m17n.org>
18856
18857 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
18858 (fontset_add): Fix for the case that TO is less than TO1.
18859 (Ffontset_info): Don't use fallback fontset on checking the
18860 default fontset.
18861 (dump_fontset): New function for debugging.
18862
18863 * coding.c (Fdefine_coding_system_internal): Fix for the case that
18864 coding_type is Qcharset.
18865
18866 2008-02-01 Kenichi Handa <handa@m17n.org>
18867
18868 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
18869 (map_char_table): Don't inherit the value from the parent on
18870 initializing VAL. Adjust for the above change.
18871
18872 2008-02-01 Kenichi Handa <handa@m17n.org>
18873
18874 * coding.c (Qsignature, Qendian): Delete these variables.
18875 (syms_of_coding): Don't initialize them.
18876 (CATEGORY_MASK_UTF_16_AUTO): New macro.
18877 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
18878 detect_info->found.
18879 (decode_coding_utf_16): Don't detect BOM here.
18880 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
18881 is NOT utf_16_without_bom.
18882 (setup_coding_system): For a coding system of type utf-16, check
18883 if the attribute :endian is Qbig or not (not nil or not), and set
18884 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
18885 (detect_coding): If coding type is utf-16 and BOM detection is
18886 required, detect it.
18887 (Fdefine_coding_system_internal): For a coding system of type
18888 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
18889
18890 2008-02-01 Kenichi Handa <handa@m17n.org>
18891
18892 * coding.c (coding_set_source): Fix for the case that the current
18893 buffer is different from coding->src_object.
18894 (decode_coding_object): Don't use the conversion work buffer if
18895 DST_OBJECT is a buffer.
18896
18897 2008-02-01 Dave Love <fx@gnu.org>
18898
18899 * lread.c (read_emacs_mule_char) [len==2]: Index
18900 emacs_mule_charset correctly.
18901
18902 2008-02-01 Dave Love <fx@gnu.org>
18903
18904 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
18905 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
18906 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
18907 treated specially.)
18908 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
18909 (detected_mask): Remove Big5 bits.
18910
18911 2008-02-01 Kenichi Handa <handa@m17n.org>
18912
18913 The following changes are to make the font rescaling facility
18914 compatible with Emacs 21.
18915
18916 * xfaces.c (Vface_font_rescale_alist): Rename from
18917 Vface_resizing_fonts.
18918 (struct font_name): Rename member resizing_ratio to rescale_ratio.
18919 (font_rescale_ratio): Rename from font_resizing_ratio.
18920 (split_font_name): Set font->rescale_ratio.
18921 (better_font_p): Pay attention to font->rescale_ratio.
18922 (build_scalable_font_name): Likewise. Change RESX, and RESY
18923 fields.
18924 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
18925
18926 2008-02-01 Kenichi Handa <handa@m17n.org>
18927
18928 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
18929 (Qutf_16_le): Remove these variables.
18930 (syms_of_coding): Don't DEFSYM them.
18931 (decode_coding_utf_16): Fix handling of BOM.
18932 (encode_coding_utf_16): Fix handling of BOM.
18933
18934 2008-02-01 Kenichi Handa <handa@m17n.org>
18935
18936 * fileio.c (Finsert_file_contents): On replacing, before decoding
18937 the file into the work buffer, set point of the work buffer to the end.
18938
18939 2008-02-01 Dave Love <fx@gnu.org>
18940
18941 * coding.c (Fcheck_coding_systems_region): Fix type errors.
18942
18943 2008-02-01 Dave Love <fx@gnu.org>
18944
18945 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
18946 and fix C types.
18947
18948 2008-02-01 Kenichi Handa <handa@m17n.org>
18949
18950 * xdisp.c (SKIP_GLYPHS): New macro.
18951 (set_cursor_from_row): Pay attention to string display properties.
18952
18953 * category.c (copy_category_entry): Fix for the case that RANGE
18954 is an integer.
18955
18956 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
18957
18958 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
18959
18960 2008-02-01 Kenichi Handa <handa@m17n.org>
18961
18962 * charset.c (Fcharset_id_internal): New function.
18963 (syms_of_charset): Defsubr it.
18964
18965 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
18966 with the last arg charset_list acquired from coding.
18967 (Fdefine_coding_system_internal): For ccl-based coding system, fix
18968 the attribute coding_attr_ccl_valids.
18969
18970 * coding.h (enum define_coding_ccl_arg_index): Set the first
18971 member coding_arg_ccl_decoder to coding_arg_max.
18972
18973 * ccl.h (ccl_driver): Adjust prototype.
18974
18975 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
18976 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
18977 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
18978 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
18979 last arg Qnil.
18980
18981 2008-02-01 Kenichi Handa <handa@m17n.org>
18982
18983 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
18984 call encode_char.
18985
18986 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
18987
18988 2008-02-01 Dave Love <fx@gnu.org>
18989
18990 * composite.c (syms_of_composite): Make composition_hash_table weak.
18991
18992 2008-02-01 Kenichi Handa <handa@m17n.org>
18993
18994 * dispextern.h (check_face_attributes, generate_ascii_font_name)
18995 (font_name_registry): Don't extern them.
18996 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
18997
18998 * fontset.h (Qfontset): Don't extern it.
18999 (new_fontset_from_font_name): Extern it.
19000
19001 * fontset.c: Give 8 extra slots to fontset objects.
19002 (Qfontset_info): New variable.
19003 (syms_of_fontset): Defsym it.
19004 (FONTSET_FALLBACK): New macro.
19005 (fontset_face): Try also the default fontset.
19006 (make_fontset): Realize a fallback fontset from the default fontset.
19007 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
19008 using split_font_name_into_vector and build_font_name_from_vector.
19009 (Fset_fontset_font): Access the elements of font_spec by enum
19010 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
19011 name by using split_font_name_into_vector.
19012 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
19013 generate a proper font name from the fontset name. Update
19014 Vfontset_alias_alist.
19015 (n_auto_fontsets): New variable.
19016 (new_fontset_from_font_name): New function.
19017 (Ffont_info): Store the information about fonts generated from the
19018 default fontset in the first extra slot of the returned char-table.
19019
19020 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
19021 (font_name_registry): Delete function.
19022 (split_font_name_into_vector): New function.
19023 (build_font_name_from_vector): New function.
19024 (font_list): The argument REGISTRY is now a list of registry names.
19025 (choose_face_font): If we are choosing an ASCII font, and ATTRS
19026 specifies an explicit font name, return the name as is. Make a
19027 list of registy names.
19028
19029 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
19030 of x_new_fontset.
19031 (Fx_create_frame): Don't call x_new_fontset here. Just use
19032 x_list_fonts to check the existence of fonts.
19033
19034 * xterm.h (x_new_fontset): Adjust prototype.
19035
19036 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
19037 string. Use new_fontset_from_font_name to create a fontset from a
19038 font name.
19039
19040 2008-02-01 Kenichi Handa <handa@m17n.org>
19041
19042 * syntax.c (Vfind_word_boundary_function_table): New name for
19043 Vnext_word_boundary_function_table.
19044 (find-word-boundary-function-table): New name for
19045 next-word-boundary-function-table.
19046
19047 2008-02-01 Dave Love <fx@gnu.org>
19048
19049 * Makefile.in: Fix some dependencies.
19050
19051 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
19052 set it to nil before returning.
19053
19054 * composite.c (update_compositions): Fix type error.
19055
19056 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
19057
19058 2008-02-01 Kenichi Handa <handa@m17n.org>
19059
19060 * xterm.c (x_new_font): Optimize for the case that the font is
19061 already set for the frame.
19062
19063 2008-02-01 Kenichi Handa <handa@m17n.org>
19064
19065 * chartab.c (char_table_ascii): Check if the char table contents
19066 is sub-char-table or not.
19067 (char_table_set, char_table_set_range): Fix argument to
19068 char_table_ascii.
19069
19070 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
19071 (detect_coding_utf_8, detect_coding_utf_16)
19072 (detect_coding_emacs_mule, detect_coding_iso_2022)
19073 (detect_coding_sjis, detect_coding_big5)
19074 (detect_coding_ccl, detect_coding_charset): Change argument MASK
19075 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
19076 sequence is valid in this coding system. Change callers.
19077 (MAX_ANNOTATION_LENGTH): New macro.
19078 (ADD_ANNOTATION_DATA): New macro.
19079 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
19080 ADD_ANNOTATION_DATA. Change the format of annotation data.
19081 (ADD_CHARSET_DATA): New macro.
19082 (emacs_mule_char): New argument ID. Change callers.
19083 (decode_coding_emacs_mule, decode_coding_iso_2022)
19084 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
19085 Produce charset annotation data in coding->charbuf.
19086 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
19087 to charset annotation data in coding->charbuf.
19088 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
19089 coding->common_flags if the coding system is iso-2022 based and
19090 uses designation.
19091 (produce_composition): Adjust for the new annotation data format.
19092 (produce_charset): New function.
19093 (produce_annotation): Handle charset annotation.
19094 (handle_composition_annotation, handle_charset_annotation): New
19095 functions.
19096 (consume_chars): Handle charset annotation. Utilize the above two
19097 functions.
19098 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
19099 buffer, get the deleted text as a string and set
19100 coding->src_object to that string.
19101 (detect_coding, detect_coding_system): Use the new struct
19102 coding_detection_info.
19103
19104 * coding.h (struct coding_detection_info): New structure.
19105 (struct coding_system): Adjust prototype of the member `detector'.
19106 (CODING_ANNOTATE_CHARSET_MASK): New macro.
19107
19108 2008-02-01 Kenichi Handa <handa@m17n.org>
19109
19110 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
19111
19112 2008-02-01 Dave Love <fx@gnu.org>
19113
19114 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
19115 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
19116 to new local and nullify apropos_accumulate before returning.
19117 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
19118
19119 2008-02-01 Kenichi Handa <handa@m17n.org>
19120
19121 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
19122 correctly.
19123
19124 2008-02-01 Dave Love <fx@gnu.org>
19125
19126 * fns.c (Flanginfo): Call synchronize_system_time_locale.
19127
19128 2008-02-01 Kenichi Handa <handa@m17n.org>
19129
19130 The following changes are to make character composition happen
19131 automatically on displaying.
19132
19133 * Makefile.in (lisp, shortlisp): Add composite.elc.
19134
19135 * composite.h (Qauto_composed, Vauto_composition_function)
19136 (Qauto_composition_function): Extern them.
19137
19138 * composite.c (Vcomposition_function_table)
19139 (Qcomposition_function_table): Delete variables.
19140 (Qauto_composed, Vauto_composition_function)
19141 (Qauto_composition_function): New variables.
19142 (run_composition_function): Don't call
19143 compose-chars-after-function.
19144 (update_compositions): Clear `auto-composed' text property.
19145 (compose_chars_in_text): Delete this function.
19146 (syms_of_composite): Staticpro Qauto_composed and
19147 Qauto_composition_function. Declare Vauto_composition_function as
19148 a Lisp variable.
19149
19150 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
19151
19152 * xdisp.c (it_props): Add an entry for Qauto_composed.
19153 (handle_auto_composed_prop): New function.
19154
19155 * xselect.c (selection_data_to_lisp_data): Don't call
19156 compose_chars_in_text.
19157
19158 2008-02-01 Dave Love <fx@gnu.org>
19159
19160 * keyboard.c (read_char): Modify checking around use of
19161 Vkeyboard_translate_table.
19162
19163 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
19164 and fix C types.
19165
19166 2008-02-01 Kenichi Handa <handa@m17n.org>
19167
19168 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
19169 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
19170 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
19171 the case that the last byte is '\r' correctly.
19172 (decode_coding): Flush out the unprocessed data correctly.
19173 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
19174
19175 2008-02-01 Dave Love <fx@gnu.org>
19176
19177 * xterm.c (XTread_socket): Fix changes for defined keysyms.
19178 Add XK_ISO... case.
19179 (xaw_scroll_callback): Revert last change.
19180
19181 2008-02-01 Kenichi Handa <handa@m17n.org>
19182
19183 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
19184
19185 2008-02-01 Kenichi Handa <handa@m17n.org>
19186
19187 * xfaces.c (Vface_resizing_fonts): New variable.
19188 (struct font_name): New member `resizing_ratio'.
19189 (font_resizing_ratio): New function.
19190 (split_font_name): Set font->resizing_ratio.
19191 (better_font_p): Pay attention to font->resizing_ratio.
19192 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
19193 RESX, and RESY fields.
19194 (try_alternative_families): Try scalable fonts if
19195 Vscalable_fonts_allowed is not Qt.
19196 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
19197
19198 2008-02-01 Dave Love <fx@gnu.org>
19199
19200 * xterm.c (xaw_scroll_callback): Cast correctly.
19201
19202 2008-02-01 Dave Love <fx@gnu.org>
19203
19204 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
19205 (lispy_kana_keys): Comment out.
19206 (make_lispy_event) [XK_kana_A]: Comment out.
19207
19208 * xterm.c (xaw_scroll_callback): Cast call_data.
19209 (XTread_socket): Deal with ASCII keysyms.
19210 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
19211
19212 2008-02-01 Dave Love <fx@gnu.org>
19213
19214 * xterm.c (Vx_keysym_table): New.
19215 (syms_of_xterm): Initialize it.
19216 (XTread_socket): Use it.
19217 From head: Eliminate incorrect optimization that tried to avoid
19218 decoding the output of X*LookupString.
19219 (x_get_font_repertory): Delete charset declaration.
19220
19221 2008-02-01 Kenichi Handa <handa@m17n.org>
19222
19223 * coding.c (detect_coding_charset): If only ASCII bytes are found,
19224 return 0.
19225 (Fdefine_coding_system_internal): Setup
19226 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
19227
19228 2008-02-01 Dave Love <fx@gnu.org>
19229
19230 * coding.c (Fcheck_coding_system): Doc fix.
19231
19232 * editfns.c (Finsert_byte): Return a proper value.
19233
19234 2008-02-01 Kenichi Handa <handa@m17n.org>
19235
19236 * coding.c (decode_coding): Fix args to translate_chars. Pay
19237 attention to Vstandard_translation_table_for_decode.
19238 (encode_coding): Fix args to translate_chars. Pay attention to
19239 Vstandard_translation_table_for_encode.
19240
19241 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
19242 SINGLE_BYTE_CHAR_P.
19243
19244 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
19245 not by SINGLE_BYTE_CHAR_P.
19246
19247 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
19248 SINGLE_BYTE_CHAR_P.
19249
19250 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
19251 SINGLE_BYTE_CHAR_P.
19252
19253 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
19254 by SINGLE_BYTE_CHAR_P.
19255
19256 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
19257 SINGLE_BYTE_CHAR_P.
19258
19259 2008-02-01 Dave Love <fx@gnu.org>
19260
19261 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
19262
19263 2008-02-01 Dave Love <fx@gnu.org>
19264
19265 * fns.c (Flanginfo): Fix typo.
19266
19267 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
19268
19269 2008-02-01 Kenichi Handa <handa@m17n.org>
19270
19271 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
19272 (detect_coding_emacs_mule, detect_coding_iso_2022)
19273 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
19274 incomplete byte sequence. Don't update *mask when correctly detected.
19275 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
19276 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
19277 (detect_coding, detect_coding_system): Adjust for the changes above.
19278
19279 2008-02-01 Kenichi Handa <handa@m17n.org>
19280
19281 * character.c (char_string): Rename from
19282 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
19283 (string_char): Rename from string_char.
19284
19285 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
19286 if C is greater than MAX_3_BYTE_CHAR.
19287 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
19288 string_char instead of string_char_with_unification.
19289
19290 2008-02-01 Dave Love <fx@gnu.org>
19291
19292 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
19293
19294 2008-02-01 Kenichi Handa <handa@m17n.org>
19295
19296 * keymap.c (push_key_description): Pay attention to force_multibyte.
19297
19298 * regex.c (re_search_2): Fix for the case of unibyte buffer.
19299
19300 2008-02-01 Dave Love <fx@gnu.org>
19301
19302 * charset.c (define_charset_internal): Rename `supprementary'.
19303
19304 * Makefile.in (lisp, shortlisp): Remove latin-N.
19305
19306 2008-02-01 Dave Love <fx@gnu.org>
19307
19308 * xfns.c (x_window, x_window): Use use_xim.
19309
19310 * xterm.c (use_xim): Initialize.
19311 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
19312 (x_term_init): Maybe set use_xim.
19313
19314 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
19315
19316 2008-02-01 Kenichi Handa <handa@m17n.org>
19317
19318 * search.c (search_buffer): Fix case-fold-search of multibyte
19319 characters.
19320 (boyer_moore): Rename the last argument to char_high_bits.
19321
19322 2008-02-01 Kenichi Handa <handa@m17n.org>
19323
19324 * xdisp.c (display_string): Fix for the case of zero width glyph.
19325
19326 * xfns.c (x_set_font): Change the error message of the case that
19327 x_new_fontset returns Qt.
19328
19329 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
19330 (Finternal_set_lisp_face_attribute): Use signal_error for the
19331 error of invalid fontset.
19332
19333 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
19334 fontset, return Qt.
19335
19336 2008-02-01 Dave Love <fx@gnu.org>
19337
19338 * unexelf.c (unexec): Make .got handling not SGI-specific.
19339
19340 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
19341
19342 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
19343
19344 * keyboard.c (read_key_sequence): Fix type error.
19345
19346 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
19347 type error.
19348
19349 * fontset.c (fontset_add): Return Lisp_Object.
19350
19351 2008-02-01 Dave Love <fx@gnu.org>
19352
19353 * charset.h (charset_ordered_list_tick): Declare extern.
19354
19355 2008-02-01 Kenichi Handa <handa@m17n.org>
19356
19357 The following changes (and some of 2008-02-01 changes of mine) are
19358 for handling syntax, category, and case conversion for unibyte
19359 characters by converting them to multibyte on the fly. With these
19360 changes, we don't have to setup syntax and case tables for unibyte
19361 characters in each language environment.
19362
19363 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
19364 multibyte if necessary.
19365
19366 * bytecode.c (Fbyte_code): Likewise.
19367
19368 * character.h (LEADING_CODE_LATIN_1_MIN)
19369 (LEADING_CODE_LATIN_1_MAX): New macros.
19370 (unibyte_to_multibyte_table): Extern it.
19371 (unibyte_char_to_multibyte): New macro.
19372 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
19373 (CHAR_LEADING_CODE): New macro.
19374 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
19375
19376 * character.c (unibyte_to_multibyte_table): New variable.
19377 (unibyte_char_to_multibyte): Move to character.h and define as macro.
19378 (multibyte_char_to_unibyte): If C is an eight-bit character,
19379 convert it to the corresponding byte value.
19380
19381 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
19382 not 1, signals an error. Update the elements of
19383 unibyte_to_multibyte_table.
19384 (init_charset_once): Initialize unibyte_to_multibyte_table.
19385 (syms_of_charset): Define the charset `iso-8859-1'.
19386
19387 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
19388 as is without converting it to unibyte. In a unibyte buffer,
19389 convert C to multibyte before checking the syntax.
19390
19391 * lisp.h (unibyte_char_to_multibyte): Delete extern.
19392
19393 * minibuf.c (Fminibuffer_complete_word): Use the macro
19394 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
19395
19396 * regex.h (struct re_pattern_buffer): New member target_multibyte.
19397
19398 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
19399 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
19400 that is zero, convert an eight-bit char to multibyte.
19401 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
19402 non-emacs case.
19403 (PATFETCH): Convert an eight-bit char to multibyte.
19404 (HANDLE_UNIBYTE_RANGE): New macro.
19405 (regex_compile): Setup the compiled pattern for multibyte chars
19406 even if the given regex string is unibyte. Use PATFETCH_RAW
19407 instead of PATFETCH in many places. To handle `charset'
19408 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
19409 only for ASCII chars.
19410 (analyse_first) <exactn>: Simplify because the compiled pattern
19411 is multibyte.
19412 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
19413 <charset>: Use CHAR_LEADING_CODE to get leading codes.
19414 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
19415 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
19416 multibyte always 1.
19417 (re_search_2): In emacs, set the locale variable multibyte to 1,
19418 otherwise to 0. New local variable target_multibyte. Check it
19419 to decide the multibyteness of STR1 and STR2. If
19420 target_multibyte is zero, convert unibyte chars to multibyte
19421 before translating and checking fastmap.
19422 (TARGET_CHAR_AND_LENGTH): New macro.
19423 (re_match_2_internal): In emacs, set the locale variable multibyte
19424 to 1, otherwise to 0. New local variable target_multibyte. Check
19425 it to decide the multibyteness of STR1 and STR2. Use
19426 TARGET_CHAR_AND_LENGTH to fetch a character from D.
19427 <charset, charset_not>: If multibyte is nonzero, check fastmap
19428 only for ASCII chars. Call bcmp_translate with
19429 target_multibyte, not with multibyte.
19430 <begline>: Declare the local variable C as `unsigned'.
19431 (bcmp_translate): Change the last arg name to target_multibyte.
19432
19433 * search.c (compile_pattern_1): Don't adjust the multibyteness of
19434 the regexp pattern and the matching target. Set cp->buf.multibyte
19435 to the multibyteness of the regexp pattern. Set
19436 cp->but.target_multibyte to the multibyteness of the matching target.
19437 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
19438 FETCH_STRING_CHAR_ADVANCE.
19439 (Freplace_match): Convert unibyte chars to multibyte.
19440
19441 * syntax.c (char_quoted, back_comment, scan_words)
19442 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
19443 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
19444 unibyte chars to multibyte.
19445 (skip_chars): Delete the arg syntaxp, and move the code for
19446 handling syntaxes to skip_syntaxes. Change callers.
19447 Fix the case that the multibyteness of STRING and the current
19448 buffer doesn't match.
19449 (skip_syntaxes): New function.
19450 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
19451 SINGLE_BYTE_CHAR_P.
19452
19453 2008-02-01 Kenichi Handa <handa@m17n.org>
19454
19455 * xfaces.c (QCfontset): New variable.
19456 (LFACE_FONTSET): New macro.
19457 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
19458 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
19459 (Finternal_set_lisp_face_attribute)
19460 (Finternal_get_lisp_face_attribute): Handle QCfontset.
19461 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
19462 check also LFACE_FONTSET_INDEX.
19463 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
19464 attrs[LFACE_FONT_INDEX].
19465 (syms_of_xfaces): Intern and staticpro QCfontset.
19466
19467 * dispextern.h (enum lface_attribute_index): New member
19468 LFACE_FONTSET_INDEX.
19469
19470 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
19471
19472 2008-02-01 Kenichi Handa <handa@m17n.org>
19473
19474 * coding.c (coding_set_destination): Fix coding->destination for
19475 the case converting a region.
19476 (encode_coding_utf_8): Encode eight-bit chars as single byte.
19477 (encode_coding_object): Fix coding->dst_pos and
19478 coding->dst_pos_byte for the case converting a region.
19479
19480 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
19481
19482 * character.h (BYTE8_STRING): New macro.
19483
19484 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
19485
19486 2008-02-01 Kenichi Handa <handa@m17n.org>
19487
19488 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
19489 characters by octal form.
19490
19491 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
19492
19493 * buffer.h (_fetch_multibyte_char_len): Delete extern.
19494 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
19495 _fetch_multibyte_char_len.
19496 (FETCH_CHAR_AS_MULTIBYTE): New macro.
19497
19498 * casetab.c (set_canon, set_identity, shuffle): Simplify.
19499
19500 * casefiddle.c (casify_object): Simplify. Handle the case that
19501 the case conversion change the byte length.
19502 (casify_region): Likewise.
19503
19504 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
19505
19506 * character.c (_fetch_multibyte_char_len): Delete this variable.
19507 (syms_of_character): Setup Vprintable_chars.
19508
19509 * editfns.c (Fchar_equal): Fix for the unibyte case.
19510 (Finsert_byte): New function.
19511 (syms_of_editfns): Defsubr it.
19512
19513 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
19514 of direct code 0x3ffff.
19515
19516 * search.c (Freplace_match): Fix for the unibyte case.
19517
19518 2008-02-01 Kenichi Handa <handa@m17n.org>
19519
19520 * lread.c (safe_to_load_p): Fix the logic.
19521
19522 * syntax.c (scan_words): Don't treat characters belonging to
19523 different scripts as constituting a word.
19524
19525 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
19526
19527 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
19528
19529 * emacs.c (main): In the case of --unibyte, instead of aborting on
19530 finding non-empty buffer, make it unibyte.
19531
19532 2008-02-01 Kenichi Handa <handa@m17n.org>
19533
19534 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
19535 to create a fontset.
19536
19537 2008-02-01 Dave Love <fx@gnu.org>
19538
19539 * character.c (Funibyte_char_to_multibyte): Doc fix.
19540
19541 * xfns.c [HAVE_STDLIB_H]: Fix last change.
19542
19543 2008-02-01 Kenichi Handa <handa@m17n.org>
19544
19545 * fontset.c (fontset_add): Make the type `int'.
19546 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
19547
19548 * character.c (unibyte_char_to_multibyte)
19549 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
19550 charset_unibyte, not charset_primary.
19551
19552 * charset.h (charset_unibyte): Extern it instead of charset_primary.
19553
19554 * charset.c (charset_unibyte): Rename from charset_primary.
19555 (Funibyte_charset): Rename from Fprimary_charset.
19556 (Fset_unibyte_charset): Rename from Fset_primary_charset.
19557 (syms_of_charset): Adjust for the above changes.
19558
19559 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
19560 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
19561 it->multibyte_p is zero.
19562
19563 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
19564 Delete extern.
19565
19566 2008-02-01 Kenichi Handa <handa@m17n.org>
19567
19568 * coding.c (Fdefine_coding_system_internal): Fix category setting
19569 for a coding system of type iso-2022.
19570
19571 2008-02-01 Kenichi Handa <handa@m17n.org>
19572
19573 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
19574
19575 2008-02-01 Kenichi Handa <handa@m17n.org>
19576
19577 * syntax.c (Vnext_word_boundary_function_table): New variable.
19578 (next-word-boundary-function-table): Declare it as a Lisp variable
19579 in syms_of_syntax.
19580 (scan_words): Call functions in Vnext_word_boundary_function_table
19581 if any.
19582
19583 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
19584
19585 * fontset.c (fs_load_font): If fontp->charset is not negative,
19586 return fontp without setting its members.
19587
19588 2008-02-01 Dave Love <fx@gnu.org>
19589
19590 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
19591
19592 * m/sparc.h (HAVE_ALLOCA): Delete.
19593
19594 * s/irix6-5.h: Don't include strings.h.
19595 (bcopy, bzero, bcmp): Don't undef.
19596
19597 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
19598
19599 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
19600 (TIOCSIGSEND): Don't test IRIX6.
19601 (bcopy, bzero, bcmp): Define conditionally.
19602
19603 2008-02-01 Kenichi Handa <handa@m17n.org>
19604
19605 * buffer.c (Qas, Qmake, Qto): New variables.
19606 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
19607 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
19608
19609 * callproc.c (Fcall_process): Don't call insert_1_both directly if
19610 we are inserting a process output into a multibyte buffer.
19611
19612 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
19613 multibyte_char_to_unibyte.
19614
19615 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
19616 by the primary charset, make it eight-bit char.
19617 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
19618
19619 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
19620 (charset_8_bit__control, charset_8_bit_graphic)
19621 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
19622 (define_charset_internal): New function.
19623 (syms_of_charset): Call define_charset_internal for pre-defined
19624 charsets.
19625
19626 * charset.h (charset_8_bit): Extern it.
19627
19628 * coding.c (make_conversion_work_buffer): Adjust for the change
19629 of Fset_buffer_multibyte.
19630 (encode_coding_raw_text): Increment p0 in the loop.
19631
19632 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
19633
19634 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
19635 for the change of Fset_buffer_multibyte.
19636
19637 * fns.c (Fstring_to_multibyte): New function.
19638 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
19639
19640 2008-02-01 Dave Love <fx@gnu.org>
19641
19642 * xfns.c (x_put_x_image): Declare args.
19643
19644 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
19645 (try_font_list): Declare an arg.
19646
19647 * xdisp.c (message2_nolog, set_message): Declare an arg.
19648
19649 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
19650
19651 * syntax.c (scan_sexps_forward): Declare an arg.
19652
19653 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
19654 Declare an arg.
19655
19656 * lisp.h (Fnew_fontset): Declare.
19657
19658 * keymap.c (push_key_description): Call CHARACTERP correctly.
19659
19660 * fontset.c (fontset_add): Declare args. Call make_number correctly.
19661 (face_for_char): Delete unused vars.
19662 (Fset_fontset_font): Doc fix. Delete unused vars.
19663
19664 * doc.c (Fsubstitute_command_keys): Delete unused vars.
19665
19666 * composite.c (update_compositions): Declare arg.
19667
19668 * cm.c (calccost, cmgoto): Declare args.
19669
19670 * charset.c: Remove `emacs' conditional. Doc fixes.
19671 (map_char_table_for_charset): Declare.
19672
19673 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
19674
19675 * ccl.c: Remove `emacs' conditional.
19676
19677 2008-02-01 Kenichi Handa <handa@m17n.org>
19678
19679 The following changes are to allow specifying multiple font
19680 patterns for a character range (specified by script or charset).
19681
19682 * Makefile.in (abbrev.o): Depend on syntax.h.
19683 (xfaces.o): Depend on charset.h.
19684
19685 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
19686 SINGLE_BYTE_CHAR_P.
19687
19688 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
19689
19690 * character.h (Vchar_script_table): Extern it.
19691
19692 * character.c (Vscript_alist): Delete.
19693 (Vchar_script_table, Qchar_script_table): New variable.
19694 (syms_of_character): Declare Vchar_script_table as a lisp variable
19695 and initialize it.
19696
19697 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
19698 have property char-table-extra-slots, make no extra slot.
19699
19700 * dispextern.h (struct face): Delete member `charset'.
19701 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
19702 SINGLE_BYTE_CHAR_P.
19703 (choose_face_font, lookup_non_ascii_face, font_name_registry):
19704 Add prototypes.
19705 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
19706 (generate_ascii_font_name): Rename from generate_ascii_font.
19707
19708 * fontset.h (get_font_repertory_func): New prototype.
19709 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
19710 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
19711
19712 * fontset.c (Qprepend, Qappend): New variables.
19713 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
19714 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
19715 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
19716 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
19717 (fontset_ref_and_range, fontset_add, reorder_font_vector)
19718 (load_font_get_repertory): New functions.
19719 (fontset_set): Delete.
19720 (fontset_face): New arg FACE. Return face ID, not face.
19721 Complete re-write to handle new fontset structure. Change caller.
19722 (free_face_fontset): Use ASET istead of AREF (X) = Y.
19723 (face_for_char): Don't call lookup_face.
19724 (make_fontset_for_ascii_face): New arg FACE.
19725 (fs_load_font): New arg CHARSET_ID. Don't check
19726 Vfont_encoding_alist here.
19727 (find_font_encoding): New function.
19728 (list_fontsets): Use STRINGP, not ! NILP.
19729 (accumulate_script_ranges): New function.
19730 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
19731 re-written to handle new fontset structure.
19732 (Ffontset_font): Return a copy of element.
19733 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
19734 docstring of font-encoding-alist.
19735
19736 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
19737 (Fset_fotset_font): Fix arguments to 5.
19738
19739 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
19740
19741 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
19742 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
19743 (highlight_trailing_whitespace): Adjust for the change of
19744 lookup_named_face.
19745
19746 * xfaces.c: Include charset.h.
19747 (load_face_font): Delete argument C. Change caller.
19748 (generate_ascii_font_name): Rename from generate_ascii_font.
19749 (font_name_registry): New function.
19750 (cache_face): Store ascii faces before non-ascii faces in buckets.
19751 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
19752 Lookup only ascii faces.
19753 (lookup_non_ascii_face): New function.
19754 (lookup_named_face): Delete argument C. Change caller.
19755 (lookup_derived_face): Delete argument C. Change caller.
19756 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
19757 a string, just call font_list with it.
19758 (choose_face_font): Delete arguments FACE and C. New arg
19759 FONT_SPEC. Change caller.
19760 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
19761 Change caller.
19762 (realize_non_ascii_face): New function.
19763 (realize_x_face): Call load_face_font here.
19764 (realize_tty_face): Delete argument C. Change caller.
19765 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
19766 get a face ID.
19767 (dump_realized_face): Don't print charset of FACE.
19768
19769 * xfns.c (x_set_font): Always call x_new_fontset and
19770 store_frame_parameter.
19771 (Fx_create_frame): Call x_new_fontset, not x_new_font.
19772 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
19773
19774 * xterm.h (x_get_font_repertory): Extern it.
19775
19776 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
19777 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
19778 it->multibyte_p is zero.
19779 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
19780 (x_new_fontset): If FONTSETNAME doesn't match any existing
19781 fontsets, create a new one.
19782 (x_get_font_repertory): New function.
19783
19784 2008-02-01 Kenichi Handa <handa@m17n.org>
19785
19786 * coding.c (Ffind_coding_systems_region_internal): Detect an
19787 ASCII only string correctly.
19788
19789 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
19790 version is 0.
19791
19792 2008-02-01 Kenichi Handa <handa@m17n.org>
19793
19794 * lread.c: Include "coding.h".
19795 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
19796 (load_each_byte, unread_char): New variables.
19797 (readchar_backlog): Delete.
19798 (readchar): Return a character unless load_each_byte is nonzero.
19799 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
19800 cons. If unread_char is not -1, simply return it.
19801 (unreadchar): Handle the case that readcharfun is
19802 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
19803 (read_multibyte): Delete.
19804 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
19805 (read_emacs_mule_char): New functions.
19806 (Fload): Even if the file doesn't have the extension ".elc", if
19807 safe_to_load_p returns a positive version number, assume that the
19808 file contains bytecompiled code. If the version is less than 22,
19809 load the file while decoding multibyte sequences by emacs-mule.
19810 (readevalloop): Don't use readchar_backlog.
19811 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
19812 (Fread_from_string): Pay attention to the case that STREAM is a cons.
19813 (read_escape): Delete the arg BYTEREP.
19814 (read1): Set load_each_byte to 1 temporarily while handling
19815 #@NUMBER. Don't call read_multibyte.
19816 (read_vector): Call Fread with a cons. If readcharfun is
19817 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
19818 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
19819 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
19820 and Qload_force_doc_strings.
19821
19822 2008-02-01 Kenichi Handa <handa@m17n.org>
19823
19824 * xdisp.c (face_before_or_after_it_pos): Call
19825 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
19826
19827 2008-02-01 Kenichi Handa <handa@m17n.org>
19828
19829 * character.h (TRAILING_CODE_P): New macro.
19830 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
19831 (string_char_with_unification): Fix prototype.
19832 (Vscript_alist): Extern it.
19833
19834 * character.c (Vscript_alist): New variable.
19835 (string_char_with_unification, str_as_unibyte)
19836 (string_escape_byte8): Add `const' to local variables.
19837 (syms_of_character): Declare script-alist as a Lisp variable.
19838
19839 * charset.h (Vcharset_ordered_list): Extern it.
19840 (charset_ordered_list_tick): Extern it.
19841 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
19842 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
19843 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
19844 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
19845 (Funify_charset): Adjust for the change of Funify_charset.
19846
19847 * charset.c (charset_ordered_list_tick): New variable.
19848 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
19849 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
19850 deunify intead of unify a charset.
19851 (string_xstring_p): Add `const' to local variables.
19852 (find_charsets_in_text): Add `const' to arguments and local variables.
19853 (encode_char): Adjust for the change of Funify_charset. Fix
19854 detecting of invalid code.
19855 (Fset_charset_priority): Increment charset_ordered_list_tick.
19856 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
19857 and TO_CODE.
19858
19859 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
19860 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
19861 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
19862 (decode_coding_ccl, consume_chars)
19863 (Ffind_coding_systems_region_internal)
19864 (Fcheck_coding_systems_region): Add `const' to local variables.
19865
19866 * print.c (print_object): Use octal form for printing the
19867 contents of a bool vector.
19868
19869 2008-02-01 Dave Love <fx@gnu.org>
19870
19871 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
19872 <version == 20>: Refuse to load.
19873
19874 2008-02-01 Dave Love <fx@gnu.org>
19875
19876 * fns.c: Move coding.h.
19877 (Qcodeset, Qdays, Qmonths): New.
19878 (concat): Use CHARACTERP instead of INTEGERP.
19879 (Flocale_codeset): Delete.
19880 (Flanginfo): New function.
19881 (syms_of_fns): Change accordingly.
19882
19883 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
19884
19885 2008-02-01 Dave Love <fx@gnu.org>
19886
19887 * casetab.c (init_casetab_once, init_casetab_once): Fix
19888 CHAR_TABLE_SET call.
19889
19890 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
19891
19892 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
19893
19894 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
19895 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
19896 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
19897
19898 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
19899
19900 * coding.c (ENCODE_DESIGNATION, decode_eol)
19901 (make_conversion_work_buffer, code_conversion_restore)
19902 (Fdefine_coding_system_internal): Convert Lisp types.
19903 (code_conversion_restore): Use EQ, not ==.
19904 (Fencode_coding_string): Fix code_convert_string call.
19905
19906 * coding.h (code_convert_region): Fix prototype.
19907
19908 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
19909
19910 * fontset.c (fontset_ref, fontset_set, fs_load_font)
19911 (Ffontset_info): Convert Lisp types.
19912
19913 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
19914
19915 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
19916
19917 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
19918
19919 * chartab.c: Include "...h", not <...h> in some cases.
19920
19921 * callproc.c (Fcall_process): Remove unused variables.
19922
19923 2008-02-01 Dave Love <fx@gnu.org>
19924
19925 * coding.c (Fset_coding_system_priority): Allow null arg list.
19926
19927 2008-02-01 Dave Love <fx@gnu.org>
19928
19929 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
19930 (Fself_insert_and_exit): Use CHARACTERP.
19931
19932 * callproc.c (Fcall_process): Remove unused vars.
19933
19934 * xterm.c (XTread_socket): Add extra dead keysyms.
19935
19936 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
19937
19938 * dispextern.h: Remove prototypes for redraw_frame,
19939 redraw_garbaged_frames.
19940
19941 * cmds.c (Fself_insert_command): Use CHARACTERP.
19942
19943 * chartab.c (make_sub_char_table): Remove unused var.
19944 (Fset_char_table_default, Fmap_char_table): Doc fix.
19945
19946 * keymap.c (access_keymap): Remove generic char code.
19947 (push_key_description): Use CHARACTERP.
19948
19949 2008-02-01 Dave Love <fx@gnu.org>
19950
19951 * charset.c: Doc fixes.
19952 (Funify_charset): Extra checking.
19953
19954 2008-02-01 Dave Love <fx@gnu.org>
19955
19956 * lread.c: Remove some unused variables.
19957 (safe_to_load_p): If safe, return the magic number version byte.
19958 (Fload): Maybe use load-with-code-conversion.
19959
19960 2008-02-01 Kenichi Handa <handa@m17n.org>
19961
19962 * category.c (Fmodify_category_entry): Don't modify the contents
19963 of category_set for characters out of the range. Avoid
19964 unnecessary modification.
19965
19966 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
19967 Vchar_unify_table. The default value of the table is now nil.
19968
19969 * character.c (syms_of_character): Setup Vchar_width_table for
19970 eight-bit-control and raw-byte chars.
19971
19972 * charset.h (enum define_charset_arg_index): Delete
19973 charset_arg_parents and add charset_arg_subset and
19974 charset_arg_superset.
19975 (enum charset_attr_index): Delete charset_parents and add
19976 charset_subset and charset_superset.
19977 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
19978 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
19979 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
19980 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
19981 (CHARSET_SUPERSET): New macros.
19982 (charset_work): Extern it.
19983 (ENCODE_CHAR): Use charset_work.
19984 (CHAR_CHARSET_P): Adjust for the change of encoder format.
19985 (map_charset_chars): Extern it.
19986
19987 * charset.c (load_charset_map): Set the default value of encoder
19988 and deunifier char-tables to nil.
19989 (map_charset_chars): Change argument. Change callers. Use
19990 map_char_table_for_charset instead of map_char_table.
19991 (Fmap_charset_chars): New optional args from_code and to_code.
19992 (Fdefine_charset_internal): Adjust for the change of
19993 `define-charset' (:parents -> :subset or :superset).
19994 (charset_work): New variable.
19995 (encode_char, syms_of_charset): Adjust for the change of
19996 Fdefine_charset_internal.
19997 (Ffind_charset_string): Setup the vector `charsets' correctly.
19998
19999 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
20000 the previous change.
20001 (char_table_ref_and_range): Adjust for the above change.
20002 (map_sub_char_table_for_charset): New function.
20003 (map_char_table_for_charset): New function.
20004
20005 * keymap.c (describe_vector): Handle a char-table directly here.
20006 (describe_char_table): Delete.
20007
20008 * lisp.h (map_charset_chars): Delete.
20009
20010 2008-02-01 Dave Love <fx@gnu.org>
20011
20012 * fns.c (count_combining): Comment out (unused).
20013 (Flocale_codeset): New.
20014 (syms_of_fns): Defsubr it.
20015
20016 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
20017 (size_t): Remove.
20018
20019 2008-02-01 Dave Love <fx@gnu.org>
20020
20021 * Makefile.in (chartab.o): Depend on charset.h.
20022
20023 2008-02-01 Kenichi Handa <handa@m17n.org>
20024
20025 * character.c (syms_of_character): Set the default value of
20026 Vprintable_chars to Qnil.
20027
20028 2008-02-01 Dave Love <fx@gnu.org>
20029
20030 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
20031
20032 2008-02-01 Kenichi Handa <handa@m17n.org>
20033
20034 * charset.c (load_charset_map): Handle the case that from < to
20035 correctly.
20036
20037 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
20038 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
20039 Pay attention to raw-8-bit chars.
20040
20041 2008-02-01 Kenichi Handa <handa@m17n.org>
20042
20043 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
20044 It is not bytecompiled now.
20045
20046 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
20047 (charset_jisx0208): New variables.
20048 (Fdefine_charset_internal): Setup them if appropriate.
20049 (init_charset_once): Initialize them to -1.
20050
20051 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
20052 (charset_jisx0208): Extern them.
20053
20054 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
20055 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
20056 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
20057 (setup_iso_safe_charsets): Fix arguments to Fassq.
20058 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
20059 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
20060 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
20061 (encode_coding_iso_2022): Change the 1st arg to
20062 ENCODE_ISO_CHARACTER to a variable.
20063
20064 2008-02-01 Kenichi Handa <handa@m17n.org>
20065
20066 * charset.h (enum define_charset_arg_index): New enums
20067 charset_arg_min_code and charset_arg_max_code.
20068 (struct charset): New member char_index_offset.
20069
20070 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
20071 Take charset->char_index_offset into account.
20072 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
20073 args[charset_arg_max_code]. Setup charset.char_index_offset.
20074 (syms_of_charset): Fix args to Fdefine_charset_internal.
20075
20076 2008-02-01 Dave Love <fx@gnu.org>
20077
20078 * coding.c (decode_coding_utf_8): Reject overlong sequences.
20079
20080 2008-02-01 Dave Love <fx@gnu.org>
20081
20082 * coding.c: Doc fixes.
20083 (Fcoding_system_aliases): Fix return value.
20084 (Qmac): Remove (duplicated) definition.
20085
20086 2008-02-01 Dave Love <fx@gnu.org>
20087
20088 * charset.c (Fcharset_priority_list, Fset_charset_priority):
20089 New functions.
20090
20091 * character.c (Fstring): Doc fix.
20092
20093 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
20094
20095 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
20096 (font-encoding-alist): Doc fix.
20097
20098 2008-02-01 Dave Love <fx@gnu.org>
20099
20100 * term.c (costs_set): Declare static, non-initialized for pcc.
20101 (encode_terminal_code): Remove unused var.
20102
20103 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
20104 for K&R.
20105
20106 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
20107
20108 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
20109 (suffixes): Move out of make_subsidiaries for K&R.
20110
20111 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
20112
20113 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
20114
20115 2008-02-01 Dave Love <fx@gnu.org>
20116
20117 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
20118
20119 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
20120
20121 2008-02-01 Yong Lu <lyongu@asia-infonet.com>
20122
20123 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
20124
20125 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
20126
20127 2008-02-01 Kenichi Handa <handa@m17n.org>
20128
20129 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
20130 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
20131
20132 2008-02-01 Kenichi Handa <handa@m17n.org>
20133
20134 * coding.c (decode_coding_charset): Adjust for the change of
20135 Fdefine_coding_system_internal.
20136 (Fdefine_coding_system_internal): For a coding system of
20137 `charset' type, store a list of charset IDs in
20138 `charset_attr_charset_valids' element of coding attributes.
20139
20140 2008-02-01 Kenichi Handa <handa@m17n.org>
20141
20142 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
20143 (emacs_mule_char): New arg src. Delete arg `composition'. Change
20144 caller. Handle 2-byte and 3-byte charsets correctly.
20145 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
20146 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
20147 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
20148 (DECODE_EMACS_MULE_21_COMPOSITION): Call
20149 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
20150 sequence.
20151 (decode_coding_emacs_mule): Handle composition correctly. Rewind
20152 `src' and `consumed_chars' correctly before calling emacs_mule_char.
20153 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
20154 and alt&rule composition.
20155 (decode_coding_iso_2022): Handle composition correctly.
20156 (init_coding_once): Setup emacs_mule_bytes for private charsets.
20157
20158 * charset.c (Fdefine_charset_internal): Fix bug for the case of
20159 re-defining a charset. If the charset has :emacs-mule-id, setup
20160 emacs_mule_bytes.
20161 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
20162
20163 2008-02-01 Kenichi Handa <handa@m17n.org>
20164
20165 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
20166 (encode_coding_big5, encode_coding_charset): If coding requires safe
20167 encoding, produce a character specified by
20168 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
20169
20170 2008-02-01 Dave Love <fx@gnu.org>
20171
20172 * xterm.c (XSetIMValues): Declare.
20173
20174 * process.c: Conditionally include sys/wait.h, pty.h.
20175
20176 * print.c (print_object): Fix print format for 64-bit systems.
20177
20178 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
20179
20180 * buffer.c (emacs_strerror): Declare.
20181
20182 * fontset.c (Fclear_face_cache): Declare.
20183 (accumulate_font_info): Comment-out (unused).
20184 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
20185 variables.
20186
20187 * character.h (string_escape_byte8): Declare.
20188
20189 * charset.c (load_charset_map, load_charset_map_from_file): Remove
20190 unused vars.
20191 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
20192 (Fmap_charset_chars): Doc fix.
20193
20194 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
20195 (Fset_coding_system_priority, Fset_coding_system_priority)
20196 (Fdefine_coding_system_internal): Doc fix.
20197
20198 2008-02-01 Dave Love <fx@gnu.org>
20199
20200 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
20201
20202 2008-02-01 Kenichi Handa <handa@m17n.org>
20203
20204 * character.c (string_escape_byte8): Make multibyte string with
20205 correct size.
20206
20207 * charset.c (Fmake_char): Delete unnecessary code.
20208
20209 2008-02-01 Kenichi Handa <handa@m17n.org>
20210
20211 * xfns.c (x_encode_text): Allocate coding.destination here, and
20212 call encode_coding_object with dst_object Qnil.
20213
20214 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
20215 multibyte form correctly.
20216
20217 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
20218 against Vfont_encoding_alist.
20219
20220 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
20221 handling of charset list.
20222 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
20223 (decode_coding_object): Move point to coding->dst_pos before
20224 calling post-read-conversion function.
20225 (encode_coding_object): Give correct arguments to
20226 pre-write-conversion. Ignore the return value of
20227 pre-write-conversion function. Pay attention to the case that
20228 pre-write-conversion changes the current buffer. If dst_object is
20229 Qt, even if coding->src_bytes is zero, allocate at least one byte
20230 to coding->destination.
20231
20232 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
20233
20234 * charset.c (Fmake_char): Make it more backward compatible.
20235 (Fmap_charset_chars): Fix docstring.
20236
20237 2008-02-01 Dave Love <fx@gnu.org>
20238
20239 * coding.c: Doc fixes.
20240 (Fdefine_coding_system_alias): Use names, not symbols, in
20241 coding-system-alist.
20242
20243 2008-02-01 Kenichi Handa <handa@m17n.org>
20244
20245 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
20246 of calling free_realized_face.
20247
20248 2008-02-01 Yong Lu <lyongu@asia-infonet.com>
20249
20250 * charset.c (read_hex): Don't treat SPC as a comment starter.
20251 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
20252 (Fdecode_char): Fix typo.
20253
20254 2008-02-01 Kenichi Handa <handa@m17n.org>
20255
20256 * charset.h (struct charset): New member `code_space_mask'.
20257
20258 * coding.c (coding_set_source): Delete the local variable beg_byte.
20259 (encode_coding_charset, Fdefine_coding_system_internal):
20260 Delete the local variable charset.
20261 (Fdefine_coding_system_internal): Setup
20262 attrs[coding_attr_charset_valids] correctly.
20263
20264 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
20265 member to check if CODE is valid or not.
20266 (Fdefine_charset_internal): Initialize `code_space_mask' member.
20267 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
20268 is within the range of charset->min_code and carset->max_code.
20269
20270 2008-02-01 Dave Love <fx@gnu.org>
20271
20272 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
20273
20274 * dispextern.h (generate_ascii_font): Fix return type.
20275
20276 * xfaces.c (generate_ascii_font): Fix arg declaration.
20277
20278 * coding.c (coding_inherit_eol_type)
20279 (Fset_terminal_coding_system_internal)
20280 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
20281
20282 2008-02-01 Kenichi Handa <handa@m17n.org>
20283
20284 * coding.c (decode_coding_charset, encode_coding_charset): Handle
20285 multiple charsets correctly.
20286
20287 2008-02-01 Kenichi Handa <handa@m17n.org>
20288
20289 * search.c (boyer_moore): Fix handling of multibyte character
20290 translation.
20291
20292 * xdisp.c (display_mode_element): When the variable `elt' is
20293 changed, update `this' and `lisp_string'.
20294
20295 2008-02-01 Kenichi Handa <handa@m17n.org>
20296
20297 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
20298
20299 * callproc.c (Fcall_process): Be sure to give the current buffer
20300 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
20301
20302 * charset.c (struct charset_map_entries): New struct.
20303 (load_charset_map): Rename from parse_charset_map. New args
20304 entries and n_entries. Change caller.
20305 (load_charset_map_from_file): Rename from load_charset_map.
20306 Change caller. New arg control_flag. Call load_charset_map at
20307 the tail.
20308 (load_charset_map_from_vector): New function.
20309 (Fdefine_charset_internal): Setup charset.compact_codes_p.
20310 (encode_char): If the charset is compact, change a character index
20311 to a code point.
20312
20313 * coding.c (coding_alloc_by_making_gap): Check the case that the
20314 source and destination are the same correctly.
20315 (decode_coding_raw_text): Set coding->consumed_char and
20316 coding->consumed to 0.
20317 (produce_chars): If coding->chars_at_source is nonzero, update
20318 coding->consumed_char and coding->consumed before calling
20319 alloc_destination.
20320 (Fdefine_coding_system_alias): Register ALIAS in
20321 Vcoding_system_alist.
20322 (syms_of_coding): Define `no-conversion' coding system at the tail.
20323
20324 * fileio.c (Finsert_file_contents): Set coding_system instead of
20325 val. If the current buffer is multibyte, always call
20326 decode_coding_gap.
20327
20328 * xfaces.c (try_font_list): Give higher priority to fontset's
20329 family than face's family.
20330
20331 2008-02-01 Kenichi Handa <handa@m17n.org>
20332
20333 * callproc.c (Fcall_process): Be sure to give the current buffer
20334 to decode_coding_c_string.
20335
20336 * xfaces.c (try_font_list): Give a family specified in a fontset
20337 higher priority than a family specified in a face.
20338
20339 2008-02-01 Kenichi Handa <handa@m17n.org>
20340
20341 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
20342 Fix arguments to insert_from_buffer.
20343
20344 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
20345
20346 2008-02-01 Kenichi Handa <handa@m17n.org>
20347
20348 * coding.c (produce_chars): Set the variable `multibytep' correctly.
20349 (decode_coding_gap): Set coding->dst_multibyte correctly.
20350
20351 2008-02-01 Kenichi Handa <handa@m17n.org>
20352
20353 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
20354 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
20355 (encode_coding_utf_16): Substitute coding->default_char for
20356 non-Unicode characters.
20357 (decode_coding): Don't call record_insert here.
20358 (setup_coding_system): Initialize `surrogate' of
20359 coding->spec.utf_16 to 0.
20360 (EMIT_ONE_BYTE): Fix for multibyte case.
20361
20362 * insdel.c (insert_from_gap): Call record_insert.
20363
20364 2008-02-01 Kenichi Handa <handa@m17n.org>
20365
20366 * casefiddle.c (casify_region): Fix multibyte case.
20367
20368 * character.c (c_string_width): Add return type `int'.
20369 (char_string_with_unification): Delete arg ADVANCED.
20370
20371 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
20372 (CHAR_STRING): Adjust for the change of char_string_with_unification.
20373 (CHAR_STRING_ADVANCE): Make it do-while statement.
20374
20375 * chartab.c (sub_char_table_set_range): Optimize for the case
20376 DEPTH == 3. Add workaround code for a GCC optimization bug.
20377
20378 * charset.c (parse_charset_map): Remove an unused variable.
20379
20380 * coding.c: Delete unused variables.
20381
20382 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
20383 earlier. If inserted is zero and the coding system doesn't
20384 require flushing, don't call decode_coding_gap.
20385
20386 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
20387
20388 2008-02-01 Kenichi Handa <handa@m17n.org>
20389
20390 The following changes are for using Unicode as an internal
20391 character model, and use UTF-8 format for buffer/string
20392 representation.
20393
20394 * .gdbinit (xchartable): Adjust for the change of char table structure.
20395 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
20396
20397 * Makefile.in (obj): Add character.o and chartab.o.
20398 (lisp, shortlisp): Remove utf-8.elc.
20399 (*.o): For many files, change dependency on charset.h to
20400 character.h, and add dependency on character.h.
20401 (character.o, chartab.o): New targets.
20402
20403 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
20404 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
20405 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
20406 of "charset.h".
20407
20408 * dired.c, filelock.c: Include "character.h".
20409
20410 * alloc.c: Include "character.h" instead of "charset.h".
20411 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
20412 (syms_of_alloc): Remove defsubr for Smake_char_table.
20413
20414 * buffer.c: Include "character.h" instead of "charset.h", don't
20415 include "coding.h".
20416 (Fset_buffer_multibyte): Adjust for UTF-8.
20417
20418 * buffer.h: EXFUN Fbuffer_live_p.
20419
20420 * callproc.c: Include "character.h" instead of "charset.h".
20421 (Fcall_process): Big change for the new code-conversion APIs.
20422
20423 * casetab.c: Include "character.h" instead of "charset.h".
20424 (set_canon, set_identity, shuffle): Adjust for the new
20425 map_char_table spec.
20426 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
20427 accessing the char table structure.
20428
20429 * chartab.c: New file that implements char table.
20430
20431 * category.c: Include "character.h".
20432 (copy_category_entry): New function.
20433 (copy_category_table): Call map_char_table and copy_category_entry.
20434 (Fmake_category_table): Initialize all top-level slots.
20435 (char_category_set): New function.
20436 (modify_lower_category_set): Delete.
20437 (Fmodify_category_entry): Call char_table_ref_and_range.
20438
20439 * category.h (CATEGORY_SET): Just call char_category_set.
20440
20441 * ccl.c: Include "character.h".
20442 (Qccl, Qcclp): New variables.
20443 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
20444 it's less than 256.
20445 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
20446 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
20447 and DST type.
20448 (ccl_driver): Change types of argument, adjust code accordingly.
20449 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
20450 ccl_driver.
20451 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
20452
20453 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
20454 New members src_multibyte, dst_multibyte, consumed, and produced.
20455 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
20456 (CODING_SPEC_CCL_PROGRAM): New macro.
20457 (ccl_driver): Update prototype.
20458 (Qccl, Qcclp, Fccl_program_p): Extern them.
20459 (CHECK_CCL_PROGRAM): New macro.
20460
20461 * character.c, character.h, chartab.c: New files.
20462
20463 * charset.c: Mostly re-written. Move character and multibyte sequence
20464 handling codes to character.c.
20465
20466 * charset.h: Mostly re-written. Move character and multibyte sequence
20467 handling codes to character.h.
20468
20469 * coding.c, coding.h: Mostly re-written.
20470
20471 * composite.c: Include "character.h" instead of "charset.h".
20472 (CHAR_WIDTH): Move to character.h.
20473 (HASH_KEY, HASH_VALUE): Delete.
20474
20475 * composite.h (enum composition_method): Change order of enumeration
20476 symbols.
20477
20478 * data.c: Include "character.h" instead of "charset.h".
20479 (Faref): Call CHAR_TABLE_REF for a char table.
20480 (Faset): Call CHAR_TABLE_SET for a char table.
20481
20482 * dispextern.h (free_realized_face, check_face_attribytes)
20483 (generate_ascii_font): Extern them.
20484 (free_realized_multibyte_face): Delete extern.
20485
20486 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
20487 table structure.
20488
20489 * editfns.c: Include "character.h" instead of "charset.h".
20490 (Fchar_to_string): Always call CHAR_STRING.
20491
20492 * emacs.c (main): Call init_charset_once, init_charset,
20493 syms_of_chartab, and syms_of_character.
20494
20495 * fileio.c: Include "character.h" instead of "charset.h".
20496 (Finsert_file_contents): Big change for the new code-conversion API.
20497 (choose_write_coding_system, Fwrite_region): Likewise.
20498 (build_annotations_2): Delete.
20499 (e_write): Big change for the new code-conversion API.
20500
20501 * fns.c: Include "character.h" instead of "charset.h".
20502 (copy_sub_char_table): Move to chartab.c.
20503 (Fcopy_sequence): Call copy_char_table for a char table.
20504 (concat): Delete codes calling count_multibyte.
20505 (string_char_to_byte, string_byte_to_char): Adjust for the new
20506 multibyte form.
20507 (internal_equal): Adjust for the change of char table structure.
20508 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
20509 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
20510 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
20511 (char_table_translate, optimize_sub_char_table)
20512 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
20513 chartab.c.
20514 (char_table_ref_and_index): Delete.
20515 (HASH_KEY, HASH_VALUE): Move to lisp.h.
20516 (Fmd5): Call preferred_coding_system instead of accessing
20517 Vcoding_category_list. Adjust for the new code-conversion API.
20518 (syms_of_fns): Move defsubr for char table related functions to
20519 chartab.c.
20520
20521 * fontset.c: Mostly re-written.
20522
20523 * fontset.h (struct font_info): Change type of the member encoding_type.
20524 (enum FONT_SPEC_INDEX): New enum.
20525 (fontset_font_pattern, fs_load_font): Update prototype.
20526 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
20527
20528 * indent.c: Include "character.h" instead of "charset.h".
20529 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
20530
20531 * insdel.c: Include "character.h" instead of "charset.h".
20532 (copy_text): Don't refer to Vnonascii_translation_table.
20533 (insert_from_gap): New function.
20534
20535 * keyboard.c: Include "character.h" instead of "charset.h".
20536 (command_loop_1): Never call direct_output_forward_char before
20537 a non-ASCII character.
20538 (read_char): If Vkeyboard_translate_table is a char table, always
20539 translate a character.
20540
20541 * keymap.c: Include "character.h".
20542 (store_in_keymap): Handle the case that IDX is a cons.
20543 (Fdefine_key): Handle the case that KEY is a cons and the car part
20544 is also a cons (range).
20545 (push_key_description): Adjust for the new character code.
20546 (describe_vector): Call describe_char_table for a char table.
20547 (describe_char_table): New function.
20548
20549 * keymap.h (describe_char_table): Extern it.
20550
20551 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
20552 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
20553 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
20554 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
20555 Delete.
20556 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
20557 structure.
20558 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
20559 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
20560 (CHARTAB_SIZE_BITS_3): New macros.
20561 (chartab_size): Extern it.
20562 (struct Lisp_Char_Table): Re-design.
20563 (struct Lisp_Sub_Char_Table): New structure.
20564 (HASH_KEY, HASH_VALUE): Move from fns.c.
20565 (CHARACTERBITS): Define as 22.
20566 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
20567 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
20568 (GC_SUB_CHAR_TABLE_P): New macro.
20569 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
20570 (code_convert_string_norecord): Deleted extern.
20571 (init_character_once, syms_of_character, init_charset)
20572 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
20573
20574 * lread.c: Include "character.h".
20575 (read_multibyte): New arg NBYTES.
20576 (read_escape): Change the meaning of returned *BYTEREP.
20577 (to_multibyte): Delete.
20578 (read1): Adjust the handling of char table and string.
20579
20580 * print.c: Include "character.h" instead of "charset.h".
20581 (print_string): Convert 8-bit raw bytes to octal form by
20582 string_escape_byte8.
20583 (print_object): Adjust for the new multibyte form. Print 8-bit
20584 raw bytes always in octal form. Handle sub char table correctly.
20585
20586 * process.c: Include "character.h" instead of "charset.h".
20587 (read_process_output, send_process): Adjust for the new
20588 code-conversion API.
20589
20590 * puresize.h (BASE_PURESIZE): Increase.
20591
20592 * regex.c: Include "character.h" instead of "charset.h".
20593 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
20594 (regex_compile): Accept a range whose starting and ending
20595 character have different leading bytes.
20596 (analyse_first): Adjust for the above change.
20597
20598 * search.c: Include "character.h" instead of "charset.h".
20599 (search_buffer, boyer_moore): Adjust for the new multibyte form.
20600 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
20601
20602 * syntax.c: Include "character.h" instead of "charset.h".
20603 (syntax_parent_lookup): Delete.
20604 (Fmodify_syntax_entry): Accept a cons as CHAR.
20605 (skip_chars): Adjust for the new multibyte form.
20606 (init_syntax_once): Call char_table_set_range instead of directly
20607 accessing the structure of a char table.
20608
20609 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
20610 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
20611 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
20612 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
20613
20614 * term.c: Include "buffer.h" and "character.h".
20615 (encode_terminal_code, write_glyphs): Adjust for the new
20616 code-conversion API.
20617 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
20618
20619 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
20620
20621 * xdisp.c: Include "character.h".
20622 (get_next_display_element): Adjust for the new multibyte form.
20623 (disp_char_vector): Adjust for the new char table structure.
20624 (decode_mode_spec_coding): Adjust for the new structure of
20625 coding system.
20626 (decode_mode_spec): Adjust for the new code-conversion API.
20627
20628 * xfaces.c: Include "character.h" instead of "charset.h".
20629 (load_face_font): Adjust for the change of choose_face_font and
20630 FS_LOAD_FONT.
20631 (generate_ascii_font): New function.
20632 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
20633 (set_font_frame_param): Adjust for the change of choose_face_font.
20634 (free_realized_face): Make it public.
20635 (free_realized_faces_for_fontset): Rename from
20636 free_realized_multibyte_face. Free also faces realized for ASCII.
20637 (choose_face_font): Change arguments. Adjust for the change of
20638 fontset_font_pattern and FS_LOAD_FONT.
20639
20640 * xfns.c: Include "character.h".
20641 (x_encode_text): Adjust for the new code-conversion API.
20642
20643 * xselect.c: Don't include "charset.h".
20644 (selection_data_to_lisp_data): Adjust for the new code conversion API.
20645
20646 * xterm.c: Include "character.h".
20647 (x_encode_char): New argument CHARSET. Change caller.
20648 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
20649 Call ENCODE_CHAR instead of SPLIT_CHAR.
20650 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
20651 CHAR_WIDTH instead of CHARSET_WIDTH.
20652 (XTread_socket): Adjust for the new code-conversion API.
20653 (x_new_font): Adjust for the change of FS_LOAD_FONT.
20654 (x_load_font): Adjust for the change of struct font.
20655
20656 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
20657
20658 * xfaces.c (face_at_buffer_position): Remove unused vars.
20659
20660 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
20661
20662 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
20663 Fix overflow checking.
20664
20665 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
20666
20667 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
20668 Cancel previous change.
20669
20670 2008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
20671
20672 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
20673 ccl->eight_bit_control. Fix check for buffer overflow.
20674 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
20675 (ccl_driver): Initialize extra_bytes to 0.
20676
20677 2008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
20678
20679 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
20680 return it ORed with ctrl_modifier.
20681
20682 2008-01-29 Miles Bader <miles@gnu.org>
20683
20684 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
20685
20686 2008-01-28 Jason Rumney <jasonr@gnu.org>
20687
20688 * w32.c (stat): Don't double check for networked drive.
20689
20690 2008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
20691
20692 * window.c (run_window_configuration_change_hook): New function.
20693 Code extracted from set_window_buffer. Set the selected frame.
20694 (set_window_buffer): Use it.
20695 * window.h (run_window_configuration_change_hook): Declare.
20696 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
20697
20698 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
20699
20700 2008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
20701
20702 * Makefile.in: Remove references to unused macros.
20703
20704 2008-01-26 Eli Zaretskii <eliz@gnu.org>
20705
20706 * w32.c (g_b_init_get_sid_sub_authority)
20707 (g_b_init_get_sid_sub_authority_count): New static variables.
20708 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
20709 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
20710 (init_user_info): Use them to retrieve uid and gid.
20711 Use 500/513, the Windows defaults, as Administrator's uid/gid.
20712 (fstat): Use pw_uid and pw_gid from the_passwd structure for
20713 st_uid and st_gid of the file.
20714
20715 2008-01-26 Jason Rumney <jasonr@gnu.org>
20716
20717 * w32.c (logon_network_drive): New function.
20718 (stat): Use it.
20719
20720 2008-01-26 Chong Yidong <cyd@stupidchicken.com>
20721
20722 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
20723 invisible text covered with an ellipsis.
20724
20725 2008-01-25 Richard Stallman <rms@gnu.org>
20726
20727 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
20728 jump back to beginning. Move some other initializations after that.
20729 (Qwindow_text_change_functions, Vwindow_text_change_functions):
20730 New variables.
20731 (syms_of_xdisp): Init them.
20732
20733 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
20734
20735 * buffer.c (reset_buffer_local_variables):
20736 Implement `permanent-local-hook'.
20737 (Qpermanent_local_hook): New variable.
20738 (syms_of_buffer): Init and staticpro it.
20739
20740 2008-01-25 Michael Albinus <michael.albinus@gmx.de>
20741
20742 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
20743
20744 2008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
20745
20746 * fns.c (Fclrhash): Return TABLE.
20747
20748 2008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20749
20750 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
20751 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
20752 is set even without positional changes.
20753 (x_scroll_bar_clear): Set bar->redraw_needed_p.
20754
20755 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
20756
20757 2008-01-23 Jason Rumney <jasonr@gnu.org>
20758
20759 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
20760
20761 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
20762 the unicode range available in MULE by locale-coding-system.
20763 Improve dbcs lead byte detection. Set event timestamp and modifiers
20764 earlier.
20765
20766 2008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20767
20768 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
20769 [MAC_OSX] (init_mac_osx_environment): Initialize it.
20770 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
20771 when used on child processes.
20772
20773 2008-01-21 Michael Albinus <michael.albinus@gmx.de>
20774
20775 * dbusbind.c (Fdbus_method_return_internal): Rename from
20776 Fdbus_method_return.
20777 (Fdbus_unregister_object): Move to dbus.el.
20778 (Fdbus_call_method, Fdbus_method_return_internal)
20779 (Fdbus_send_signal): Improve debug messages.
20780
20781 2008-01-20 Martin Rudalics <rudalics@gmx.at>
20782
20783 * undo.c (undo_inhibit_record_point): New variable.
20784 (syms_of_undo): Initialize it.
20785 (record_point): Don't record point when undo_inhibit_record_point
20786 is set.
20787
20788 2008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
20789
20790 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
20791
20792 * xdisp.c (Qauto_hscroll_mode): New var.
20793 (syms_of_xdisp): Initialize it.
20794 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
20795 window's buffer.
20796 (hscroll_windows): Don't check automatic_hscrolling_p here.
20797
20798 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
20799 vscroll if we're setting window-buffer to the value it already has.
20800
20801 2008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
20802
20803 * m/intel386.h: Remove references to XENIX.
20804
20805 2008-01-17 Andreas Schwab <schwab@suse.de>
20806
20807 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
20808 instead of HAVE_X86_64_LIB64_DIR.
20809 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
20810
20811 2008-01-17 Glenn Morris <rgm@gnu.org>
20812
20813 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
20814 to HAVE_X86_64_LIB64_DIR.
20815
20816 2008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
20817
20818 * s/irix3-3.h:
20819 * s/irix4-0.h:
20820 * s/386-ix.h:
20821 * s/domain.h:
20822 * s/hpux9-x11r4.h:
20823 * s/hpux9shxr4.h: Remove files for systems no longer supported.
20824
20825 * sysdep.c: Remove code containing references to symbols defined
20826 by unsupported systems.
20827
20828 2008-01-16 Glenn Morris <rgm@gnu.org>
20829
20830 * coding.c (select-safe-coding-system-function): Doc fix.
20831
20832 2008-01-15 Glenn Morris <rgm@gnu.org>
20833
20834 * config.in: Revert 2008-01-13 change: this is a generated file.
20835
20836 2008-01-13 Tom Tromey <tromey@redhat.com>
20837
20838 * lisp.h: Fix typo.
20839
20840 2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
20841
20842 * m/sequent-ptx.h:
20843 * m/sequent.h:
20844 * s/ptx.h:
20845 * s/ptx4-2.h:
20846 * s/ptx4.h: Remove files for systems no longer supported.
20847
20848 * callproc.c (Fcall_process): Fix previous change.
20849
20850 2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
20851
20852 * unexsunos4.c: Remove file, system not supported anymore.
20853
20854 * m/mips.h:
20855 * m/intel386.h:
20856 * callproc.c:
20857 * config.in:
20858 * ecrt0.c:
20859 * emacs.c:
20860 * fileio.c:
20861 * frame.c:
20862 * getpagesize.h:
20863 * keyboard.c:
20864 * lread.c:
20865 * process.c:
20866 * puresize.h:
20867 * sysdep.c:
20868 * systty.h:
20869 * syswait.h:
20870 * unexec.c:
20871 * xdisp.c:
20872 * alloc.c: Remove code containing references to symbols defined by
20873 unsupported systems.
20874
20875 2008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
20876
20877 * coding.c (detect_coding_mask): Fix previous change.
20878
20879 2008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
20880
20881 * coding.c (detect_coding_iso2022): New arg
20882 latin_extra_code_state. Allow Latin extra codes only
20883 when *latin_extra_code_state is nonzero.
20884 (detect_coding_mask): If there is a NULL byte, detect the encoding
20885 as UTF-16 or binary. If Latin extra codes exist, detect the
20886 encoding as ISO-2022 only when there's no other proper encoding is
20887 found.
20888
20889 2008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20890
20891 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
20892 #ifdef MAC_OS.
20893
20894 2008-01-08 Richard Stallman <rms@gnu.org>
20895
20896 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
20897
20898 2008-01-06 Nick Roberts <nickrob@snap.net.nz>
20899
20900 * keyboard.c (parse_menu_item): Don't enclose key bindings on
20901 menu bar in parentheses.
20902
20903 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
20904
20905 * m/7300.h:
20906 * m/acorn.h:
20907 * m/alliant-2800.h:
20908 * m/alliant.h:
20909 * m/alliant1.h:
20910 * m/alliant4.h:
20911 * m/altos.h:
20912 * m/amdahl.h:
20913 * m/apollo.h:
20914 * m/att3b.h:
20915 * m/aviion-intel.h:
20916 * m/aviion.h:
20917 * m/celerity.h:
20918 * m/clipper.h:
20919 * m/cnvrgnt.h:
20920 * m/convex.h:
20921 * m/cydra5.h:
20922 * m/delta88k.h:
20923 * m/dpx2.h:
20924 * m/dual.h:
20925 * m/elxsi.h:
20926 * m/f301.h:
20927 * m/gould-np1.h:
20928 * m/gould.h:
20929 * m/i860.h:
20930 * m/ibmps2-aix.h:
20931 * m/ibmrt-aix.h:
20932 * m/ibmrt.h:
20933 * m/irist.h:
20934 * m/is386.h:
20935 * m/isi-ov.h:
20936 * m/mega68.h:
20937 * m/mg1.h:
20938 * m/news-r6.h:
20939 * m/news-risc.h:
20940 * m/news.h:
20941 * m/nh3000.h:
20942 * m/nh4000.h:
20943 * m/ns16000.h:
20944 * m/ns32000.h:
20945 * m/nu.h:
20946 * m/orion.h:
20947 * m/orion105.h:
20948 * m/paragon.h:
20949 * m/pfa50.h:
20950 * m/plexus.h:
20951 * m/pyramid.h:
20952 * m/pyrmips.h:
20953 * m/sh3el.h:
20954 * m/sps7.h:
20955 * m/sr2k.h:
20956 * m/stride.h:
20957 * m/sun1.h:
20958 * m/sun2.h:
20959 * m/sun3-68881.h:
20960 * m/sun3-fpa.h:
20961 * m/sun3-soft.h:
20962 * m/sun3.h:
20963 * m/sun386.h:
20964 * m/symmetry.h:
20965 * m/tad68k.h:
20966 * m/tahoe.h:
20967 * m/targon31.h:
20968 * m/tek4300.h:
20969 * m/tekxd88.h:
20970 * m/tower32.h:
20971 * m/tower32v3.h:
20972 * m/ustation.h:
20973 * m/wicat.h:
20974 * m/xps100.h:
20975 * s/cxux.h:
20976 * s/cxux7.h:
20977 * s/dgux.h:
20978 * s/dgux4.h:
20979 * s/dgux5-4-3.h:
20980 * s/dgux5-4r2.h:
20981 * s/esix.h:
20982 * s/esix5r4.h:
20983 * s/hiuxmpp.h:
20984 * s/hiuxwe2.h:
20985 * s/iris3-5.h:
20986 * s/iris3-6.h:
20987 * s/isc2-2.h:
20988 * s/isc3-0.h:
20989 * s/isc4-0.h:
20990 * s/isc4-1.h:
20991 * s/newsos5.h:
20992 * s/newsos6.h:
20993 * s/osf1.h:
20994 * s/osf5-0.h:
20995 * s/riscix1-1.h:
20996 * s/riscix12.h:
20997 * s/sco4.h:
20998 * s/sco5.h:
20999 * s/sunos4-0.h:
21000 * s/sunos4-1.h:
21001 * s/sunos413.h:
21002 * s/sunos4shr.h:
21003 * s/umax.h:
21004 * s/unipl5-2.h:
21005 * s/xenix.h:
21006 * cxux-crt0.s:
21007 * unexapollo.c:
21008 * unexconvex.c:
21009 * unexenix.c:
21010 * unexsni.c: Remove files for systems no longer supported.
21011
21012 * m/intel386.h: Remove references to unsupported systems.
21013
21014 * w32.c (get_emacs_configuration): Remove reference to i860.
21015
21016 * sysdep.c: Remove dead code.
21017
21018 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
21019
21020 * s/rtu.h:
21021 * m/masscomp.h: Remove files. Platform is obsolete.
21022
21023 2008-01-04 Michael Albinus <michael.albinus@gmx.de>
21024
21025 * dbusbind.c (Fdbus_method_return): New function.
21026 (xd_read_message): Add the serial number to the event.
21027 (Fdbus_register_method): Activate the function.
21028
21029 2008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
21030
21031 * keyboard.c (read_key_sequence): Fix typo.
21032
21033 2008-01-03 Michael Albinus <michael.albinus@gmx.de>
21034
21035 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
21036 (xd_signature, xd_append_arg): Handle element type detection for
21037 empty arrays.
21038 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
21039 SDATA () calls; this must be solved more general.
21040 (Fdbus_register_signal): Use SBYTES instead of strlen.
21041
21042 2008-01-03 Magnus Henoch <magnus@zemdatav>
21043
21044 * dbusbind.c (xd_append_arg): Use unsigned char instead of
21045 unsigned int for byte values (necessary for big-endian platform).
21046 (Fdbus_call_method): Handle the case of no returned arguments.
21047
21048 2007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
21049
21050 * dbusbind.c (xd_read_message): Use non-static input_event struct.
21051
21052 2007-12-31 Magnus Henoch <mange@freemail.hu>
21053
21054 * dbusbind.c (xd_signature): Signature of variant is just "v".
21055
21056 2007-12-30 Michael Albinus <michael.albinus@gmx.de>
21057
21058 * dbusbind.c: Fix several errors and compiler warnings.
21059 Reported by Tom Tromey <tromey@redhat.com>.
21060 (XD_ERROR, XD_DEBUG_MESSAGE)
21061 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
21062 (xd_append_arg): Part for basic D-Bus types rewritten.
21063 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
21064 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
21065 appropriate.
21066 (xd_read_message): Return Qnil. Don't signal an error; it is not
21067 useful during event reading.
21068 (Fdbus_register_signal): Signal an error if the check for
21069 FUNCTIONP fails.
21070 (Fdbus_register_method): New function. The implementation is not
21071 complete, the call of the function signals an error therefore.
21072 (Fdbus_unregister_object): New function, renamed from
21073 Fdbus_unregister_signal. The initial check signals an error, if
21074 the object is not well formed.
21075
21076 2007-12-30 Richard Stallman <rms@gnu.org>
21077
21078 * textprop.c (get_char_property_and_overlay):
21079 Signal error if POSITION is out of range in a buffer.
21080
21081 2007-12-29 Martin Rudalics <rudalics@gmx.at>
21082
21083 * w32fns.c (Fx_create_frame): Make copy of frame parameters
21084 because the original parameters are in pure storage now.
21085
21086 2007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21087
21088 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
21089
21090 2007-12-22 Eli Zaretskii <eliz@gnu.org>
21091
21092 * callint.c (syms_of_callint) <command-history>: Add reference to
21093 history-length in the doc string.
21094
21095 2007-12-17 Jason Rumney <jasonr@gnu.org>
21096
21097 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
21098 before passing as wParam.
21099
21100 2007-12-22 Michael Albinus <michael.albinus@gmx.de>
21101
21102 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
21103 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
21104 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
21105 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
21106 as number.
21107 (Fdbus_call_method): Fix docstring.
21108
21109 2007-12-21 Michael Albinus <michael.albinus@gmx.de>
21110
21111 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
21112 New macros.
21113 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
21114 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
21115 Simplify.
21116 (xd_signature): New function.
21117 (xd_append_arg): Compute also signatures. Major rewrite.
21118 (xd_retrieve_arg): Make debug messages friendly.
21119 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
21120 Check for signatures of arguments.
21121
21122 2007-12-19 Michael Albinus <michael.albinus@gmx.de>
21123
21124 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
21125 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
21126 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
21127 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
21128 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
21129 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
21130 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
21131 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
21132 (xd_retrieve_value): Remove. Functionality included in ...
21133 (xd_append_arg): New function.
21134 (Fdbus_call_method, Fdbus_send_signal): Apply it.
21135
21136 2007-12-16 Michael Albinus <michael.albinus@gmx.de>
21137
21138 * dbusbind.c (top): Include <stdio.h>.
21139 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
21140 dbus_message_new_method_call and dbus_message_new_signal.
21141 (Fdbus_register_signal): Rename unique_name to uname.
21142 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
21143 non-existing unique name. Fix typos in matching rule. Return an
21144 object which is useful in Fdbus_unregister_signal.
21145 (Fdbus_unregister_signal): Reimplementation, in order to remove
21146 only the corresponding entry.
21147 (Vdbus_registered_functions_table): Change the order of entries.
21148 Apply these changes in xd_read_message and Fdbus_register_signal.
21149
21150 2007-12-16 Andreas Schwab <schwab@suse.de>
21151
21152 * fileio.c (Finsert_file_contents): Fix overflow check to not
21153 depend on undefined integer overflow.
21154
21155 2007-12-14 Jason Rumney <jasonr@gnu.org>
21156
21157 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
21158 for characters above 127.
21159
21160 2007-12-13 Jason Rumney <jasonr@gnu.org>
21161
21162 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
21163 before dereferencing array.
21164 (lookup_vk_code): Remove zero comparison.
21165
21166 2007-12-14 Michael Albinus <michael.albinus@gmx.de>
21167
21168 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
21169 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
21170 Use `unsigned int' instead of `uint'.
21171 (xd_read_message, Fdbus_register_signal): Split expressions into
21172 multiple lines before operators "&&" and "||", according to the
21173 GNU Coding Standards.
21174
21175 2007-12-14 Eli Zaretskii <eliz@gnu.org>
21176
21177 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
21178
21179 2007-12-12 Juri Linkov <juri@jurta.org>
21180
21181 * buffer.c (Frename_buffer): In interactive spec replace
21182 `read-buffer' with `read-string' that uses `buffer-name-history'
21183 as history, and the current buffer's name as default.
21184
21185 2007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
21186
21187 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
21188 manipulating the backtrace manually.
21189 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
21190 (struct backtrace, backtrace_list): Remove.
21191 (command_loop_1): Remove dead var `no_direct'.
21192
21193 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
21194 preserve non-built-in buffer-local variables.
21195 (Fkill_all_local_variables): Don't re-create&re-set permanent
21196 buffer-local variables.
21197
21198 2007-12-09 Juri Linkov <juri@jurta.org>
21199
21200 * buffer.c (Frename_buffer): Change interactive spec from "s" to
21201 Lisp code that uses `read-buffer' with current buffer as default.
21202
21203 2007-12-08 Michael Albinus <michael.albinus@gmx.de>
21204
21205 * dbusbind.c (xd_read_message): Generate an event for every
21206 registered handler. There might be several handlers registered
21207 for the same signal.
21208 (Fdbus_register_signal): Don't overwrite a registration for the
21209 same signal. Add a new registration if handlers are different.
21210 (Vdbus_registered_functions_table): Rework doc string.
21211
21212 2007-12-07 Michael Albinus <michael.albinus@gmx.de>
21213
21214 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
21215 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
21216 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
21217 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
21218 Unify argument lists.
21219 (xd_read_message, Fdbus_register_signal): Reorder and extend event
21220 arguments and hash table keys. Use unique name for service.
21221 (Fdbus_unregister_signal): Remove checks.
21222 (Vdbus_registered_functions_table): Fix doc string.
21223
21224 2007-12-05 Magnus Henoch <mange@freemail.hu>
21225
21226 * process.c (make_process): Initialize pty_flag to 0.
21227
21228 2007-12-05 Jason Rumney <jasonr@gnu.org>
21229
21230 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
21231 specified XBMs.
21232
21233 2007-12-05 Richard Stallman <rms@gnu.org>
21234
21235 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
21236
21237 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21238
21239 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
21240 New variable.
21241 (mac_try_close_socket) [MAC_OSX]: New function.
21242 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
21243 Update cfsockets_for_select. Replace invalid CFRunLoop source.
21244
21245 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
21246 Use mac_try_close_socket.
21247
21248 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21249
21250 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
21251 reloc_base.
21252 (copy_dysymtab): Compute relocation base here.
21253 (rebase_reloc_address) [__ppc64__]: New function.
21254 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
21255 changed.
21256
21257 2007-12-05 Jason Rumney <jasonr@gnu.org>
21258
21259 * w32proc.c (sys_spawnve): Quote args with wildcards.
21260
21261 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21262
21263 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
21264 __objc_* sections.
21265 (unrelocate) [_LP64]: Set relocation base to address of data segment.
21266
21267 2007-12-05 Michael Albinus <michael.albinus@gmx.de>
21268
21269 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
21270 Move check for Vdbus_registered_functions_table to
21271 xd_read_queued_messages.
21272 (xd_read_queued_messages): Protect xd_read_message calls by
21273 internal_condition_case_1.
21274
21275 2007-12-04 Michael Albinus <michael.albinus@gmx.de>
21276
21277 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
21278 Qdbus_system_bus and Qdbus_session_bus, respectively.
21279 (Vdbus_intern_symbols): Remove.
21280 (Vdbus_registered_functions_table): New hash table.
21281 (XD_SYMBOL_INTERN_SYMBOL): Remove.
21282 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
21283 Rewrite in order to manage registered functions by hash table
21284 Vdbus_registered_functions_table.
21285
21286 2007-12-03 Jan Djärv <jan.h.d@swipnet.se>
21287
21288 * xterm.c: Update URL to Window Manager Specification in comment.
21289
21290 2007-12-02 Michael Albinus <michael.albinus@gmx.de>
21291
21292 * config.in (HAVE_DBUS): Add.
21293
21294 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
21295 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
21296 (obj): Add $(DBUS_OBJ).
21297 (LIBES): Add $(DBUS_LIBS).
21298 (dbusbind.o): New target.
21299
21300 * dbusbind.c: New file.
21301
21302 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
21303
21304 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
21305 (Qdbus_event): New Lisp symbol.
21306 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
21307 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
21308 (keys_of_keyboard): Define dbus-event.
21309
21310 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
21311
21312 2007-12-01 Richard Stallman <rms@gnu.org>
21313
21314 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
21315
21316 2007-11-30 Jason Rumney <jasonr@gnu.org>
21317
21318 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
21319 (w32con_reset_terminal_modes): Clear screen buffer.
21320 (w32_face_attributes): Don't use color indexes that are out of range.
21321 Only reverse the default colors.
21322
21323 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
21324 WINDOWSNT.
21325
21326 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
21327
21328 2007-11-29 Jason Rumney <jasonr@gnu.org>
21329
21330 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
21331 (w32_face_attributes): Use Vtty_defined_color_alist to determine
21332 if the terminal colors are initialized.
21333 (unspecified_fg, unspecified_bg): Remove unused declarations.
21334
21335 2007-11-29 Andreas Schwab <schwab@suse.de>
21336
21337 * keyboard.c (apply_modifiers): Fix typo.
21338
21339 2007-11-29 Richard Stallman <rms@gnu.org>
21340
21341 * keymap.c (Fcurrent_local_map): Doc fix.
21342
21343 2007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
21344
21345 * s/gnu-kfreebsd.h: New file.
21346
21347 2007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
21348
21349 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
21350 Don't cast redundantly.
21351
21352 * keyboard.c (KEY_TO_CHAR): New macro.
21353 (parse_modifiers, apply_modifiers): Accept integer arguments.
21354 (read_key_sequence): Use them to unify the "shift->unshift" mapping
21355 for chars and symbol keys.
21356 After doing such remapping, apply function-key-map again.
21357
21358 2007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
21359
21360 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
21361 compiled anymore.
21362
21363 2007-11-26 Andreas Schwab <schwab@suse.de>
21364
21365 * process.c (list_processes_1): Fix indentation level of the
21366 command column.
21367
21368 2007-11-23 Andreas Schwab <schwab@suse.de>
21369
21370 * editfns.c (Fformat): Handle %c specially since it requires the
21371 argument to be of type int.
21372
21373 2007-11-23 Markus Triska <markus.triska@gmx.at>
21374
21375 * emacs.c (main): Call init_editfns before init_process, since
21376 init_process sets Vprocess_connection_type depending on OS release.
21377
21378 2007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
21379
21380 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
21381 (find_symbol_value): Use do_symval_forwarding.
21382
21383 * data.c (set_internal): Set the value in the `cons-cell' (for
21384 Buffer_Local_values) not only for frame-local variables.
21385
21386 2007-11-22 Andreas Schwab <schwab@suse.de>
21387
21388 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
21389 values to sprintf.
21390 * keymap.c (Fsingle_key_description): Likewise.
21391 * print.c (print_object): Likewise.
21392
21393 2007-11-22 Jan Djärv <jan.h.d@swipnet.se>
21394
21395 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
21396 file for image is nil.
21397
21398 2007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
21399
21400 * term.c: Include stdarg.h.
21401 (fatal): Implement using varargs.
21402 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
21403
21404 2007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
21405
21406 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
21407 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
21408 Update call to buffer_slot_type_mismatch.
21409 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
21410 (buffer_slot_type_mismatch): Update.
21411 * buffer.c (buffer_local_types): Remove.
21412 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
21413 (defvar_per_buffer): Set the type in the buffer_objfwd.
21414
21415 2007-11-21 Jason Rumney <jasonr@gnu.org>
21416
21417 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
21418 CreateFileMapping returns NULL on failure.
21419
21420 2007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
21421
21422 * search.c (Fset_match_data): Remove the `evaporate' feature.
21423 (unwind_set_match_data): Don't use the `evaporate' feature.
21424
21425 2007-11-21 Jason Rumney <jasonr@gnu.org>
21426
21427 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
21428
21429 * w32console.c (w32con_write_glyphs): Remove unused variables.
21430
21431 2007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
21432
21433 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
21434
21435 * s/darwin.h (MULTI_KBOARD): Remove.
21436
21437 * macfns.c (x_create_tip_frame, Fx_create_frame)
21438 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
21439
21440 2007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
21441
21442 * buffer.c (Fbuffer_local_value): Remove redundant test.
21443 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
21444 than in `current-buffer' to match the comment.
21445 Do the swap using swap_in_global_binding.
21446
21447 * data.c (store_symval_forwarding, set_internal):
21448 * eval.c (specbind): Remove dead code.
21449
21450 * coding.c (detect_coding, Fupdate_coding_systems_internal):
21451 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
21452 Since we do not want to see internal Lisp_*fwd objects here.
21453
21454 2007-11-18 Jan Djärv <jan.h.d@swipnet.se>
21455
21456 * sysdep.c (init_system_name): Use getaddrinfo if available.
21457
21458 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
21459 (x_scroll_bar_note_movement): start, end, with, height in struct
21460 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
21461
21462 2007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
21463
21464 * puresize.h (BASE_PURESIZE): Increase to 1190000.
21465
21466 2007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
21467
21468 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
21469 This undoes Richard's change of 14-Oct-2002.
21470
21471 * alloc.c (allocate_other_vector):
21472 * lisp.h (allocate_other_vector): Remove.
21473
21474 * window.c (struct save_window_data): Move non-lisp data to the end
21475 and make it `int' rather than Lisp_Object.
21476 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
21477 Done wrap/unwrap integer values.
21478 (Fset_window_configuration, compare_window_configurations):
21479 Update use of fields to their new types.
21480
21481 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
21482 Turn integer fields into `int'. Merge x_window_low and x_window_high.
21483 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
21484 (SET_SCROLL_BAR_X_WINDOW): Remove.
21485 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
21486 Access the new x_window field directly.
21487 * xterm.c (x_scroll_bar_create): Use a pseudovector.
21488 Don't wrap/unwrap integers into Lisp_Objects.
21489 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
21490 (x_scroll_bar_report_motion):
21491 Don't wrap/unwrap integers into Lisp_Objects.
21492 (x_term_init): Use SDATA.
21493 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
21494 (x_scroll_bar_set_handle, x_scroll_bar_remove)
21495 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
21496 (x_scroll_bar_report_motion, x_scroll_bar_clear):
21497 * xfns.c (x_set_background_color):
21498 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
21499 Access the new x_window field directly.
21500
21501 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
21502 (allocate_pseudovector): Make non-static.
21503
21504 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
21505 (allocate_pseudovector): Declare.
21506 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
21507
21508 2007-11-15 Andreas Schwab <schwab@suse.de>
21509
21510 * editfns.c (Fformat): Correctly format EMACS_INT values.
21511 Also take precision into account when formatting an integer.
21512
21513 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
21514
21515 2007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
21516
21517 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
21518 (syms_of_keyboard): Defsubr it.
21519
21520 * data.c (swap_in_global_binding): Fix longstanding bug where
21521 store_symval_forwarding was not called with the right second argument,
21522 thus causing objfwd-ing from being dropped.
21523
21524 2007-11-14 Juanma Barranquero <lekktu@gmail.com>
21525
21526 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
21527 (Fx_display_pixel_height, Fx_display_planes)
21528 (Fx_display_color_cells, Fx_server_max_request_size)
21529 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
21530 (Fx_display_visual_class, Fx_display_save_under):
21531 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
21532 (Fx_display_pixel_height, Fx_display_planes)
21533 (Fx_display_color_cells, Fx_server_max_request_size)
21534 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
21535 (Fx_display_mm_height, Fx_display_mm_width)
21536 (Fx_display_backing_store, Fx_display_visual_class)
21537 (Fw32_select_font, Fx_display_save_under):
21538 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
21539 (Fx_display_pixel_height, Fx_display_planes)
21540 (Fx_display_color_cells, Fx_server_max_request_size)
21541 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
21542 (Fx_display_save_under): Fix typos in docstrings.
21543
21544 2007-11-14 Juanma Barranquero <lekktu@gmail.com>
21545
21546 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
21547 corresponding to deleted entries; they are an implementation detail.
21548 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
21549 Remove variables.
21550 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
21551 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
21552 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
21553 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
21554 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
21555 (Fw32_define_rgb_color, Fw32_load_color_file)
21556 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
21557 Fix typos in docstrings.
21558 (Fx_server_version): Reflow docstring.
21559 (Fw32_shell_execute): Doc fixes.
21560
21561 2007-11-13 Juanma Barranquero <lekktu@gmail.com>
21562
21563 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
21564 if w32_parse_hot_key returned nil.
21565
21566 2007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
21567
21568 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
21569
21570 2007-11-09 Jason Rumney <jasonr@gnu.org>
21571
21572 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
21573
21574 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
21575
21576 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
21577 Remove W32_SCROLL_BAR_CLICK_EVENT.
21578
21579 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
21580 Add MULTIMEDIA_KEY_EVENT.
21581
21582 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
21583 (lispy_multimedia_keys) [WINDOWSNT]: New array.
21584 (make_lispy_event) [WINDOWSNT]: Use it to translate
21585 MULTIMEDIA_KEY_EVENT.
21586
21587 * w32term.h (WM_APPCOMMAND): Define if not already.
21588 (GET_APPCOMMAND_LPARAM): Likewise.
21589
21590 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
21591 WM_APPCOMMAND.
21592
21593 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
21594 (syms_of_w32fns): Export and initialize it.
21595 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
21596
21597 2007-11-09 Chong Yidong <cyd@stupidchicken.com>
21598
21599 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
21600 twice.
21601
21602 * xdisp.c (handle_face_prop): Fix last change.
21603
21604 2007-11-09 Richard Stallman <rms@gnu.org>
21605
21606 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
21607 not just for after-strings and before-strings.
21608 Call face_for_overlay_string and pass the overlay to it.
21609 (handle_display_prop): Determine whether property came from an overlay.
21610 Pass OVERLAY arg to handle_single_display_spec.
21611 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
21612 (load_overlay_strings): Fill in it->string_overlays.
21613 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
21614
21615 * xfaces.c (face_for_overlay_string): Function renamed from
21616 face_at_buffer_position_no_overlays, and add arg OVERLAY.
21617
21618 * dispextern.h (struct it): New elt string_overlays.
21619 New elt from_overlay, also in stack.
21620 Rearrange a few elements.
21621 (face_for_overlay_string): Decl renamed from
21622 face_at_buffer_position_no_overlays, and add argument.
21623
21624 2007-11-09 Richard Stallman <rms@gnu.org>
21625
21626 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
21627 to get the base face for an overlay string.
21628
21629 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
21630
21631 * xfaces.c (face_at_buffer_position_no_overlays): New function.
21632
21633 * xdisp.c (handle_stop): Move some code out of loop.
21634
21635 2007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21636
21637 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
21638 Fix conversion from Lisp object to ATSUFontID.
21639
21640 2007-11-09 Jason Rumney <jasonr@gnu.org>
21641
21642 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
21643
21644 2007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21645
21646 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
21647 Don't assume regions are aligned to page boundary.
21648 (print_load_command_name): Add LC_UUID if defined.
21649
21650 2007-11-09 Richard Stallman <rms@gnu.org>
21651
21652 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
21653
21654 2007-11-07 Jason Rumney <jasonr@gnu.org>
21655
21656 * s/windows95.h: Remove.
21657
21658 2007-11-06 Jan Djärv <jan.h.d@swipnet.se>
21659
21660 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
21661 abort with a message on unhandled store_type values.
21662
21663 2007-11-01 Jan Djärv <jan.h.d@swipnet.se>
21664
21665 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
21666 Remove HAVE_X11R5 and HAVE_X11R4.
21667
21668 2007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
21669
21670 * Makefile.in: Remove references to sunfns.c and sunfns.o.
21671
21672 2007-11-01 Johan Bockgård <bojohan@gnu.org>
21673
21674 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
21675 Don't set s->stippled_p here, since it has already been set by
21676 x_set_glyph_string_gc from x_draw_glyph_string.
21677
21678 2007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
21679
21680 * sunfns.c: Remove file.
21681
21682 * m/sun386.h:
21683 * m/sun2.h:
21684 * m/sparc.h: Remove Sun windows code.
21685
21686 2007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
21687
21688 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
21689 (init_keyboard): Set current_kboard's window-system to nil.
21690 (tty_read_avail_input): Typo.
21691 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
21692
21693 2007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
21694
21695 * s/usg5-4.h:
21696 * s/usg5-3.h:
21697 * s/ptx.h:
21698 * m/is386.h:
21699 * m/ibmps2-aix.h:
21700 * Makefile.in: Remove all mentions of X10.
21701
21702 * dispnew.c (syms_of_display): Don't mention version 10.
21703
21704 2007-10-28 Juanma Barranquero <lekktu@gmail.com>
21705
21706 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
21707 ($(BLD)/abbrev.$(O)): Remove.
21708
21709 2007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
21710
21711 Rewrite abbrev.c in Elisp.
21712 * image.c (Qcount): Don't declare as extern.
21713 (syms_of_image): Initialize and staticpro `Qcount'.
21714 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
21715 * emacs.c (main): Don't call syms_of_abbrev.
21716 * Makefile.in (obj): Remove abbrev.o.
21717 (abbrev.o): Remove.
21718 * abbrev.c: Remove.
21719
21720 2007-10-26 Martin Rudalics <rudalics@gmx.at>
21721
21722 * window.c (window_min_size_2): Don't count header-line.
21723
21724 2007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
21725
21726 * frame.h (struct frame): Move all bit fields after the first bit
21727 field to take advantage of the available space. Group all the
21728 chars together to reduce wasted space due to padding.
21729
21730 2007-10-26 Juanma Barranquero <lekktu@gmail.com>
21731
21732 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
21733
21734 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
21735 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
21736 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
21737 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
21738 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
21739 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
21740 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
21741 (last_marked, mark_object_loop_halt): Make static.
21742
21743 * frame.c (syms_of_frame) <delete-frame-functions>:
21744 Fix typo in docstring.
21745
21746 2007-10-25 Juanma Barranquero <lekktu@gmail.com>
21747
21748 * w32.c (init_environment): Fix tiny memory leak.
21749 (w32_get_resource): Remove unused variable `ok'.
21750
21751 2007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
21752
21753 Make `window-system' into a keyboard-local variable (rather than
21754 frame-local as done originally by multi-tty).
21755
21756 * keyboard.h (struct kboard): Add Vwindow_system.
21757 * keyboard.c (init_kboard): Set a default for Vwindow_system.
21758 (mark_kboards): Mark Vwindow_system.
21759
21760 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
21761 (init_display): Don't set the obsolete `window-system' frame-param.
21762
21763 * xterm.c (x_term_init):
21764 * w32term.c (w32_create_terminal):
21765 * term.c (init_tty): Set Vwindow_system.
21766 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
21767 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
21768
21769 * xfns.c (Fx_create_frame, x_create_tip_frame):
21770 * w32fns.c (Fx_create_frame, x_create_tip_frame):
21771 * macfns.c (Fx_create_frame):
21772 Don't set the obsolete `window-system' frame-param.
21773
21774 * frame.h (Qwindow_system): Remove.
21775 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
21776 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
21777
21778 2007-10-24 Richard Stallman <rms@gnu.org>
21779
21780 * frame.c (x_figure_window_size): For fullscreen case,
21781 set USPosition | PPosition without clobbering rest of window_prompting.
21782
21783 * keyboard.c (Fcurrent_idle_time): Doc fix.
21784
21785 * print.c (Fwith_output_to_temp_buffer): Doc fix.
21786
21787 2007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
21788
21789 * process.c (unwind_request_sigio): Only define if __ultrix__.
21790
21791 * callproc.c (child_setup): Remove spurious *.
21792
21793 * lisp.h (Fget_text_property): Declare.
21794 (have_menus_p): Declare it here rather than in sys-dep header files.
21795 * macterm.h (have_menus_p):
21796 * msdos.h (have_menus_p):
21797 * xterm.h (have_menus_p): Remove.
21798
21799 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
21800 (Fmake_variable_frame_local): Just check the variable's const-ness
21801 rather than checking nil or t.
21802
21803 2007-10-22 Jason Rumney <jasonr@gnu.org>
21804
21805 * w32fns.c: Include math.h.
21806 (w32_abort): Declaration moved to nt/config.nt.
21807
21808 * s/ms-w32.h (HAVE_STDLIB_H): Define.
21809 (abort): Redefinition moved to nt/config.nt.
21810
21811 * m/windowsnt.h: Remove.
21812
21813 2007-10-22 Juanma Barranquero <lekktu@gmail.com>
21814
21815 * emacs.c (Fdump_emacs): Fix typo in message.
21816 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
21817 <installation-directory>: Reflow docstring.
21818
21819 2007-10-22 Juri Linkov <juri@jurta.org>
21820
21821 * minibuf.c: Allow minibuffer default to be a list of default values.
21822 With empty input use the first element of this list as returned default.
21823 (string_to_object)
21824 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
21825 (read_minibuf): If defalt is cons, set histstring to its car.
21826 (Fread_string): If default_value is cons, set val to its car.
21827 (Fread_buffer): If def is cons, use its car.
21828 (Fcompleting_read): If defalt is cons, set val to its car.
21829
21830 2007-10-21 Michael Albinus <michael.albinus@gmx.de>
21831
21832 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
21833
21834 2007-10-20 Juanma Barranquero <lekktu@gmail.com>
21835
21836 * doc.c (Fdocumentation): Check for advice in all cases.
21837
21838 2007-10-19 Chong Yidong <cyd@stupidchicken.com>
21839
21840 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
21841
21842 2007-10-19 Richard Stallman <rms@gnu.org>
21843
21844 * doc.c (Fdocumentation): Check for and handle an advised function.
21845
21846 2007-10-19 Juanma Barranquero <lekktu@gmail.com>
21847
21848 * process.c (Fset_process_filter): Doc fix.
21849
21850 2007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
21851
21852 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
21853 which caused key-translation-map to applied repeatedly (thus breaking
21854 double-mode).
21855
21856 2007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
21857
21858 * xselect.c (x_own_selection, x_handle_selection_clear)
21859 (x_clear_frame_selections):
21860 * w32menu.c (list_of_panes, list_of_items):
21861 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
21862 * textprop.c (validate_plist, interval_has_all_properties)
21863 (interval_has_some_properties, interval_has_some_properties_list)
21864 (add_properties, text_property_list):
21865 * process.c (Fget_buffer_process, list_processes_1, status_notify):
21866 * minibuf.c (Fassoc_string):
21867 * macselect.c (x_own_selection, x_clear_frame_selections)
21868 (Fx_disown_selection_internal):
21869 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
21870 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
21871
21872 2007-10-17 Chong Yidong <cyd@stupidchicken.com>
21873
21874 * process.c: Link to libs for calling res_init() if available.
21875 (Fmake_network_process): Call res_init() before getaddrinfo or
21876 gethostbyname, if possible.
21877
21878 2007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
21879
21880 * lread.c (read1): Set pvectype for char_tables.
21881
21882 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
21883 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
21884 Add type checks.
21885 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
21886
21887 * alloc.c (free_misc): Use XMISCTYPE.
21888 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
21889
21890 2007-10-17 Glenn Morris <rgm@gnu.org>
21891
21892 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
21893 (syms_of_minibuf): Add Qcompletion_ignore_case.
21894 * dired.c (Qcompletion_ignore_case): Change to external.
21895 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
21896 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
21897 (Fread_file_name): Use it rather than intern'ing.
21898
21899 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
21900 (Fread_coding_system): Ignore case of user input.
21901
21902 2007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21903
21904 * xdisp.c (handle_display_prop): Ignore display specs after
21905 replacing one when string text is being replaced.
21906 (handle_single_display_spec): Pretend as if characters with display
21907 property haven't been consumed only when buffer text is being replaced.
21908
21909 2007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
21910
21911 * xfns.c (Fx_create_frame, Fx_display_list):
21912 * window.c (window_fixed_size_p, enlarge_window)
21913 (shrink_window_lowest_first):
21914 * macterm.c (init_font_name_table):
21915 * macfns.c (Fx_create_frame, Fx_display_list):
21916 * lread.c (close_load_descs):
21917 * keyboard.c (read_char_x_menu_prompt):
21918 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
21919 * coding.c (code_convert_region_unwind): Test the type of an object
21920 rather than just !NILP before extracting data from it.
21921
21922 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
21923
21924 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
21925 (XMISCANY): New macro.
21926 (XMISCTYPE): Use it.
21927 (struct Lisp_Misc_Any): New type.
21928 (union Lisp_Misc): Use it.
21929 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
21930 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
21931 (find_symbol_value, set_internal, default_value, Fset_default)
21932 (Fmake_variable_buffer_local, Fmake_local_variable)
21933 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
21934 (Flocal_variable_if_set_p, Fvariable_binding_locus):
21935 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
21936 * alloc.c (allocate_buffer): Set the size and tag.
21937 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
21938 Use XMISCANY.
21939 (die): Follow the GNU convention for error messages.
21940 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
21941 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
21942 tag any more.
21943 (set_buffer_internal_1):
21944 * frame.c (store_frame_param):
21945 * eval.c (specbind):
21946 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
21947
21948 * doc.c (Fsnarf_documentation): Simplify.
21949
21950 2007-10-14 Juanma Barranquero <lekktu@gmail.com>
21951
21952 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
21953 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
21954
21955 2007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
21956
21957 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
21958
21959 2007-10-14 Juanma Barranquero <lekktu@gmail.com>
21960
21961 * eval.c (do_autoload): Don't save autoloads.
21962
21963 * data.c (Ffset): Save autoload of the function being set.
21964
21965 2007-10-07 John Paul Wallington <jpw@pobox.com>
21966
21967 * xfns.c (x_create_tip_frame): Set the `display-type' frame
21968 parameter before setting up faces.
21969
21970 2007-10-13 Eli Zaretskii <eliz@gnu.org>
21971
21972 * ccl.c (Fregister_code_conversion_map):
21973 * keyboard.c (append_tool_bar_item): Reformat last change.
21974
21975 * lisp.h (eabs): Rename from `abs'. All callers changed.
21976
21977 2007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
21978
21979 * buffer.c (add_overlay_mod_hooklist):
21980 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
21981 * fontset.c (make_fontset):
21982 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
21983 (append_tool_bar_item):
21984 * macmenu.c (grow_menu_items):
21985 * w32menu.c (grow_menu_items):
21986 * xmenu.c (grow_menu_items): Use larger_vector.
21987
21988 2007-10-13 Eli Zaretskii <eliz@gnu.org>
21989
21990 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
21991 selected frame'' on MSDOS).
21992
21993 2007-10-12 Martin Rudalics <rudalics@gmx.at>
21994
21995 * frame.c (Qexplicit_name): New variable.
21996 (x_report_frame_params): Report it in parameter alist.
21997 (syms_of_frame): Intern and staticpro it.
21998
21999 2007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
22000
22001 * macfns.c (x_create_tip_frame): Set terminal for frame.
22002
22003 2007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
22004
22005 * frame.c (Qenvironment): Remove.
22006 (syms_of_frame) <Qenvironment>: Don't initialize.
22007 (Fdelete_frame): Don't treat the `environment' param specially.
22008 * frame.h (Qenvironment): Don't declare.
22009 * callproc.c (set_initial_environment): Don't set unused frame param.
22010
22011 * frame.c (Fframe_with_environment): Remove.
22012 (syms_of_frame) <Sframe_with_environment>: Don't declare.
22013
22014 * lisp.h (Fframe_with_environment): Don't declare.
22015
22016 2007-10-10 Juanma Barranquero <lekktu@gmail.com>
22017
22018 * indent.c (indent_tabs_mode, last_known_column)
22019 (last_known_column_modified): Make static.
22020 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
22021
22022 2007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
22023
22024 * puresize.h (BASE_PURESIZE): Increase to 1170000.
22025
22026 2007-10-09 Jason Rumney <jasonr@gnu.org>
22027
22028 * w32term.c (x_set_window_size): Disable code that attempts to tell
22029 Lisp code about a size change before it actually happens.
22030
22031 2007-10-09 Richard Stallman <rms@gnu.org>
22032
22033 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
22034 return HANDLED_RETURN.
22035
22036 2007-10-08 Martin Rudalics <rudalics@gmx.at>
22037
22038 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
22039 when there's an unread command event.
22040
22041 * frame.c (focus_follows_mouse): Move here from frame.el to allow
22042 window autoselection act appropriately when leaving selected frame.
22043 (syms_of_frame): Initialize focus_follows_mouse.
22044 * frame.h (focus_follows_mouse): Extern it.
22045 * macterm.c (XTread_socket): When focus_follows_mouse is nil
22046 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
22047 * msdos.c (dos_rawgetc): Likewise.
22048 * w32term.c (w32_read_socket): Likewise.
22049 * xterm.c (handle_one_xevent): Likewise.
22050 * xdisp.c (syms_of_xdisp): In doc-string of
22051 mouse-autoselect-window mention focus-follows-mouse.
22052
22053 2007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22054
22055 * macterm.c (mac_load_query_font): Fix missing return value.
22056 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
22057 Add BLOCK_INPUT.
22058
22059 2007-10-08 Richard Stallman <rms@gnu.org>
22060
22061 * xdisp.c (get_window_cursor_type): Implement documented behavior
22062 for cursor-in-non-selected-windows = t.
22063
22064 2007-10-08 Jason Rumney <jasonr@gnu.org>
22065
22066 * w32.c (w32_get_resource): Always close registry keys.
22067
22068 2007-10-08 Jason Rumney <jasonr@gnu.org>
22069
22070 * makefile.w32-in (LIBS): Add COMCTL32.
22071
22072 * w32fns.c (globals_of_w32fns): Init common controls.
22073
22074 2007-10-08 Richard Stallman <rms@gnu.org>
22075
22076 * image.c (our_memory_buffer): Rename from omfib_buffer.
22077
22078 2007-10-08 Richard Stallman <rms@gnu.org>
22079
22080 * buffer.c (Foverlays_at): Doc fix.
22081
22082 2007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
22083
22084 * fns.c (Fplist_put): Preserve uneven tail data.
22085
22086 2007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
22087
22088 * termhooks.h (enum event_kind): Remove trailing comma.
22089
22090 * frame.h (enum): Remove trailing comma.
22091
22092 2007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
22093
22094 * w32proc.c (delete_child): Don't terminate threads of zombies.
22095
22096 2007-10-08 Martin Rudalics <rudalics@gmx.at>
22097
22098 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
22099
22100 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
22101 last-repeatable-command.
22102 (init_kboard): Initialize Vlast_repeatable_command.
22103 (command_loop_1): Set it to real_this_command unless that was
22104 bound to an input event.
22105 (mark_kboards): Mark it.
22106
22107 2007-10-08 Richard Stallman <rms@gnu.org>
22108
22109 * eval.c (condition-case): Doc fix.
22110
22111 2007-10-08 Masatake YAMATO <jet@gyve.org>
22112
22113 * xfaces.c (tty_supports_face_attributes_p): Fix code
22114 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
22115 was copied and not edited.
22116
22117 2007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
22118
22119 Add new `input-decode-map' keymap and use it for terminal
22120 escape sequences.
22121 * keyboard.h (struct kboard): Add Vinput_decode_map.
22122 Remove Vlocal_key_translation_map.
22123 * keyboard.c (read_key_sequence): Add support for input-decode-map.
22124 (init_kboard): Init input-decode-map.
22125 Replace local-key-translation-map back with key-translation-map.
22126 (syms_of_keyboard): Declare input-decode-map.
22127 Remove local-key-translation-map. Update docstrings.
22128 (mark_kboards): Mark Vinput_decode_map.
22129 Don't mark Vlocal_key_translation_map.
22130 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
22131 Replace local-key-translation-map back with key-translation-map.
22132 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
22133 Bind in input-decode-map rather than function-key-map.
22134
22135 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
22136 This was made redundant by the previous introduction of XSETPVECTYPE.
22137
22138 2007-10-09 Richard Stallman <rms@gnu.org>
22139
22140 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
22141
22142 2007-09-29 Richard Stallman <rms@gnu.org>
22143
22144 * eval.c (internal_condition_case_2, internal_condition_case_1)
22145 (internal_condition_case): Reenable abort if x_catching_errors ()
22146 to see if that really happens and why.
22147
22148 2007-10-06 Andreas Schwab <schwab@suse.de>
22149
22150 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
22151
22152 2007-10-04 Juanma Barranquero <lekktu@gmail.com>
22153
22154 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
22155
22156 2007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
22157
22158 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
22159
22160 2007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
22161
22162 * window.h (struct window):
22163 * window.c (struct save_window_data, struct saved_window):
22164 * termhooks.h (struct terminal):
22165 * process.h (struct Lisp_Process):
22166 * frame.h (struct frame):
22167 * buffer.h (struct buffer):
22168 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
22169 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
22170 The size field of (pseudo)vectors is now unsigned.
22171 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
22172
22173 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
22174 Turn `count' into an integer.
22175
22176 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
22177 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
22178 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
22179 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
22180 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
22181
22182 * alloc.c (allocate_pseudovector): New fun.
22183 (ALLOCATE_PSEUDOVECTOR): New macro.
22184 (allocate_window, allocate_terminal, allocate_frame)
22185 (allocate_process): Use it.
22186 (mark_vectorlike): New function.
22187 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
22188 (mark_terminals): Use it.
22189 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
22190 (Fmake_byte_code): Use XSETPVECTYPE.
22191
22192 * frame.c (Fframe_parameters): Minor simplification.
22193
22194 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
22195
22196 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
22197
22198 * buffer.c (Fget_buffer_create, init_buffer_once):
22199 * lread.c (defsubr):
22200 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
22201
22202 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
22203 defined differently in the m/*.h files.
22204 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
22205 (XSETPVECTYPE): New macro.
22206 (XSETPSEUDOVECTOR): Use it.
22207
22208 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
22209 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
22210
22211 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
22212 * lread.c (defvar_per_buffer):
22213 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
22214
22215 * window.c (candidate_window_p): Only consider as visible frames that
22216 are on the same terminal.
22217
22218 * m/ibms390x.h (MARKBIT): Remove unused macro.
22219
22220 2007-10-01 Juanma Barranquero <lekktu@gmail.com>
22221
22222 * lread.c (Fload): Fix typo in docstring.
22223
22224 2007-10-01 Michaël Cadilhac <michael@cadilhac.name>
22225
22226 * floatfns.c (Fexpt): Manually check for overflows, so that a power
22227 of a non-zero value can't yield zero.
22228
22229 2007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
22230
22231 * term.c (term_clear_mouse_face, term_mouse_highlight)
22232 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
22233
22234 * print.c (safe_debug_print): Use XHASH.
22235
22236 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
22237 Lisp elements such as tags.
22238 (XHASH): New macro.
22239 (EQ): Use it.
22240 (SREF, SSET, STRING_COPYIN): Use SDATA.
22241 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
22242
22243 * alloc.c (mark_terminal): Remove left-over declaration.
22244 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
22245 (allocate_vectorlike): Remove type argument. Adjust callers.
22246 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
22247 Only handle the one remaining MEM_TYPE_VECTORLIKE.
22248
22249 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
22250 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
22251 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
22252 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
22253 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
22254 Use them.
22255
22256 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
22257 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
22258 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
22259
22260 2007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
22261
22262 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
22263 loaded by default.
22264
22265 2007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
22266
22267 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
22268 on this tty.
22269 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
22270
22271 * term.c (mouse_face_window): Rename from Qmouse_face_window.
22272 Update all users.
22273 (handle_one_term_event): Use Gpm_DrawPointer.
22274 (Fgpm_mouse_start): Rename from Fterm_open_connection.
22275 Signal errors instead of returning nil. Always return nil.
22276 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
22277 Make it a noop if gpm-mouse was not activated.
22278 (syms_of_term): Update names.
22279
22280 2007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
22281
22282 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
22283 (init_sys_modes): Check that gpm_tty is the current tty.
22284
22285 * alloc.c (allocate_terminal): Set the vector size to only count the
22286 lisp fields. Initialize those to nil.
22287 (mark_object): Don't treat terminals specially.
22288 (mark_terminal): Remove.
22289 (mark_terminals): Use mark_object instead.
22290
22291 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
22292 the GC to the beginning.
22293
22294 * indent.h:
22295 * indent.c: Use EMACS_INT for ints coming from Elisp data.
22296
22297 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
22298
22299 2007-09-25 Jason Rumney <jasonr@gnu.org>
22300
22301 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
22302
22303 * w32console.c (create_w32cons_output): Remove.
22304
22305 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
22306
22307 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
22308 (reset_sys_modes): Use reset_terminal_modes_hook.
22309
22310 2007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
22311
22312 * eval.c (do_autoload): Don't output any message.
22313
22314 2007-09-24 Juri Linkov <juri@jurta.org>
22315
22316 * emacs.c (standard_args): Change priority of "--no-splash"
22317 from 40 to 3. Add "--no-desktop" with the same priority.
22318
22319 2007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
22320
22321 * alloc.c (gc_sweep): Check cons cell mark bits word by word
22322 and optimize the case where they are all 1.
22323
22324 2007-09-23 Johannes Weiner <hannes@saeurebad.de>
22325
22326 * lisp.h (abs): Define if not defined.
22327 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
22328 Don't define `abs', since it's defined in lisp.h.
22329
22330 2007-09-22 Eli Zaretskii <eliz@gnu.org>
22331
22332 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
22333 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
22334 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
22335 (init_tty): Use DEV_TTY instead of "/dev/tty".
22336 [WINDOWSNT]: No need to protect from NAME arg being null.
22337
22338 2007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
22339
22340 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
22341 up the tty state.
22342
22343 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
22344
22345 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
22346 (gpm_tty): Change its type.
22347 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
22348 (gpm_tty): Change its type and initialize it.
22349 (Fterm_open_connection): Check the frame is indeed a tty.
22350 Use the new gpm_tty.
22351 (Fterm_close_connection): Use the new gpm_tty.
22352 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
22353 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
22354
22355 2007-09-21 Juanma Barranquero <lekktu@gmail.com>
22356
22357 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
22358 underline_color, to draw strike-through.
22359
22360 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
22361
22362 * lisp.h (allocate_terminal): Declare.
22363
22364 * window.c (candidate_window_p): Consider frames that are being placed
22365 by the user as somewhere between visible and iconified.
22366 (window_loop): Prefer windows on the current frame.
22367 (Fselect_window): Move the use of select-frame to the beginning so we
22368 can just delegate all the work (it'll call us back anyway).
22369
22370 * frame.c (Qdisplay_environment_variable):
22371 * frame.h (Qdisplay_environment_variable): Delete.
22372
22373 * .gdbinit (xbacktrace): Print the arg's address rather than the value
22374 of the first arg, since that value may be a union.
22375
22376 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
22377 parameter rather than Qdisplay_environment_variable. If all else
22378 fails, look for DISPLAY in initial-environment.
22379
22380 2007-09-21 Glenn Morris <rgm@gnu.org>
22381
22382 * Makefile.in (emacstool): Remove target.
22383 (lisp, shortlisp): Remove termdev.elc.
22384
22385 2007-09-21 Markus Triska <markus.triska@gmx.at>
22386
22387 * xterm.c (x_delete_display): Compile session management conditionally.
22388
22389 2007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
22390
22391 * callproc.c (getenv_internal_1): New function.
22392 (getenv_internal): Use it.
22393 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
22394
22395 * terminal.c (get_terminal): Don't accept ints to represent terminals.
22396 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
22397 (Fset_terminal_parameter): Work with dead terminals as well.
22398 (Fmodify_terminal_parameters): Remove.
22399
22400 * terminal.c (get_terminal): Handle terminals.
22401 Make sure the terminal returned is live.
22402 (create_terminal): Use allocate_terminal.
22403 (mark_terminals): Move to alloc.c.
22404 (delete_terminal): Use terminal->name as liveness status.
22405 NULL out fields after freeing their contents.
22406 Don't deallocate the object.
22407 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
22408 rather than an int.
22409 (Fterminal_live_p): Accept non-integer arguments.
22410 (Fterminal_list): Return terminal objects rather than an ints.
22411
22412 * alloc.c (enum mem_type): New member for `terminal' objects.
22413 (allocate_terminal): New function.
22414 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
22415 Handle terminals.
22416 (mark_terminal): New fun.
22417 (mark_terminals): Move from terminal.c.
22418
22419 * term.c (get_tty_terminal): Don't treat output_initial specially.
22420 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
22421 (delete_tty): Use terminal->name as liveness status.
22422
22423 * termhooks.h (struct terminal): Make it into a pseudovector.
22424 Remove `deleted' replaced by checking `name's nullness.
22425
22426 * print.c (print_object): Handle terminals.
22427
22428 * lisp.h (enum pvec_type): New `terminal' pseudovector.
22429 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
22430
22431 * frame.c (make_terminal_frame):
22432 * keyboard.c (tty_read_avail_input):
22433 * w32term.c (x_delete_terminal):
22434 * xfns.c (Fx_create_frame, x_create_tip_frame):
22435 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
22436
22437 2007-09-20 Glenn Morris <rgm@gnu.org>
22438
22439 * process.c (Fmake_network_process): Doc fix.
22440
22441 2007-09-19 Jason Rumney <jasonr@gnu.org>
22442
22443 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
22444
22445 2007-09-19 Michaël Cadilhac <michael@cadilhac.name>
22446
22447 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
22448 Fix a C warning regarding variable constness.
22449
22450 * xterm.c (handle_one_xevent): Fix a C warning.
22451
22452 2007-09-18 Jason Rumney <jasonr@gnu.org>
22453
22454 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
22455
22456 2007-09-17 Jan Djärv <jan.h.d@swipnet.se>
22457
22458 * gtkutil.c (gdpy_def): New variable.
22459 (xg_initialize): Initialize gdpy_def.
22460 (xg_display_close): If no other display exists, set gdpy_def to a
22461 new connection.
22462
22463 2007-09-16 Jan Djärv <jan.h.d@swipnet.se>
22464
22465 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
22466 when we have no file name for the icon.
22467 (xg_tool_bar_expose_callback): Remove.
22468 (xg_create_tool_bar): Don't connect expose signal to
22469 xg_tool_bar_expose_callback.
22470 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
22471
22472 2007-09-16 Andreas Schwab <schwab@suse.de>
22473
22474 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
22475 values instead of zapping them.
22476
22477 2007-09-14 Glenn Morris <rgm@gnu.org>
22478
22479 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
22480 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
22481 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
22482 scope and rename to omfib_buffer for clarity.
22483 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
22484
22485 2007-09-14 Kenichi Handa <handa@m17n.org>
22486
22487 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
22488
22489 2007-09-13 Jason Rumney <jasonr@gnu.org>
22490
22491 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
22492
22493 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
22494
22495 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
22496 (mac_term_init): Call here instead, passing rif.
22497
22498 2007-09-13 Glenn Morris <rgm@gnu.org>
22499
22500 * s/hpux.h: No longer define `static' as nothing.
22501
22502 2007-09-13 Johan Bockgård <bojohan@gnu.org>
22503
22504 * callint.c (Fcall_interactively): Remove unused var `fun'.
22505
22506 2007-09-12 Romain Francoise <romain@orebokech.com>
22507
22508 * window.c (prefer_window_split_horizontally, display_buffer):
22509 Revert 2007-09-08 change.
22510
22511 2007-09-12 Glenn Morris <rgm@gnu.org>
22512
22513 * alloca.c: Remove file.
22514 * Makefile.in (alloca): Do not undef.
22515 (allocaobj, alloca.o): Remove.
22516 (otherobj): Remove allocaobj.
22517 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
22518 * regex.c (C_ALLOCA): Remove all references and code that was only
22519 used when this was defined.
22520 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
22521 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
22522 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
22523
22524 * Makefile.in (SOURCES, unlock, relock): Delete.
22525
22526 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
22527 (menu_grab_callback): All uses changed.
22528
22529 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
22530 (x_reply_selection_request): All uses changed.
22531
22532 2007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
22533
22534 * lread.c (load_warn_old_style_backquotes): Change message to look
22535 better when it appears in the middle of byte-compiler messages.
22536
22537 2007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
22538
22539 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
22540
22541 * xterm.c (x_create_terminal): Add comment.
22542
22543 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
22544
22545 2007-09-10 Richard Stallman <rms@gnu.org>
22546
22547 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
22548
22549 2007-09-10 Michaël Cadilhac <michael@cadilhac.name>
22550
22551 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
22552 (DEFUN): Document `intspec', use it instead of `prompt'.
22553
22554 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
22555
22556 * data.c (Finteractive_form): If the interactive specification starts
22557 with a `(', use it as a Lisp form.
22558
22559 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
22560 name and file modes.
22561
22562 * callint.c (Fcall_interactively): Comment fixes.
22563
22564 2007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
22565
22566 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
22567 and compiled functions.
22568
22569 2007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
22570
22571 * window.c (prefer_window_split_horizontally): New variable.
22572 (display_buffer): Consider splitting window horizontally depending
22573 on prefer_window_split_horizontally.
22574
22575 2007-09-08 Eli Zaretskii <eliz@gnu.org>
22576
22577 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
22578
22579 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
22580
22581 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
22582
22583 * frame.c (x_set_frame_parameters): Check number is positive before
22584 using XFASTINT.
22585
22586 * window.c (freeze_window_start): Don't presume selected_window holds
22587 a window object.
22588 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
22589
22590 2007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
22591
22592 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
22593
22594 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
22595
22596 * window.c (Vsplit_window_preferred_function): New var.
22597 (Fdisplay_buffer): Use it.
22598 (syms_of_window): Export, and initialize it.
22599
22600 2007-09-06 Pixel <pixel@mandriva.com> (tiny change)
22601
22602 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
22603
22604 2007-09-06 Glenn Morris <rgm@gnu.org>
22605
22606 * gtkutil.c (menu_grab_callback) <cnt>:
22607 * xselect.c (x_reply_selection_request) <cnt>: Move static
22608 variable to file scope.
22609
22610 2007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
22611
22612 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
22613 consistent values of selected_frame and selected_window.
22614
22615 2007-09-04 Jason Rumney <jasonr@gnu.org>
22616
22617 * w32console.c (initialize_w32_display): Zero unused hooks.
22618
22619 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
22620
22621 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
22622 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
22623
22624 2007-09-04 Jason Rumney <jasonr@gnu.org>
22625
22626 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
22627 in w32console.c. Set up input. Remove XXX comments that have been
22628 confirmed as correct.
22629
22630 * s/ms-w32.h (MULTI_KBOARD): Define.
22631
22632 * w32console.c (one_and_only_w32cons): Remove.
22633 (initialize_w32_display): Take terminal argument.
22634
22635 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
22636 initialize_w32_display.
22637 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
22638
22639 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
22640
22641 * keyboard.c (discard_mouse_events): Discard it.
22642 (make_lispy_event): Translate it to a lisp event.
22643 (lispy_wheel_names): Add wheel-left and right events.
22644 (syms_of_keyboard): Enlarge wheel_syms.
22645
22646 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
22647 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
22648
22649 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
22650
22651 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
22652 from WM_MOUSEHWHEEL.
22653 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
22654
22655 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
22656 terminal.
22657
22658 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
22659 keyboard for the terminal.
22660
22661 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
22662
22663 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
22664 (Vresume_tty_hook): Rename from Vresume_tty_functions.
22665 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
22666 and resume-tty-function to resume-tty-hook.
22667 (Fsuspend_tty, Fresume_tty): Use new names.
22668
22669 2007-09-02 Jan Djärv <jan.h.d@swipnet.se>
22670
22671 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
22672 if it starts with "n:".
22673
22674 2007-08-31 Jan Djärv <jan.h.d@swipnet.se>
22675
22676 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
22677
22678 2007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
22679
22680 * frame.h:
22681 * frame.c (Qterm_environment_variable): Remove.
22682 (syms_of_frame): Don't init and staticpro it.
22683
22684 * callproc.c (getenv_internal): Remove special case for $TERM.
22685
22686 * callproc.c (Vinitial_environment): New variable.
22687 (set_initial_environment): Initialize it.
22688 (syms_of_callproc): Declare it.
22689 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
22690 TERM under which a process runs is never related to the TERM in which
22691 Emacs is running.
22692
22693 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
22694
22695 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
22696 * s/darwin.h: ... do it here.
22697
22698 2007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
22699
22700 * lisp.h (set_initial_environment): Rename from set_global_environment.
22701
22702 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
22703 removed by mistake on the multi-tty branch.
22704
22705 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
22706 (Fmodify_frame_parameters): Return a value.
22707
22708 * image.c (png_load): Comment-out var only used in commented-out code.
22709
22710 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
22711 before passing it to mark_object.
22712
22713 * xfaces.c (internal_resolve_face_name): Return a value.
22714 (internal_resolve_face_name, resolve_face_name_error): Comment out.
22715
22716 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
22717 (x_icon): Comment-out var only used in commented-out code.
22718
22719 2007-08-29 Romain Francoise <romain@orebokech.com>
22720
22721 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
22722 QUIT hasn't been provided.
22723
22724 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
22725
22726 * callproc.c (child_setup, getenv_internal): Use the
22727 display-environment-variable and term-environment-variable frame params.
22728 (set_initial_environment): Initialise Vprocess_environment.
22729
22730 * config.in: Disable multi-keyboard support on a mac.
22731
22732 * frame.c (Qterm_environment_variable)
22733 (Qdisplay_environment_variable): New variables.
22734 (syms_of_frame): Intern and staticpro them.
22735 (Fmake_terminal_frame): Disable output method test.
22736
22737 * frame.h: Declare them here.
22738
22739 * macfns.c (x_set_mouse_color): Get rif from the frame.
22740 (x_set_tool_bar_lines): Don't use updating_frame.
22741 (mac_window): Add 2 new parameters for consistency with other systems.
22742 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
22743 frame parameters following what is done in X11 and w32. Don't use
22744 FRAME_MAC_DISPLAY_INFO.
22745 (Fx_open_connection, start_hourglass): Remove window-system check.
22746 (x_create_tip_frame): Get the keyboard from the terminal.
22747
22748 * macmenu.c: Reorder includes.
22749 (Fx_popup_menu): Use terminal specific mouse_position_hook.
22750
22751 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
22752 terminal parameter.
22753 (x_clear_frame): Add a frame parameter.
22754 (note_mouse_movement): Get rif from the frame.
22755 (mac_term_init): Initialize the terminal.
22756 (mac_initialize): Make static and move terminal initialization ...
22757 (mac_create_terminal): ... to this new function.
22758
22759 * macterm.h (struct mac_display_info): Add terminal.
22760 (mac_initialize): Delete declaration.
22761
22762 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
22763
22764 * sysdep.c: Comment out text after #endif.
22765
22766 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
22767 is defined. Better initialize ttys in windows. Use terminal
22768 specific mouse_position_hook.
22769
22770 * termhooks.h (union display_info): Add mac_display_info.
22771
22772 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
22773 Set the default minibuffer frame, window_system and the rest of the
22774 frame parameters following what is done in X11.
22775
22776 * w32term.c (w32_initialize): Make static.
22777
22778 * xselect.c (x_handle_selection_clear): Only access
22779 terminal->kboard when MULTI_KBOARD is defined.
22780
22781 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
22782 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
22783
22784 2007-08-29 Jason Rumney <jasonr@gnu.org>
22785
22786 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
22787 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
22788
22789 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
22790 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
22791
22792 * keyboard.c (restore_kboard_configuration): Only define when
22793 MULTI_KBOARD defined.
22794
22795 * makefile.w32-in: Update dependancies from Makefile.in.
22796 (OBJ1): Add terminal.$(O)
22797
22798 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
22799 Don't define function body.
22800 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
22801
22802 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
22803
22804 * w32.c (request_sigio, unrequest_sigio): Remove.
22805
22806 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
22807 (w32con_clear_frame, w32con_clear_end_of_line)
22808 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
22809 (w32con_delete_glyphs, w32con_set_terminal_window)
22810 (scroll_line, w32_sys_ring_bell): Add frame arg.
22811 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
22812 Add terminal arg.
22813 (PICK_FRAME): Remove.
22814 (w32con_write_glyphs): Use frame specific terminal coding.
22815 (one_and_only_w32cons): New global variable.
22816 (initialize_w32_display): Use it for storing hooks.
22817 (create_w32cons_output): New function.
22818
22819 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
22820 arg a frame.
22821
22822 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
22823 Set window_system.
22824 (x_set_tool_bar_lines): Don't use updating_frame.
22825 (Fx_create_frame): Set terminal and ref count.
22826 (Fx_open_connection): Remove window-system check.
22827
22828 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
22829
22830 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
22831 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
22832 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
22833 Add frame arg.
22834 (x_delete_terminal, w32_create_terminal): New functions.
22835 (w32_term_init): Create a terminal.
22836 (w32_initialize): Move terminal specific initialization to
22837 w32_create_terminal.
22838
22839 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
22840 (w32_clear_rect, w32_clear_area): Use background from frame.
22841 (w32_display_info): Add terminal.
22842 (w32_sys_ring_bell, x_delete_display): Declare here.
22843
22844 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
22845
22846 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
22847
22848 2007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
22849
22850 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
22851 Fix get_named_tty calls for the controlling tty.
22852
22853 2007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
22854
22855 * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
22856
22857 2007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
22858
22859 * term.c (tty_insert_glyphs): Add missing first parameter.
22860
22861 2007-08-29 Károly Lőrentey <karoly@lorentey.hu>
22862
22863 * buffer.c (Fbuffer_list, Fbury_buffer):
22864 Take frame->buried_buffer_list into account.
22865
22866 * cm.c (current_tty): New variable, for cmputc().
22867 (cmputc): Use it.
22868 (cmcheckmagic): Add tty parameter, look up terminal streams there.
22869 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
22870 (cmgoto): Add tty parameter. Pass it on to calccost().
22871 Use emacs_tputs() instead of tputs().
22872
22873 * cm.h (emacs_tputs): New macro to set current_tty, and then call
22874 tputs().
22875 (current_tty): New variable, for cmputc().
22876 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
22877
22878 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
22879 (internal_condition_case, internal_condition_case_1)
22880 (internal_condition_case_2): Don't abort when x_catching_errors.
22881
22882 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
22883 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
22884 prevent crashes caused by bogus longjmps in read_char.
22885
22886 * keymap.h (Fset_keymap_parent): Add EXFUN.
22887
22888 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
22889 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
22890 Remove redundant definition.
22891
22892 * macfns.c (x_set_mouse_color, x_make_gc):
22893 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22894
22895 * w32term.c (x_free_frame_resources):
22896 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22897 (w32_initialize): Use the accessor macros for terminal characteristics.
22898
22899 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
22900 Use the accessor macros for terminal characteristics.
22901 * msdos.c (internal_terminal_init): Use the accessor macros for
22902 terminal characteristics.
22903 (ScreenVisualBell, internal_terminal_init):
22904 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22905
22906 * termopts.h (no_redraw_on_reenter): Declare.
22907
22908 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
22909 (mark_terminals, mark_ttys): Declare.
22910 (Fgarbage_collect): Call them.
22911 (mark_object): Mark buried_buffer_list.
22912
22913 * prefix-args.c: Include stdlib.h for exit.
22914
22915 * syssignal.h: Add comment.
22916
22917 * indent.c: Include stdio.h.
22918
22919 * window.h (Vinitial_window_system): Declare.
22920 (Vwindow_system): Delete declaration.
22921
22922 * fontset.c (Finternal_char_font): Use FRAME_RIF.
22923
22924 * image.c (lookup_image): Don't initialize `c' until the xasserts
22925 have been run.
22926
22927 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
22928 FRAME_FOREGROUND_PIXEL.
22929
22930 * print.c (print_preprocess): Don't lose print_depth levels while
22931 iterating.
22932
22933 * widget.c (update_from_various_frame_slots):
22934 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22935
22936 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
22937 frames.
22938 (window_internal_height): Remove bogus make_number call.
22939 (init_window_once): Call make_terminal_frame with two zero parameters.
22940
22941 * fileio.c (Fread_file_name): Update comment.
22942
22943 * callint.c (Fcall_interactively):
22944 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
22945 Make sure it is correctly unwound.
22946
22947 * xsmfns.c (x_session_close): New function.
22948
22949 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
22950 Delete declarations.
22951
22952 * xterm.h: Remove declaration for x_fully_uncatch_errors.
22953 (x_output): Remove background_pixel and foreground_pixel fields.
22954 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
22955 (x_delete_device, x_session_close): Declare.
22956
22957 * lread.c: Include setjmp.h. Update declaration of `read_char'.
22958 (read_filtered_event): Call `read_char' with a local
22959 `wrong_kboard_jmpbuf'.
22960
22961 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
22962 Don't call single_kboard_state. Use FRAME_RIF.
22963
22964 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
22965 systems.
22966
22967 * lisp.h (set_process_environment): Rename to `set_global_environment'.
22968 (Fframe_with_environment, Fset_input_meta_mode)
22969 (Fset_quit_char): EXFUN.
22970 (x_create_device, tty_output, terminal, tty_display_info): Declare.
22971 (init_sys_modes, reset_sys_modes): Update prototypes.
22972 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
22973
22974 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
22975 Vlocal_key_translation_map, and Vkeyboard_translate_table.
22976 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
22977 Delete declarations.
22978 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
22979 (temporarily_switch_to_single_kboard, tty_read_avail_input):
22980 New declarations.
22981
22982 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
22983 already does that during init_display(). Call syms_of_keymap
22984 before syms_of_keyboard. Call `syms_of_terminal'.
22985 Call set_initial_environment, not set_process_environment.
22986 (shut_down_emacs): Call reset_all_sys_modes() instead of
22987 reset_sys_modes().
22988
22989 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
22990 (internal_resolve_face_name, resolve_face_name_error): New functions.
22991 (resolve_face_name): Protect against loops and errors thrown by Fget.
22992 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
22993 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
22994
22995 * scroll.c: Replace CURTTY() with local variables throughout the
22996 file (where applicable).
22997 (calculate_scrolling, calculate_direct_scrolling)
22998 (scrolling_1, scroll_cost): Use the accessor macros for terminal
22999 characteristics.
23000
23001 * keymap.c (Vfunction_key_map): Remove.
23002 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
23003 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
23004 (Vkey_translation_map): Remove.
23005 (syms_of_keymap): Remove DEFVAR for key-translation-map.
23006 (Fdescribe_buffer_bindings)
23007 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
23008 Update for terminal-local key-translation-map.
23009
23010 * Makefile.in (callproc.o): Update dependencies.
23011 (lisp, shortlisp): Add termdev.elc.
23012 (obj): Add terminal.o.
23013 (terminal.o): Add dependencies.
23014 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
23015 (data.o, fns.o): Add termhooks.h dependency.
23016 (SOME_MACHINE_LISP): Add dnd.elc.
23017 (minibuf.o): Fix typo.
23018 Update dependencies.
23019
23020 * data.c (do_symval_forwarding, store_symval_forwarding)
23021 (find_symbol_value): Use the selected frame's keyboard, not
23022 current_kboard.
23023
23024 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
23025 Vwindow_system.
23026
23027 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
23028 Fmenu_bar_open.
23029 (syms_of_xmenu): Update defsubr.
23030 (mouse_position_for_popup, Fx_popup_menu)
23031 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
23032 (set_frame_menubar, free_frame_menubar)
23033 (create_and_show_popup_menu, xmenu_show)
23034 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
23035 an X frame.
23036
23037 * xselect.c (x_own_selection): Abort if not an X frame.
23038 (some_frame_on_display): Check if it is an X frame.
23039 (x_handle_selection_clear): Deal with MULTI_KBOARD.
23040
23041 * coding.c: Include frame.h and termhooks.h.
23042 (terminal_coding, keyboard_coding): Delete.
23043 (Fset_terminal_coding_system_internal)
23044 (Fset_keyboard_coding_system_internal)
23045 (Fkeyboard_coding_system)
23046 (Fterminal_coding_system): Add a terminal parameter.
23047 Get terminal_coding from the terminal.
23048 (init_coding_once): Don't call setup_coding_system here.
23049
23050 * dispextern.h (set_scroll_region, turn_off_insert)
23051 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
23052 (tty_clear_end_of_line, tty_setup_colors)
23053 (delete_tty, updating_frame)
23054 (produce_special_glyphs, produce_glyphs, write_glyphs)
23055 (insert_glyphs): Remove.
23056 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
23057 (tty_turn_off_highlight, get_tty_size): Add declaration.
23058 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
23059
23060 * frame.h (enum output_method): Add output_initial.
23061 (struct x_output): Delete.
23062 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
23063 Access foreground_pixel and background_pixel directly from the frame.
23064 (tty_display): Delete.
23065 (struct frame): Add buried_buffer_list, foreground_pixel,
23066 background_pixel and terminal. Delete kboard.
23067 (union output_data): Add tty.
23068 (FRAME_KBOARD): Get the kboard from the terminal.
23069 (FRAME_INITIAL_P): New macro.
23070 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
23071 (Qterm_environment_variable, Qdisplay_environment_variable)
23072 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
23073 New declarations.
23074
23075 * termchar.h (tty_output, tty_display_info): New structures.
23076 (tty_list): Declare.
23077 (FRAME_TTY, CURTTY): New macros.
23078 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
23079 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
23080 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
23081 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
23082
23083 * callproc.c: Include frame.h and termhooks.h, for terminal
23084 parameters.
23085 (add_env): New function.
23086 (child_setup): Use it.
23087 (child_setup, getenv_internal): Handle the new Vprocess_environment.
23088 (getenv_internal): Fix get_terminal_param call.
23089 (Fgetenv_internal, egetenv): Update doc.
23090 (syms_of_callproc): Initialize Vprocess_environment to nil.
23091 Register and initialize them. Remove obsolete defvars. Update doc
23092 strings.
23093 (child_setup): Handle Vlocal_environment_variables.
23094 (getenv_internal): Add terminal parameter.
23095 Handle Vlocal_environment_variables.
23096 (Fgetenv_internal): Add terminal parameter.
23097 (child_setup, getenv_internal, Fgetenv_internal): Store the local
23098 environment in a frame (not terminal) parameter. Update doc strings.
23099 (set_initial_environment): Rename from set_global_environment.
23100 Store Emacs environment in initial frame parameter.
23101
23102 * xdisp.c (redisplay_internal): Update references to
23103 `previous_terminal_frame'.
23104 (display_mode_line, Fformat_mode_line): Replace calls to
23105 `push_frame_kboard' with `push_kboard'.
23106 (get_glyph_string_clip_rects): Add extra parentheses and
23107 braces to prevent compiler warnings.
23108 (calc_pixel_width_or_height): Add xassert to check that the
23109 frame is alive. Don't call `lookup_image' on a termcap frame.
23110 (message2_nolog, message3_nolog, redisplay_internal)
23111 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
23112 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
23113 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
23114 (Fx_display_pixel_width, Fx_display_pixel_height)
23115 (Fx_display_planes, Fx_display_color_cells)
23116 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
23117 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
23118 (Fx_display_backing_store, Fx_display_visual_class)
23119 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
23120 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
23121
23122 * xfns.c (x_set_foreground_color x_set_background_color)
23123 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
23124 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
23125 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
23126 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
23127 terminal that is being deleted.
23128 (Fx_create_frame): Use `store_frame_param' to set `window-system'
23129 frame parameter, and make sure it overrides any user-supplied setting.
23130 (Fx_close_connection, Fx_synchronize): Unify argument names with
23131 the rest of the DEFUNs.
23132
23133 * dispnew.c (Fsend_string_to_terminal): Update call to
23134 `get_tty_terminal'.
23135 (Fredraw_frame, Fsend_string_to_terminal)
23136 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
23137 FRAME_TERMCAP_P and FRAME_TTY.
23138 (window_change_signal): Don't believe width/height values that are
23139 impossibly small.
23140 (Vinitial_window_system): Rename from Vwindow_system.
23141 (termscript, Wcm, rif): Delete.
23142
23143 * termhooks.h (struct terminal): New struct containing the
23144 previously global text display hooks and new members NAME,
23145 DELETED and PARAM_ALIST.
23146 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
23147 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
23148 (FRAME_RIF): New macros.
23149 (get_terminal_param, get_device): New declarations.
23150 (termscript): Delete declaration.
23151
23152 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
23153 (XTflash, x_free_frame_resources, x_scroll_bar_create)
23154 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
23155 FRAME_FOREGROUND_PIXEL.
23156 (x_fully_uncatch_errors): Disable definition.
23157 (x_scroll_bar_expose): Fix reference to foreground pixel.
23158 (XTread_socket): Disable loop on all X displays.
23159 (x_delete_terminal): Don't set terminal->deleted and let
23160 delete_terminal delete the frames on the terminal.
23161 (x_delete_display): Doc update to reflect changes in
23162 delete_terminal.
23163 (x_display_info) <terminal>: Move member earlier in the struct.
23164 (deleting_tty): Remove old variable.
23165 (Fsuspend_tty): Call clear_tty_hooks.
23166 (Fresume_tty, init_tty): Call set_tty_hooks.
23167 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
23168 errors on X frames.
23169 (x_catch_errors_unwind): Abort if x_error_message is NULL.
23170 (handle_one_xevent): Initialize `f' to NULL.
23171 (x_delete_terminal, x_create_terminal): New functions.
23172 (XTset_terminal_modes, XTreset_terminal_modes)
23173 (XTread_socket, x_connection_closed, x_term_init)
23174 (x_term_init, x_delete_display): Add terminal parameter.
23175 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
23176 X connections.
23177
23178 * frame.c: Include termchar.h.
23179 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
23180 (Qwindow_system, Qenvironment, Qterm_environment_variable)
23181 (Qdisplay_environment_variable): New vars.
23182 (Fframep): Deal with output_initial.
23183 (Fframe-live-p): Doc fix.
23184 (Fwindow-system): New function.
23185 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
23186 (make_terminal_frame): Don't create frames on a terminal that is
23187 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
23188 (store_frame_param): Check for found_for_frame before calling XFRAME.
23189 (Fmake_terminal_frame): Handle NULL tty names correctly.
23190 (syms_of_frame): Enhance doc string of `default-frame-alist'.
23191 (Fdelete_frame): Remove unused variable `count'. Don't allow other
23192 frames to refer to a deleted frame in their 'environment parameter.
23193 (Fframe_with_environment): New function.
23194 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
23195 (get_future_frame_param): New function.
23196 (Fmake_terminal_frame): Use it.
23197 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
23198
23199 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
23200 * sysdep.c (reset_sys_modes): Update for renames.
23201
23202 * keyboard.c (tty_read_avail_input): New function.
23203 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
23204 (syms_of_keyboard): Defsubr them.
23205 (Fset_input_meta_mode, Fset_quit_char): New functions.
23206 (Fset_input_mode): Split to above functions.
23207 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
23208 parameter. Use it in call to `read_char'.
23209 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
23210 Set wrong_kboard_jmpbuf correctly in recursive calls.
23211 Use current_kboard to access Vkeyboard_translate_table.
23212 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
23213 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
23214 Update longjmp invocations. Remember the original current_kboard,
23215 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
23216 changes it. Comment out unnecessary calls to
23217 `record_single_kboard_state' and `any_kboard_state'.
23218 Update recursive calls.
23219 (wrong_kboard_jmpbuf): Remove global variable.
23220 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
23221 Handle deleted interrupted_kboards correctly; that is a legal
23222 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
23223 and read_char calls. Abort if interrupted_kboard died in read_char.
23224 (any_kboard_state, single_kboard_state)
23225 (push_frame_kboard): Remove function.
23226 (pop_kboard): Switch out of single_kboard mode if the kboard has
23227 been deleted. Remove unused variable. Help debugging by not
23228 changing current_kboard unnecessarily. Set current_kboard to the
23229 kboard of the selected frame when the stored kboard object has
23230 been deleted before pop_kboard.
23231 (temporarily_switch_to_single_kboard): Change first parameter to a
23232 frame pointer. Throw an error when caller wants to change kboards
23233 while in single_kboard mode. Don't push_kboard if we weren't in
23234 single kboard state. Don't pop_kboard if we popped into any
23235 kboard state.
23236 (restore_kboard_configuration): Abort if pop_kboard changed the
23237 kboard in single_kboard mode. Call pop_kboard only after setting
23238 up single_kboard mode.
23239 (Frecursive_edit): Switch to single_kboard mode only in nested
23240 command loops.
23241 (cmd_error, command_loop, command_loop_1, timer_check):
23242 Comment out unnecessary call to `any_kboard_state' and
23243 `record_single_kboard_state'.
23244 (delete_kboard): Exit single_kboard mode if we have just deleted
23245 that kboard. Use FRAME_KBOARD.
23246 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
23247 `fatal_error_signal'.
23248 (record_single_kboard_state): Don't push_kboard if we weren't in
23249 single kboard state. Don't pop_kboard if we popped into any
23250 kboard state.
23251 (push_frame_kboard): Rename to push_kboard.
23252 (kbd_buffer_get_event): Use FRAME_TERMINAL.
23253 (read_avail_input): Read input from all terminals.
23254 (mark_kboards): Also mark Vkeyboard_translate_table.
23255 (kbd_buffer_store_event_hold): Simplify condition.
23256 (read_key_sequence): Reinitialize fkey and keytran at each replay.
23257 (Vkeyboard_translate_table): Move to struct kboard.
23258 (init_kboard): Initialize Vkeyboard_translate_table.
23259 (syms_of_keyboard): Use DEFVAR_KBOARD to define
23260 Vkeyboard_translate_table. Update doc strings. Update docs of
23261 local-function-key-map and function-key-map.
23262
23263 * terminal.c: New file.
23264
23265 * term.c: Include errno.h.
23266 (Vring_bell_function, device_list, initial_device)
23267 (next_device_id, ring_bell, update_begin, update_end)
23268 (set_terminal_window, cursor_to, raw_cursor_to)
23269 (clear_to_end, clear_frame, clear_end_of_line)
23270 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
23271 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
23272 (syms_of_term): Move their initialization to terminal.c.
23273 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
23274 (Ftty_display_color_cells)
23275 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
23276 (clear_tty_hooks, set_tty_hooks)
23277 (init_tty, maybe_fatal): New functions.
23278 (Ftty_type): Return nil if terminal is not on a tty instead of
23279 throwing an error. Doc update.
23280 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
23281 Doc update. Initialize new subrs and variables.
23282 (delete_tty): Use terminal->deleted.
23283 (tty_set_terminal_modes): Rename from set_terminal_modes.
23284 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
23285 (set_scroll_region): Rename to `tty_set_scroll_region'.
23286 (turn_on_insert): Rename to `tty_turn_on_insert'.
23287 (turn_off_insert): Rename to `tty_turn_off_insert'.
23288 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
23289 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
23290 (toggle_highligh): Rename to `tty_toggle_highlight'.
23291 (background_highlight): Rename to `tty_background_highlight'.
23292 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
23293 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
23294 (tty_set_scroll_region, tty_background_highlight)
23295 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
23296 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
23297 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
23298 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
23299 Add static modifier.
23300 (tty_reset_terminal_modes, tty_set_terminal_window)
23301 (tty_set_scroll_region, tty_background_highlight)
23302 (tty_highlight_if_desired, tty_cursor_to)
23303 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
23304 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
23305 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
23306 renames.
23307
23308 2007-08-28 Jan Djärv <jan.h.d@swipnet.se>
23309
23310 * keyboard.c: Qrtl is new.
23311 (parse_tool_bar_item): Handle :rtl keyword.
23312 (syms_of_keyboard): Intern :rtl keyword.
23313
23314 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
23315
23316 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
23317 so no Lisp code is executed.
23318 (file_for_image, find_rtl_image): New functions.
23319 (xg_get_image_for_pixmap): Use file_for_image.
23320 (update_frame_tool_bar): If direction is RTL, use RTL image if
23321 defined. Use Gtk stock images if defined.
23322
23323 2007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23324
23325 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
23326 for nonexistent or zero-width glyph in composition glyph.
23327
23328 2007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
23329
23330 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
23331
23332 * xdisp.c (Finvisible_p): New function.
23333 (syms_of_xdisp): defsubr it.
23334
23335 2007-08-24 Juanma Barranquero <lekktu@gmail.com>
23336
23337 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
23338 Doc fixes.
23339
23340 2007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23341
23342 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
23343
23344 2007-08-24 Martin Rudalics <rudalics@gmx.at>
23345
23346 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
23347 whether decoding has modified buffer contents.
23348
23349 2007-08-24 Jason Rumney <jasonr@gnu.org>
23350
23351 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
23352 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
23353 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
23354 (init_svg_functions) [HAVE_NTGUI]: New function.
23355 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
23356 (svg_load_image): Use them.
23357 (svg_load_image) [HAVE_NTGUI]: Implement background.
23358
23359 2007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23360
23361 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
23362 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
23363 (LIBX): Remove @RSVG_LIBS@.
23364 (LIBES): Add $(RSVG_LIBS).
23365
23366 * image.c (svg_load_image): Blend with specified background if exists.
23367 Use IMAGE_BACKGROUND. Add Mac OS Support.
23368
23369 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
23370 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
23371 Remove macros.
23372 [MAC_OSX] (socket_callback): Do nothing.
23373 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
23374 ReceiveNextEvent.
23375 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
23376 socket_callback.
23377 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
23378
23379 2007-08-22 Glenn Morris <rgm@gnu.org>
23380
23381 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
23382
23383 2007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
23384
23385 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
23386
23387 * image.c: Add support for SVG images. Some additional comments
23388 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
23389 (svg_image_p): New function to test for SVG image.
23390 (svg_load): New function to load SVG image.
23391 (svg_load_image): New function, helper for svg_load.
23392 (Qsvg): New Lisp_object.
23393 (svg_keyword_index): New enum.
23394 (svg_format): New static `image_keyword' struct.
23395 (svg_type): New static `image_type' struct.
23396 (librsvg/rsvg.h): Include it.
23397
23398 2007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
23399
23400 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
23401
23402 2007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
23403
23404 * lread.c (Qold_style_backquotes): New var.
23405 (syms_of_lread): Init and staticpro it.
23406 (load_warn_old_style_backquotes): New fun.
23407 (Fload): Use them to warn about old style backquotes.
23408 (end_of_file_error, Fload): Remove unused vars.
23409
23410 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
23411
23412 * lread.c (Vold_style_backquotes): New var.
23413 (syms_of_lread): Init and export it to Elisp.
23414 (read1): Set it when we find an old-style (back)quote.
23415
23416 2007-08-22 Jason Rumney <jasonr@gnu.org>
23417
23418 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
23419
23420 2007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
23421
23422 * puresize.h (BASE_PURESIZE): Increase to 1140000.
23423
23424 2007-08-19 Richard Stallman <rms@gnu.org>
23425
23426 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
23427
23428 2007-08-19 Andreas Schwab <schwab@suse.de>
23429
23430 * alloc.c (pure): Round PURESIZE up.
23431
23432 2007-08-17 Jan Djärv <jan.h.d@swipnet.se>
23433
23434 * xterm.c (handle_one_xevent): Remove check that mouse click is in
23435 active frame.
23436
23437 2007-08-16 Richard Stallman <rms@gnu.org>
23438
23439 * eval.c (Fcommandp): Add parens to clarify.
23440
23441 * minibuf.c (Fall_completions): Use enum for type of table.
23442
23443 * emacs.c (USAGE2): Improve text.
23444
23445 2007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
23446
23447 * term.c (tty_default_color_capabilities): Declare static
23448 variables in file scope, to avoid HPUX compiler problem.
23449
23450 2007-08-13 Jan Djärv <jan.h.d@swipnet.se>
23451
23452 * gtkutil.c (update_frame_tool_bar): Use -1 as index
23453 to gtk_toolbar_insert.
23454
23455 2007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
23456
23457 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
23458
23459 * insdel.c (reset_var_on_error): New fun.
23460 (signal_before_change, signal_after_change):
23461 Use it to reset (after|before)-change-functions to nil in case of error.
23462 Bind inhibit-modification-hooks to t.
23463 Don't bind (after|before)-change-functions to nil while they run.
23464
23465 2007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23466
23467 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
23468 filling pixmap with stippled background.
23469
23470 2007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23471
23472 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
23473 Don't use invisible frame as parent window for repositioning.
23474
23475 2007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
23476
23477 * print.c (new_backquote_output): Rename from old_backquote_output.
23478 (print): Inverse its logic (according to its name) so as to match the
23479 behavior of new_backquote_flag in lread.c.
23480
23481 2007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23482
23483 * gmalloc.c (posix_memalign): New function.
23484
23485 * macterm.c (frame_highlight, frame_unhighlight): Don't call
23486 ActivateControl/DeactivateControl here.
23487 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
23488 frame-notice-user-settings is non-nil.
23489 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
23490 for kEventParamFMFontStyle.
23491 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
23492 mac_pass_command_to_system and mac_pass_control_to_system here.
23493 (XTread_socket): Call ActivateControl/DeactivateControl here.
23494 (XTread_socket) [TARGET_API_MAC_CARBON]:
23495 Check mac_pass_command_to_system and mac_pass_control_to_system here.
23496 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
23497 for window repositioning.
23498
23499 2007-08-08 Glenn Morris <rgm@gnu.org>
23500
23501 * Replace `iff' in doc-strings and comments.
23502
23503 2007-08-07 Chong Yidong <cyd@stupidchicken.com>
23504
23505 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
23506
23507 2007-08-07 Martin Rudalics <rudalics@gmx.at>
23508
23509 * fileio.c (Finsert_file_contents): Run format-decode and
23510 after_insert_file_functions on entire buffer when REPLACE is
23511 non-nil and inhibit modification_hooks and point_motion_hooks.
23512 For consistency, run after_insert_file_functions iff something
23513 got inserted. Move signal_after_change and update_compositions
23514 after code running after_insert_file_functions. Make sure that
23515 undo_list doesn't record intermediate steps of the decoding process.
23516
23517 2007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23518
23519 * emacs.c (main)
23520 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
23521 Call malloc_enable_thread on interactive startup.
23522
23523 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
23524 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
23525 [USE_PTHREAD]: Conditionalize with it.
23526 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
23527 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
23528 New functions.
23529
23530 2007-08-06 Chong Yidong <cyd@stupidchicken.com>
23531
23532 * xdisp.c (redisplay_window): When restoring original buffer
23533 position, make sure it is still valid.
23534
23535 * image.c (png_load): Ignore png-supplied background color.
23536
23537 2007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23538
23539 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
23540 Use kCFAbsoluteTimeIntervalSince1970.
23541
23542 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
23543 New variable.
23544 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
23545 event loop should be quit.
23546 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
23547 Quit dialog event loop if quit_dialog_event_loop is set.
23548
23549 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
23550 (Selection): New typedef. Use instead of ScrapRef.
23551 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
23552 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
23553 (mac_clear_selection): Rename from clear_scrap.
23554 (get_flavor_type_from_symbol): New argument SEL and subsume function of
23555 scrap_has_target_type. All uses changed.
23556 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
23557 (mac_selection_has_target_p): New functions.
23558 (mac_put_selection_value): Rename from put_scrap_string.
23559 (mac_get_selection_value): Rename from get_scrap_string.
23560 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
23561 (put_scrap_private_timestamp, scrap_has_target_type)
23562 (get_scrap_private_timestamp): Remove functions.
23563 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
23564 (x_own_selection, x_get_local_selection):
23565 Use mac_valid_selection_value_p.
23566 (x_own_selection): Don't use put_scrap_private_timestamp.
23567 Record OWNERSHIP-INFO into Vselection_alist instead.
23568 (x_get_local_selection): Don't check type if request is local.
23569 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
23570 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
23571
23572 2007-08-04 Jan Djärv <jan.h.d@swipnet.se>
23573
23574 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
23575 add comment explaining why.
23576
23577 2007-08-03 Richard Stallman <rms@gnu.org>
23578
23579 * fileio.c (Fvisited_file_modtime): Use make_time.
23580
23581 2007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
23582
23583 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
23584 build.
23585
23586 2007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
23587
23588 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
23589
23590 2007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
23591
23592 * puresize.h (BASE_PURESIZE): Increase to 1130000.
23593
23594 2007-07-30 Richard Stallman <rms@gnu.org>
23595
23596 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
23597
23598 2007-07-29 Jan Djärv <jan.h.d@swipnet.se>
23599
23600 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
23601
23602 2007-07-28 Nick Roberts <nickrob@snap.net.nz>
23603
23604 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
23605 remote default-directory.
23606
23607 * buffer.c (mode-line-format): Update doc string.
23608
23609 2007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23610
23611 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
23612 scroll bar gap.
23613 (x_scroll_bar_create): Set bar->fringe_extended_p.
23614 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
23615 on frame edge. Check fringe background extension. Don't clear
23616 extended fringe background area.
23617
23618 * w32term.h (struct scroll_bar): New member fringe_extended_p.
23619 (w32_fill_area): Enclose multiple statements with do ... while (0).
23620
23621 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
23622 Extend fringe background to scroll bar gap.
23623 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
23624 Set bar->fringe_extended_p.
23625 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
23626 Put leftmost/rightmost scroll bars on frame edge. Check fringe
23627 background extension. Don't clear extended fringe background area.
23628
23629 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
23630 New member fringe_extended_p.
23631
23632 2007-07-25 Glenn Morris <rgm@gnu.org>
23633
23634 * Relicense all FSF files to GPLv3 or later.
23635
23636 * COPYING: Switch to GPLv3.
23637
23638 2007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
23639
23640 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
23641
23642 * data.c (Finteractive_form): Check for the presence of an
23643 `interactive-form' symbol property more thoroughly.
23644
23645 * data.c (Finteractive_form): Use an `interactive-form' property if
23646 present, analogous to the function-documentation property.
23647
23648 2007-07-24 Jason Rumney <jasonr@gnu.org>
23649
23650 * w32fns.c (x_real_positions): Get real position from OS instead of
23651 calculating it.
23652
23653 2007-07-23 Jason Rumney <jasonr@gnu.org>
23654
23655 * filelock.c (current_lock_owner): Allow for @ sign in username.
23656
23657 2007-07-22 Nick Roberts <nickrob@snap.net.nz>
23658
23659 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
23660 remote default-directory.
23661
23662 * buffer.c (mode-line-format): Describe above case in doc string.
23663
23664 2007-07-20 Eli Zaretskii <eliz@gnu.org>
23665
23666 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
23667 Define if not defined.
23668
23669 2007-07-18 Jason Rumney <jasonr@gnu.org>
23670
23671 * w32proc.c (w32_executable_type): Handle 64 bit executables.
23672
23673 2007-07-18 Richard Stallman <rms@gnu.org>
23674
23675 * data.c (Fsetq_default): Doc fix.
23676
23677 * eval.c (Fsetq): Doc fix.
23678
23679 2007-07-18 Juanma Barranquero <lekktu@gmail.com>
23680
23681 * coding.c (Ffind_operation_coding_system):
23682 * eval.c (For, Fand): Doc fixes.
23683 Reported by Johan Bockgård.
23684
23685 2007-07-18 Jan Djärv <jan.h.d@swipnet.se>
23686
23687 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
23688
23689 * xterm.h: Declare x_ewmh_activate_frame.
23690
23691 * xterm.c (x_ewmh_activate_frame): New function.
23692 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
23693
23694 2007-07-17 Martin Rudalics <rudalics@gmx.at>
23695
23696 * window.c (Fdisplay_buffer): If largest or LRU window is the
23697 only window, split it even if it is not eligible for splitting.
23698 This restores the original behavior broken by the 2007-07-15
23699 change.
23700
23701 2007-07-17 Glenn Morris <rgm@gnu.org>
23702
23703 * abbrev.c (abbrev_check_chars): New function.
23704 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
23705 Call abbrev_check_chars to check abbrev characters are word
23706 constituents. Doc fix.
23707
23708 2007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
23709
23710 * process.c (Fstart_process, Fmake_network_process)
23711 (read_process_output): Fix up last changes.
23712
23713 2007-07-16 Eli Zaretskii <eliz@gnu.org>
23714
23715 * makefile.w32-in (clean): Don't delete *~.
23716
23717 2007-07-16 Andreas Schwab <schwab@suse.de>
23718
23719 * window.c (Fdisplay_buffer): Use NILP.
23720 (Fset_window_scroll_bars): Likewise.
23721
23722 2007-07-15 Martin Rudalics <rudalics@gmx.at>
23723
23724 * window.c (window_min_size_2): New function.
23725 (window_min_size_1, size_window, Fdisplay_buffer)
23726 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
23727 windows without mode- or header-lines when window-min-height is
23728 too small.
23729 (size_window): Reset nodelete_p after testing it, following an
23730 earlier note by Kim F. Storm.
23731 (display_buffer): Do not set split_height_threshold to twice the
23732 value of window_min_height to avoid changing the value of a
23733 customizable variable. Rather explicitly check whether the
23734 height of the window that shall be splitted is at least as large
23735 as split_height_threshold.
23736 (Fwindow_full_width_p): New defun.
23737 (syms_of_window): Defsubr it.
23738
23739 * window.h: Add EXFUN for Fwindow_full_width_p.
23740
23741 2007-07-14 Jason Rumney <jasonr@gnu.org>
23742
23743 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
23744
23745 2007-07-14 Richard Stallman <rms@gnu.org>
23746
23747 * eval.c (maybe_call_debugger): New function.
23748 (find_handler_clause): Use maybe_call_debugger.
23749 Call it when the handler says `debug'.
23750 Eliminate DEBUGGER_VALUE_PTR.
23751 (Fsignal): Eliminate debugger_value.
23752 (Qdebug): New variable.
23753 (syms_of_eval): Initialize it.
23754
23755 2007-07-14 Juanma Barranquero <lekktu@gmail.com>
23756
23757 * eval.c (Fprogn):
23758 * keyboard.c (Ftrack_mouse):
23759 * print.c (Fwith_output_to_temp_buffer):
23760 * window.c (Fsave_window_excursion): Doc fix.
23761
23762 2007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
23763
23764 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
23765
23766 2007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
23767
23768 * process.h (struct Lisp_Process): Turn slots infd, outfd,
23769 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
23770 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
23771 read_output_delay, and read_output_skip from Lisp_Objects to ints.
23772 Remove unused encoding_carryover.
23773 * process.c: Adjust all functions accordingly.
23774
23775 2007-07-12 Richard Stallman <rms@gnu.org>
23776
23777 * term.c: Include unistd.h only if HAVE_UNISTD_H.
23778
23779 2007-07-11 Jason Rumney <jasonr@gnu.org>
23780
23781 * makefile.w32-in (LIBS): Include OLE32.
23782
23783 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
23784 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
23785
23786 2007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
23787
23788 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
23789 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
23790 from a Lisp_Object into a bare pointer.
23791 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
23792 Adjust the code correspondingly.
23793
23794 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
23795
23796 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
23797 (term_show_mouse_face): Remove unused var `j'.
23798 (handle_one_term_event): Remove unused vars `i' and `j'.
23799 Don't cast return value of ttyname since it's not necessary.
23800
23801 2007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
23802
23803 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
23804 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
23805
23806 * fns.c (map_char_table): Use an array of int for `indices' rather than
23807 an array of Lisp_Objects (which are only ever integers anyway).
23808 (Fmap_char_table): Update caller.
23809 * lisp.h: Update prototype.
23810 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
23811 * fontset.c (Ffontset_info):
23812 * casetab.c (set_case_table): Update callers.
23813
23814 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
23815
23816 * keymap.c (struct accessible_keymaps_data)
23817 (struct where_is_internal_data): New structures.
23818 (accessible_keymaps_1, where_is_internal_1): Use them to change
23819 interface to adhere to the one used by map_keymap.
23820 (Faccessible_keymaps, where_is_internal): Use map_keymap.
23821 (accessible_keymaps_char_table, where_is_internal_2): Remove.
23822
23823 * keymap.h (map_keymap_function_t): More informative prototype.
23824
23825 2007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
23826
23827 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
23828 (looking_at_1): Don't change search_regs and last_thing_searched
23829 if `inhibit-changing-match-data' is non-nil.
23830 (string_match_1, search_buffer, set_search_regs): Likewise.
23831 (syms_of_search): Add Lisp level definition for
23832 `inhibit-changing-match-data' and set it to nil.
23833 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
23834 start and end of the match, instead of using values in search_regs.
23835
23836 2007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
23837
23838 * minibuf.c (Fcompleting_read): New value `confirm-only'
23839 for `require-match'.
23840
23841 2007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
23842
23843 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
23844 part of the 2007-06-27 change to syms_of_fileio.
23845
23846 2007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23847
23848 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
23849 Check WINDOWP before using XWINDOW. Consolidate return statements.
23850
23851 2007-06-27 Richard Stallman <rms@gnu.org>
23852
23853 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
23854
23855 2007-06-27 Juanma Barranquero <lekktu@gmail.com>
23856
23857 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
23858
23859 2007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23860
23861 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
23862 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
23863 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
23864 (_free_internal, memalign): Use them.
23865 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
23866 Initialize to PTHREAD_MUTEX_INITIALIZER.
23867 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
23868 (morecore_nolock): Rename from morecore. All uses changed.
23869 Use only nolock versions of internal allocation functions.
23870 (_malloc_internal_nolock, _realloc_internal_nolock)
23871 (_free_internal_nolock): New functions created from
23872 _malloc_internal, _realloc_internal, and _free_internal.
23873 (_malloc_internal, _realloc_internal, _free_internal): Use them.
23874 Copy hook value to automatic variable before its use.
23875 (memalign): Copy hook value to automatic variable before its use.
23876
23877 2007-06-26 Kenichi Handa <handa@m17n.org>
23878
23879 * coding.c (Ffind_operation_coding_system): Docstring improved.
23880 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
23881
23882 2007-06-25 David Kastrup <dak@gnu.org>
23883
23884 * keymap.c (Fcurrent_active_maps): Add `position' argument.
23885 (Fwhere_is_internal): Adjust call to `current-active-maps' to
23886 cater for additional parameter.
23887
23888 * keymap.h: Adjust number of parameters to `current-active-maps'.
23889
23890 * doc.c (Fsubstitute_command_keys): Adjust call of
23891 `current-active-maps'.
23892
23893 2007-06-25 David Kastrup <dak@gnu.org>
23894
23895 * callint.c (Fcall_interactively): Make the parsing of interactive
23896 specs somewhat more readable.
23897
23898 2007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23899
23900 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
23901 to scroll bar gap also when bitmap fills fringe. Draw only foreground
23902 if extended background has already been filled.
23903
23904 2007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23905
23906 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
23907 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
23908
23909 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
23910 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
23911 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
23912 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
23913 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
23914 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
23915 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
23916 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
23917 Run timers during dialog popup.
23918 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
23919
23920 2007-06-21 Jason Rumney <jasonr@gnu.org>
23921
23922 * image.c (convert_mono_to_color_image): Swap fore and background.
23923
23924 2007-06-20 Jason Rumney <jasonr@gnu.org>
23925
23926 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
23927 (w32_free_bdf_font): Unmap memory not handle.
23928
23929 2007-06-20 Sam Steingold <sds@gnu.org>
23930
23931 * gmalloc.c (__morecore): Fix the declaration to comply with the
23932 definition.
23933
23934 2007-06-20 Juanma Barranquero <lekktu@gmail.com>
23935
23936 * w32term.c (w32_delete_display): Remove leftover declaration.
23937 (w32_define_cursor, w32_initialize): Make static.
23938
23939 * w32.c (_wsa_errlist): Fix typo in error message.
23940 (init_environment): Ignore any environment variable from the
23941 registry having a null value.
23942
23943 2007-06-20 Glenn Morris <rgm@gnu.org>
23944
23945 * Makefile.in (LIBGIF): Default to -lgif.
23946
23947 2007-06-17 Jason Rumney <jasonr@gnu.org>
23948
23949 * w32menu.c (add_menu_item): Don't use multibyte string functions on
23950 unicode strings.
23951
23952 2007-06-16 Juanma Barranquero <lekktu@gmail.com>
23953
23954 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
23955 Fix typo in docstring.
23956
23957 2007-06-16 Eli Zaretskii <eliz@gnu.org>
23958
23959 * w32menu.c (add_menu_item): Escape `&' characters in menu items
23960 and their keybindings.
23961
23962 2007-06-15 Chong Yidong <cyd@stupidchicken.com>
23963
23964 * composite.c (update_compositions): Fix last fix.
23965
23966 2007-06-14 Jason Rumney <jasonr@gnu.org>
23967
23968 * w32.c (get_process_times_fn): New function pointer.
23969 (globals_of_w32): Intialize it if present in kernel32.dll.
23970 (w32_get_internal_run_time): New function.
23971
23972 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
23973
23974 2007-06-14 Kenichi Handa <handa@etlken.m17n.org>
23975
23976 * composite.c (update_compositions): Check the validness of
23977 compositions.
23978
23979 2007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23980
23981 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
23982 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
23983
23984 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
23985 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
23986
23987 * macgui.h (USE_MAC_TOOLBAR): New define.
23988
23989 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
23990 Return immediately unless popup is activated.
23991
23992 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
23993 background to scroll bar gap.
23994 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
23995 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
23996 scroll bars on frame edge. Check fringe background extension.
23997 Don't clear extended fringe background area.
23998 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
23999 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
24000 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
24001 [USE_MAC_TOOLBAR]: New macros.
24002 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
24003 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
24004 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
24005 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
24006 [USE_MAC_TOOLBAR]: New functions.
24007 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
24008 manually if previous repositioning has failed.
24009 (mac_handle_keyboard_event): Use precomputed event kind.
24010 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
24011 as tool bar item click. Handle mouse movement over tool bar items.
24012
24013 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
24014 toolbar_win_gravity.
24015 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
24016 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
24017 Add externs.
24018
24019 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
24020 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
24021
24022 2007-06-14 Chong Yidong <cyd@stupidchicken.com>
24023
24024 * image.c (search_image_cache): Remove unused variable.
24025
24026 2007-06-13 Chong Yidong <cyd@stupidchicken.com>
24027
24028 * xfns.c, xmenu.c: Link to xaw3d if available.
24029
24030 2007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24031
24032 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
24033 frame_foreground and frame_background.
24034
24035 * image.c (lookup_image): Save frame foreground and background colors.
24036 (search_image_cache): Check if saved and current frame colors match.
24037
24038 2007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
24039
24040 * regex.c (regex_compile): Remove the `regnum' counter.
24041 Use bufp->re_nsub instead. Add support for \(?N:RE\).
24042
24043 2007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
24044
24045 * term.c: Include intervals.h to declare Fget_text_property.
24046
24047 2007-06-10 Jason Rumney <jasonr@gnu.org>
24048
24049 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
24050
24051 2007-06-08 Juanma Barranquero <lekktu@gmail.com>
24052
24053 * callint.c (Fcall_interactively):
24054 * editfns.c (Fdelete_and_extract_region):
24055 * fileio.c (Fread_file_name):
24056 * fns.c (Fmapconcat):
24057 * keyboard.c (cmd_error_internal):
24058 * keymap.c (Fkey_description):
24059 * lread.c (openp):
24060 * minibuf.c (read_minibuf):
24061 * search.c (wordify):
24062 * sunfns.c (sel_read):
24063 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
24064 * xfns.c (x_default_scroll_bar_color_parameter):
24065 * xmenu.c (menu_help_callback):
24066 * xselect.c (Fx_get_atom_name):
24067 * xterm.c (x_term_init): Use empty_unibyte_string.
24068
24069 2007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
24070
24071 * alloc.c (init_strings): Initialize canonical empty strings.
24072 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
24073 canonical empty string when the requested size is 0.
24074
24075 * emacs.c (empty_unibyte_string): Rename from empty_string.
24076 (empty_multibyte_string): New canonical empty string.
24077 (syms_of_emacs): Don't initialize empty_string.
24078
24079 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
24080 string, if appropriate.
24081 (empty_unibyte_string, empty_multibyte_string): New externs.
24082 (empty_string): Remove extern.
24083
24084 * lread.c (syms_of_lread): Use empty_unibyte_string.
24085
24086 2007-06-07 Jason Rumney <jasonr@gnu.org>
24087
24088 * s/ms-w32.h: Don't define HAVE_TZNAME.
24089
24090 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
24091
24092 2007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24093
24094 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
24095
24096 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
24097 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
24098
24099 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
24100 Don't call next handler.
24101 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
24102 Remove argument. Install handler to application.
24103 (set_frame_menubar): Don't change deep_p.
24104 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
24105 FRAME_OUTER_TO_INNER_DIFF_Y.
24106 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
24107 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
24108 [HAVE_DIALOGS]: New macros.
24109 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
24110 Use them.
24111 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
24112
24113 * macselect.c [MAC_OSX] (install_service_handler): Rename from
24114 init_service_handler. All callers changed. Return OSStatus value.
24115
24116 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
24117 All callers changed so as not to call SetPortWindowPort.
24118 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
24119 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
24120 mac_draw_string_common.
24121 (mac_draw_image_string_qd): Likewise.
24122 (mac_draw_string_common): Use them. Add INLINE.
24123 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
24124 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
24125 GetGlobalMouse.
24126 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
24127 and FRAME_OUTER_TO_INNER_DIFF_Y.
24128 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
24129 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
24130 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
24131 repositioning window to mac_handle_window_event.
24132 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
24133 saving window location to mac_handle_window_event
24134 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
24135 (install_menu_target_item_handler): Remove argument in extern.
24136 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
24137 Also accept command events.
24138 (do_keystroke): New function created from XTread_socket.
24139 (init_command_handler): Remove functions.
24140 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
24141 and save window location by kEventWindowShowing and kEventWindowHiding
24142 handlers here. Don't call next handler for window state change and
24143 focus events.
24144 (mac_handle_application_event, mac_handle_keyboard_event)
24145 [TARGET_API_MAC_CARBON]: New functions.
24146 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
24147 kEventWindowShowing and kEventWindowHiding events. Move installation
24148 of mouse, font, text input and menu target item handlers to
24149 install_application_handler.
24150 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
24151 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
24152 New function.
24153 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
24154 Register it.
24155 (XTread_socket) [TARGET_API_MAC_CARBON]:
24156 Consolidate SendEventToEventTarget calls.
24157 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
24158 Move application activation handler to mac_handle_application_event.
24159 Move keyboard handler to mac_handle_keyboard_event.
24160 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
24161 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
24162 init_command_handler. Call install_application_handler.
24163
24164 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
24165 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
24166
24167 2007-06-07 Glenn Morris <rgm@gnu.org>
24168
24169 * emacs.c (main): Use `emacs-copyright' in --version output.
24170
24171 2007-06-06 Chong Yidong <cyd@stupidchicken.com>
24172
24173 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
24174
24175 2007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24176
24177 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
24178
24179 * macgui.h: Replace WindowPtr with WindowRef.
24180
24181 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
24182 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
24183 Replace ControlHandle with ControlRef.
24184 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
24185
24186 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
24187 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
24188 Replace ControlHandle with ControlRef.
24189 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
24190 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
24191
24192 * macterm.h (struct scroll_bar): Rename member control_handle_low
24193 and control_handle_high to control_ref_low and control_ref_high.
24194 All uses changed.
24195 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
24196 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
24197 respectively. All uses changed.
24198 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
24199 (install_window_handler, remove_window_handler): Replace WindowPtr
24200 with WindowRef in externs.
24201
24202 2007-06-05 Juanma Barranquero <lekktu@gmail.com>
24203
24204 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
24205
24206 2007-06-03 Nick Roberts <nickrob@snap.net.nz>
24207
24208 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
24209
24210 * frame.c (Fmouse_position, Fmouse_pixel_position):
24211 Condition on HAVE_GPM too.
24212
24213 * term.c (term_mouse_highlight): Remove unused variables.
24214 (Fterm_open_connection): Set gpm_zerobased to 1.
24215 (term_mouse_movement, term_mouse_click, handle_one_term_event):
24216 Use zero based co-ordinates.
24217 (handle_one_term_event): Report a drag as mouse movement too.
24218
24219 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
24220
24221 2007-06-03 Chong Yidong <cyd@stupidchicken.com>
24222
24223 * image.c (search_image_cache): New function. Require background
24224 color match if background color is unspecified in the image spec.
24225 (uncache_image, lookup_image): Use it.
24226
24227 2007-06-01 Juanma Barranquero <lekktu@gmail.com>
24228
24229 * window.c (Fshrink_window): Reflow docstring.
24230
24231 2007-06-02 Chong Yidong <cyd@stupidchicken.com>
24232
24233 * Version 22.1 released.
24234
24235 2007-06-01 Richard Stallman <rms@gnu.org>
24236
24237 * xfns.c (x_encode_text): Add GCPRO.
24238
24239 2007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24240
24241 * xfns.c (x_set_name_internal): Save encoded name before
24242 x_encode_text in case string data is relocated.
24243
24244 2007-05-31 Richard Stallman <rms@gnu.org>
24245
24246 * buffer.c (syms_of_buffer): Doc fix.
24247
24248 2007-05-30 Nick Roberts <nickrob@snap.net.nz>
24249
24250 * sysdep.c (init_sys_modes): Add rather than replace with
24251 O_NONBLOCK.
24252
24253 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
24254 term_mouse_moveto.
24255
24256 * termhooks.h (term_mouse_moveto): New extern.
24257
24258 * term.c (mouse_face_window): Rename...
24259 (Qmouse_face_window): ...to this.
24260 (term_show_mouse_face, term_clear_mouse_face)
24261 (term_mouse_highlight): Use Qmouse_face_window.
24262 (term_mouse_moveto): New function.
24263 (term_mouse_position): Make it work.
24264 (syms_of_term): Uncomment assignment to mouse_position_hook.
24265 Staticpro Qmouse_face_window.
24266
24267 2007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24268
24269 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
24270 around current_column call.
24271
24272 2007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
24273
24274 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
24275 * xdisp.c (next_element_from_buffer):
24276 * window.c (delete_window):
24277 * term.c (term_mouse_highlight):
24278 * msdos.c (getdefdir):
24279 * macterm.c (mac_create_bitmap_from_bitmap_data)
24280 (init_font_name_table):
24281 * fns.c (Fsxhash):
24282 * data.c (Fmake_local_variable):
24283 * ccl.c (ccl_driver): Likewise.
24284
24285 2007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24286
24287 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
24288 Call mac_wakeup_from_rne on window size change.
24289
24290 2007-05-25 Chong Yidong <cyd@stupidchicken.com>
24291
24292 * image.c (uncache_image): Fix typo.
24293
24294 2007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
24295
24296 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
24297
24298 2007-05-22 Richard Stallman <rms@gnu.org>
24299
24300 * xterm.c (x_connection_closed): Remove NO_RETURN.
24301
24302 2007-05-22 Martin Rudalics <rudalics@gmx.at>
24303
24304 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
24305
24306 2007-05-21 Chong Yidong <cyd@stupidchicken.com>
24307
24308 * image.c (uncache_image): New function.
24309 (Fimage_refresh): New function.
24310
24311 2007-05-20 Jan Djärv <jan.h.d@swipnet.se>
24312
24313 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
24314
24315 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
24316
24317 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
24318 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
24319
24320 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
24321
24322 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
24323 conditional on [HAVE_GPM_H].
24324
24325 2007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
24326
24327 * syntax.c (skip_chars): Update syntax-table only after we checked that
24328 the new location is valid.
24329
24330 2007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24331
24332 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
24333 mac_get_window_bounds.
24334
24335 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
24336
24337 * Makefile.in (LIBGPM): Allow it to be set from configure.
24338 If set then link Emacs with it.
24339
24340 * config.in: Regenerate.
24341
24342 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
24343 New externs.
24344
24345 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
24346 Include gpm.h.
24347 (handle_one_term_event, term_gpm): New externs.
24348
24349 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
24350 and allow it to be interrupted by SIGIO.
24351
24352 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
24353 (wait_reading_process_output): Wait on gpm_fd too.
24354 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
24355 (add_gpm_wait_descriptor_called_flag): New variable.
24356 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
24357
24358 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
24359 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
24360 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
24361 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
24362 (make_lispy_event): Add case GPM_CLICK_EVENT.
24363 (read_avail_input): Handle mouse input.
24364
24365 * term.c (write_glyphs_with_face): New function.
24366 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
24367 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
24368 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
24369 (mouse_face_face_id, term_gpm, pos_x, pos_y)
24370 (last_mouse_x, last_mouse_y): New variables.
24371 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
24372 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
24373 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
24374 (Fterm_close_connection): New functions.
24375 (term_init): Initialise mouse_face_window.
24376
24377 2007-05-19 Chong Yidong <cyd@stupidchicken.com>
24378
24379 * xdisp.c (redisplay_window): If first window line is a
24380 continuation line, recompute the new window start instead of
24381 recentering.
24382
24383 2007-05-18 Glenn Morris <rgm@gnu.org>
24384
24385 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
24386 Suggested by Alfred M. Szmidt <ams@gnu.org>.
24387
24388 2007-05-17 Glenn Morris <rgm@gnu.org>
24389
24390 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
24391
24392 2007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24393
24394 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
24395 dead key repeat and up events.
24396
24397 2007-05-14 Chong Yidong <cyd@stupidchicken.com>
24398
24399 * image.c (pbm_load): Check image size for monochrome pbm.
24400
24401 2007-05-13 Chong Yidong <cyd@stupidchicken.com>
24402
24403 * xterm.c (XTread_socket): Revert last change.
24404
24405 2007-05-12 Chong Yidong <cyd@stupidchicken.com>
24406
24407 * image.c (pbm_load): Correctly check image size for greyscale pbm.
24408
24409 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
24410
24411 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
24412
24413 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
24414 mixup (YAILOM).
24415
24416 2007-05-07 Andreas Schwab <schwab@suse.de>
24417
24418 * keymap.c (Flookup_key): Fix typo in last change.
24419
24420 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
24421
24422 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
24423 mapping for unibyte strings.
24424
24425 2007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24426
24427 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
24428 (Fx_popup_dialog) [MAC_OSX]: Likewise.
24429
24430 2007-04-29 Richard Stallman <rms@gnu.org>
24431
24432 * insdel.c (replace_range): For undo, record insertion first.
24433
24434 2007-04-29 Andreas Schwab <schwab@suse.de>
24435
24436 * lisp.h (VECSIZE): Use OFFSETOF.
24437
24438 2007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24439
24440 * xdisp.c (try_window_reusing_current_matrix): Fix number of
24441 disabled lines.
24442
24443 2007-04-28 Richard Stallman <rms@gnu.org>
24444
24445 * lread.c (read_escape): In a string, \s is always space.
24446
24447 2007-04-27 Jan Djärv <jan.h.d@swipnet.se>
24448
24449 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
24450
24451 * gtkutil.c (xg_update_menubar, create_menus): Create empty
24452 submenu for menu bar items.
24453
24454 See ChangeLog.10 for earlier changes.
24455
24456 ;; Local Variables:
24457 ;; coding: utf-8
24458 ;; add-log-time-zone-rule: t
24459 ;; End:
24460
24461 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
24462
24463 This file is part of GNU Emacs.
24464
24465 GNU Emacs is free software: you can redistribute it and/or modify
24466 it under the terms of the GNU General Public License as published by
24467 the Free Software Foundation, either version 3 of the License, or
24468 (at your option) any later version.
24469
24470 GNU Emacs is distributed in the hope that it will be useful,
24471 but WITHOUT ANY WARRANTY; without even the implied warranty of
24472 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24473 GNU General Public License for more details.
24474
24475 You should have received a copy of the GNU General Public License
24476 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
24477
24478 ;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40