]> code.delx.au - gnu-emacs/blob - src/ChangeLog
Replace emacs-pretest-bug with bug-gnu-emacs mailing list.
[gnu-emacs] / src / ChangeLog
1 2010-01-12 Glenn Morris <rgm@gnu.org>
2
3 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
4 bug-gnu-emacs rather than emacs-pretest-bug.
5
6 2010-01-11 Chong Yidong <cyd@stupidchicken.com>
7
8 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
9 initializing the Lisp variables that depend on them.
10
11 2010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12
13 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
14 Clear areas that will not be updated after change of menu bar lines.
15 Clear the menu bar window's current matrix when the window gets empty.
16
17 2010-01-09 Chong Yidong <cyd@stupidchicken.com>
18
19 * intervals.h, textprop.c (extend_property_ranges): Return value
20 and args changed. Discard properties that begin at or after the
21 new end (Bug#5306).
22
23 * editfns.c (Fformat): Caller changed.
24
25 * nsterm.m (ns_set_default_prefs): Delete function.
26 (syms_of_nsterm): Initialize ns_command_modifier,
27 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
28 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
29
30 * xdisp.c (pos_visible_p): Check for invisible text at the correct
31 position (Bug#4040).
32
33 2010-01-09 Eli Zaretskii <eliz@gnu.org>
34
35 * editfns.c (Ffloat_time): Doc fix.
36
37 2010-01-09 Jan Djärv <jan.h.d@swipnet.se>
38
39 * xfns.c (Fx_create_frame): Don't create frame larger than display
40 by default bug#3643.
41
42 2010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
43
44 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
45 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
46 windows above internal border.
47
48 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
49 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
50 windows above internal border.
51
52 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
53 tool bar windows specially.
54
55 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
56
57 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
58 specially.
59 (XTflash): Take account of menu bar height.
60
61 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
62 specially.
63
64 2010-01-08 Jan Djärv <jan.h.d@swipnet.se>
65
66 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
67 also be true before we can return early (bug #5339).
68
69 2010-01-06 David Reitter <david.reitter@gmail.com>
70
71 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
72 (Fns_display_usable_bounds): Rewrite, computing bounds properly
73 (Bug#3233).
74
75 2010-01-06 Jan Djärv <jan.h.d@swipnet.se>
76
77 * font.c (font_open_entity): Enable chache and call cached_font_ok
78 for the driver if defined.
79 (QCuser_spec): New symbol.
80 (font_spec_from_name): Save name as user-spec.
81 (font_load_for_lface): Keep user-spec instead of name.
82 (font_open_by_name): Save name as user-spec.
83 (syms_of_font): Initialize QCuser_spec.
84 (font_clear_prop): Clear name if it exists in font (bug#5157).
85
86 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
87 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
88 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
89
90 * font.h (struct font_driver): Add cached_font_ok.
91
92 * xterm.c (x_clear_frame): Queue draw for scroll bars.
93
94 2010-01-05 Jan Djärv <jan.h.d@swipnet.se>
95
96 * xterm.c (x_new_font): Move code for setting rows/cols before
97 resizing ...
98 (x_set_window_size): ... to here. bug #2568.
99
100 * gtkutil.c (xg_clear_under_internal_border): New function.
101 (xg_frame_resized, xg_frame_set_char_size): Call
102 xg_clear_under_internal_border.
103 (xg_update_scrollbar_pos): Clear under old scroll bar position.
104
105 2010-01-05 Chong Yidong <cyd@stupidchicken.com>
106
107 * keyboard.c (read_key_sequence): Catch keyboard switch after
108 making a new tty frame (Bug#5095).
109
110 2010-01-05 Kenichi Handa <handa@m17n.org>
111
112 * fontset.c (fontset_find_font): Fix getting the frame pointer.
113
114 2010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
115
116 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
117 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
118 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
119
120 2010-01-03 Michael Albinus <michael.albinus@gmx.de>
121
122 * dbusbind.c (xd_add_watch): Improve debug message.
123 (xd_remove_watch): Improve debug message. If DATA is the session
124 bus, unset D-Bus session environment.
125 (Fdbus_init_bus): Pass the bus as argument to
126 dbus_connection_set_watch_functions. (Bug#5283)
127
128 2010-01-01 Chong Yidong <cyd@stupidchicken.com>
129
130 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
131
132 * lread.c (syms_of_lread): Make it clearer that these are the
133 names of loaded files (Bug#5068).
134
135 * eval.c (run_hook_with_args): Handle the case where the global
136 value has the obsolete single-function form (Bug#5026).
137
138 2009-12-27 Chong Yidong <cyd@stupidchicken.com>
139
140 * minibuf.c (Fall_completions): Minor optimization.
141
142 2009-12-26 Eli Zaretskii <eliz@gnu.org>
143
144 * .gdbinit (pgx): Fix display of composite glyphs.
145 Display cmp.from and cmp.to as well.
146 (pitx): Fix last change.
147
148 2009-12-25 Kenichi Handa <handa@m17n.org>
149
150 * composite.h (composition_adjust_point): Update prototype.
151
152 * composite.c (composition_reseat_it): Don't make a composition
153 spanning over point.
154 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
155 composable characters.
156 (composition_adjust_point): New arg NEW_PT. Callers changed.
157
158 * keyboard.c (command_loop_1): Force redisplay if the last point
159 was within a composition.
160 (adjust_point_for_property): Don't adjust point for automatic
161 composition when called after buffer modification.
162
163 2009-12-19 Eli Zaretskii <eliz@gnu.org>
164
165 * .gdbinit (pitx): Don't use enum names, use their values.
166 Remove reference to non-existing value GET_FROM_COMPOSITION.
167 (pgx): Don't use enum names, use their values.
168 (pitmethod): New helper command.
169 (pitx): Use it to display iteration method.
170 (pgrowit): New command.
171
172 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
173
174 Update dependencies in Makefile.in.
175
176 * Makefile.in (alloc.o): Depend on termhooks.h.
177 (atimer.o): Depend on blockinput.h.
178 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
179 and frame.h.
180 (callint.o): Depend on systime.h, coding.h, and composite.h.
181 (callproc.o): Depend on buffer.h.
182 (casefiddle.o): Don't depend on charset.h.
183 (casetab.o): Depend on character.h.
184 (ccl.o): Depend on composite.h.
185 (chartab.o): Depend on ccl.h.
186 (cm.o): Depend on dispextern.h.
187 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
188 (coding.o): Don't depend on $(INTERVALS_H).
189 (composite.o): Don't depend on dispextern.h explicitly (it's in
190 $(INTERVALS_H)). Depend on ccl.h.
191 (data.o): Depend on systime.h, coding.h, composite.h,
192 dispextern.h, font.h, and ccl.h.
193 (dired.o): Depend on composite.h.
194 (dispnew.o): Depend on coding.h. Don't depend explicitly on
195 composite.h (it's in $(INTERVALS_H)).
196 (doc.o): Depend on systime.h, coding.h, and composite.h.
197 (editfns.o): Don't depend explicitly on dispextern.h.
198 (emacs.o): Depend on frame.h and coding.h.
199 (eval.o): Depend on coding.h, composite.h, and xterm.h.
200 (fileio.o): Depend on frame.h and commands.h. Don't depend
201 explicitly on dispextern.h.
202 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
203 composite.h.
204 (fns.o): Don't depend on termhooks.h.
205 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
206 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
207 coding.h, $(INTERVALS_H), window.h, xterm.h.
208 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
209 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
210 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
211 fontset.h, ccl.h, and ftfont.h.
212 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
213 (gtkutil.o): Depend on dispextern.h and composite.h.
214 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
215 termhooks.h, and ccl.h.
216 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
217 (intervals.o): Depend on systime.h and coding.h.
218 (keyboard.o): Depend on composite.h and coding.h.
219 (keymap.o): Depend on coding.h and frame.h.
220 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
221 (macros.o): Depend on systime.h, coding.h, and composite.h.
222 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
223 and atimer.h.
224 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
225 dispextern.h explicitly.
226 (print.o): Depend on termhooks.h, coding.h, and ccl.h. Don't
227 depend explicitly on dispextern.h and composite.h.
228 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
229 (regex.o): Don't depend on charset.h.
230 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
231 (search.o): Don't depend explicitly on composite.h.
232 (sound.o): Depend on atimer.h and systime.h.
233 (syntax.o): Don't depend explicitly on composite.h.
234 (sysdep.o): Depend on coding.h and composite.h.
235 (term.o): Depend on xterm.h and buffer.h.
236 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
237 (textprop.o): Don't depend on dispextern.h explicitly.
238 (undo.o): Depend on dispextern.h.
239 (window.o): Depend on coding.h and termhooks.h. Don't depend on
240 dispextern.h and composite.h explicitly.
241 (xdisp.o): Depend on ccl.h.
242 (xfaces.o): Depend on coding.h and ccl.h.
243 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
244 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
245 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
246 ftfont.h.
247 (xgselect.o): New dependency.
248 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
249 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
250 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
251 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
252 (xsmfns.o): Depend on frame.h and dispextern.h.
253 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
254 sysselect.h.
255
256 2009-12-19 Andreas Schwab <schwab@linux-m68k.org>
257
258 * font.c (Fclear_font_cache): Pass correct cache argument to
259 font_clear_cache.
260
261 2009-12-16 Andreas Schwab <schwab@linux-m68k.org>
262
263 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
264 twice.
265
266 2009-12-15 Chong Yidong <cyd@stupidchicken.com>
267
268 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
269 calling file-remote-p. Reported by Jim Meyering.
270
271 2009-12-15 Michael Albinus <michael.albinus@gmx.de>
272
273 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
274 avoid compiler warnings. (Bug #5217)
275
276 2009-12-14 Kenichi Handa <handa@m17n.org>
277
278 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
279 in 8-bit encoding.
280
281 2009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
282
283 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
284 tooltip windows.
285
286 2009-12-13 Jan Djärv <jan.h.d@swipnet.se>
287
288 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
289 Xatom_net_window_type.
290
291 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
292 Xatom_net_window_type.
293
294 * xterm.c (my_log_handler): New function.
295 (x_term_init): Set my_log_handler as log handler during gtk_init
296 so we can filter out buggy messages. (Bug #5120).
297
298 * xterm.c (xg_scroll_callback): Parameter list changed,
299 use parameter GtkScrollType to determine scroll/line/page.
300 Only allow dragging if a button < 4 is grabbed (bug #5177).
301 (xg_end_scroll_callback): New function.
302 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
303 xg_create_scroll_bar.
304
305 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
306 (scroll_end_callback): Remove.
307 (xg_create_scroll_bar): Add parameter end_callback, bind it to
308 button-release-event. Replace value-changed event with change-value,
309 bug #5177,
310 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
311 bug #5177.
312
313 * gtkutil.h (XG_LAST_SB_DATA): Remove.
314 (xg_create_scroll_bar): Add GCallback end_callback.
315
316 * xftfont.c (QClcdfilter): New variable.
317 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
318 (syms_of_xftfont): Initialize QClcdfilter.
319
320 2009-12-12 Jan Djärv <jan.h.d@swipnet.se>
321
322 * xsettings.c (struct xsettings): Add member seen.
323 (parse_xft_settings): Update member seen with what we have read.
324 Return non-zero if Xft-settings have been parsed, 0 otherwise.
325 (apply_xft_settings): Only update Xft settings with what member seen
326 indicates as new.
327
328 2009-12-12 Eli Zaretskii <eliz@gnu.org>
329
330 * dispextern.h (struct text_pos): Use EMACS_INT;
331 (struct glyph): Use EMACS_INT for charpos.
332 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
333 region_beg_charpos, region_end_charpos,
334 redisplay_end_trigger_charpos, and also for
335 iterator_stack_entry.end_charpos and
336 iterator_stack_entry.stop_charpos.
337
338 2009-12-12 Jan Djärv <jan.h.d@swipnet.se>
339
340 * gtkutil.c (scroll_end_callback): New function (bug #5177).
341 (xg_create_scroll_bar): Call scroll_end_callback on button release
342 event (bug #5177).
343 (xg_event_is_for_scrollbar): != replaced with ==.
344
345 2009-12-12 Kenichi Handa <handa@m17n.org>
346
347 * ftfont.c (struct ftfont_info): New member matrix.
348 (ftfont_open): Setup xftfont_info->matrix.
349 (MFLTFontFT): New member matrix.
350 (FLOOR, CEIL, ROUND): New macros.
351 (ftfont_get_metrics): Handle matrix transformation.
352 (ftfont_shape_by_flt): New arg matrix. Callers changed.
353
354 * xftfont.c (struct xftfont_info): New member matrix.
355 (xftfont_open): Setup xftfont_info->matrix.
356
357 2009-12-10 Kenichi Handa <handa@m17n.org>
358
359 * xdisp.c (append_space_for_newline): Consider face-remapping.
360
361 2009-12-09 Andreas Schwab <schwab@linux-m68k.org>
362
363 * xsettings.c: Include "keyboard.h".
364
365 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
366
367 Fix implicit function declarations.
368 * cmds.c: Include "frame.h".
369 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
370 * frame.h: Move declaration of delete_frame outside of
371 HAVE_WINDOW_SYSTEM.
372
373 2009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
374
375 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
376
377 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
378 GTK builds.
379
380 2009-12-07 Andreas Schwab <schwab@linux-m68k.org>
381
382 * unexelf.c (unexec): Don't search for .data twice.
383
384 2009-12-05 Chong Yidong <cyd@stupidchicken.com>
385
386 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
387 if push failed.
388 (handle_line_prefix): Set avoid_cursor_p here. Check return value
389 of push_display_prop (Bug#5000).
390
391 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
392 value of font_list_entities (Bug#5085).
393
394 2009-12-04 Juanma Barranquero <lekktu@gmail.com>
395
396 Fix `string-to-number' to deal consistently with integers and floats.
397 * lread.c (isfloat_string): New argument ignore_trailing to accept all
398 trailing characters, not just whitespace.
399 (read1): Pass new arg 0 to keep old behavior.
400 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
401 trailing chars, as it is already done for integers. Doc fixes.
402 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
403
404 2009-12-04 Eli Zaretskii <eliz@gnu.org>
405
406 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>: Delete
407 unused enumeration value.
408
409 2009-12-03 Eli Zaretskii <eliz@gnu.org>
410
411 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
412
413 2009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
414
415 * process.c (Fmake_network_process): Fix up the tests for
416 "connectionless socket", so they DTRT for seqpacket sockets as well.
417
418 2009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
419
420 * process.c (Qseqpacket): New symbol.
421 (HAVE_SEQPACKET): New macro.
422 (Fmake_network_process): Accept new :type `seqpacket'.
423 (init_process): Add `seqpacket' feature when applicable.
424 (syms_of_process): Initialize Qseqpacket.
425
426 2009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
427
428 * font.c (font_load_for_lface, font_open_by_name): Don't store name
429 if entity is Qnil.
430
431 2009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
432
433 * print.c (print_preprocess): Preprocess the key_and_value table of
434 hashtables, even tho they're "hidden" (bug#5082).
435
436 2009-11-29 Jan Djärv <jan.h.d@swipnet.se>
437
438 * frame.c (frame_make_pointer_invisible)
439 (frame_make_pointer_visible): Declare f before statements.
440
441 2009-11-28 Eli Zaretskii <eliz@gnu.org>
442
443 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
444 omitted dependencies on lisp.h.
445
446 2009-11-27 Jan Djärv <jan.h.d@swipnet.se>
447
448 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
449 is NULL.
450
451 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
452
453 * frame.c (frame_make_pointer_invisible)
454 (frame_make_pointer_visible): Just return if there isn't any selected
455 frame.
456
457 * search.c (simple_search): Remove warning by making *p const.
458
459 2009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
460
461 * xdisp.c (power_letter): Remove duplicate const.
462
463 2009-11-25 Jan Djärv <jan.h.d@swipnet.se>
464
465 * term.c (delete_tty): Remove check for last terminal (bug#4970).
466
467 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
468 defaults (bug #5025).
469
470 2009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
471
472 * insdel.c (adjust_markers_for_delete): Move it in the
473 right direction! (bug#4803)
474
475 2009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
476
477 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
478
479 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
480
481 2009-11-24 Glenn Morris <rgm@gnu.org>
482
483 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
484
485 2009-11-23 Jan Djärv <jan.h.d@swipnet.se>
486
487 * Makefile.in: Must create deps for ecrt0.o in its rule.
488
489 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
490 because that is what Gtk+ font dialog understands.
491
492 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
493 of Fcopy_sequence.
494 (font_open_by_name): Put name given into QCname for font-object returned.
495
496 * frame.c (x_set_font): Save original font name as frame parameter
497 font-parameter.
498
499 * xsettings.c (set_default_xft_settings): New function.
500 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
501 is found.
502
503 2009-11-22 Andreas Schwab <schwab@linux-m68k.org>
504
505 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
506 searching backwards through multibyte buffer.
507
508 2009-11-21 Jan Djärv <jan.h.d@swipnet.se>
509
510 * xterm.c: #include xgselect.h.
511 (x_initialize): Call xgselect_initialize.
512
513 * xsettings.c (something_changedCB): C++ comments => C comments.
514 (init_gconf): Do not deal with any GLib file descriptors, xg_select
515 does that now.
516
517 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
518 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
519 (scroll_bar_button_cb): Remove.
520 (create_menus): C++ comments => C comments. Don't bind grab-notify
521 event.
522 (xg_create_scroll_bar): Don't bind button-press-event and
523 button-release-event.
524
525 * process.c: Include xgselect.h if defined (USE_GTK) ||
526 defined (HAVE_GCONF).
527 (wait_reading_process_output): Call xg_select for the same condition.
528
529 * xgselect.c (xg_select): New function to better integrate with
530 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
531
532 * xgselect.h: New file, declare xg_select, xgselect_initialize.
533
534 * Makefile.in (XOBJ): Add xgselect.o.
535
536 2009-11-21 Andreas Schwab <schwab@linux-m68k.org>
537
538 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH): Remove
539 ignored second argument. All callers changed.
540 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
541 (RE_STRING_CHAR_AND_LENGTH): Likewise.
542 * xdisp.c (string_char_and_length): Likewise.
543
544 2009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
545
546 * xterm.c (x_new_font):
547 * print.c (print_object):
548 * cmds.c (Fself_insert_command): Move declarations before statements.
549
550 2009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
551
552 * s/cygwin.h: Remove unneeded linker flags.
553
554 2009-11-20 Jan Djärv <jan.h.d@swipnet.se>
555
556 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
557
558 * xsettings.h: Declare xsettings_get_system_font.
559
560 * xsettings.c (xsettings_get_system_font): New function.
561 (init_gconf): No use initiating gconf unless we have Xft also.
562 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
563 HAVE_GCONF.
564
565 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
566 add a blank entry so it doesn't collapse into nothing.
567
568 2009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
569
570 * lread.c (Funintern): Comment out last change.
571
572 2009-11-19 Richard Stallman <rms@gnu.org>
573
574 * lread.c (Funintern): Error if symbol is t or nil.
575
576 2009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
577
578 * insdel.c (make_gap_larger): Don't make as many assumptions about the
579 representation of Lisp integers.
580 Reported by MJ Chan <mjchan.inbox@gmail.com>.
581
582 2009-11-17 Andreas Schwab <schwab@linux-m68k.org>
583
584 * lisp.h: Remove declaration of Ffont_get_system_font.
585 * xfns.c: Move include of "xsettings.h".
586 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
587
588 2009-11-17 Jan Djärv <jan.h.d@swipnet.se>
589
590 * xsettings.c (something_changedCB, Ffont_get_system_font):
591 Check use_system_font.
592 (syms_of_xsettings): DEFVAR font-use-system-font.
593
594 2009-11-17 Andreas Schwab <schwab@linux-m68k.org>
595
596 * xfns.c (x_default_font_parameter): Remove dead assignment.
597
598 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
599
600 2009-11-17 Jan Djärv <jan.h.d@swipnet.se>
601
602 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
603 not have FC_LCD_*. #define them if not there.
604
605 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
606
607 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
608
609 * xterm.c (handle_one_xevent): Call xft_settings_event for
610 ClientMessage, PropertyNotify and DestroyNotify.
611 (x_term_init): If we have XFT, get DPI from Xft.dpi.
612 Call xsettings_initialize.
613
614 * xftfont.c (xftfont_fix_match): New function.
615 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
616 Call xftfont_fix_match after XftFontMatch.
617
618 * xfont.c (xfont_driver): Initialize all members.
619
620 * xfns.c (x_default_font_parameter):
621 Try font from Ffont_get_system_font.
622 Do not get font from x_default_parameter if we got one from
623 Ffont_get_system_font.
624 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
625
626 * w32font.c (w32font_driver): Initialize all members.
627
628 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
629
630 * lisp.h: Declare syms_of_xsettings.
631
632 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
633 Handle CONFIG_CHANGED_EVENT.
634
635 * ftfont.c (ftfont_filter_properties): New function.
636
637 * frame.c (x_set_font): Remove unused variable lval.
638
639 * font.h (struct font_driver): Add filter_properties.
640
641 * font.c (font_put_extra): Don't return if val is nil, it means
642 boolean option is off.
643 (font_parse_fcname): Collect all extra properties in extra_props
644 and call filter_properties for all drivers with extra_props and
645 font as parameter.
646 (font_open_entity): Do not use cache, it does not pick up new
647 fontconfig settings like hinting.
648 (font_load_for_lface): If spec had a name in it, store it in entity.
649
650 * emacs.c (main): Call syms_of_xsettings
651
652 * config.in: HAVE_GCONF is new.
653
654 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
655 xsettings.o is new.
656
657 2009-11-17 Kenichi Handa <handa@m17n.org>
658
659 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
660 back to the default font in case that no suitable font is found.
661
662 2009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
663
664 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
665 Suggested by Chad Brown <yandros@mit.edu>.
666 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
667
668 2009-11-16 Jan Djärv <jan.h.d@swipnet.se>
669
670 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
671
672 2009-11-14 Andreas Schwab <schwab@linux-m68k.org>
673
674 * Makefile.in: Ignore errors from mkdir when creating deps directory.
675
676 2009-11-14 Jan Djärv <jan.h.d@swipnet.se>
677
678 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
679 has a parent.
680
681 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
682 dependency files in deps/. Include those files into Makefile.
683
684 * config.in: Generated (AUTO_DEPEND).
685
686 2009-11-13 Michael Albinus <michael.albinus@gmx.de>
687
688 * dbusbind.c (Vdbus_registered_objects_table): Rename from
689 Vdbus_registered_functions_table, because it contains also
690 properties. Fix docstring.
691 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
692
693 2009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
694
695 * alloc.c (mark_object): Don't reprocess marked strings.
696 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
697 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
698
699 2009-11-13 Kenichi Handa <handa@m17n.org>
700
701 * category.c (word_boundary_p): Adjust for the change of the
702 semantics of Vword_combining_categories.
703 (Vword_combining_categories): Describe the slight change of the
704 semantics.
705
706 2009-11-13 Eli Zaretskii <eliz@gnu.org>
707
708 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
709
710 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
711
712 2009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
713
714 * xdisp.c (syms_of_xdisp): Fix typo in last change.
715
716 2009-11-12 Juanma Barranquero <lekktu@gmail.com>
717
718 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
719
720 2009-11-11 David Reitter <david.reitter@gmail.com>
721
722 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
723 variables to fix 2009-11-09 change.
724
725 2009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
726
727 * process.c (ifflag_def): Make flag_sym constant.
728 (Fnetwork_interface_info): Use a constant pointer.
729 (ifflag_table):
730 * xfns.c (cursor_bits):
731 * xdisp.c (power_letter):
732 * termcap.c (speeds, esctab):
733 * sysdep.c (baud_convert):
734 * keyboard.c (lispy_accent_codes, modifier_names):
735 * image.c (xbm_format, xpm_format, pbm_format, png_format)
736 (jpeg_format, tiff_format, gif_format, svg_format)
737 (interlace_start, interlace_increment, gs_format):
738 * gtkutil.c (separator_names):
739 * fringe.c (swap_nibble):
740 * fns.c (base64_value_to_char, base64_char_to_value):
741 * fileio.c (make_temp_name_tbl):
742 * coding.c (suffixes): Make constant.
743
744 * frame.c (make_initial_frame):
745 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
746 build_string.
747 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
748
749 * s/freebsd.h:
750 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
751
752 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
753 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
754
755 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
756 * xterm.c (syms_of_xterm):
757 * xfaces.c (syms_of_xfaces):
758 * xdisp.c (syms_of_xdisp):
759 * lread.c (syms_of_lread):
760 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
761 build_string.
762
763 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
764
765 2009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
766
767 * fns.c (Fplist_get): Merge the active and the commented out code.
768
769 2009-11-10 Jan Djärv <jan.h.d@swipnet.se>
770
771 * keyboard.h: Declare timer_check.
772
773 * keyboard.c (timer_check_2): New function that does what the old
774 timer_check did.
775 (timer_check): Call timer_check_2 until -1 or a non-zero time is
776 returned, i.e. don't return -1 with timers pending.
777
778 * process.c: Remove extern declaration of timer_check.
779
780 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
781 even if timer_check returned -1.
782
783 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
784 xg_dialog_data.
785 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
786 the event loop.
787 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
788 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
789 Destroy the dialog after xg_dialog_run.
790
791 2009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
792
793 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
794
795 2009-11-10 Jan Djärv <jan.h.d@swipnet.se>
796
797 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
798
799 2009-11-09 Juanma Barranquero <lekktu@gmail.com>
800
801 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
802
803 2009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
804
805 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
806 w32menu.c, and nsmenu.m.
807 Simplify the obsolete case where position is nil.
808 (cleanup_popup_menu): New function, moved from nsmenu.m.
809 (struct skp): Remove slot `notreal'.
810 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
811 adjust callers.
812 (single_menu_item): Adjust call to parse_menu_item.
813 (syms_of_menu): Defsubr x-popup-menu.
814 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
815 (keymap_panes): Don't export any more.
816 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
817 (xmenu_show): Declare.
818 * keyboard.c (parse_menu_item): Remove arg `notreal'.
819 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
820 * keyboard.h (parse_menu_item): Update declaration.
821 * xmenu.c (Fx_popup_menu): Remove.
822 (syms_of_xmenu): Don't defsubr x-popup-menu.
823 * w32menu.c (Fx_popup_menu): Remove.
824 (syms_of_w32menu): Don't defsubr x-popup-menu.
825 * nsmenu.m (cleanup_popup_menu): Remove.
826 (ns_menu_show): Rename from ns_popup_menu and remove all the code
827 moved to menu.c's Fx_popup_menu.
828 (Fx_popup_menu): Remove.
829 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
830 menu_items (it's done in menu.c already).
831
832 2009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
833
834 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
835 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
836
837 2009-11-08 Chong Yidong <cyd@stupidchicken.com>
838
839 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
840 xmenu_show. Hide any tooltip before opening a menu.
841 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
842 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
843
844 2009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
845
846 Let integers use up 2 tags to give them one extra bit and thus double
847 their range.
848 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
849 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
850 New macros.
851 (enum Lisp_Type): Use them. Give explicit values.
852 (Lisp_Type_Limit): Remove.
853 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
854 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
855 Pay attention to USE_2_TAGS_FOR_INTS.
856 (INTEGERP): Use LISP_INT_TAG_P.
857 * fns.c (internal_equal): Simplify the default case.
858 (sxhash): Use case_Lisp_Int.
859 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
860 any more.
861 (Ftype_of): Use case_Lisp_Int.
862 (store_symval_forwarding): Take into account the fact that Ints can
863 now have more than one tag.
864 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
865 buffer_slot_type_mismatch):
866 * xfaces.c (face_attr_equal_p):
867 * print.c (print_object):
868 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
869 Use case_Lisp_Int.
870
871 2009-11-06 Eli Zaretskii <eliz@gnu.org>
872
873 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
874
875 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
876 warning.
877
878 2009-11-06 Jan Djärv <jan.h.d@swipnet.se>
879
880 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
881
882 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
883
884 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
885 ButtonPressRelease and MotionNotify (bug#4870).
886
887 2009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
888
889 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
890
891 * xterm.c (syms_of_xterm):
892 * xselect.c (syms_of_xselect):
893 * xmenu.c (syms_of_xmenu):
894 * xfns.c (syms_of_xfns):
895 * xfaces.c (syms_of_xfaces):
896 * xdisp.c (syms_of_xdisp):
897 * window.c (syms_of_window):
898 * w32fns.c (syms_of_w32fns):
899 * undo.c (syms_of_undo):
900 * textprop.c (syms_of_textprop):
901 * terminal.c (syms_of_terminal):
902 * syntax.c (syms_of_syntax):
903 * sound.c (syms_of_sound):
904 * search.c (syms_of_search):
905 * print.c (syms_of_print):
906 * minibuf.c (syms_of_minibuf):
907 * macros.c (syms_of_macros):
908 * keymap.c (syms_of_keymap, initial_define_key)
909 (initial_define_lispy_key):
910 * keyboard.c (syms_of_keyboard):
911 * insdel.c (syms_of_insdel):
912 * image.c (syms_of_image):
913 * fringe.c (syms_of_fringe):
914 * frame.c (syms_of_frame):
915 * fontset.c (syms_of_fontset):
916 * fns.c (syms_of_fns):
917 * fns.c (syms_of_fns):
918 * fileio.c (syms_of_fileio):
919 * fileio.c (syms_of_fileio):
920 * eval.c (syms_of_eval):
921 * doc.c (syms_of_doc):
922 * dispnew.c (syms_of_display):
923 * dired.c (syms_of_dired):
924 * dbusbind.c (syms_of_dbusbind):
925 * data.c (syms_of_data):
926 * composite.c (syms_of_composite):
927 * coding.c (syms_of_coding):
928 * cmds.c (syms_of_cmds):
929 * charset.c (define_charset_internal, syms_of_character):
930 * ccl.c (syms_of_ccl):
931 * category.c (syms_of_category, init_category_once):
932 * casetab.c (syms_of_casetab):
933 * casefiddle.c (syms_of_casefiddle):
934 * callint.c (syms_of_callint):
935 * bytecode.c (syms_of_bytecode):
936 * buffer.c (keys_of_buffer, syms_of_buffer):
937 * alloc.c (syms_of_alloc):
938 * process.c (syms_of_process, init_process):
939 * lread.c (syms_of_lread, init_obarray):
940 * font.c (build_style_table):
941 * emacs.c (syms_of_emacs, main): Replace calls to intern with
942 intern_c_string, calls to make_pure_string with
943 make_pure_c_string. Use pure_cons instead of Fcons.
944
945 * process.c (socket_options): Make it const.
946 (set_socket_option, init_process): Use a const pointer.
947
948 * lread.c (intern_c_string): New function.
949 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
950 (defvar_int): Uset it. Make the name const char*.
951
952 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
953 (defvar_int): Update prototypes.
954 (DEFUN, EXFUN): Support for prototypes is now required.
955 (intern_c_string): New prototype.
956 (struct Lisp_Subr): Make symbol_name constant.
957
958 * font.c (struct table_entry): Remove unused member. Make NAMES
959 constant.
960 (weight_table, slant_table, width_table): Make constant.
961
962 * emacs.c (struct standard_args): Make name and longname constant.
963
964 * character.h (DEFSYM): Use intern_c_string.
965
966 2009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
967
968 * alloc.c (make_pure_c_string): New function.
969
970 * eval.c (Fautoload): Purecopy all arguments.
971
972 2009-11-05 Kenichi Handa <handa@m17n.org>
973
974 * fileio.c (Finsert_file_contents): Be sure set coding-system of
975 the buffer in case of replace.
976
977 2009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
978
979 * puresize.h (BASE_PURESIZE): Increase to 1620000.
980
981 2009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
982
983 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
984 when applicable (bug#4851).
985
986 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
987 (P_): Support for prototypes is now required.
988
989 2009-10-31 Chong Yidong <cyd@stupidchicken.com>
990
991 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
992 (Bug#4827).
993
994 2009-10-30 Eli Zaretskii <eliz@gnu.org>
995
996 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
997
998 2009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
999
1000 * puresize.h (BASE_PURESIZE): Increase to 1470000.
1001
1002 * lread.c (Fload): Purecopy the file name when building
1003 Vpreloaded_file_list.
1004
1005 2009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
1006
1007 * w32fns.c (syms_of_w32fns): Change default value of
1008 w32-scroll-lock-modifier to nil. (Bug#2827)
1009
1010 2009-10-26 Juanma Barranquero <lekktu@gmail.com>
1011
1012 * minibuf.c (Fall_completions): Fix typos in docstring.
1013
1014 2009-10-26 Andreas Schwab <schwab@redhat.com>
1015
1016 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
1017
1018 2009-10-26 Juanma Barranquero <lekktu@gmail.com>
1019
1020 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
1021 For delta < 0, skip check that only makes sense when the mini-window
1022 is going to be enlarged. (Bug#4534)
1023
1024 2009-10-25 Chong Yidong <cyd@stupidchicken.com>
1025
1026 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
1027 string in menu maps (Bug#4471).
1028
1029 2009-10-24 Chong Yidong <cyd@stupidchicken.com>
1030
1031 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
1032 FRAME_NS_VIEW on terminal frames (Bug#4765).
1033
1034 2009-10-24 Andreas Schwab <schwab@linux-m68k.org>
1035
1036 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
1037 DBUS_TYPE_UINTnn separately to get proper sign extension.
1038
1039 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
1040 can properly handle unsigned types.
1041 (make_uid, make_gid): Remove.
1042
1043 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
1044 types again.
1045
1046 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
1047 (system_process_attributes): Likewise.
1048
1049 2009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
1050
1051 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
1052
1053 * eval.c (Fautoload): Purecopy the filename. Simplify.
1054
1055 * category.c (Fdefine_category): Purecopy docstring.
1056
1057 2009-10-23 Andreas Schwab <schwab@linux-m68k.org>
1058
1059 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
1060
1061 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
1062
1063 2009-10-23 Chong Yidong <cyd@stupidchicken.com>
1064
1065 * window.c (Fwindow_edges, Fwindow_pixel_edges)
1066 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
1067 (Bug#4775).
1068
1069 2009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
1070
1071 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
1072 (init_fileio_once):
1073 * lisp.h (init_fileio_once): Remove.
1074 * emacs.c (main): Don't call init_fileio_once.
1075
1076 2009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
1077
1078 * puresize.h (BASE_PURESIZE): Increase to 1430000.
1079
1080 2009-10-21 Andreas Schwab <schwab@linux-m68k.org>
1081
1082 * doprnt.c (doprnt): Fix overflow check.
1083
1084 2009-10-21 Jan Djärv <jan.h.d@swipnet.se>
1085
1086 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
1087
1088 * xterm.h (x_wait_for_event): Declare it.
1089
1090 * xterm.c (pending_event_wait): New variable.
1091 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
1092 see pending_event_wait.eventtype.
1093 (handle_one_xevent): Don't change gravity when parent changes.
1094 (x_new_font): Call change_frame_size with new rows/columns before we
1095 try to resize the frame.
1096 (x_wait_for_event): New function.
1097 (x_set_window_size_1): Don't change gravity unless change_gravity
1098 is set.
1099 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
1100 don't change frame size, instead wait for the ConfigureNotify.
1101 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
1102 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
1103 (x_initialize): Initialize pending_event_wait.
1104
1105 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
1106 size.
1107
1108 * widget.c (EmacsFrameSetValues): Add comment.
1109 (EmacsFrameSetCharSize): Just call x_set_window_size.
1110
1111 * gtkutil.c (xg_frame_set_char_size): Flush events and call
1112 x_wait_for_event.
1113 (flush_and_sync): Remove again.
1114 (xg_get_font_name): Suggest monospace if no previous font is known.
1115
1116 2009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
1117
1118 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
1119 8th bit, since that only made sense in the ASCII world (bug#4751).
1120
1121 2009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1122
1123 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
1124 processing pending events when event is filtered for input method.
1125 (Bug#3681)
1126
1127 2009-10-20 Juanma Barranquero <lekktu@gmail.com>
1128
1129 * fns.c: Add #endif accidentally removed in previous change.
1130
1131 2009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
1132
1133 * fns.c: Remove code for unsupported system: MAC_OS.
1134 * image.c: Likewise. Include setjmp.h.
1135
1136 2009-10-19 Jan Djärv <jan.h.d@swipnet.se>
1137
1138 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
1139 pixel -1 (bug #4742).
1140
1141 2009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
1142
1143 * process.c (create_pty): Remove conditionals for no longer
1144 supported systems: UNIPLUS and RTU.
1145
1146 * xterm.c:
1147 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
1148
1149 * alloc.c: Do not define struct catchtag.
1150 * eval.c: Move struct catchtag definition ...
1151 * lisp.h: ... here.
1152
1153 * image.c: Move png.h #include earlier to avoid warnings.
1154
1155 * xterm.c:
1156 * xsmfns.c:
1157 * xselect.c:
1158 * xrdb.c:
1159 * xmenu.c:
1160 * xftfont.c:
1161 * xfont.c:
1162 * xfns.c:
1163 * xfaces.c:
1164 * xdisp.c:
1165 * window.c:
1166 * widget.c:
1167 * w32xfns.c:
1168 * w32uniscribe.c:
1169 * w32term.c:
1170 * w32select.c:
1171 * w32reg.c:
1172 * w32proc.c:
1173 * w32menu.c:
1174 * w32inevt.c:
1175 * w32heap.c:
1176 * w32font.c:
1177 * w32fns.c:
1178 * w32console.c:
1179 * w32.c:
1180 * w16select.c:
1181 * vm-limit.c:
1182 * unexsol.c:
1183 * unexec.c:
1184 * unexcw.c:
1185 * unexaix.c:
1186 * undo.c:
1187 * tparam.c:
1188 * textprop.c:
1189 * terminfo.c:
1190 * terminal.c:
1191 * termcap.c:
1192 * term.c:
1193 * syntax.c:
1194 * sound.c:
1195 * sheap.c:
1196 * search.c:
1197 * scroll.c:
1198 * region-cache.c:
1199 * regex.c:
1200 * ralloc.c:
1201 * process.c:
1202 * print.c:
1203 * nsterm.m:
1204 * nsselect.m:
1205 * nsmenu.m:
1206 * nsimage.m:
1207 * nsfont.m:
1208 * nsfns.m:
1209 * msdos.c:
1210 * minibuf.c:
1211 * menu.c:
1212 * marker.c:
1213 * macros.c:
1214 * keymap.c:
1215 * keyboard.c:
1216 * intervals.c:
1217 * insdel.c:
1218 * indent.c:
1219 * gtkutil.c:
1220 * ftxfont.c:
1221 * ftfont.c:
1222 * fringe.c:
1223 * frame.c:
1224 * fontset.c:
1225 * font.c:
1226 * fns.c:
1227 * floatfns.c:
1228 * filelock.c:
1229 * fileio.c:
1230 * emacs.c:
1231 * editfns.c:
1232 * dosfns.c:
1233 * doprnt.c:
1234 * doc.c:
1235 * dispnew.c:
1236 * dired.c:
1237 * dbusbind.c:
1238 * data.c:
1239 * composite.c:
1240 * coding.c:
1241 * cmds.c:
1242 * cm.c:
1243 * chartab.c:
1244 * charset.c:
1245 * character.c:
1246 * ccl.c:
1247 * category.c:
1248 * casetab.c:
1249 * casefiddle.c:
1250 * callproc.c:
1251 * callint.c:
1252 * bytecode.c:
1253 * buffer.c:
1254 * atimer.c: Include setjmp.h. (Bug#4643)
1255
1256 2009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
1257
1258 Remove leftover table unibyte_to_multibyte_table.
1259 * character.c (unibyte_to_multibyte_table): Remove.
1260 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
1261 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
1262 * character.h (UNIBYTE_TO_CHAR): New macro.
1263 (MAKE_CHAR_MULTIBYTE): Use it.
1264 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
1265 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
1266 (message_dolog, set_message_1):
1267 * search.c (Freplace_match):
1268 * editfns.c (Fcompare_buffer_substrings):
1269 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
1270 (concat):
1271 * insdel.c (copy_text, count_size_as_multibyte):
1272 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
1273 * term.c (produce_glyphs):
1274 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
1275 * regex.c (RE_CHAR_TO_MULTIBYTE):
1276 * cmds.c (internal_self_insert):
1277 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
1278
1279 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
1280
1281 2009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
1282
1283 * puresize.h (BASE_PURESIZE): Increase to 1310000.
1284
1285 2009-10-16 Juanma Barranquero <lekktu@gmail.com>
1286
1287 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
1288
1289 2009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
1290
1291 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
1292 still needed under Tiger.
1293
1294 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
1295
1296 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
1297 __Apple__.
1298
1299 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
1300
1301 2009-10-15 Kenichi Handa <handa@m17n.org>
1302
1303 * print.c (print_object): Escape a symbol like "2E10" too.
1304
1305 2009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
1306
1307 Cleanups and changes for 64-bit compile under Snow Leopard.
1308 Based on suggestions by Erik Charlebois.
1309
1310 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
1311
1312 * nsfont.m (ns_char_width): Replace deprecated call.
1313 (ns_findfonts, nsfont_list_family): Use long format in printf, and
1314 cast argument.
1315 (nsfont_open): Use ns_char_width() everywhere.
1316 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
1317
1318 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
1319
1320 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
1321 where appropriate.
1322
1323 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
1324 where appropriate.
1325 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
1326 Use stringWithUTF8String.
1327 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
1328
1329 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
1330 Add formal protocol mention to inheritance.
1331 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
1332
1333 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
1334 Fix printf format.
1335 (ns_query_color): Use CGFloat where appropriate.
1336 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
1337 (EmacsScroller-mouseDown:) Use long format in printf, and cast
1338 argument.
1339
1340 * config.in (NS_HAVE_NSINTEGER): Drop.
1341
1342 * dbusbind.c (dbus-method-return-internal)
1343 (dbus-method-error-internal): Use long format in printf, and cast
1344 argument.
1345
1346 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
1347 in printf, and cast argument.
1348
1349 * process.c (list_processes_1): Use long format in printf, and
1350 cast argument.
1351
1352 2009-10-11 Glenn Morris <rgm@gnu.org>
1353
1354 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
1355
1356 2009-10-08 Jan Djärv <jan.h.d@swipnet.se>
1357
1358 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
1359 menu bar with a small width so it doesn't enlarge the frame.
1360
1361 2009-10-08 Juanma Barranquero <lekktu@gmail.com>
1362
1363 * fontset.c (Fset_fontset_font): Fix typos in error messages.
1364
1365 2009-10-06 Glenn Morris <rgm@gnu.org>
1366
1367 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
1368 SOME_MACHINE_LISP (this enters indirectly via DOC).
1369
1370 2009-10-05 Eli Zaretskii <eliz@gnu.org>
1371
1372 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
1373
1374 2009-10-04 Eli Zaretskii <eliz@gnu.org>
1375
1376 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
1377 Doc fix.
1378
1379 2009-10-03 Martin Rudalics <rudalics@gmx.at>
1380
1381 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
1382
1383 2009-10-02 Michael Albinus <michael.albinus@gmx.de>
1384
1385 * lisp.h (Qdelete_directory_internal): Remove, because it is not
1386 used anymore outside fileio.c.
1387
1388 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
1389
1390 2009-10-01 Juanma Barranquero <lekktu@gmail.com>
1391
1392 * lisp.h (Qdelete_directory_internal):
1393 Declare, instead of Qdelete_directory.
1394
1395 * w32fns.c (Fsystem_move_file_to_trash): Use it.
1396
1397 2009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
1398
1399 * eval.c (Fcalled_interactively_p): Add `kind' argument.
1400
1401 2009-10-01 Michael Albinus <michael.albinus@gmx.de>
1402
1403 * fileio.c (Fdelete_directory_internal): Rename from
1404 Fdelete_directory. It is not a command anymore. It has no file
1405 name handler.
1406
1407 2009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
1408
1409 * xdisp.c (get_next_display_element): Use an enum in last change.
1410
1411 2009-09-28 Kenichi Handa <handa@m17n.org>
1412
1413 * xdisp.c (get_next_display_element): Pay attention to
1414 unibyte_display_via_language_environment in handling
1415 Vnobreak_char_display.
1416
1417 2009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1418
1419 * nsterm.h (ns_app_name): New extern variable.
1420
1421 * nsterm.m (ns_app_name): New variable.
1422 (ns_term_init): Set and use it.
1423 (ns_term_shutdown): Use it.
1424
1425 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
1426 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
1427
1428 * nsfns.m (ns_set_name_iconic, ns_set_name)
1429 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
1430 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
1431
1432 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
1433 Remove double-casting in client_data comparison.
1434
1435 2009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1436
1437 * keyboard.c (make_lispy_event): Remember last wheel direction.
1438 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
1439
1440 2009-09-26 Glenn Morris <rgm@gnu.org>
1441
1442 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
1443 internal.elc. Add term/pc-win.elc.
1444 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
1445 term/x-win.elc.
1446 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
1447 term/w32-win.elc.
1448 (NS_SUPPORT): New.
1449 (lisp): Add NS_SUPPORT.
1450 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
1451
1452 2009-09-25 David Reitter <david.reitter@gmail.com>
1453
1454 * nsmenu.m (EmacsMenu-clear): Recognize application menu
1455 on Mac OS X 10.6+ (bug#4513).
1456
1457 2009-09-24 Juanma Barranquero <lekktu@gmail.com>
1458
1459 * frame.c (xrdb_get_resource): Return nil for empty string resources;
1460 some parts of Emacs code (like font selection) don't grok them.
1461 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
1462
1463 2009-09-24 Andreas Schwab <schwab@redhat.com>
1464
1465 * coding.c (decode_coding_iso_2022): Fix operator precedence.
1466
1467 2009-09-24 Juanma Barranquero <lekktu@gmail.com>
1468
1469 * dired.c (Fdirectory_files): Fix typo in docstring.
1470
1471 2009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1472
1473 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
1474 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
1475 (EmacsScroller-setPosition:portion:whole:): Remove -display call
1476 under GNUstep.
1477 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
1478
1479 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
1480 glyph advancement.
1481
1482 2009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1483
1484 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
1485 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
1486
1487 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
1488 deleted (bug #4492).
1489
1490 * nsfont.m (Vns_reg_to_script): New lisp variable.
1491 (syms_of_nsfont): Declare it.
1492 (ns_registry_to_script): New function.
1493 (ns_get_req_script): Call it.
1494 (ns_findfonts): Don't give up on non-unicode registry.
1495
1496 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
1497
1498 2009-09-20 Tom Tromey <tromey@redhat.com>
1499
1500 * eval.c (find_handler_clause): Make stack-trace-on-error work in
1501 batch mode (bug#4228).
1502
1503 2009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
1504
1505 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
1506 carefully. (Bug #4339)
1507
1508 2009-09-18 Chong Yidong <cyd@stupidchicken.com>
1509
1510 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
1511
1512 2009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1513
1514 * emacs.c (inhibit_x_resources): Update doc string for NS.
1515 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
1516 legacy code for -NXHost. Fix error printf in daemon case.
1517
1518 * nsterm.h (ns_no_defaults): Remove.
1519
1520 * nsterm.m (ns_no_defaults): Remove.
1521 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
1522 (ns_use_qd_smoothing): Remove legacy variable.
1523 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
1524 don't update the NSWindow itself.
1525 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
1526 state detection and store user rect ourselves. (Bug #3581)
1527
1528 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
1529 ns_use_qd_smoothing.
1530
1531 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
1532 platform versions. Drop support for emacs-20-style face specs.
1533 (x-close-connection): Drop PSFlush() under OS X.
1534 (x-focus-frame): Activate the app first. (Bug #4180)
1535
1536 2009-09-17 Juanma Barranquero <lekktu@gmail.com>
1537
1538 * emacs.c (inhibit_x_resources): New variable.
1539 (main) [HAVE_NS]: Don't process --quick command line option.
1540 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
1541
1542 * lisp.h (inhibit_x_resources): Declare it extern.
1543
1544 * w32reg.c (x_get_string_resource):
1545 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
1546
1547 2009-09-17 Eli Zaretskii <eliz@gnu.org>
1548
1549 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
1550 Add lisp/term/internal.elc.
1551
1552 2009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1553
1554 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
1555 (bug#4461).
1556
1557 2009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
1558
1559 * puresize.h (BASE_PURESIZE): Increase to 1290000.
1560
1561 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
1562 (OBJECTS_MACHINE): Remove, unused.
1563
1564 2009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
1565
1566 * frame.c (x_get_resource_string): Remove unused.
1567
1568 2009-09-15 Jan Djärv <jan.h.d@swipnet.se>
1569
1570 * xterm.c (x_new_font): Call change_frame_size before calling
1571 x_set_window_size, in case frame size won't change.
1572
1573 * frame.c (x_set_font): Remove dead code.
1574
1575 2009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
1576
1577 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
1578
1579 2009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1580
1581 * lread.c (Fload): Don't output a message after loading an obsolete
1582 package any more (done in Lisp now).
1583
1584 2009-09-12 Chong Yidong <cyd@stupidchicken.com>
1585
1586 * fns.c (syms_of_fns): Doc fix (Bug#4227).
1587
1588 2009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1589
1590 * keymap.c (Fwhere_is_internal): Use nconc2.
1591
1592 2009-09-11 Alan Mackenzie <acm@muc.de>
1593
1594 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
1595 batch mode.
1596
1597 2009-09-11 Andreas Schwab <schwab@linux-m68k.org>
1598
1599 * xdisp.c (display_mode_element): Detect cycles.
1600
1601 2009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1602
1603 * keymap.c (where_is_internal): Don't erroneously return nil right after
1604 filling the cache.
1605 (where_is_internal_1): Fix up typo.
1606
1607 2009-09-11 Glenn Morris <rgm@gnu.org>
1608
1609 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
1610 share a common doc-string.
1611
1612 2009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1613
1614 * keymap.c (get_keymap): Return the actual keymap symbol rather than
1615 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
1616
1617 * keymap.c (QCadvertised_binding): New constant.
1618 (syms_of_keymap): Initialize it.
1619 (Fwhere_is_internal): Try and use bindings from :advertised-binding
1620 if applicable.
1621
1622 2009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
1623
1624 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
1625 (parse_menu_item): Streamline since bindings are recomputed all the
1626 time anyway. Don't bother checking Vdefine_key_rebound_commands any
1627 more and don't support lmenu's menu-alias any more either.
1628
1629 * keymap.c (where_is_internal_data): Make noindirect a boolean.
1630 (where_is_internal): Strip it down to only traverse the keymaps.
1631 Move the cache handling from Fwhere_is_internal to here.
1632 (Fwhere_is_internal): Move the handling of remapping and the choice of
1633 the best binding from where_is_internal to here.
1634 Unify the cached/noncached paths, so remapping is also handled
1635 correctly when the cache is used, and so the cache can be used to
1636 speed up remap-handling when applicable.
1637 Give preference to non-remapped bindings.
1638 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
1639 non-remapped bindings.
1640 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
1641 command remapping.
1642
1643 * xdisp.c (display_mode_element): Move list length limit from 50 to
1644 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
1645
1646 2009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
1647
1648 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
1649
1650 2009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
1651
1652 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
1653 (Bug#4334)
1654
1655 * keymap.c (where_is_internal): Filter out shadowed remappings.
1656 Assume that where_is_internal returns unshadowed bindings to simplify
1657 the code and get rid of the gotos. Use ASIZE.
1658
1659 2009-09-04 Jan Djärv <jan.h.d@swipnet.se>
1660
1661 * xterm.c (x_focus_changed): If we get a focusout and pointer
1662 is invisible, make it visible.
1663
1664 * xterm.h: Remove condition for declaration of
1665 x_*_window_to_frame.
1666
1667 2009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
1668
1669 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
1670 initial terminal as well.
1671
1672 2009-09-02 Jan Djärv <jan.h.d@swipnet.se>
1673
1674 * xterm.h: Rename x_non_menubar_window_to_frame to
1675 x_menubar_window_to_frame.
1676
1677 * xterm.c: Remove declarations also in xterm.h
1678 (XTmouse_position): Do not return valid positions
1679 for clicks in the menubar and the toolbar for Gtk+.
1680
1681 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
1682 if the widget for the event has the same top level as a frame,
1683 return the frame.
1684 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
1685 internal windows, bug #4122.
1686 (x_non_menubar_window_to_frame): Remove.
1687
1688 2009-09-02 Glenn Morris <rgm@gnu.org>
1689
1690 * buffer.c (default-major-mode): Move most of the doc from here...
1691 (major-mode): ... to here.
1692
1693 2009-08-30 Nick Roberts <nickrob@snap.net.nz>
1694
1695 * process.c (wait_reading_process_output): Keep the descriptor
1696 when pty is used by a non-child process, e.g., in I/O buffer of
1697 GDB this allows inferior to be restarted.
1698
1699 2009-08-29 Eli Zaretskii <eliz@gnu.org>
1700
1701 * xdisp.c (redisplay_internal): Remove redundant test and collapse
1702 both branches into one.
1703
1704 2009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1705
1706 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
1707 (main): Use enable-multibyte-characters rather than
1708 default-enable-multibyte-characters. Output a warning message when
1709 running a unibyte session.
1710
1711 2009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1712
1713 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
1714 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
1715 (copy_data_segment): Also copy __program_vars section.
1716 (copy_dyld_info) [LC_DYLD_INFO]: New function.
1717 (dump_it) [LC_DYLD_INFO]: Use it.
1718
1719 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
1720
1721 2009-08-28 Eli Zaretskii <eliz@gnu.org>
1722
1723 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
1724 $(SRC)/buildobj.h.
1725 (buildobj.h): Renamed from $(SRC)/buildobj.h.
1726 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
1727 $(SRC)/buildobj.h.
1728 (clean): Add buildobj.h.
1729
1730 2009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
1731
1732 * print.c (print_object): Set escapeflag to 1 when printing
1733 hashtable keys and values.
1734
1735 2009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
1736
1737 * lread.c (read_integer): Use doubles (and potentially return a float
1738 number) as we do in string-to-number.
1739 (read1): Use strtol to read integers, signal errors on strtol's
1740 overflow and use floats if strtol's output is too large for
1741 Elisp integers.
1742
1743 2009-08-27 Eli Zaretskii <eliz@gnu.org>
1744
1745 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
1746 (make-buildobj-SH): Fix last change.
1747 (SRC): Move to before where it's first used.
1748
1749 2009-08-27 Kenichi Handa <handa@m17n.org>
1750
1751 * process.c (send_process): Use encode_coding_object instead of
1752 encode_coding_string to perform eol-conversion even if the string
1753 is unibyte.
1754
1755 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
1756 character.
1757
1758 * cmds.c (Fself_insert_command): Avoid unnecessay
1759 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
1760
1761 2009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
1762
1763 * callproc.c (Fcall_process): Remove always true #if.
1764
1765 * lisp.h: Replace #if 0 code for checking with text pointing to
1766 the --enable-checking configure flag.
1767
1768 * emacs.c (main): Mention the --enable-profiling configure flag
1769 instead of using CFLAGS.
1770
1771 2009-08-26 Ken Raeburn <raeburn@raeburn.org>
1772
1773 * Makefile.in (buildobj.h): New target.
1774 (doc.o): Depend on it.
1775 (temacs${EXEEXT}): Don't generate buildobj.lst.
1776 (mostlyclean): Delete buildobj.h, not buildobj.lst.
1777 * makefile.w32-in ($(SRC)/buildobj.h): New target.
1778 ($(BLD)/doc.$(O)): Depend on it.
1779 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
1780 provided by Eli Zaretskii.)
1781 ($(TEMACS)): Don't generate buildobj.lst.
1782 * doc.c: Include buildobj.h.
1783 (buildobj): New static variable.
1784 (Fsnarf_documentation): Use it, instead of opening and reading
1785 buildobj.lst.
1786
1787 2009-08-25 Michael Albinus <michael.albinus@gmx.de>
1788
1789 * dbusbind.c (Fdbus_call_method)
1790 (Fdbus_call_method_asynchronously): Use English numeric format for
1791 timeout values in doc string.
1792
1793 2009-08-25 Kenichi Handa <handa@m17n.org>
1794
1795 * alloc.c (mark_char_table): New function.
1796 (mark_object): Use mark_char_table for a char-table.
1797
1798 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
1799 (CHAR_TABLE_REF): Use it.
1800
1801 2009-08-23 Ken Raeburn <raeburn@raeburn.org>
1802
1803 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
1804 before invoking the newly build emacs to check for load-path
1805 shadowing.
1806
1807 2009-08-22 Glenn Morris <rgm@gnu.org>
1808
1809 * Makefile.in (bootstrap_exe): New variable.
1810 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
1811 Use ${bootstrap_exe}.
1812
1813 2009-08-22 Eli Zaretskii <eliz@gnu.org>
1814
1815 * coding.h (encode_coding_string): Don't encode unibyte strings.
1816 (Bug#4047)
1817
1818 2009-08-22 Michael Albinus <michael.albinus@gmx.de>
1819
1820 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
1821
1822 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
1823 intended as hotfix only.
1824 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
1825
1826 2009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1827
1828 * nsterm.m (ns_get_color): Update documentation properly for last
1829 change, and clean up loose ends in the code left by it. Fix
1830 longstanding bug with 16-bit hex parsing, and add support for
1831 yet another X11 format (rgb:r/g/b) for compatibility.
1832 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
1833 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
1834
1835 2009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
1836
1837 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
1838
1839 2009-08-20 Michael Albinus <michael.albinus@gmx.de>
1840
1841 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
1842 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
1843 (xd_initialize, xd_pending_messages): Check, whether
1844 $DBUS_SESSION_BUS_ADDRESS is set.
1845
1846 2009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1847
1848 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
1849
1850 * nsterm.m (ns_get_color): Remove incompatible color formats again.
1851
1852 2009-08-20 Glenn Morris <rgm@gnu.org>
1853
1854 * emacs.c (system-type): Doc fix.
1855
1856 2009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1857
1858 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
1859 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
1860
1861 2009-08-18 Michael Albinus <michael.albinus@gmx.de>
1862
1863 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
1864 New functions.
1865 (xd_initialize): Revert change from 2009-08-16.
1866
1867 2009-08-18 Kenichi Handa <handa@m17n.org>
1868
1869 * fontset.c (Ffontset_font): If a nil element is found in a
1870 font-group vector, return nil.
1871
1872 2009-08-17 Chong Yidong <cyd@stupidchicken.com>
1873
1874 * process.c (status_notify): Don't perform redisplay.
1875 (Fdelete_process, list_processes_1, process_send_signal):
1876 Expliticly perform redisplay.
1877 (wait_reading_process_output): Always check process status, but
1878 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
1879
1880 2009-08-17 Ken Raeburn <raeburn@raeburn.org>
1881
1882 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
1883 (XFLOAT_INIT): New macro for storing a float value.
1884 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
1885 * fns.c (sxhash): Copy out the value of a float in order to
1886 examine its bytes.
1887 * dbusbind.c (xd_append_arg): Likewise.
1888
1889 * emacs.c (main): Don't call syms_of_data twice.
1890
1891 2009-08-16 Michael Albinus <michael.albinus@gmx.de>
1892
1893 * dbusbind.c (xd_initialize): Add connection file descriptor to
1894 input_wait_mask, in order to let select() detect, whether a new
1895 message has been arrived.
1896 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
1897
1898 2009-08-15 Michael Albinus <michael.albinus@gmx.de>
1899
1900 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
1901 New functions.
1902
1903 * lisp.h (xd_pending_messages): Declare.
1904
1905 * keyboard.c (readable_events): Call xd_pending_messages.
1906
1907 2009-08-15 Chong Yidong <cyd@stupidchicken.com>
1908
1909 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
1910
1911 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
1912
1913 * buffer.c (set_buffer_internal_1)
1914 (swap_out_buffer_local_variables): Check for unbound local
1915 variables (Bug#4138).
1916
1917 2009-08-14 Eli Zaretskii <eliz@gnu.org>
1918
1919 * process.c (create_pty): Fix last change.
1920
1921 2009-08-13 Chong Yidong <cyd@stupidchicken.com>
1922
1923 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
1924 (xbm_load_image): Caller changed.
1925 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
1926
1927 2009-08-13 Nick Roberts <nickrob@snap.net.nz>
1928
1929 * process.c (create_pty): New function.
1930 (Fstart_process): Use it to allow Emacs to just associate a pty
1931 with the buffer. See associated change in gdb-mi.el.
1932 (list_processes_1): Deal with no program name.
1933 (start_process_unwind): Use pid == -2 to mean no process.
1934
1935 2009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
1936
1937 * cmds.c (nonundocount): New global variable.
1938 (keys_of_cmds): Initialize it.
1939 (Fself_insert_command): Use it to combine upto 20 sequential chars
1940 into a single undo entry, just like the Qself_insert_command code in
1941 keyboard.c does.
1942 Call frame_make_pointer_invisible, also like the Qself_insert_command
1943 code in keyboard.c does.
1944 * keyboard.c (command_loop_1): Use the new global nonundocount rather
1945 than its own local replacement for it.
1946
1947 2009-08-10 Ken Raeburn <raeburn@raeburn.org>
1948
1949 * fns.c (concat): Don't re-set string length to its current value.
1950
1951 * coding.h (decode_coding_string, encode_coding_string):
1952 Use SBYTES macro.
1953
1954 * doprnt.c (doprnt_lisp): Delete unused function.
1955 (doprnt): Merge with doprnt1, discarding lispstrings code.
1956 * lisp.h (doprnt_lisp): Don't declare.
1957
1958 2009-08-07 Juri Linkov <juri@jurta.org>
1959
1960 * puresize.h (BASE_PURESIZE): Increase to 1270000.
1961
1962 2009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
1963
1964 * print.c (syms_of_print): Undo previous change.
1965
1966 2009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
1967
1968 * lread.c (read1, syms_of_lread): Read hashtables back from the
1969 readable format.
1970
1971 * print.c (print_preprocess, print_object): Print hashtables fully
1972 and readably.
1973 (syms_of_print): Provide 'hashtable-print-readable.
1974
1975 2009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1976
1977 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
1978 no family set.
1979 (nsfont_open): Handle case when entity has no family.
1980
1981 2009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1982
1983 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
1984 element, not a list, for match case.
1985
1986 2009-07-28 Kenichi Handa <handa@m17n.org>
1987
1988 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
1989 rigidly.
1990
1991 * xfont.c (xfont_list_pattern): Don't ignore the return value of
1992 font_parse_xlfd. Check font properties more rigidly.
1993
1994 2009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
1995
1996 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
1997 bsd-common.h.
1998
1999 2009-07-27 Kenichi Handa <handa@m17n.org>
2000
2001 * xfaces.c (face_with_height): Call font_clear_prop.
2002
2003 2009-07-26 Chong Yidong <cyd@stupidchicken.com>
2004
2005 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
2006
2007 * xterm.c (x_term_init): Use Qx.
2008
2009 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
2010
2011 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
2012 (ns_get_color): Revert 2009-07-16 change.
2013
2014 2009-07-25 Eli Zaretskii <eliz@gnu.org>
2015
2016 * lread.c (syms_of_lread) <force_load_messages>: New variable.
2017 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
2018
2019 2009-07-25 Ken Raeburn <raeburn@raeburn.org>
2020
2021 * coding.h (decode_coding_string, encode_coding_string):
2022 Use SCHARS macro.
2023
2024 * lread.c: Rewrite 2009-07-21 changes.
2025 (load_depth): Delete.
2026 (Qload_in_progress): New variable.
2027 (load_unwind): Don't reference load_depth or load_in_progress.
2028 (Fload): Likewise; specbind Qload_in_progress instead.
2029 (init_lread): Don't initialize load_depth.
2030 (syms_of_lread): Initialize and protect Qload_in_progress.
2031
2032 2009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2033
2034 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
2035
2036 2009-07-23 Yavor Doganov <yavor@gnu.org>
2037
2038 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
2039
2040 2009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2041
2042 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
2043 Bugs 3792, 3720, 2402.
2044 (ns_lookup_indexed_color): Check for bad index.
2045 (ns_index_color): Init unused slot to 0.
2046 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
2047 Bug 3714, possibly 3082.
2048
2049 2009-07-22 Jason Rumney <jasonr@gnu.org>
2050
2051 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
2052 Position IME window at cursor (Bug#2570).
2053 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
2054 (globals_of_w32fns): Dynamically load functions required above.
2055
2056 * w32term.c (w32_draw_window_cursor): Send message to reposition
2057 any IME window.
2058
2059 2009-07-21 Chong Yidong <cyd@stupidchicken.com>
2060
2061 * fileio.c: Revert 2009-07-16 changes.
2062 (Vauto_save_include_big_deletions): New variable.
2063 (Fdo_auto_save): Disable auto-save only if
2064 auto-save-include-big-deletions is nil.
2065
2066 2009-07-21 Chong Yidong <cyd@stupidchicken.com>
2067
2068 * xdisp.c (move_it_to): For continued lines ending in a tab, take
2069 the overflowed pixels into account (Bug#3879).
2070
2071 2009-07-21 Ken Raeburn <raeburn@raeburn.org>
2072
2073 * lread.c (load_depth): New variable.
2074 (Fload, load_unwind, init_lread): Set it to the load recursion
2075 depth; set load_in_progress as a simple boolean based on the
2076 current load_depth. (Bug#3892)
2077
2078 2009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2079
2080 * nsfont.m (ns_has_attribute): Remove.
2081 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
2082
2083 2009-07-18 Juri Linkov <juri@jurta.org>
2084
2085 * process.c (Fset_process_query_on_exit_flag): Mention killing
2086 a buffer in docstring.
2087
2088 2009-07-17 Kenichi Handa <handa@m17n.org>
2089
2090 * casetab.c (shuffle): Fix the logic of setting up the cycle.
2091
2092 2009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2093
2094 * nsfns.m (Fns_set_alpha): Remove function.
2095 (syms_of_nsfns): Don't defsubr it.
2096
2097 * nsterm.m (ns_get_color): Remove incompatible color formats.
2098 (ns_color_to_lisp): Generate #rrggbb color format string.
2099
2100 2009-07-16 Richard Stallman <rms@gnu.org>
2101
2102 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
2103 (Fset_buffer_auto_saved): Handle save_length = -2.
2104
2105 2009-07-16 Chong Yidong <cyd@stupidchicken.com>
2106
2107 * xterm.c (Qx_gtk_map_stock): New var.
2108
2109 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
2110 of calling intern each time.
2111
2112 2009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2113
2114 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
2115 does tiling.
2116
2117 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
2118
2119 2009-07-14 Kenichi Handa <handa@m17n.org>
2120
2121 * font.c (font_vconcat_entity_vectors): New function.
2122 (struct font_sort_data): New member font_driver_preference.
2123 (font_compare): Check font_driver_preference.
2124 (font_sort_entities): The format of the first argument changed.
2125 (font_delete_unmatched): Likewise.
2126 (font_list_entities): The return type changed.
2127 (font_select_entity): The format of the second argument changed.
2128 (font_find_for_lface): Adjuste for the above changes.
2129 Don't suppress the checking of C even if the repertory supports it.
2130 (Flist_fonts): Adjust for the above changes.
2131
2132 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
2133 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
2134 Reject a font who has adstyle property that is different from a
2135 langname derived from registry property.
2136 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
2137
2138 2009-07-13 Eli Zaretskii <eliz@gnu.org>
2139
2140 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
2141 local copy of dirfilename.
2142
2143 2009-07-13 Kenichi Handa <handa@m17n.org>
2144
2145 * chartab.c (sub_char_table_ref_and_range): Fix the range check
2146 against max_char.
2147
2148 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
2149 calling XSYMBOL (sym).
2150
2151 2009-07-11 Eli Zaretskii <eliz@gnu.org>
2152
2153 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
2154 New function.
2155 (directory_files_internal) [WINDOWSNT]:
2156 Bind w32-get-true-file-attributes to either t or nil, depending whether
2157 the filesystem of the directory is fast or slow.
2158
2159 * w32.c (logon_network_drive): Don't assume PATH is an absolute
2160 file name.
2161 (is_slow_fs): New function.
2162 (stat): Use it to determine whether to issue more system calls to
2163 get accurate file attributes, when w32-get-true-file-attributes is
2164 `local'.
2165
2166 2009-07-10 Jan Djärv <jan.h.d@swipnet.se>
2167
2168 * xfns.c (Fx_select_font): Remember last font selected in
2169 x_last_font_name and use that the next time. Also try the frame
2170 parameter font-parameter as default to the font dialog.
2171
2172 2009-07-10 Kenichi Handa <handa@m17n.org>
2173
2174 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
2175
2176 2009-07-09 Eli Zaretskii <eliz@gnu.org>
2177
2178 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
2179
2180 * w32.c (stat): Treat UNC file names as residing on remote
2181 drives. (Bug#3542)
2182
2183 2009-07-09 Kenichi Handa <handa@m17n.org>
2184
2185 * fontset.c (fontset_find_font): Fix previous change.
2186
2187 2009-07-08 Michael Albinus <michael.albinus@gmx.de>
2188
2189 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
2190 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
2191 error flag.
2192
2193 2009-07-08 Kenichi Handa <handa@m17n.org>
2194
2195 * fontset.c (fontset_find_font): Fix the logic of handling
2196 charset_matched.
2197 (font_for_char): Delete unused var.
2198 (generate_ascii_font_name): Delete it.
2199
2200 * coding.h (JIS_TO_SJIS2): Fix the code range check.
2201
2202 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
2203 (encode_coding_sjis): Fix the code range check.
2204
2205 2009-07-07 Chong Yidong <cyd@stupidchicken.com>
2206
2207 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
2208 (Fexpand_file_name): Copy string data properly (Bug#3772).
2209
2210 2009-07-07 Jan Djärv <jan.h.d@swipnet.se>
2211
2212 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
2213 first MapNotify.
2214
2215 2009-07-07 Kenichi Handa <handa@m17n.org>
2216
2217 * character.h (unibyte_has_multibyte_table): Delete extern.
2218 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
2219
2220 * charset.c (Fset_charset_priority): Update charset_unibyte.
2221 (syms_of_charset): Initialize charset_unibyte.
2222
2223 * character.c (unibyte_has_multibyte_table): Delete it.
2224 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
2225 charset_unibyte.
2226 (multibyte_char_to_unibyte_safe): Likewise.
2227 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
2228
2229 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
2230 (x_produce_glyphs): Likewise.
2231
2232 * .gdbinit (xcharset): Fix the treating $arg0.
2233
2234 2009-07-04 Eli Zaretskii <eliz@gnu.org>
2235
2236 Emulation of `getloadavg' on MS-Windows.
2237 * w32.c: Include float.h
2238 (g_b_init_get_native_system_info, g_b_init_get_system_times)
2239 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
2240 (get_native_system_info, get_system_times): New functions.
2241 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
2242 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
2243 (globals_of_w32): Initialize g_b_init_get_native_system_info,
2244 g_b_init_get_system_times, and num_of_processors.
2245
2246 2009-07-03 Jason Rumney <jasonr@gnu.org>
2247
2248 * w32term.c (w32_initialize): Use standard types.
2249
2250 2009-07-03 Eli Zaretskii <eliz@gnu.org>
2251
2252 * dired.c (Ffile_attributes): Decode user and group names by the
2253 locale's encoding. (Bug#3443)
2254
2255 2009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
2256
2257 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
2258 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
2259
2260 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
2261
2262 * term.c (init_tty): Remove spurious #ifdef.
2263
2264 * m/mips.h: Mention this file is also used for netbsd.
2265 * m/pmax.h: Remove file.
2266
2267 2009-07-03 Jan Djärv <jan.h.d@swipnet.se>
2268
2269 * xterm.h (struct x_display_info): Add invisible_cursor.
2270 (struct x_output): Add current_cursor.
2271
2272 * xterm.c (XTtoggle_invisible_pointer): New function.
2273 (x_define_frame_cursor): Don't define cursor if invisible or the
2274 same as before. Set current_cursor.
2275 (x_create_terminal): Set toggle_invisible_pointer_hook.
2276
2277 * xfns.c (make_invisible_cursor): New function.
2278 (x_set_mouse_color): Call make_invisible_cursor.
2279 Set current_cursor.
2280 (x_window): Set current_cursor.
2281
2282 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
2283
2284 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
2285 inserting a character.
2286 (read_avail_input): Call frame_make_pointer_visible.
2287
2288 * frame.c (Vmake_pointer_invisible): New variable.
2289 (frame_make_pointer_invisible, frame_make_pointer_visible):
2290 New functions.
2291 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
2292
2293 * frame.h: Declare frame_make_pointer_invisible and
2294 frame_make_pointer_visible.
2295 (struct frame): Add pointer_invisible.
2296
2297 2009-07-02 Jan Djärv <jan.h.d@swipnet.se>
2298
2299 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
2300 frame isn't visible.
2301 (xg_frame_resized): If width/height is -1, get size of window
2302 from X server.
2303
2304 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
2305 for MapNotify.
2306
2307 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
2308 here or call change_frame_size. Just call flush_and_sync.
2309 (flush_and_sync): Reintroduce.
2310
2311 2009-07-01 Jan Djärv <jan.h.d@swipnet.se>
2312
2313 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
2314
2315 * xterm.c (x_handle_net_wm_state): Also look for sticky.
2316 (x_term_init): Initialize Xatom_net_wm_state_sticky.
2317
2318 * frame.h: Declare Qsticky.
2319
2320 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
2321
2322 * nsfns.m (ns_frame_parm_handlers): Ditto.
2323
2324 * frame.c: Declare Qsticky.
2325 (frame_parms): Add sticky.
2326
2327 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
2328
2329 * xterm.h: Declare x_set_sticky.
2330
2331 * xterm.c (x_set_sticky): New function.
2332
2333 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
2334 (xg_tool_bar_menu_proxy): Attach enter/leave events to
2335 xg_tool_bar_proxy_help_callback.
2336
2337 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
2338
2339 * frame.c: Qmaximized is new.
2340 (x_set_frame_parameters): Do not handle fullscreen specially.
2341 Only set width and height if explicitly set.
2342 (x_set_fullscreen): Handle Qmaximized.
2343 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
2344 (syms_of_frame): Initialize Qmaximized.
2345
2346 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
2347 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
2348
2349 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
2350 for Expose event. Add call to x_check_fullscreen for MapNotify event.
2351 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
2352 set gravity to NorthWestGravity when USE_GTK.
2353 (set_wm_state): New function.
2354 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
2355 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
2356 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
2357 or the case when no window manager is running. That means remove calls
2358 to x_real_positions and x_fullscreen_adjust.
2359
2360 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
2361 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
2362 flush_and_sync.
2363 (xg_height_changed): New function.
2364 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
2365 and gtk_window_set_policy. Set frame gravity after parsing the
2366 geometry string.
2367 (xg_update_frame_menubar, free_frame_menubar)
2368 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
2369 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
2370 Remove calls to xg_frame_set_char_size.
2371
2372 2009-07-01 Kenichi Handa <handa@m17n.org>
2373
2374 * keyboard.c (decode_keyboard_code): New function.
2375 (tty_read_avail_input): Decode the input bytes if necessary.
2376
2377 * coding.c (setup_coding_system):
2378 Initialize coding->carryover_bytes to 0.
2379 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
2380 use Qno_conversion.
2381
2382 2009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2383
2384 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
2385
2386 2009-06-30 Chong Yidong <cyd@stupidchicken.com>
2387
2388 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
2389
2390 2009-06-30 Jason Rumney <jasonr@gnu.org>
2391
2392 * w32term.c (w32_initialize): Use GetModuleHandle for library that
2393 is already loaded.
2394 Set user model ID if supported (bug#1849).
2395
2396 2009-06-29 Jim Meyering <meyering@redhat.com>
2397
2398 Remove useless if-before-xfree test.
2399 * nsfont.m (nsfont_close): Remove useless test.
2400 * term.c (delete_tty): Likewise.
2401 * w32.c (system_process_attributes): Likewise.
2402 * w32font.c (w32font_close): Likewise.
2403 * xfaces.c (x_free_gc): Likewise.
2404 * xselect.c (buffer): Likewise.
2405
2406 2009-06-28 Andreas Schwab <schwab@linux-m68k.org>
2407
2408 * process.c (send_process): Keep decoded string in a local
2409 variable and protect it from GC. (Bug#3521)
2410
2411 2009-06-28 Eli Zaretskii <eliz@gnu.org>
2412
2413 * term.c (create_tty_output) [MSDOS]: #ifdef away.
2414 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
2415
2416 2009-06-28 Chong Yidong <cyd@stupidchicken.com>
2417
2418 * xdisp.c (start_display, handle_face_prop)
2419 (move_it_vertically_backward, cursor_row_fully_visible_p)
2420 (redisplay_window, try_window_id, produce_image_glyph):
2421 Delete some #ifdef-ed out code chunks that are now obsolete.
2422
2423 * xterm.c (x_update_window_begin, x_new_focus_frame)
2424 (x_scroll_bar_handle_click, handle_one_xevent)
2425 (handle_one_xevent, XTread_socket, x_focus_on_frame)
2426 (x_make_frame_visible, x_make_frame_invisible)
2427 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
2428 code chunks that are now obsolete.
2429
2430 2009-06-28 Michael Albinus <michael.albinus@gmx.de>
2431
2432 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
2433 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
2434 for hours, when optimzation is enabled.
2435 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
2436 (xd_read_message): Make them static.
2437
2438 2009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
2439
2440 * term.c (turn_on_face): Allow simultaneously bold and dim
2441 terminal faces (Bug#3530).
2442
2443 2009-06-27 Chong Yidong <cyd@stupidchicken.com>
2444
2445 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
2446
2447 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
2448 truncation glyphs (Bug#3686).
2449
2450 2009-06-27 Glenn Morris <rgm@gnu.org>
2451
2452 * m/pmax.h: Restore file, with only netbsd portions.
2453
2454 2009-06-26 David Reitter <david.reitter@gmail.com>
2455
2456 * nsterm.m (keydown): Avoid infinite loop.
2457
2458 2009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
2459
2460 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
2461 the arg FORCE_SYMBOL.
2462
2463 2009-06-25 Kenichi Handa <handa@m17n.org>
2464
2465 * fontset.c (fontset_find_font): When a usable rfont_def is found
2466 in a fallback font-group, make it the first element of the group.
2467
2468 2009-06-24 Chong Yidong <cyd@stupidchicken.com>
2469
2470 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
2471
2472 2009-06-24 Kenichi Handa <handa@m17n.org>
2473
2474 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
2475 set for C.
2476 (fontset_font): Record the availability of a font for C both in
2477 the realized fontsets of the current one and the default one.
2478
2479 2009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
2480
2481 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
2482 conditional, it is always defined on AIX.
2483
2484 2009-06-23 Miles Bader <miles@gnu.org>
2485
2486 * window.c (Vrecenter_redisplay): New variable.
2487 (syms_of_window): Initialize it.
2488 (Qtty): New extern declaration.
2489 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
2490
2491 2009-06-23 Jim Meyering <meyering@redhat.com>
2492
2493 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
2494 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
2495 pointer dereferences are guaranteed to be valid.
2496
2497 2009-06-23 Kenichi Handa <handa@m17n.org>
2498
2499 * emacs.c (main): Call init_font ().
2500
2501 * font.h (Vfont_log): Extern it.
2502 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
2503
2504 * font.c (font_sort_entities, font_list_entities)
2505 (font_matching_entity, font_open_entity)
2506 (font_close_object): Change font_add_log to FONT_ADD_LOG.
2507 (Vfont_log): Delete static.
2508 (font_log_env_checked): Delete this variable.
2509 (font_add_log): Don't check font_log_env_checked.
2510 (font_deferred_log): Check Vfont_log.
2511 (init_font): New function.
2512
2513 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
2514
2515 * w32font.c: Change font_add_log to FONT_ADD_LOG.
2516
2517 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
2518
2519 * xfont.c: Change font_add_log to FONT_ADD_LOG.
2520
2521 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
2522 (face_for_char): Don't call font_deferred_log here.
2523 (font_for_char): Likewise.
2524
2525 2009-06-22 Chong Yidong <cyd@stupidchicken.com>
2526
2527 * w32term.c (x_draw_glyph_string): Use the glyph string's width
2528 rather than its background_width for drawing the overline and
2529 underline (Bug#489).
2530
2531 * xterm.c (x_draw_glyph_string): Use the glyph string's width
2532 rather than its background_width for drawing the overline and
2533 underline (Bug#489).
2534 (xg_default_icon_file): New variable.
2535 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
2536 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
2537
2538 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
2539 (load_overlay_strings): Remove externs.
2540 (fast_find_position): Function deleted.
2541 (mouse_face_from_buffer_pos): New function, based on
2542 fast_find_position. Correctly handle before-strings,
2543 display-strings, and after-strings (Bug#1220).
2544 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
2545
2546 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
2547
2548 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
2549 (move_it_in_display_line_to, move_it_in_display_line_to)
2550 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
2551
2552 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
2553
2554 * Branch for 23.1.
2555
2556 2009-06-21 Jason Rumney <jasonr@gnu.org>
2557
2558 * w32term.c (keyboard_codepage): New static variable.
2559 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
2560 (w32_read_socket) [WM_CHAR]: Use it to decode character
2561 input (bug#3237).
2562 (w32_initialize): Initialize it.
2563 (codepage_for_locale): New function.
2564
2565 2009-06-20 Ken Raeburn <raeburn@raeburn.org>
2566
2567 * process.c (status_message): Pass Faset index argument as a lisp
2568 object, so as to work with USE_LISP_UNION_TYPE.
2569
2570 2009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2571
2572 * coding.c (Ffind_coding_systems_region_internal):
2573 Cache checked characters.
2574
2575 2009-06-18 Kenichi Handa <handa@m17n.org>
2576
2577 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
2578
2579 2009-06-18 Andreas Schwab <aschwab@redhat.com>
2580
2581 * xdisp.c (redisplay_internal): Check that the frame is still
2582 live after redisplay of its windows.
2583 (redisplay_windows): Check that the window is still live.
2584
2585 2009-06-17 Andreas Schwab <schwab@linux-m68k.org>
2586
2587 * coding.c (detect_coding_utf_16): Fix previous change.
2588
2589 2009-06-16 Kenichi Handa <handa@m17n.org>
2590
2591 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
2592 UTF-16 by checking the dispersion of Eth and Oth bytes.
2593
2594 2009-06-15 Andreas Schwab <schwab@linux-m68k.org>
2595
2596 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
2597
2598 2009-06-15 Kenichi Handa <handa@m17n.org>
2599
2600 * process.c (status_message): Fix previous change. Be sure to
2601 decode a localized string.
2602
2603 2009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2604
2605 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
2606 add comment explaining why.
2607
2608 2009-06-14 Sidney Markowitz <sidney@sidney.com>
2609
2610 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
2611
2612 2009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
2613
2614 * nsfont.m (ns_attribute_value): Remove.
2615 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
2616 (ns_has_attribute): Shrink the normal range.
2617 (ns_findfonts): Don't worry about requested spec in determining
2618 need for synthItal.
2619 (ns_get_covering_families): Retain scriptToFamilies.
2620
2621 2009-06-14 Seiji Zenitani <zenitani@mac.com>
2622
2623 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
2624
2625 2009-06-11 Kenichi Handa <handa@m17n.org>
2626
2627 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2628 overhang for the static composition case.
2629
2630 2009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2631
2632 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2633 overhang for the automatic composition case.
2634
2635 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
2636 composition case.
2637
2638 2009-06-10 Chong Yidong <cyd@stupidchicken.com>
2639
2640 * xdisp.c (get_next_display_element): When handling wrap-prefix
2641 and line-prefix, treat \n as a control character (bug#3502).
2642
2643 2009-06-10 Kenichi Handa <handa@m17n.org>
2644
2645 * font.c (font_parse_family_registry): Fix for one-char foundry.
2646 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
2647
2648 2009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
2649
2650 * process.c (status_message): Fix handling of multibyte signal
2651 string (Bug#3499).
2652
2653 2009-06-09 Jim Meyering <meyering@redhat.com>
2654
2655 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
2656 color name is missing.
2657
2658 2009-06-09 Kenichi Handa <handa@m17n.org>
2659
2660 * charset.c (Fmap_charset_chars): In docstring, state clearly that
2661 FROM-CODE and TO-CODE are codepoints of CHARSET.
2662
2663 2009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2664
2665 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
2666
2667 2009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2668
2669 Changes to support :script/:lang/:otf in NS font driver.
2670 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
2671 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
2672 indicate not part of font driver interface, and change callers.
2673 (ns_get_family): Remove pointless null check.
2674 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
2675 ns_spec_to_descriptor, ns_descriptor_to_entity.
2676 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
2677 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
2678 (ns_spec_to_descriptor, ns_descriptor_to_entity)
2679 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
2680 (ns_get_req_script, ns_accumulate_script_ranges)
2681 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
2682 New functions.
2683 (nsfont_list, nsfont_match): Use ns_findfonts.
2684 (nsfont_open): Use font descriptor instead of traits.
2685 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
2686 (dump_glyphstring): Rename to ns_dump_glyphstring.
2687
2688 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
2689
2690 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
2691
2692 * fontset.c (fontset_from_font): Remove NS-specific code.
2693
2694 2009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
2695
2696 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
2697 nonactive windows.
2698
2699 2009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
2700
2701 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
2702
2703 2009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
2704
2705 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
2706
2707 2009-06-07 Chong Yidong <cyd@stupidchicken.com>
2708
2709 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
2710 account for the overflowing of newlines into the last glyph on the
2711 display line (Bug#3482).
2712
2713 2009-06-05 David Reitter <david.reitter@gmail.com>
2714
2715 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
2716 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
2717 Fns_selection_exists_p, Fns_selection_owner_p.
2718
2719 2009-06-03 Jason Rumney <jasonr@gnu.org>
2720
2721 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
2722 available. (Bug#3379)
2723
2724 2009-05-29 Kenichi Handa <handa@m17n.org>
2725
2726 * coding.c (get_translation_table):
2727 Check Venable_character_translation.
2728
2729 2009-05-26 David Reitter <david.reitter@gmail.com>
2730
2731 * nsterm.m (ns_raise_frame): Only raise frame if visible.
2732 (x_make_frame_visible): Move frame to front rather than calling
2733 ns_raise_frame().
2734 (keyDown:): Do not swallow events that aren't re-sent if frame
2735 isn't key window.
2736 (drawRect:): Do not set visibility/iconified flags because
2737 drawRect may be called by NSView even if the frame is hidden.
2738
2739 * nsfns.m (Fx_create_frame): Follow other ports in
2740 determining visibility; default to t. Ensure async_visible is set.
2741
2742 2009-05-23 Eli Zaretskii <eliz@gnu.org>
2743
2744 * dired.c (Ffile_attributes): Doc fix.
2745
2746 2009-05-22 Chong Yidong <cyd@stupidchicken.com>
2747
2748 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
2749
2750 2009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
2751
2752 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
2753 and xfont_scratch_props.
2754 (syms_of_xfont): Do it here instead.
2755 (xfont_find_ccl_program): Delete, unused.
2756 (xfont_open): Delete unused var `i'.
2757
2758 2009-05-21 Kenichi Handa <handa@m17n.org>
2759
2760 * fontset.c (Qlatin): Don't make it static.
2761
2762 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
2763 New functions.
2764 (xfont_scripts_cache, xfont_scratch_props): New variables.
2765 (Qlatin, Vscalable_fonts_allowed): Extern it.
2766 (xfont_list_pattern): Argument changed. Callers changed.
2767 Check Vscalable_fonts_allowed. Check the support of a script.
2768 (xfont_list): Don't reject a font spec with :script property.
2769 (xfont_has_char): Fix setting of encoding.
2770 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
2771 xfont_scratch_props.
2772
2773 2009-05-19 Kenichi Handa <handa@m17n.org>
2774
2775 * font.c (font_sort_entities): Rename from font_sort_entites.
2776 Callers changed.
2777
2778 2009-05-18 Kenichi Handa <handa@m17n.org>
2779
2780 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
2781
2782 2009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
2783
2784 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
2785 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
2786
2787 2009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2788
2789 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
2790 (x_delete_terminal): Dissociate resource database from display and
2791 then call XrmDestroyDatabase before closing display.
2792
2793 2009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2794
2795 * nsterm.m (ns_read_socket): Remove unused variable.
2796 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
2797 whether selected frame is viable before raising it (based on patch
2798 by David Reitter), and improve commentary.
2799 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
2800
2801 2009-05-15 Kenichi Handa <handa@m17n.org>
2802
2803 * font.c (Ffont_spec): Check arguments.
2804
2805 2009-05-14 Chong Yidong <cyd@stupidchicken.com>
2806
2807 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
2808 weight when testing attributes (Bug#3282).
2809
2810 2009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2811
2812 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
2813 what we expect to get in the next ConfigureNotify event.
2814
2815 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
2816 before Xft one (Bug#1696).
2817
2818 2009-05-07 David Reitter <david.reitter@gmail.com>
2819
2820 * nsfns.m (Fx_display_planes): Compute bitplanes using
2821 NSBitsPerPixelFromDepth (Bug#3207).
2822
2823 2009-05-10 Chong Yidong <cyd@stupidchicken.com>
2824
2825 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
2826
2827 2009-05-10 Ulrich Mueller <ulm@gentoo.org>
2828
2829 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
2830
2831 2009-05-07 David Reitter <david.reitter@gmail.com>
2832
2833 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
2834 Respect mouse face background.
2835
2836 2009-05-07 David Reitter <david.reitter@gmail.com>
2837
2838 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
2839 Mouse movement/highlight: bracket drawing operations
2840 in ns_update_begin and ns_update_end.
2841
2842 2009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2843
2844 * nsfns.m (ns_get_screen): Rewrite.
2845 Don't presume selected-frame is of type `ns'.
2846
2847 * font.c (font_update_drivers): Sanity fallback to avoid disabling
2848 all drivers.
2849
2850 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
2851
2852 2009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2853
2854 * keyboard.h (add_user_signal): Fix typo in extern.
2855
2856 * lisp.h (add_user_signal): Remove extern.
2857
2858 * unexelf.c (unexec): Consider a section to precede the .bss section
2859 if its addresses overlap that of .bss.
2860 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
2861 instead of dumping process.
2862
2863 2009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2864
2865 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
2866
2867 2009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
2868
2869 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
2870
2871 2009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
2872
2873 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
2874 any statements.
2875
2876 2009-05-02 Andreas Schwab <schwab@linux-m68k.org>
2877
2878 * process.c (read_process_output): Make sure the current buffer is
2879 always restored.
2880
2881 * coding.c (record_conversion_result): Don't modify
2882 Vlast_code_conversion_error for successful result.
2883 (alloc_destination): Don't clobber conversion result. (Bug#1650)
2884
2885 2009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
2886
2887 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
2888 (load_charset_map): Remove unnecessary code.
2889
2890 2009-04-30 David Reitter <david.reitter@gmail.com>
2891
2892 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
2893 through f24.
2894
2895 2009-04-30 Chong Yidong <cyd@stupidchicken.com>
2896
2897 * xfaces.c (face_at_buffer_position): New arg base_face_id.
2898
2899 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
2900 face_at_buffer_position.
2901 (face_before_or_after_it_pos, get_next_display_element)
2902 (note_mouse_highlight): Update face_at_buffer_position call.
2903
2904 * term.c (term_mouse_highlight):
2905 * msdos.c (IT_note_mouse_highlight):
2906 * fontset.c (Finternal_char_font):
2907 * font.c (font_at, font_range): Update face_at_buffer_position call.
2908
2909 * dispextern.h (face_at_buffer_position): Update prototype.
2910
2911 2009-04-30 Kenichi Handa <handa@m17n.org>
2912
2913 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
2914
2915 2009-04-29 Andreas Schwab <schwab@linux-m68k.org>
2916
2917 * callproc.c (Fcall_process): Fix GC protection. Make sure
2918 current buffer is always restored.
2919
2920 2009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2921
2922 * atimer.c (init_atimer): Also clear stopped_atimers.
2923
2924 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
2925
2926 * process.c (create_process): Clean up merger residues of
2927 2008-07-17 change.
2928
2929 2009-04-29 Ulrich Mueller <ulm@gentoo.org>
2930
2931 * lread.c (Vread_circle): New variable.
2932 (read1): Disable recursive read if Vread_circle is nil.
2933
2934 2009-04-29 Kenichi Handa <handa@m17n.org>
2935
2936 * fontset.h (set_default_ascii_font): Delete extern.
2937
2938 * fontset.c (set_default_ascii_font): Delete this unused function.
2939
2940 * frame.c (x_set_font): When ARG is a font-object, check if the
2941 font-object matches with the ASCII font-spec of the frame's
2942 fontset. If not, create a new fontset for the frame. (Bug #3075)
2943
2944 2009-04-28 Andreas Schwab <schwab@linux-m68k.org>
2945
2946 * fns.c (Flocale_info): Protect vector from GC during decoding.
2947
2948 * process.c (Fstart_process): Protect argv strings from GC during
2949 encoding.
2950
2951 2009-04-27 Andreas Schwab <schwab@linux-m68k.org>
2952
2953 * sysdep.c: Include <ctype.h>.
2954
2955 2009-04-27 David Reitter <david.reitter@gmail.com>
2956
2957 * nsfont.m (nsfont_open): Remove unused variable shrink.
2958 Remove commented-out code.
2959
2960 2009-04-26 Johan Bockgård <bojohan@gnu.org>
2961
2962 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2963
2964 2009-04-25 Jason Rumney <jasonr@gnu.org>
2965
2966 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
2967
2968 2009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2969
2970 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
2971 Swap bytes in short integer if fringe bitmap width > 8.
2972
2973 2009-04-23 Kenichi Handa <handa@m17n.org>
2974
2975 * xfaces.c (Fx_list_fonts): If a font size is specified in
2976 PATTERN, set it in returned scalable fonts.
2977
2978 2009-04-22 Chong Yidong <cyd@stupidchicken.com>
2979
2980 * keyboard.c (Fset_input_meta_mode): Doc fix.
2981
2982 * dispnew.c (Fsend_string_to_terminal): Doc fix.
2983
2984 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
2985
2986 * coding.c (Fterminal_coding_system): Doc fix.
2987
2988 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
2989 (Fx_display_pixel_height, Fx_display_planes)
2990 (Fx_display_color_cells, Fx_server_max_request_size)
2991 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2992 (Fx_display_mm_height, Fx_display_mm_width)
2993 (Fx_display_backing_store, Fx_display_visual_class)
2994 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
2995 Doc fixes, replacing "terminal id" with "terminal object".
2996 (check_x_display_info): Handle terminal objects instead of
2997 terminal ids.
2998
2999 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
3000 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
3001 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
3002 Doc fixes, replacing "terminal id" with "terminal object".
3003
3004 2009-04-21 Kenichi Handa <handa@m17n.org>
3005
3006 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
3007 (font_score): Check AVGWIDTH too.
3008
3009 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
3010 worst case.
3011 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
3012 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
3013
3014 2009-04-19 Jason Rumney <jasonr@gnu.org>
3015
3016 The following changes fix Bug#3005 for wide glyphs on each platform,
3017 without reintroducing Bug#1258 for stretch glyphs.
3018
3019 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
3020 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
3021 get_phys_cursor_geometry.
3022
3023 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
3024 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
3025 using get_phys_cursor_geometry.
3026
3027 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
3028 correctly calculated.
3029
3030 2009-04-19 Jan Djärv <jan.h.d@swipnet.se>
3031
3032 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
3033 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
3034 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
3035 is deprecated.
3036
3037 2009-04-18 Andreas Schwab <schwab@linux-m68k.org>
3038
3039 * font.c (font_put_frame_data): Use xfree instead of free.
3040
3041 2009-04-17 Juanma Barranquero <lekktu@gmail.com>
3042
3043 * w32font.c (Qja, Qko): Remove declarations.
3044 (syms_of_w32font): Don't DEFSYM them.
3045
3046 2009-04-17 Chong Yidong <cyd@stupidchicken.com>
3047
3048 * font.c (Qja, Qko): Move definitions here from ftfont.c.
3049
3050 * font.h (Qja, Qko): Extern them.
3051
3052 * ftfont.c (Qja, Qko): Remove declarations.
3053
3054 * xfont.c (Qja, Qko): Remove declarations.
3055
3056 2009-04-17 Kenichi Handa <handa@m17n.org>
3057
3058 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
3059 string from a vector to handle Latin-1 characters correctly.
3060
3061 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
3062 entity even if the cache hits.
3063
3064 2009-04-16 Andreas Schwab <schwab@linux-m68k.org>
3065
3066 * search.c (boyer_moore): Use zero as marker value for a possible
3067 match instead of depending on overflow behavior. (Bug#2844)
3068
3069 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
3070 * lisp.h: Adjust prototypes.
3071
3072 2009-04-16 Chong Yidong <cyd@stupidchicken.com>
3073
3074 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
3075 change (Bug#3003).
3076
3077 2009-04-16 Kenichi Handa <handa@m17n.org>
3078
3079 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
3080
3081 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
3082 adstyle.
3083
3084 * ftfont.c (Qja, Qko): Don't make them static.
3085 (enum ftfont_cache_for): New enum.
3086 (fc_charset_table): Undo the previous change.
3087 (ftfont_get_latin1_charset): Delete it.
3088 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
3089 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
3090 non-scarable font, try to get AVERAGE_WIDTH.
3091 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
3092 Change ft_face_cache from a list of a hash-table. Don't check
3093 `ja' and `ko' adstyle here.
3094 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
3095 FTFONT_CACHE_FOR_CHARET.
3096 (ftfont_get_charset): Undo the previous change.
3097 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
3098 (ftfont_close): Likewise.
3099 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
3100
3101 * font.c (font_sort_entites): Change the meaning of the arg
3102 BEST-ONLY. Don't optimize for VEC of lenght 1.
3103 (font_select_entity): Just return the value of font_sort_entites.
3104
3105 * xfaces.c (merge_face_vectors): Reflect font properties in
3106 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
3107 font_clear_prop if a face attribute doesn't change.
3108
3109 * charset.h (charset_ksc5601): Extern it.
3110
3111 * charset.c (charset_ksc5601): New variable.
3112 (Fdefine_charset_internal): Set charset_ksc5601.
3113 (init_charset_once): Initialize charset_ksc5601 to -1.
3114
3115 2009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
3116
3117 * fileio.c (history_delete_duplicates): Remove unused declaration.
3118
3119 * callint.c (history_delete_duplicates): New declaration.
3120 (Fcall_interactively): Remove command history duplicates when
3121 history_delete_duplicates is true.
3122
3123 2009-04-14 Eli Zaretskii <eliz@gnu.org>
3124
3125 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
3126
3127 2009-04-14 Kenichi Handa <handa@m17n.org>
3128
3129 * font.c (Ffont_info): Fix docstring. Fix the second element of
3130 the returned value (bug#2949).
3131
3132 2009-04-14 Chong Yidong <cyd@stupidchicken.com>
3133
3134 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
3135
3136 2009-04-14 Kenichi Handa <handa@m17n.org>
3137
3138 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
3139 encoding charset is ascii_compatible.
3140
3141 * charset.c (Fdefine_charset_internal): Make charset
3142 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
3143 code_offset is 0, and covers all ASCII characters.
3144
3145 2009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
3146
3147 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
3148 (ns_string_to_pasteboard_internal):
3149 * nsmenu.m (process_dialog):
3150 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
3151 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
3152 * lisp.h (Fx_load_color_file): Declare.
3153
3154 2009-04-13 Kenichi Handa <handa@m17n.org>
3155
3156 * font.c (font_delete_unmatched): Preserve the order of list elements.
3157 (font_select_entity): Suppress the code to optimize for the same
3158 kind of fonts.
3159 (font_load_for_lface): Get a font that supports at least ASCII
3160 characters.
3161
3162 * ftfont.c (Qja, Qko): New variables.
3163 (fc_charset_table): Delete uniquifier data for iso8859-1.
3164 (ftfont_get_latin1_charset): New function.
3165 (get_adstyle_property): New function.
3166 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
3167 bitmap fonts.
3168 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
3169 Delete iso-8859-1 range from the charset of fonts whose adstyle is
3170 `ko' or `ja'.
3171 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
3172 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
3173 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
3174 property.
3175 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
3176 (syms_of_ftfont): DEFSYM Qja and Qko.
3177
3178 2009-04-09 Kenichi Handa <handa@m17n.org>
3179
3180 * charset.c (map_charset_chars): For a charset of `superset'
3181 method, fix calculation of code range.
3182
3183 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
3184 from the list of extra properties.
3185 (font_clear_prop): Be sure to delete `:name' font property.
3186
3187 2009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3188
3189 * dispnew.c (redraw_overlapping_rows): Fix detection of
3190 overlapping for topmost and bottommost rows.
3191
3192 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
3193
3194 2009-04-06 Jason Rumney <jasonr@gnu.org>
3195
3196 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
3197
3198 2009-04-06 Kenichi Handa <handa@m17n.org>
3199
3200 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
3201
3202 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
3203
3204 2009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3205
3206 * ftfont.c (ftfont_open): Fix checking of the return value of
3207 FT_Load_Char. Fix setting font->underline_thickness.
3208
3209 2009-04-04 Chong Yidong <cyd@stupidchicken.com>
3210
3211 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
3212 (Fterminal_parameters, Fterminal_parameter)
3213 (Fset_terminal_parameter): In doc string, refer to terminal
3214 objects rather than terminal ids.
3215
3216 2009-04-04 Eli Zaretskii <eliz@gnu.org>
3217
3218 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
3219 ret_lim_data. (Bug#2867)
3220
3221 2009-04-03 Chong Yidong <cyd@stupidchicken.com>
3222
3223 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
3224 so they don't get wider than the window, matching 2006-01-23
3225 change to the partner function in xdisp.c (Bug#2800).
3226
3227 2009-04-03 Kenichi Handa <handa@m17n.org>
3228
3229 * print.c (print_object): Make each lowest sub_char_table start a
3230 new line (Bug#2866).
3231
3232 2009-04-02 Kenichi Handa <handa@m17n.org>
3233
3234 * fontset.c (fontset_font): Record no-font when a fontset
3235 explicitly tells not to try another font-specs.
3236
3237 2009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
3238
3239 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
3240
3241 2009-03-30 Kenichi Handa <handa@m17n.org>
3242
3243 * fontset.c (fontset_from_font): Specify only registry in a
3244 font-spec for all characters supported by that registry.
3245
3246 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
3247 even if HAVE_M17N_FLT is not defined.
3248
3249 2009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
3250
3251 * ftfont.c: Conditionalize prototyping and use of
3252 ftfont_variation_glyphs.
3253
3254 2009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3255
3256 * frame.c (delete_frame): Work around compiler bug.
3257
3258 * editfns.c (general_insert_function): Adjust to insdel.c changes.
3259 * insdel.c (prepare_to_modify_buffer, signal_before_change):
3260 Some more EMACS_INT.
3261 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
3262
3263 * xdisp.c (dump_glyph): Fix typo.
3264
3265 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
3266 (adjust_markers_gap_motion, adjust_markers_for_delete)
3267 (adjust_markers_for_insert, adjust_point)
3268 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
3269 (make_gap, copy_text, count_size_as_multibyte, insert)
3270 (insert_and_inherit, insert_before_markers)
3271 (insert_before_markers_and_inherit, insert_1)
3272 (count_combining_before, count_combining_after, insert_1_both)
3273 (insert_from_string, insert_from_string_before_markers)
3274 (insert_from_string_1, insert_from_gap, insert_from_buffer)
3275 (insert_from_buffer_1, adjust_after_replace)
3276 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
3277 (replace_range_2, del_range, del_range_1, del_range_byte)
3278 (del_range_both, del_range_2, modify_region)
3279 (prepare_to_modify_buffer, signal_before_change)
3280 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
3281 for buffer positions and sizes.
3282 * lisp.h: Adjust prototypes accordingly.
3283
3284 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
3285 (non_regular_inserted, non_regular_nbytes, read_non_regular)
3286 (Finsert_file_contents): Use EMACS_INT for buffer positions.
3287
3288 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
3289
3290 2009-03-27 Jan Djärv <jan.h.d@swipnet.se>
3291
3292 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
3293 lines and columns so we keep the same pixel height and width.
3294
3295 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
3296 the property _NET_WM_STATE has changed.
3297 (x_handle_net_wm_state): New function to update frame parameter
3298 fullscreen.
3299 (x_term_init): Initialize atoms for _NET_WM_STATE.
3300
3301 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
3302
3303 2009-03-27 Kevin Ryde <user42@zip.com.au>
3304
3305 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
3306 Gpm_GetEvent as an error that justifies closing the filedescriptor.
3307 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
3308 (Fgpm_mouse_stop): Pass that new parameter.
3309 * termhooks.h (close_gpm): Adjust prototype.
3310
3311 2009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
3312
3313 * lisp.h (Fx_focus_frame): Declare.
3314
3315 * callint.c (Fcall_interactively): For '^' just delegate the work to
3316 handle-shift-selection.
3317 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
3318
3319 2009-03-24 Chong Yidong <cyd@stupidchicken.com>
3320
3321 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
3322
3323 * data.c (Qinteractive_form): New variable.
3324 (Finteractive_form): Use it.
3325
3326 * eval.c (Fcommandp): Use Qinteractive_form.
3327
3328 2009-03-24 Jason Rumney <jasonr@gnu.org>
3329
3330 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
3331 Calculate total size precisely. Decode environment variables
3332 before substituting. (Bug#38)
3333
3334 2009-03-24 Kenichi Handa <handa@m17n.org>
3335
3336 * font.c (find_font_encoding): Return Qnil for unsupported
3337 encoding (Bug#2722).
3338
3339 2009-03-23 Jan Djärv <jan.h.d@swipnet.se>
3340
3341 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
3342 that gdpy is set.
3343
3344 2009-03-22 Alan Mackenzie <acm@muc.de>
3345
3346 * callint.c (Finteractive): Clarify the doc string - even
3347 promptless elements need \n separators.
3348
3349 2009-03-22 Jason Rumney <jasonr@gnu.org>
3350
3351 * w32term.c (syms_of_w32term): Doc fix for
3352 x-use-underline-position-properties.
3353
3354 2009-03-21 Eli Zaretskii <eliz@gnu.org>
3355
3356 * w32.c (getpwuid): Change argument type to unsigned.
3357 (struct w32_id): Change type of `rid' member to unsigned.
3358 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
3359 argument ID to unsigned. All callers changed.
3360 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
3361
3362 2009-03-20 Eli Zaretskii <eliz@gnu.org>
3363
3364 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
3365 negative, produce a float value.
3366
3367 * dired.c (make_uid, make_gid): New functions.
3368 (Ffile_attributes): Use them to avoid negative UID and GID.
3369
3370 2009-03-20 Juanma Barranquero <lekktu@gmail.com>
3371
3372 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
3373 (syms_of_keyboard) <command-hook-internal, input-method-function>:
3374 Fix typos in docstrings.
3375
3376 2009-03-19 Kenichi Handa <handa@m17n.org>
3377
3378 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
3379 changed, use font_load_for_lface to get a new font object.
3380 Call free_realized_fontset after handling ASCII font change.
3381
3382 * frame.c (x_set_font): Handle the case that ARG is a cons.
3383
3384 2009-03-19 Glenn Morris <rgm@gnu.org>
3385
3386 * fileio.c (Fsubstitute_in_file_name): Doc fix.
3387
3388 2009-03-19 Chong Yidong <cyd@stupidchicken.com>
3389
3390 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
3391
3392 2009-03-19 Kenichi Handa <handa@m17n.org>
3393
3394 * charset.c (load_charset_map_from_file): When a mapfile can't be
3395 loaded, signal an error.
3396
3397 2009-03-18 Eli Zaretskii <eliz@gnu.org>
3398
3399 * dired.c (Ffile_attributes): Make sure UID and GID are always
3400 positive, even if the value is too large for a positive EMACS_INT.
3401 Doc fix.
3402
3403 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
3404
3405 2009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3406
3407 * xmenu.c (xdialog_show): Move Fredisplay call ...
3408 (Fx_popup_dialog): ... here.
3409
3410 2009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
3411
3412 * dired.c (file_name_completion): Disable the first optimization just
3413 installed, since it is not implemented correctly.
3414
3415 2009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3416
3417 * dired.c (file_name_completion): Check completion-ignored-extensions
3418 only if the entry can affect bestmatch.
3419 Stop the search early, as Ftry_completion already does.
3420
3421 2009-03-17 Chong Yidong <cyd@stupidchicken.com>
3422
3423 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
3424
3425 2009-03-15 Chong Yidong <cyd@stupidchicken.com>
3426
3427 * keyboard.c (parse_menu_item): Don't display remappings as menu
3428 equivalent bindings (Bug#788).
3429
3430 2009-03-15 Jason Rumney <jasonr@gnu.org>
3431
3432 * w32term.h (WM_EMACS_PAINT): New message.
3433 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
3434 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
3435 before passing to lisp thread. (Bug#950)
3436
3437 2009-03-14 David Reitter <david.reitter@gmail.com>
3438
3439 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
3440 variable as it was never reset.
3441 (ns_term_init): Remove initialization of Lisp-settable defaults
3442 and ns_expand_space.
3443 (-setPanelFromDefaultValues): Remove ns_expand_space.
3444 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
3445 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
3446 i.e. no additional spacing, similar to Carbon port.
3447
3448 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
3449 * nsfns.m (ns-popup-prefs-panel): Remove.
3450
3451 2009-03-14 Jan Djärv <jan.h.d@swipnet.se>
3452
3453 * sound.c (alsa_configure): Remove call to deprecated
3454 snd_pcm_sw_params_set_xfer_align.
3455
3456 2009-03-14 Stephen Berman <stephen.berman@gmx.net>
3457
3458 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
3459 after clicking in a detached tool bar.
3460 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
3461
3462 2009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
3463
3464 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
3465 int/Lisp_Object mixup).
3466
3467 2009-03-13 Kenichi Handa <handa@m17n.org>
3468
3469 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
3470 Handle NAME nil and t correctly. Callers changed.
3471 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
3472 (set_fontset_font): Change ARG to a vector. Handle range_list in
3473 ARG correctly.
3474 (Fset_fontset_font): Fix the case that TARGET is both a script
3475 name and charset name. Adjust the arg to set_fontset_font for
3476 the above change.
3477 (fontset_from_font): Fix previous change.
3478 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
3479 entry. If FONTSET is the default fontset, don't set the extra
3480 slot of the returning char-table.
3481
3482 2009-03-12 Juanma Barranquero <lekktu@gmail.com>
3483
3484 * nsfns.m (Fx_close_connection): Doc fix.
3485 (Fns_do_applescript): Reflow docstring.
3486 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
3487 (Fx_display_pixel_width, Fx_display_pixel_height)
3488 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
3489 Fix typos in docstrings.
3490 (Fns_set_alpha): Fix typos in error messages.
3491
3492 2009-03-12 David Reitter <david.reitter@gmail.com>
3493
3494 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
3495 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
3496 were used for such events.
3497
3498 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
3499 (toggleToolbar, performDragOperation, runHelp): Use it.
3500
3501 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
3502 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
3503
3504 2009-03-11 Kenichi Handa <handa@m17n.org>
3505
3506 * font.h (font_open_by_spec): Extern it.
3507
3508 * font.c (font_open_by_spec): New function.
3509 (font_open_by_name): Use font_open_by_spec.
3510
3511 * frame.c (x_set_font): When ARG is a font-object, don't alter the
3512 fontset of the frame.
3513
3514 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
3515 modify the default font of frames that use this fontset.
3516 (num_auto_fontsets): New variable.
3517 (fontset_from_font): Use num_auto_fontsets to decide a fontset
3518 name. Be sure to set FONTSET_ASCII to the correct font name.
3519 (update_auto_fontset_alist): New function.
3520
3521 2009-03-11 Juanma Barranquero <lekktu@gmail.com>
3522
3523 * makefile.w32-in: Update dependencies.
3524
3525 2009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3526
3527 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
3528
3529 2009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
3530
3531 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
3532
3533 2009-03-10 Chong Yidong <cyd@stupidchicken.com>
3534
3535 * lread.c (Feval_buffer): Doc fix.
3536
3537 2009-03-09 Kenichi Handa <handa@m17n.org>
3538
3539 * charset.c (Qfile_name_handler_alist): Extern it.
3540 (load_charset_map_from_file): Temporarily bind
3541 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
3542
3543 2009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
3544
3545 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
3546 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
3547
3548 2009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3549
3550 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
3551 (x_set_window_size): Change back to calculated method of setting
3552 toolbar height under Cocoa. (Bug#2546)
3553 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
3554 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
3555
3556 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
3557
3558 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
3559 accelerator in parens under GNUstep.
3560
3561 2009-03-06 Kenichi Handa <handa@m17n.org>
3562
3563 These changes are to detect incorrect composition sequence without
3564 looking ahead the source. (Bug#2370)
3565
3566 * coding.h: Include "composite.h".
3567 (enum compisition_state): New enum.
3568 (struct compisition_status): New struct.
3569 (struct iso_2022_spec): New member cmp_status.
3570 (struct emacs_mule_spec): New struct.
3571 (struct coding_system): New members ctext_extended_segment_len and
3572 embedded_utf_8. Change the union member
3573 spec.emacs_mule_full_support to spec.emacs_mule.
3574
3575 * coding.c (CODING_ISO_CMP_STATUS): New macro.
3576 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
3577 (MAX_ANNOTATION_LENGTH): Define to 5.
3578 (ADD_COMPOSITION_DATA): New arg nbytes.
3579 (emacs_mule_char): New arg cmp_status.
3580 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
3581 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
3582 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
3583 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
3584 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
3585 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
3586 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
3587 (EMACS_MULE_COMPOSITION_END): New macro.
3588 (emacs_mule_finish_composition): New function.
3589 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
3590 (decode_coding_emacs_mule): Avoid long looking ahead while
3591 handling composition.
3592 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
3593 (ENCODE_COMPOSITION_RULE): New macro.
3594 (finish_composition): New function.
3595 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
3596 (DECODE_COMPOSITION_START): New implementation.
3597 (DECODE_COMPOSITION_END): Likewise.
3598 (STORE_COMPOSITION_RULE): New macro.
3599 (decode_coding_iso_2022): Avoid long looking ahead while handling
3600 composition, CTEXT extended segment, and embedded UTF-8.
3601 (setup_coding_system): For a coding of type iso-2022, reset
3602 CODING_ISO_EXTSEGMENT_LEN (coding) and
3603 CODING_ISO_EMBEDDED_UTF_8 (coding).
3604 (get_translation): Delete arguments last_block, from_nchars,
3605 to_nchars. Callers changed.
3606 (produce_chars): Don't modify charbuf. Adjusted for the change of
3607 get_translation.
3608 (produce_composition): Adjust for the new annotation sequence.
3609 (handle_composition_annotation): Likewise.
3610 (consume_chars): Adjust for the change of get_translation.
3611
3612 2009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
3613
3614 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
3615
3616 2009-03-05 Kenichi Handa <handa@m17n.org>
3617
3618 * font.c (font_select_entity): New function.
3619 (font_find_for_lface): Use font_select_entity to select a font.
3620
3621 * fontset.c (fontset_find_font): If a font found without
3622 restricting to the characters C doesn't support C, try to find a
3623 font with C restriction.
3624
3625 2009-03-04 Nikolaj Schumacher <me@nschum.de>
3626
3627 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
3628
3629 2009-03-04 Jason Rumney <jasonr@gnu.org>
3630
3631 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
3632 characters that have already been read. (Bug#2569)
3633
3634 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
3635 Log an error message if check_image_size failed.
3636 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
3637 (gs_load): Mention max-image-size in size error message. (Bug#2560)
3638
3639 2009-03-02 Eli Zaretskii <eliz@gnu.org>
3640
3641 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
3642 when decoding process output.
3643
3644 2009-03-01 Richard M Stallman <rms@gnu.org>
3645
3646 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
3647
3648 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
3649
3650 2009-02-28 Eli Zaretskii <eliz@gnu.org>
3651
3652 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
3653 (decode_coding_emacs_mule, decode_coding_iso_2022)
3654 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3655 (decode_coding_raw_text, decode_coding_charset)
3656 (setup_coding_system, decode_eol, decode_coding, consume_chars):
3657 Honor inhibit-eol-conversion. (Bug #2186)
3658
3659 2009-02-28 Jason Rumney <jasonr@gnu.org>
3660
3661 * coding.c (detect_coding_charset): If not checking latin extra,
3662 fail on characters between 0x80 and 0xA0. (Bug#2354)
3663
3664 2009-02-28 Eli Zaretskii <eliz@gnu.org>
3665
3666 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
3667 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
3668
3669 2009-02-27 Glenn Morris <rgm@gnu.org>
3670
3671 * callint.c (Finteractive): Doc fix.
3672
3673 2009-02-27 Kenichi Handa <handa@m17n.org>
3674
3675 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
3676
3677 2009-02-27 Chong Yidong <cyd@stupidchicken.com>
3678
3679 * font.c (font_style_to_value): Set value for unknown symbols to
3680 100 instead of 255.
3681 (weight_table, slant_table, width_table): Treat "unspecified" as
3682 the default value.
3683
3684 2009-02-26 Juanma Barranquero <lekktu@gmail.com>
3685
3686 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
3687
3688 2009-02-25 Juanma Barranquero <lekktu@gmail.com>
3689
3690 * lread.c (Fload): Stop checking Vloads_in_progress and signal
3691 error as soon as a recursive load is detected.
3692
3693 2009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3694
3695 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
3696 before caching.
3697
3698 2009-02-24 Kenichi Handa <handa@m17n.org>
3699
3700 * fontset.c (fontset_find_font): Fix the condition for checking
3701 unavailable font.
3702
3703 2009-02-24 Glenn Morris <rgm@gnu.org>
3704
3705 * xfaces.c (Finternal_set_font_selection_order): Remove leading
3706 whitespace that confuses documentation.
3707
3708 2009-02-23 Miles Bader <miles@gnu.org>
3709
3710 * process.c (Flist_system_processes, Fprocess_attributes)
3711 (syms_of_process): Rename `system-process-attributes' to
3712 `process-attributes'.
3713
3714 2009-02-22 Andreas Schwab <schwab@linux-m68k.org>
3715
3716 * coding.h (struct coding_system): Make safe_charsets a pointer to
3717 unsigned char.
3718 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
3719 being 255.
3720 (SAFE_CHARSET_P): Likewise.
3721 (setup_iso_safe_charsets): Properly setup safe_charsets.
3722 (Fdefine_coding_system_internal): Likewise.
3723 (setup_coding_system): Likewise. Remove unneeded casts.
3724 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
3725 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
3726 unneeded casts.
3727
3728 * insdel.c (del_range_2): Don't modify gap contents when called
3729 from decode_coding_object. (Bug#1809)
3730
3731 2009-02-21 Chong Yidong <cyd@stupidchicken.com>
3732
3733 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
3734 Qfont_object.
3735 (Ftype_of): Recognize font objects.
3736
3737 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
3738
3739 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
3740 moved to data.c.
3741
3742 2009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3743
3744 * nsterm.m (x_make_frame_invisible): Unset async_visible,
3745 async_iconified. Based on a patch by Christian Lynbech
3746 <christian.lynbech@tieto.com>.
3747 (EmacsView-windowDidMiniaturize:): Unset async_visible.
3748
3749 2009-02-20 Glenn Morris <rgm@gnu.org>
3750
3751 * syntax.c (Fskip_chars_forward): Fix doc typo.
3752
3753 2009-02-20 Chong Yidong <cyd@stupidchicken.com>
3754
3755 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
3756
3757 2009-02-19 Chong Yidong <cyd@stupidchicken.com>
3758
3759 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
3760
3761 2009-02-19 Kenichi Handa <handa@m17n.org>
3762
3763 * coding.c (detect_coding): Preserve coding->mode.
3764 Don't overflow coding->carryover. (Bug#2370)
3765
3766 2009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
3767
3768 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
3769
3770 2009-02-18 Kenichi Handa <handa@m17n.org>
3771
3772 * font.c (font_check_otf_features): Fix handling of `nil' element.
3773 (Ffont_spec): Describe :lang and :otf in the docstring.
3774
3775 2009-02-16 Andreas Schwab <schwab@suse.de>
3776
3777 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
3778 string.
3779
3780 2009-02-16 Kenichi Handa <handa@m17n.org>
3781
3782 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
3783 (Bug#1723)
3784
3785 2009-02-14 Chong Yidong <cyd@stupidchicken.com>
3786
3787 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
3788
3789 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
3790 (handle_line_prefix): Suppress wrapping of wrap prefixes.
3791
3792 2009-02-14 Eli Zaretskii <eliz@gnu.org>
3793
3794 * msdos.c (MAX_SCREEN_BUF): New macro.
3795 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
3796 Encode the entire run of glyphs sharing the same face, instead of
3797 doing that one glyph at a time (fixes a bug with displaying
3798 double-size characters).
3799
3800 2009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
3801
3802 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
3803
3804 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
3805 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
3806 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
3807
3808 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
3809 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
3810
3811 2009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
3812
3813 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
3814 invisible areas.
3815
3816 2009-02-12 Jason Rumney <jasonr@gnu.org>
3817
3818 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
3819 (add_font_entity_to_list): Call check_face_name even when family
3820 is unspecified.
3821
3822 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3823 Release DC when finished. Use NULL window to refer to desktop.
3824 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
3825
3826 * w32font.c (add_font_entity_to_list): Fix check for substituted
3827 raster fonts. (Bug#2219)
3828
3829 2009-02-12 Kenichi Handa <handa@m17n.org>
3830
3831 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
3832 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
3833 (autocmp_chars): Use fast_looking_at. Don't compose more
3834 characters than MAX_COMPOSITION_COMPONENTS.
3835 (find_automatic_composition): While looking forward and backward,
3836 check static composition. Fix where to stop looking forward.
3837 (composition_adjust_point): Fix checking of static composition.
3838 (Fcomposition_get_gstring): Pay attention to
3839 MAX_COMPOSITION_COMPONENTS.
3840
3841 * lisp.h (fast_looking_at): Extern it.
3842
3843 * search.c (fast_looking_at): New function.
3844
3845 * term.c (encode_terminal_code): Adjust for the change of
3846 <struct glyph>.u.cmp.to.
3847 (append_composite_glyph): Likewise.
3848
3849 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
3850 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
3851 composition.
3852 (append_composite_glyph): Adjust for the change of
3853 <strcut glyph>.u.cmp.to.
3854
3855 2009-02-11 Juanma Barranquero <lekktu@gmail.com>
3856
3857 * casetab.c (init_casetab_once):
3858 * coding.c (ALLOC_CONVERSION_WORK_AREA):
3859 * font.c (font_update_lface):
3860 * fontset.c (Fnew_fontset):
3861 * ftfont.c (ftfont_drive_otf):
3862 * xfont.c (xfont_open):
3863 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
3864
3865 2009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
3866
3867 * fileio.c (Fwrite_region): !NILP -> CONSP.
3868
3869 2009-02-10 Andreas Schwab <schwab@suse.de>
3870
3871 * process.c (send_process): Properly relocate pointer into data
3872 when using encoded data. (Bug#2272)
3873
3874 2009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
3875
3876 * coding.c (detect_coding_charset): Fix previous change.
3877
3878 2009-02-08 Jason Rumney <jasonr@gnu.org>
3879
3880 * w32fns.c (w32_hide_hourglass): Handle case where frame
3881 disappeared while hourglass was displayed. (Bug #2193)
3882
3883 2009-02-07 Andreas Schwab <schwab@suse.de>
3884
3885 * unexelf.c (unexec): Fix error message.
3886
3887 2009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
3888
3889 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
3890 when modal window is active. (Bug #2152)
3891 (applicationShouldTerminate:): Remove now-unneeded while loop
3892 around NSRunAlertPanel.
3893
3894 * nsmenu.m (popupSession): New file-global variable.
3895 (pop_down_menu): End the popupSession before closing dialog.
3896 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
3897 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
3898 don't query NSApp for events (just sleep instead).
3899
3900 2009-02-07 Eli Zaretskii <eliz@gnu.org>
3901
3902 * coding.c (syms_of_coding) <translation-table-for-input>:
3903 Modify doc string to discourage use for character code unification.
3904
3905 2009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3906
3907 * atimer.c (run_timers): Update pending_atimers.
3908
3909 2009-02-06 Chong Yidong <cyd@stupidchicken.com>
3910
3911 * image.c (svg_load_image): Fix last change.
3912
3913 * xfns.c (Fx_create_frame): Signal an error if no font is
3914 found (Bug#2147).
3915
3916 2009-02-05 Juanma Barranquero <lekktu@gmail.com>
3917
3918 * character.c (syms_of_character) <script-representative-chars>:
3919 Fix typo in docstring.
3920
3921 2009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3922
3923 * nsmenu.m (pop_down_menu): New function.
3924 (ns_popup_dialog): Call it on unwind.
3925 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
3926 call timer_check() (Bug#2154).
3927 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
3928 handling_signal is set.
3929 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
3930
3931 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
3932
3933 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
3934
3935 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
3936
3937 * keyboard.c (poll_for_input_1, handle_async_input):
3938 Set handling_signal under HAVE_NS.
3939
3940 2009-02-04 Glenn Morris <rgm@gnu.org>
3941
3942 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
3943
3944 2009-02-04 Kenichi Handa <handa@m17n.org>
3945
3946 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
3947
3948 * charset.c (Fchar_charset): New optional arg restriction.
3949
3950 * coding.h (coding_system_charset_list): Extern it.
3951
3952 * coding.c (coding_system_charset_list): New function.
3953
3954 * composite.c: Include coding.h and termhooks.h.
3955 (composition_gstring_p): Fix for the terminal case.
3956 (composition_gstring_width): Likewise.
3957 (fill_gstring_body): Likewise.
3958 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
3959 the frame.
3960 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
3961 is within a composition.
3962 (Fcomposition_get_gstring): Fix the terminal case.
3963
3964 * term.c (encode_terminal_code): Fix handling of composition.
3965 (produce_composite_glyph): For static composition, get pixel_width
3966 from struct composition.
3967
3968 2009-02-02 Andreas Schwab <schwab@suse.de>
3969
3970 * unexelf.c (unexec): Handle unaligned bss offset.
3971
3972 2009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3973
3974 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
3975 XT,w32read_socket changes to ns_read_socket.
3976
3977 * keyboard.c (handle_interrupt): Don't call
3978 quit_throw_to_read_char() under NS.
3979
3980 * blockinput.h: Remove NS-specific code.
3981
3982 2009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
3983
3984 * dispnew.c (window_change_signal): Don't try to get the size of a
3985 suspended tty frame.
3986 * term.c (Fresume_tty): Resize if the size has changed while the
3987 tty was suspended.
3988
3989 * alloc.c (mark_stack): Properly conditionalize previous change.
3990
3991 2009-01-30 Juanma Barranquero <lekktu@gmail.com>
3992
3993 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
3994 * w32term.c (w32_read_socket) [SYNC_INPUT]:
3995 Remove; this code is not used on Windows.
3996
3997 2009-01-30 Eli Zaretskii <eliz@gnu.org>
3998
3999 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
4000 EOLs that also has stray ^M characters.
4001
4002 2009-01-30 Juanma Barranquero <lekktu@gmail.com>
4003
4004 * atimer.c (run_timers, alarm_signal_handler):
4005 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
4006 * w32inevt.c (w32_console_read_socket):
4007 * w32term.c (w32_read_socket):
4008 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
4009
4010 2009-01-30 Chong Yidong <cyd@stupidchicken.com>
4011
4012 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
4013 Initialize it as a relative filename pattern.
4014 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
4015 (Fcall_process_region): Simplify temp file creation using
4016 temporary-file-directory.
4017
4018 2009-01-29 Eli Zaretskii <eliz@gnu.org>
4019
4020 * msdos.c: Rename pending_signals to msdos_pending_signals.
4021 (sig_suspender, sigprocmask): Adjust.
4022
4023 2009-01-29 Chong Yidong <cyd@stupidchicken.com>
4024
4025 * keyboard.c (pending_signals): New var.
4026 (poll_for_input, input_available_signal, init_keyboard): Set it.
4027 (process_pending_signals): New function.
4028
4029 * lisp.h (QUIT): Check pending_signals instead of
4030 interrupt_input_pending. Use process_pending_signals.
4031
4032 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
4033
4034 * process.c (wait_reading_process_output): Use process_pending_signals.
4035
4036 * sysdep.c (emacs_write): Use process_pending_signals.
4037
4038 * xterm.c (XTread_socket): Update pending_signals.
4039
4040 * w32term.c (w32_read_socket): Update pending_signals.
4041
4042 * w32inevt.c (w32_console_read_socket): Update pending_signals.
4043
4044 2009-01-29 Kenichi Handa <handa@m17n.org>
4045
4046 * xftfont.c (xftfont_has_char): New function.
4047 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
4048
4049 2009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4050
4051 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
4052 under GNUstep.
4053 (ns_query_color): New declaration.
4054
4055 * nsterm.m (ns_confirm_quit): New variable.
4056 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
4057 (EmacsApp-applicationShouldTerminate:): Use it.
4058 (EmacsPrefsController): Let user set it.
4059 (ns_query_color): New function.
4060 (ns_defined_color): Use it.
4061 (ns_initialize): Drop.
4062 (ns_term_init): Add two lines from ns_initialize(), and set
4063 input_interrupt_mode to nil.
4064
4065 * image.c (svg_load_image): Don't right-shift background RGB when
4066 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
4067
4068 2009-01-28 Kenichi Handa <handa@m17n.org>
4069
4070 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
4071 (fontset_get_font_group): Remember that no font-group is specified
4072 for C.
4073
4074 2009-01-27 Chong Yidong <cyd@stupidchicken.com>
4075
4076 * fns.c (concat): Check for string overflow (bug#1787).
4077
4078 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
4079 Quadruple undo limits (bug#1501).
4080
4081 2009-01-27 Kenichi Handa <handa@m17n.org>
4082
4083 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
4084 directly use GT_Get_Char_index.
4085
4086 * xftfont.c (struct xftfont_info): New member `index'.
4087
4088 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
4089 (Ffontset_font): Adjust for the change of fontset entry.
4090
4091 2009-01-26 Kenichi Handa <handa@m17n.org>
4092
4093 * fontset.c (fontset_find_font): Fix handling of non-cons return
4094 value of fontset_get_font_group.
4095 (fontset_font): Revert last change.
4096
4097 2009-01-26 Jason Rumney <jasonr@gnu.org>
4098
4099 * w32font.c (w32font_list_internal): Return quickly if registry is
4100 unknown. Simplify final return.
4101 (add_font_entity_to_list): Break complex logic down into more
4102 manageable chunks. Move unknown registry check to
4103 w32font_list_internal.
4104
4105 2009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
4106
4107 Changes to remove Feval calls from GUI under NS.
4108
4109 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
4110 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
4111 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
4112
4113 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
4114 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
4115 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
4116 instead of NON_ASCII_KEYSTROKE_EVENT.
4117 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
4118 (EmacsApp-applicationShouldTerminate:): Query user.
4119 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
4120 instead of Feval.
4121
4122 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
4123
4124 * keyboard.c (kbd_buffer_get_event): Check for it.
4125 (keys_of_keyboard): Define lispy keys for
4126 ns-put/unput-working-text.
4127
4128 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
4129 versions.
4130 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
4131
4132 2009-01-25 Chong Yidong <cyd@stupidchicken.com>
4133
4134 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
4135 setting current_buffer directly. (Bug#2044)
4136
4137 2009-01-24 Chong Yidong <cyd@stupidchicken.com>
4138
4139 * fontset.c (fontset_font): If we know there is no font, don't do
4140 any work. (Bug#1952, bug#1990).
4141
4142 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
4143
4144 2009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4145
4146 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
4147 (ns_no_defaults): New declaration.
4148 (main): Use it.
4149
4150 * nsterm.h (ns_no_defaults): New declaration.
4151
4152 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
4153
4154 * nsterm.m (ns_no_defaults): New variable.
4155 (ns_initialize): Don't read defaults when ns_no_defaults.
4156 (EmacsView-readSelectionFromPasteboard:)
4157 (writeSelectionToPasteboard:types:): New stubbed-out methods for
4158 NSServicesRequests protocol. (Bug#1435)
4159 (ns_dumpglyphs_stretch): New function.
4160 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
4161 of 2008-11-15 to other terms. (Bug#615)
4162
4163 * nsimage.m (setPixmapData:): Set to ignore image DPI.
4164
4165 2009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
4166
4167 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
4168 call for Sparc64.
4169
4170 2009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4171
4172 * nsfns.m:
4173 * nsgui.h:
4174 * nsmenu.m:
4175 * nsselect.m:
4176 * nsterm.h:
4177 * nsterm.m: Remove '23' comments that indicated code added during
4178 update from emacs-20 -> emacs-23.
4179
4180 2009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4181
4182 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
4183 ns_alternate_modifier. (Bug#1217)
4184
4185 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
4186 Display all shortcuts, including those w/o super modifier.
4187
4188 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
4189
4190 2009-01-22 Chong Yidong <cyd@stupidchicken.com>
4191
4192 * fileio.c (Vwrite_region_post_annotation_function)
4193 (Vwrite_region_annotation_buffers): New vars.
4194 (build_annotations_unwind): Just reset
4195 Vwrite_region_annotation_buffers.
4196 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
4197 Call write-region-post-annotation-function.
4198 (build_annotations): Add to Vwrite_region_annotation_buffers if
4199 buffer changes.
4200
4201 2009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4202
4203 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
4204 Tiger.
4205 * nsfns.m (ns_do_applescript):
4206 Conditionalize typeUTF16ExternalRepresentation on Tiger.
4207
4208 2009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
4209
4210 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
4211
4212 2009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4213
4214 * nsmenu.m (NSMENUPROFILE): Change #if style.
4215
4216 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
4217
4218 * nsterm.m (x_set_frame_alpha): Add prototype.
4219 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
4220 handle Ctrl-tab. (Bug#1841)
4221 (ns_get_color): Use unsigned long long for scanned hex string value.
4222 (ns_term_shutdown): Abort on non SIGTERM signals.
4223 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
4224 (EmacsPrefsController-setPanelFromDefaultValues): New function.
4225 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
4226 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
4227 (ns_defined_color): Fix settings of the XColor variable fields:
4228 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
4229
4230 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
4231 DPI. (Bug#1316)
4232 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
4233 values in onTiger section.
4234
4235 2009-01-19 Chong Yidong <cyd@stupidchicken.com>
4236
4237 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
4238 Check return value of font_spec_from_name.
4239 (Fx_list_fonts): Doc fix. (Bug#1951)
4240
4241 * font.c (font_spec_from_name): Return Qnil if font name could not
4242 be parsed.
4243 (font_parse_name): Treat a `?' character as part of an XLFD.
4244
4245 * fns.c (Fsubstring): Doc fix.
4246
4247 2009-01-19 Kenichi Handa <handa@m17n.org>
4248
4249 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
4250 (ftfont_list): Likewise.
4251
4252 2009-01-18 Juanma Barranquero <lekktu@gmail.com>
4253
4254 * dbusbind.c (Fdbus_register_signal):
4255 * process.c (conv_sockaddr_to_lisp):
4256 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
4257
4258 * callproc.c (Fgetenv_internal): Doc fix.
4259
4260 2009-01-16 Chong Yidong <cyd@stupidchicken.com>
4261
4262 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
4263 it is not even used.
4264
4265 2009-01-16 Glenn Morris <rgm@gnu.org>
4266
4267 * font.c (Ffont_variation_glyphs): Silence compiler.
4268
4269 2009-01-15 Juanma Barranquero <lekktu@gmail.com>
4270
4271 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
4272 Reported by David Robinow <drobinow@gmail.com>.
4273
4274 2009-01-15 Kenichi Handa <handa@m17n.org>
4275
4276 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4277
4278 2009-01-14 Jason Rumney <jasonr@gnu.org>
4279
4280 * frame.c (x_set_font): Always store a font to the font parameter,
4281 never a fontset. (Bug#1562)
4282
4283 2009-01-14 Kenichi Handa <handa@m17n.org>
4284
4285 * coding.c (TWO_MORE_BYTES): New macro.
4286 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
4287
4288 2009-01-13 Chong Yidong <cyd@stupidchicken.com>
4289
4290 * font.c (font_clear_prop): If clearing the family, clear the font
4291 width index too.
4292
4293 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4294
4295 2009-01-12 Juanma Barranquero <lekktu@gmail.com>
4296
4297 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
4298 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
4299 functions, use sizeof.
4300
4301 2009-01-12 Martin Rudalics <rudalics@gmx.at>
4302
4303 * keyboard.c (read_char): Fix case where last_nonmenu_event
4304 returned a bad value with submenus. (Bug#447)
4305
4306 2009-01-12 Chong Yidong <cyd@stupidchicken.com>
4307
4308 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
4309 family, clear the font width index too.
4310
4311 2009-01-11 Jason Rumney <jasonr@gnu.org>
4312
4313 * keyboard.c (cmd_error_internal): Exit when errors occur before
4314 frame creation and not in daemon mode. (Bug#1836)
4315
4316 2009-01-10 Chong Yidong <cyd@stupidchicken.com>
4317
4318 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
4319 of a display vector, backtrack.
4320 (try_window_reusing_current_matrix): Check glyph type before
4321 referencing charpos member.
4322
4323 2009-01-10 Eli Zaretskii <eliz@gnu.org>
4324
4325 Fix Bug #876:
4326
4327 * coding.c (inhibit_null_byte_detection): New variable.
4328 (detect_coding, detect_coding_system): Don't pay attention to null
4329 bytes if inhibit_null_byte_detection is non-zero.
4330 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
4331 <inhibit-iso-escape-detection>: Doc fix.
4332
4333 2009-01-09 Jason Rumney <jasonr@gnu.org>
4334
4335 * w32font.c (add_font_entity_to_list): Don't report unknown
4336 Windows charset as any unrecognized registry. (Bug#1548)
4337 Only report Unicode Plane 2 fonts as unicode-sip.
4338
4339 2009-01-09 Chong Yidong <cyd@stupidchicken.com>
4340
4341 * xfaces.c (Fx_font_family_list): Delete function.
4342 Move compatibility version to faces.el.
4343
4344 * font.c (Ffont_family_list): Return a list of strings, not symbols.
4345
4346 2009-01-09 Martin Rudalics <rudalics@gmx.at>
4347
4348 * frame.c (x_set_frame_parameters): Remember requested value for
4349 fullscreen before it's reset by the parameter handler.
4350
4351 2009-01-09 Glenn Morris <rgm@gnu.org>
4352
4353 * keyboard.c (last_command_char): For clarity, rename to...
4354 (last_command_event): ... and update all users.
4355 (last_input_char): For clarity, rename to...
4356 (last_input_event): ... and update all users.
4357 (last-command-char, last-input-char): Move to subr.el as aliases.
4358 * cmds.c, commands.h: Update for last_command_char rename.
4359
4360 2009-01-08 Chong Yidong <cyd@stupidchicken.com>
4361
4362 * font.c (font_open_for_lface): Handle unspecified height attribute.
4363
4364 2009-01-08 Jason Rumney <jasonr@gnu.org>
4365
4366 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
4367 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
4368 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
4369 Don't declare.
4370 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
4371 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
4372
4373 2009-01-07 Kenichi Handa <handa@m17n.org>
4374
4375 * fileio.c (Finsert_file_contents): In the case of replace,
4376 remember the coding system used for decoding in
4377 coding_system (Bug#1039).
4378
4379 * coding.c (decode_coding_utf_8): Check byte_after_cr before
4380 breaking the loop. (Bug#870)
4381 (decode_coding_utf_16, decode_coding_emacs_mule)
4382 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
4383 (decode_coding_charset): Likewise.
4384
4385 2009-01-05 Martin Rudalics <rudalics@gmx.at>
4386
4387 * frame.c (x_set_frame_parameters): Make sure height (width) get
4388 applied when fullwidth (fullheight) is set. (Bug#1522)
4389
4390 2009-01-04 Juanma Barranquero <lekktu@gmail.com>
4391
4392 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
4393 (utc_base): Declare as ULONGLONG, not long double.
4394 (convert_time_raw): Delete.
4395 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
4396 (initialize_utc_base): New function.
4397 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
4398 (convert_from_time_t): Use initialize_utc_base; compute result with
4399 64-bit arithmetic.
4400 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
4401
4402 2009-01-03 Eli Zaretskii <eliz@gnu.org>
4403
4404 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
4405 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
4406 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
4407 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
4408 [!subprocesses]: Define.
4409 (syms_of_process) [!subprocesses]: Intern and staticpro them.
4410 (Flist_system_processes, Fsystem_process_attributes)
4411 [!subprocesses]: Call list_system_processes and
4412 system_process_attributes instead of returning Qnil.
4413
4414 * dosfns.c (system_process_attributes, list_system_processes):
4415 New functions.
4416
4417 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
4418
4419 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
4420 Don't use the default (no-op) implementation.
4421
4422 2009-01-03 Jason Rumney <jasonr@gnu.org>
4423
4424 * keyboard.c (parse_modifiers_uncached): Wheel events are
4425 clicks (bug#687).
4426
4427 * w32term.c (x_query_colors, x_query_color): New functions.
4428
4429 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
4430 (svg_load_image): Cast returned pointers from dynamically loaded
4431 functions. Eliminate W32 specific code.
4432
4433 2009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
4434
4435 * nsfns.m (x_set_foreground_color, x_set_background_color)
4436 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
4437 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
4438 x_ prefix instead of ns_. Update references.
4439 (syms_of_nsfns): Add a FIXME comment.
4440
4441 * nsterm.m (x_set_cursor_type): New prototype.
4442 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
4443
4444 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
4445 for Solaris instead of incorrectly providing Qutime and Qcutime.
4446
4447 2009-01-02 Eli Zaretskii <eliz@gnu.org>
4448
4449 * w32.c (process_times): Compute sum of utime and stime.
4450 (system_process_attributes): Add Qtime to the alist.
4451
4452 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
4453 and add them to the alist.
4454
4455 * process.c (top level) <Qtime, Qctime>: New variables.
4456 (syms_of_process): staticpro them.
4457 (Fsystem_process_attributes): Add their documentation to the doc
4458 string.
4459
4460 * process.h: Declare Qtime and Qctime.
4461
4462 2009-01-02 Jason Rumney <jasonr@gnu.org>
4463
4464 * image.c (Qgobject): New symbol.
4465 (syms_of_image): Initialize it.
4466 (init_svg_functions): Load some functions from gobject library.
4467
4468 2009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
4469
4470 * frame.c (make_terminal_frame): Remove redundant code and useless
4471 block.
4472
4473 2009-01-01 Andreas Schwab <schwab@suse.de>
4474
4475 * process.c (conv_sockaddr_to_lisp): Add workaround for
4476 getsockname bug on BSD.
4477
4478 2009-01-01 Chong Yidong <cyd@stupidchicken.com>
4479
4480 * xfns.c (x_create_tip_frame): Set border width of the X window.
4481
4482 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
4483
4484 2009-01-01 Jason Rumney <jasonr@gnu.org>
4485
4486 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
4487 Don't block input, as per earlier xterm.c changes.
4488
4489 2008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
4490
4491 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
4492 (ns_appkit_version_int): New function.
4493 (x-server-version): Use ns_appkit_version_int and follow 21+
4494 convention of returning 3 integers.
4495
4496 2008-12-30 Kenichi Handa <handa@m17n.org>
4497
4498 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
4499 (CHAR_SURROGATE_PAIR_P): New macro.
4500
4501 * font.h (struct font_driver): New member get_variation_glyphs.
4502
4503 * font.c (font_range): Don't require a font for a variation selector.
4504 (Ffont_variation_glyphs): New function.
4505 (syms_of_font): Defsubr it.
4506
4507 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
4508 ftfont_variation_glyphs.
4509 (setup_otf_gstring): New function.
4510 (ftfont_drive_otf): Use it.
4511 (ftfont_shape_by_flt): Handle variation selector.
4512 (ftfont_variation_glyphs): New function.
4513
4514 2008-12-30 Martin Rudalics <rudalics@gmx.at>
4515
4516 * frame.c (Vemacs_iconified): Remove.
4517
4518 2008-12-30 Jason Rumney <jasonr@gnu.org>
4519
4520 * frame.c (store_frame_param, x_get_arg): Enable newer code on
4521 WINDOWSNT too, as related changes have already been synced. (Bug#117)
4522
4523 2008-12-30 Chong Yidong <cyd@stupidchicken.com>
4524
4525 * indent.c (Fvertical_motion): Don't advance iterator if we have
4526 reseated to the desired position.
4527
4528 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
4529 checking for pos match.
4530
4531 2008-12-30 Kenichi Handa <handa@m17n.org>
4532
4533 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
4534 just get the low 8-bit of the code.
4535
4536 * font.c (font_intern_prop): Validate str as multibyte.
4537
4538 2008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4539
4540 * dispextern.h (struct face): Move lface and hash from the middle
4541 of bitfields.
4542
4543 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
4544
4545 2008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4546
4547 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
4548 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
4549 instead of intervals.h.
4550
4551 2008-12-26 Andreas Schwab <schwab@suse.de>
4552
4553 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
4554 cons.
4555
4556 2008-12-26 Martin Rudalics <rudalics@gmx.at>
4557
4558 * textprop.c (Qminibuffer_prompt): New variable.
4559 (syms_of_textprop): Initialize it.
4560 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
4561 in minibuffer-prompt face. (Bug#1662)
4562
4563 2008-12-25 Jason Rumney <jasonr@gnu.org>
4564
4565 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
4566
4567 2008-12-24 Jason Rumney <jasonr@gnu.org>
4568
4569 * ralloc.c (r_alloc_reset_variable): New function.
4570
4571 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
4572 record of what points where. (Bug#716)
4573
4574 2008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
4575
4576 * minibuf.c (read_minibuf): Follow the non-interactive case when
4577 running as a daemon, before detaching.
4578
4579 2008-12-22 Andreas Schwab <schwab@suse.de>
4580
4581 * buffer.c (init_buffer): Use realloc instead of xrealloc.
4582 * gtkutil.c (free_widget_value): Use xfree instead of free.
4583
4584 2008-12-22 Martin Rudalics <rudalics@gmx.at>
4585
4586 * frame.c (delete_frame): New function derived from
4587 Fdelete_frame to handle Qnoelisp value for FORCE argument.
4588 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
4589 (Fdelete_frame): Call delete_frame. Remove line from doc-string
4590 saying that FORCE non-nil doesn't run `delete-frame-functions'.
4591 * frame.h: Extern delete_frame.
4592 * window.c (window_loop):
4593 * terminal.c (delete_terminal):
4594 * xterm.c (x_connection_closed):
4595 * xfns.c (Fx_hide_tip):
4596 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
4597
4598 2008-12-21 Jason Rumney <jasonr@gnu.org>
4599
4600 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
4601 when character maps to .notdef character.
4602
4603 2008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
4604
4605 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
4606
4607 2008-12-20 Jason Rumney <jasonr@gnu.org>
4608
4609 * frame.c (Fmake_terminal_frame): Raise an error when called from
4610 a graphical frame on Windows. (Bug#1325)
4611
4612 2008-12-20 Jan Djärv <jan.h.d@swipnet.se>
4613
4614 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
4615
4616 2008-12-20 Chong Yidong <cyd@stupidchicken.com>
4617
4618 * minibuf.c (Fread_buffer): Doc fix.
4619
4620 2008-12-20 Jason Rumney <jasonr@gnu.org>
4621
4622 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
4623 server name in UNC paths. (Bug#719)
4624
4625 * coding.c (decode_coding): Clear chars_at_source flag when using
4626 charbuf. (Bug#1035)
4627
4628 2008-12-19 Daniel Engeler <engeler@gmail.com>
4629
4630 * sysdep.c (serial_configure): Fix typo.
4631
4632 2008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4633
4634 * sysdep.c: Include alloca.h.
4635 (system_process_attributes): Add implementation for Solaris.
4636
4637 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
4638
4639 2008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4640
4641 Reorganize implementation of Flist_system_processes and
4642 Fsystem_process_attributes. No functional changes.
4643 * process.c: Don't #include pwd.h, grp.h and limits.h.
4644 (Flist_system_processes): Just call list_system_processes.
4645 (Fsystem_process_attributes): Just call system_process_attributes.
4646 (procfs_list_system_processes, time_from_jiffies)
4647 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
4648 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
4649
4650 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
4651 (list_system_processes): Rename from
4652 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
4653 Provide a do nothing implementation.
4654 (system_process_attributes): Rename from
4655 procfs_list_system_processes.
4656 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
4657 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
4658
4659 * w32.c (list_system_processes): Rename from
4660 w32_list_system_processes.
4661 (system_process_attributes): Rename from
4662 w32_system_process_attributes.
4663
4664 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
4665
4666 * process.h (w32_list_system_processes)
4667 (w32_system_process_attributes): Remove.
4668 (list_system_processes, system_process_attributes):
4669 New prototypes.
4670
4671 2008-12-19 Kenichi Handa <handa@m17n.org>
4672
4673 * xfont.c (xfont_decode_coding_xlfd): New function.
4674 (xfont_encode_coding_xlfd): New function.
4675 (xfont_list_pattern): Decode XLFD by iso-8859-1.
4676 (xfont_list): Decode and encode XLFD by iso-8859-1.
4677 (xfont_match): Likewise.
4678 (xfont_list_family): Likewise.
4679 (xfont_open): Likewise.
4680
4681 * ftfont.c (ftfont_open): Generate a multibyte string if given
4682 names are utf-8.
4683
4684 * xftfont.c (xftfont_open): Generate a multibyte string if given
4685 names are utf-8.
4686
4687 2008-12-18 Jan Djärv <jan.h.d@swipnet.se>
4688
4689 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
4690 changed.
4691 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
4692 clicked on a detached tool bar button.
4693
4694 2008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
4695
4696 * emacs.c (main): Print and error and exit when no data is read
4697 from the pipe.
4698
4699 2008-12-17 Jason Rumney <jasonr@gnu.org>
4700
4701 * w32font.c (w32font_has_char): Always return -1.
4702
4703 2008-12-16 Kenichi Handa <handa@m17n.org>
4704
4705 * font.c (font_open_entity): Fix previous change.
4706
4707 2008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
4708
4709 * process.c: Include <limits.h>.
4710
4711 2008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
4712
4713 * font.c (font_update_drivers): Fix mistake in reconstructing the
4714 driver list.
4715
4716 2008-12-16 Chong Yidong <cyd@stupidchicken.com>
4717
4718 * font.c (font_clear_cache): Fix format of font cache data.
4719
4720 2008-12-15 Chong Yidong <cyd@stupidchicken.com>
4721
4722 * xftfont.c (xftfont_open): Free Xft font pattern if
4723 XftFontOpenPattern fails.
4724
4725 * xterm.c (x_free_frame_resources): Remove extraneous call to
4726 free_frame_faces.
4727
4728 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
4729
4730 * xterm.c (x_delete_display): Move xim_close_dpy call to
4731 x_delete_terminal.
4732 (x_delete_terminal): Call xim_close_dpy.
4733
4734 2008-12-13 Jason Rumney <jasonr@gnu.org>
4735
4736 * w32font.c (intern_font_name): New function.
4737 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
4738 (w32font_open_internal, Fx_select_font): Decode font name.
4739 (fill_in_logfont, list_all_matching_fonts): Encode font name.
4740
4741 * w32font.h (intern_font_name): Declare new function.
4742
4743 * w32uniscribe.c (add_opentype_font_name_to_list):
4744 Use intern_font_name.
4745
4746 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
4747
4748 * frame.c (Fdelete_frame): Call free_font_driver_list.
4749
4750 * font.c (free_font_driver_list): Implement missing function.
4751
4752 * w32term.c (w32_term_init): Don't initialize the image cache
4753 here; it will be done in init_frame_faces.
4754
4755 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
4756 (struct x_display_info): Remove unused member null_pixel. New
4757 member xim_callback_data.
4758
4759 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
4760 (xim_initialize): Save pointer to callback function data.
4761 (xim_close_dpy): Free callback function data. Call XCloseIM,
4762 reverting 2008-11-04 change by David Smith.
4763 (x_term_init): Don't initialize the image cache here; it will be
4764 done in init_frame_faces. Remove ancient "null_pixel" cruft.
4765 (x_delete_display): Free x_dnd_atoms member.
4766
4767 2008-12-13 Kenichi Handa <handa@m17n.org>
4768
4769 * font.c (font_rescale_ratio): Moved from xfaces.c.
4770 Argument type changed. Handle a font-spec too.
4771 (font_score): Check Vface_font_rescale_alist.
4772 (font_open_entity): Likewise. (Bug#1547)
4773
4774 * xfaces.c (font_rescale_ratio): Moved to font.c.
4775
4776 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
4777
4778 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
4779
4780 2008-12-12 Jason Rumney <jasonr@gnu.org>
4781
4782 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
4783 Vwindow_system_version to the real w32 major version.
4784
4785 2008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
4786
4787 * term.c (init_tty): Move setting the terminal name before the
4788 potential user: maybe_fatal.
4789
4790 2008-12-11 Chong Yidong <cyd@stupidchicken.com>
4791
4792 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
4793 all callers changed. Call free_frame_faces to free the face cache.
4794
4795 2008-12-11 Jason Rumney <jasonr@gnu.org>
4796
4797 * w32font.c (fill_in_logfont): Don't assume symbol script means
4798 SYMBOL_CHARSET. (Bug#547)
4799
4800 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
4801 size for surrogates. (Bug#1096, bug#872)
4802
4803 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
4804
4805 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
4806
4807 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
4808
4809 * process.c (Fsystem_process_attributes, syms_of_process):
4810 Fix typo in name of Ssystem_process_attributes.
4811 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
4812
4813 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
4814
4815 * syntax.c (Fmodify_syntax_entry): Doc fix.
4816
4817 2008-12-10 Juanma Barranquero <lekktu@gmail.com>
4818
4819 * font.c (Ffont_spec): Move usage to end of docstring.
4820
4821 2008-12-10 Jason Rumney <jasonr@gnu.org>
4822
4823 * w32font.c (Qcham): New symbol.
4824 (font_supported_scripts): Add cham, and comments for other new
4825 scripts in bitfield from OpenType spec.
4826 (add_font_entity_to_list): Limit unicode-sip fonts to those that
4827 contain characters beyond the bmp.
4828
4829 2008-12-10 Kenichi Handa <handa@m17n.org>
4830
4831 * ftfont.c (fc_charset_table): Add "unicode-sip".
4832 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
4833 Qunicode_sip.
4834
4835 2008-12-10 Juanma Barranquero <lekktu@gmail.com>
4836
4837 * coding.c (QCdefault_char): Rename from QCdefalut_char.
4838 (Fcoding_system_put): Use QCdefault_char.
4839 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
4840
4841 2008-12-09 Chong Yidong <cyd@stupidchicken.com>
4842
4843 * xftfont.c (syms_of_xftfont): Fix typo.
4844
4845 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
4846
4847 2008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
4848
4849 * emacs.c (main): Close daemon_pipe on exec.
4850
4851 2008-12-08 Chong Yidong <cyd@stupidchicken.com>
4852
4853 * termchar.h (struct tty): New members termcap_term_buffer and
4854 termcap_strings_buffer.
4855
4856 * term.c (encode_terminal_code): Free any previous memory blocks
4857 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
4858 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
4859 All callers changed.
4860 (init_tty): Store termcap data and string buffers in new struct
4861 tty members termcap_term_buffer and termcap_strings_buffer.
4862 (delete_tty): Free them.
4863 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
4864
4865 2008-12-07 Seiji Zenitani <zenitani@mac.com>
4866
4867 * nsfns.m (ns_set_background_color): Remove code duplication.
4868 It was a substitute for face-transparency on OS X 10.3.
4869
4870 2008-12-06 Chong Yidong <cyd@stupidchicken.com>
4871
4872 * coding.c (make_conversion_work_buffer): Disable buffer
4873 modification hooks in the work buffer.
4874
4875 2008-12-05 Eli Zaretskii <eliz@gnu.org>
4876
4877 * process.c (procfs_system_process_attributes): If `nread' has a
4878 negative value, assign zero to it.
4879
4880 2008-12-05 Chong Yidong <cyd@stupidchicken.com>
4881
4882 * eval.c (Vdebug_on_error): Doc fix.
4883
4884 2008-12-05 Kenichi Handa <handa@m17n.org>
4885
4886 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
4887 second character is a combining character.
4888
4889 2008-12-05 Eli Zaretskii <eliz@gnu.org>
4890
4891 * process.c (procfs_system_process_attributes): Don't use cmd,
4892 cmdsize, and q without initializing them first.
4893
4894 2008-12-04 Jason Rumney <jasonr@gnu.org>
4895
4896 * w32font.c (w32font_draw): Initialize orig_clip before getting
4897 it, and delete it when finished.
4898
4899 2008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
4900
4901 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
4902 case when running as a daemon before detaching.
4903
4904 2008-12-03 Juanma Barranquero <lekktu@gmail.com>
4905
4906 * w32.c (init_environment): Don't unload library shell32.dll.
4907
4908 2008-12-03 Kenichi Handa <handa@m17n.org>
4909
4910 * font.c (font_at): Set `multibyte' at first.
4911
4912 * coding.c (decode_coding_charset): Check type of an element of
4913 vector VALIDS.
4914 (encode_coding_emacs_mule): Be sure to set `code'.
4915
4916 * fontset.c (face_for_char): Handle invalid charset property correctly.
4917 (font_for_char): Likewise.
4918
4919 2008-12-03 Chong Yidong <cyd@stupidchicken.com>
4920
4921 * font.c (Fopen_font): Compute pixel size correctly.
4922 (font_update_lface): Handle fonts with corrupted size specs,
4923 i.e. non-int and non-float.
4924
4925 * ftfont.c (ftfont_match): Initialize entity variable.
4926 (ftfont_resolve_generic_family): Avoid using uninitialized var.
4927 (ftfont_list_family): Initialize list var earlier.
4928
4929 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
4930
4931 * xterm.c (x_draw_glyph_string): Fall back on
4932 underline_minimum_offset for underline position.
4933
4934 2008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
4935
4936 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
4937
4938 * character.c (c_string_width): Specify the type for LEN.
4939
4940 2008-12-03 Kenichi Handa <handa@m17n.org>
4941
4942 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
4943 (decode_coding_utf_8): Likewise.
4944 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4945 (produce_chars): Initialize consumed_chars to 0.
4946
4947 2008-12-02 Chong Yidong <cyd@stupidchicken.com>
4948
4949 * keyboard.c (make_lispy_position): Only use PT if the selected
4950 window is current.
4951
4952 2008-12-02 Andreas Schwab <schwab@suse.de>
4953
4954 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
4955
4956 * doprnt.c (doprnt1): Fix size of charbuf.
4957
4958 2008-12-02 Chong Yidong <cyd@stupidchicken.com>
4959
4960 * keyboard.c (timer_check): Revert last change.
4961
4962 2008-12-02 Juanma Barranquero <lekktu@gmail.com>
4963
4964 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
4965
4966 2008-12-01 Juanma Barranquero <lekktu@gmail.com>
4967
4968 * makefile.w32-in: Update dependencies.
4969 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
4970
4971 2008-12-01 Andreas Schwab <schwab@suse.de>
4972
4973 * font.c (register_font_driver): Use xmalloc.
4974 (font_put_frame_data): Likewise.
4975
4976 2008-12-01 Chong Yidong <cyd@stupidchicken.com>
4977
4978 * xfaces.c (realize_x_face): Make abort condition clearer.
4979
4980 * gtkutil.c (update_frame_tool_bar): Initialize variable.
4981
4982 2008-11-30 Chong Yidong <cyd@stupidchicken.com>
4983
4984 * keyboard.c (timer_check): After a timer runs, ensure that the
4985 selected window's buffer is current.
4986
4987 2008-11-30 Juanma Barranquero <lekktu@gmail.com>
4988
4989 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
4990 It was accidentally restored by the Unicode merge.
4991
4992 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
4993
4994 2008-11-29 Juanma Barranquero <lekktu@gmail.com>
4995
4996 * w32proc.c: Include "coding.h".
4997 (Fw32_short_file_name): Encode filename passed to Windows API.
4998 (Fw32_long_file_name): Encode filename passed to Windows API and
4999 decode back the result. (Bug#1433)
5000
5001 2008-11-29 Kenichi Handa <handa@m17n.org>
5002
5003 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
5004 not before accessing it.
5005
5006 * charset.c (Fdefine_charset_internal): After calculating
5007 min_char, max_char, and fastmap, copy the charset structure again.
5008 (encode_char): Fix the previous change.
5009
5010 2008-11-28 Seiji Zenitani <zenitani@mac.com>
5011
5012 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
5013
5014 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
5015
5016 * nsterm.m (x_set_frame_alpha): New function.
5017
5018 2008-11-27 Eli Zaretskii <eliz@gnu.org>
5019
5020 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
5021
5022 2008-11-27 Juanma Barranquero <lekktu@gmail.com>
5023
5024 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
5025 pointer to check_face_name.
5026
5027 2008-11-27 Kenichi Handa <handa@m17n.org>
5028
5029 * category.h (SET_CATEGORY_SET): Call set_category_set.
5030 (set_category_set): Extern it.
5031
5032 * category.c (hash_get_category_set): New function.
5033 (Fmodify_category_entry): Adjusted for the change of
5034 char_table_ref_and_range. Call hash_get_category_set to get a
5035 category set to store in the table.
5036
5037 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
5038 Funify_charset.
5039
5040 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
5041 (DECODE_CHAR): Check if the decoder vector is ready.
5042 (ENCODE_CHAR): Check if the encoder char-table is ready.
5043 (maybe_unify_char): Extern it.
5044
5045 * charset.c (Vchar_unified_charset_table): Delete it.
5046 (inhibit_load_charset_map): New variable.
5047 (temp_charset_work): New variable.
5048 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
5049 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
5050 New macros.
5051 (load_charset_map): Meaning of control_flag changed. If
5052 inhibit_load_charset_map is nonzero, setup a table in
5053 temp_charset_work.
5054 (load_charset): New argument control_flag.
5055 (map_charset_for_dump): New function.
5056 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
5057 map_charset_for_dump.
5058 (Fdefine_charset_internal): If the charset method is MAP, load
5059 mapping tables by calling load_charset.
5060 (Funify_charset): Don't load a mapping table but directly set
5061 Vchar_unify_table.
5062 (maybe_unify_char): New function.
5063 (decode_char): Don't handle the deleted method MAP_DEFERRED.
5064 Handle the case of inhibit_load_charset_map being nonzero.
5065 (encode_char): Don't handle the deleted method MAP_DEFERRED.
5066 Handle the case of inhibit_load_charset_map being nonzero.
5067 (Fclear_charset_maps): Just free temp_charset_work.
5068 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
5069 variable.
5070
5071 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
5072 change of char_table_ref_and_range.
5073 (char_table_ref_and_range): Change the meaning of argument FROM
5074 and TO. Now the caller must provide initial values for *FROM
5075 and *TO.
5076
5077 * fontset.c (fontset_add): Adjusted for the change of
5078 char_table_ref_and_range.
5079 (fontset_get_font_group): Likewise.
5080 (Ffontset_info): Likewise.
5081
5082 * keymap.c (describe_vector): Adjusted for the change of
5083 char_table_ref_and_range. For char-table, put boundary between
5084 non-ASCII and 8-bit characters.
5085
5086 * print.c (print_object): For bool-vector, delete unnecessary
5087 check of ASCII_BYTE_P.
5088
5089 2008-11-26 Jason Rumney <jasonr@gnu.org>
5090
5091 * w32font.c (w32font_open_internal): Don't include external
5092 leading in font height. (Bug#879)
5093
5094 2008-11-26 Glenn Morris <rgm@gnu.org>
5095
5096 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
5097 redefinition with ifdef. (Bug#1383)
5098
5099 2008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5100
5101 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
5102
5103 2008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
5104
5105 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
5106 New EmacsView methods.
5107 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
5108 Fixes bug #1048,1357,1414.
5109
5110 2008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5111
5112 Fix bug #1362.
5113 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
5114 is not an indexed color.
5115 * nsterm.m (free_indexed_color): Add argument checking.
5116 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
5117
5118 2008-11-24 Chong Yidong <cyd@stupidchicken.com>
5119
5120 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
5121 Document confirm-after-completion value for
5122 minibuffer-completion-confirm.
5123
5124 2008-11-24 Jason Rumney <jasonr@gnu.org>
5125
5126 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
5127 warning.
5128
5129 2008-11-23 Jason Rumney <jasonr@gnu.org>
5130
5131 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
5132 restored before returning.
5133
5134 * w32font.c (check_face_name): New function.
5135 (add_font_entity_to_list): Use it to filter out common substituted
5136 fonts. (Bug#642)
5137
5138 2008-11-22 Martin Rudalics <rudalics@gmx.at>
5139
5140 * buffer.c (Fswitch_to_buffer): Reword and mention new option
5141 confirm-nonexistent-file-or-buffer in doc-string.
5142
5143 2008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
5144
5145 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
5146 Fix copy/paste typo. Add checks.
5147
5148 2008-11-21 Kenichi Handa <handa@m17n.org>
5149
5150 * coding.c (detect_coding_iso_2022): Reject invalid composition
5151 sequence.
5152 (DECODE_COMPOSITION_START): If the current source is the last
5153 block, and the current composition doesn't end, regard this
5154 sequence as invalid.
5155 (decode_coding_iso_2022): Handle invalid composition sequence.
5156
5157 2008-11-20 Martin Rudalics <rudalics@gmx.at>
5158
5159 * window.c (coordinates_in_window): Don't return
5160 ON_VERTICAL_BORDER for the rightmost position of a mode/header
5161 line when the window is not the rightmost one. (Bug#1372)
5162
5163 2008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
5164
5165 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
5166
5167 2008-11-15 Eli Zaretskii <eliz@gnu.org>
5168
5169 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
5170 and bright_bg if noninteractive is non-zero.
5171
5172 2008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5173
5174 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
5175 x_draw_glyph_string_background.
5176
5177 * w32term.c (x_draw_glyph_string): Likewise.
5178
5179 2008-11-15 Chong Yidong <cyd@stupidchicken.com>
5180
5181 * xterm.c (x_draw_glyph_string): Stop drawing the background of
5182 the next glyph string once past the overhang width.
5183
5184 * nsterm.m (ns_draw_glyph_string): Likewise.
5185
5186 * w32term.c (x_draw_glyph_string): Likewise.
5187
5188 2008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
5189
5190 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
5191 double file close.
5192
5193 2008-11-14 Martin Rudalics <rudalics@gmx.at>
5194
5195 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
5196 dedicated status of window before attempting to display another
5197 buffer in it.
5198
5199 2008-11-14 Juanma Barranquero <lekktu@gmail.com>
5200
5201 * msdos.c (Fmsdos_long_file_names):
5202 (syms_of_msdos) <dos-unsupported-char-glyph>:
5203 * dosfns.c (Fint86): Fix typos in docstrings.
5204
5205 2008-11-14 Eli Zaretskii <eliz@gnu.org>
5206
5207 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
5208
5209 2008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
5210
5211 * puresize.h (BASE_PURESIZE): Increase to 1260000.
5212
5213 2008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
5214
5215 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
5216
5217 * frame.h: Negative alpha means "don't touch".
5218
5219 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
5220
5221 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
5222
5223 2008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
5224
5225 * hftctl.c:
5226 * chpdef.h:
5227 * acldef.h: Remove files used only for systems no longer supported.
5228
5229 * Makefile.in: Fix .o alphabetical ordering.
5230 (hftctl.o): Remove dependency, file removed.
5231 (keymap.o, print.o): Depend on charset.h.
5232
5233 2008-11-10 Kenichi Handa <handa@m17n.org>
5234
5235 * character.c (Fget_byte): Fix and make it faster for unibyte target.
5236
5237 2008-11-08 Chong Yidong <cyd@stupidchicken.com>
5238
5239 * dired.c (file_name_completion): If completion_ignore_case is
5240 enabled, ignore case when checking completion-regexp-list.
5241
5242 2008-11-08 Eli Zaretskii <eliz@gnu.org>
5243
5244 * vm-limit.c (get_lim_data): Fix last change.
5245
5246 2008-11-08 Kenichi Handa <handa@m17n.org>
5247
5248 * character.c (Fget_byte): New function.
5249 (syms_of_character): Defsubr Fget_byte.
5250
5251 2008-11-07 Chong Yidong <cyd@stupidchicken.com>
5252
5253 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
5254 cursor position is valid after scrolling.
5255
5256 2008-11-06 Juanma Barranquero <lekktu@gmail.com>
5257
5258 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
5259
5260 2008-11-06 Glenn Morris <rgm@gnu.org>
5261
5262 * xterm.c (handle_one_xevent): Don't let popup menus cause
5263 mouse-autoselect-window related window switching. (Bug#1261)
5264
5265 2008-11-04 David Smith <davidsmith@acm.org> (tiny change)
5266
5267 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
5268
5269 2008-11-04 Andreas Schwab <schwab@suse.de>
5270
5271 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
5272
5273 2008-11-03 Chong Yidong <cyd@stupidchicken.com>
5274
5275 * xfns.c (Fx_wm_set_size_hint): New function.
5276
5277 2008-11-03 Martin Rudalics <rudalics@gmx.at>
5278
5279 * textprop.c (Fprevious_single_char_property_change): Return 0
5280 when there's no change in a string. (Bug#1301)
5281
5282 2008-11-02 Martin Rudalics <rudalics@gmx.at>
5283
5284 * frame.c (do_switch_frame): New argument NORECORD passed to
5285 Fselect_window.
5286 (Fselect_frame): New argument NORECORD passed to
5287 do_switch_frame.
5288 (Fset_frame_selected_window): New argument NORECORD passed to
5289 Fselect_frame.
5290 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
5291 in call of do_switch_frame.
5292 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
5293 Handle NORECORD argument in call of Fselect_frame.
5294 * lisp.h (do_switch_frame, Fselect_frame)
5295 (Fset_frame_selected_window): Adjust declarations.
5296 * window.c (select_frame_norecord): New function.
5297 (run_window_configuration_change_hook): Use it and call
5298 Fselect_frame with NORECORD set.
5299 (Fselect_window): Pass NORECORD to Fselect_frame.
5300 (Fset_window_configuration): Handle NORECORD argument in call of
5301 do_switch_frame.
5302 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
5303 Fset_frame_selected_window.
5304 * keyboard.c (command_loop_1): Handle NORECORD in call of
5305 Fselect_frame (currently ifdefd).
5306
5307 2008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
5308
5309 * emacs.c (USAGE2): Untabify.
5310
5311 2008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
5312
5313 * composite.c (fill_gstring_header): Fix copy/paste typo.
5314
5315 2008-10-31 Martin Rudalics <rudalics@gmx.at>
5316
5317 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
5318 (Fother_window): Rename argument and rewrite doc-string.
5319 (select_window_norecord): Fix return value. (Bug#1276)
5320
5321 2008-10-30 Juanma Barranquero <lekktu@gmail.com>
5322
5323 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
5324 new frames overriding foreground for tooltips. Based on similar patch
5325 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
5326
5327 2008-10-29 Chong Yidong <cyd@stupidchicken.com>
5328
5329 * emacs.c (Fdaemon_initialized): Initialize nfd.
5330
5331 2008-10-29 Martin Rudalics <rudalics@gmx.at>
5332
5333 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
5334 (Fwindow_text_height): Clarify doc-strings.
5335 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
5336 doc-string of window-scroll-functions.
5337
5338 2008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
5339
5340 * category.c (syms_of_category): Fix typo in docstring.
5341
5342 2008-10-28 Juanma Barranquero <lekktu@gmail.com>
5343
5344 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
5345 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
5346 Fix typos in docstrings.
5347
5348 2008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
5349
5350 * emacs.c (daemon_pipe): Make non-static.
5351 (IS_DAEMON): Move definition ...
5352 * lisp.h (IS_DAEMON): ... here.
5353 (daemon_pipe): Declare.
5354 (is_daemon): Remove.
5355 * dispnew.c (init_display): Use IS_DAEMON.
5356
5357 2008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
5358
5359 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
5360 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
5361
5362 * emacs.c (is_daemon): Remove.
5363 (main): Don't set is_daemon.
5364 (IS_DAEMON): New macro.
5365 (Fdaemonp, Fdaemon_initialized): Use it.
5366 (Fdaemon_initialized): Write a char into the pipe to make sure the
5367 parent exits.
5368 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
5369
5370 2008-10-27 Chong Yidong <cyd@stupidchicken.com>
5371
5372 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
5373 over-sized glyph, draw it with the default glyph width.
5374
5375 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5376 glyph, draw it with the default glyph width.
5377
5378 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5379 glyph, draw it with the default glyph width.
5380
5381 * xdisp.c (try_scrolling): When computing the distance from the
5382 scroll margin to PT, try moving some distance past the window
5383 bottom before giving up.
5384
5385 2008-10-27 Martin Rudalics <rudalics@gmx.at>
5386
5387 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
5388 (Fset_window_buffer): Explain in doc-string that a window can be
5389 "strongly" dedicated to its buffer.
5390
5391 2008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
5392
5393 * emacs.c (daemon_name): New variable.
5394 (main): Deal with --daemon=SERVER_NAME.
5395 (Fdaemonp): Return a name if one was passed to --daemon.
5396
5397 2008-10-26 Romain Francoise <romain@orebokech.com>
5398
5399 * emacs.c (daemon_pipe): New variable.
5400 (main): Create a pipe before forking, make the parent exit only after
5401 the child has closed its end of the pipe. Move closing the
5402 descriptors ...
5403 (Fdaemon_initialized): ... here. New function.
5404
5405 2008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
5406
5407 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
5408 the previous unoptimized table.
5409
5410 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
5411 the distinction between non-nil and non-t value of `dedicated'.
5412
5413 2008-10-25 Chong Yidong <cyd@stupidchicken.com>
5414
5415 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
5416 read_char_minibuf_menu_text is large enough to hold the menu string.
5417
5418 2008-10-25 Martin Rudalics <rudalics@gmx.at>
5419
5420 * window.c (Fget_buffer_window, Fdelete_windows_on)
5421 (Freplace_buffer_in_windows): Make buffer argument optional and
5422 rename to buffer_or_name.
5423
5424 2008-10-24 Chong Yidong <cyd@stupidchicken.com>
5425
5426 * xdisp.c (handle_single_display_spec, handle_display_prop):
5427 Undo 2005-05-16 change.
5428 (handle_stop): Pop iterator if it's loaded with an empty string.
5429 (get_overlay_strings_1): Don't save iterator if it's loaded with
5430 an empty string (bug#1201).
5431
5432 2008-10-24 Kenichi Handa <handa@m17n.org>
5433
5434 * ftfont.c (ftfont_otf_features): Fix previous change.
5435 (ftfont_otf_capability): Check FeatureList.FeatureCount before
5436 calling ftfont_otf_features.
5437
5438 2008-10-24 Kenichi Handa <handa@m17n.org>
5439
5440 * font.c (font_match_p): Fix for the case that a vector of
5441 characters is in script-representative-chars.
5442
5443 2008-10-24 Michael Albinus <michael.albinus@gmx.de>
5444
5445 * dbusbind.c (xd_in_read_queued_messages): New variable.
5446 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
5447 (xd_read_queued_messages): Catch Qdbus_error from the macros.
5448 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
5449 macro. (Bug#1186)
5450
5451 2008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
5452
5453 * s/sol2-10.h: New file.
5454
5455 2008-10-23 Juanma Barranquero <lekktu@gmail.com>
5456
5457 * xdisp.c (fill_glyph_string): Fix typo in source (though the
5458 poor beast has survived 9+ years and the jump from xterm.c!).
5459
5460 2008-10-23 Martin Rudalics <rudalics@gmx.at>
5461
5462 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
5463 Reword doc-string.
5464 (Fbury_buffer): In doc-string say what happens to the buffer's window.
5465
5466 2008-10-23 Juanma Barranquero <lekktu@gmail.com>
5467
5468 * character.c (syms_of_character) <script-representative-chars>:
5469 <unicode-category-table>: Doc fixes.
5470
5471 2008-10-23 Noah Friedman <friedman@splode.com>
5472
5473 * coding.c (make_conversion_work_buffer): Check that
5474 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
5475 Fget_buffer_create.
5476
5477 2008-10-23 Kenichi Handa <handa@m17n.org>
5478
5479 * font.c (font_add_log): Check the values of extra properties.
5480
5481 2008-10-22 Martin Rudalics <rudalics@gmx.at>
5482
5483 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5484 Reword doc-string.
5485 (Fset_window_parameter): Use NILP.
5486 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
5487 (Frecenter): Use "selected" instead of "current" window in doc-strings.
5488
5489 2008-10-22 Juanma Barranquero <lekktu@gmail.com>
5490
5491 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
5492
5493 2008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5494
5495 * nsfns.m (ns_appkit_version): New function.
5496 (x-server-version): Use it.
5497 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
5498 (x-server-vendor): Don't check_ns().
5499
5500 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
5501
5502 2008-10-22 Juanma Barranquero <lekktu@gmail.com>
5503
5504 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
5505 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
5506
5507 2008-10-22 Kenichi Handa <handa@m17n.org>
5508
5509 * syntax.c (scan_words): Call word_boundary_p instead of comparing
5510 scripts.
5511
5512 * category.c (word_boundary_p): Check scripts instead of charset.
5513 Handle nil value in word-separating-categories and
5514 word-combining-categories.
5515 (syms_of_category): Fix docstrings of word-separating-categories
5516 and word-combining-categories.
5517
5518 2008-10-21 Eli Zaretskii <eliz@gnu.org>
5519
5520 * coding.c (Fencode_coding_region, Fdecode_coding_region)
5521 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
5522
5523 2008-10-21 Martin Rudalics <rudalics@gmx.at>
5524
5525 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
5526 Rename arg "buffer" to "buffer_or_name".
5527 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
5528 it optional.
5529 (no_switch_window): Remove since the return value is not used.
5530 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
5531 Consider window as dedicated when Fwindow_dedicated_p returns a
5532 non-nil value.
5533 * lisp.h: Remove prototype for no_switch_window.
5534
5535 2008-10-21 Jan Djärv <jan.h.d@swipnet.se>
5536
5537 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
5538 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
5539
5540 2008-10-21 Kenichi Handa <handa@m17n.org>
5541
5542 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
5543 check Vlatin_extra_code_table.
5544
5545 2008-10-20 Eli Zaretskii <eliz@gnu.org>
5546
5547 * fileio.c (Fset_file_modes): Doc fix.
5548
5549 2008-10-19 Michael Albinus <michael.albinus@gmx.de>
5550
5551 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
5552 in arrays.
5553
5554 2008-10-19 Martin Rudalics <rudalics@gmx.at>
5555
5556 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5557 Mention kill-buffer in doc-string.
5558 (Fset_window_buffer): Reinsert tem check removed in last commit.
5559 (Fenlarge_window, Fshrink_window): Have argument names and
5560 doc-string follow Elisp manual more closely.
5561
5562 2008-10-18 Eli Zaretskii <eliz@gnu.org>
5563
5564 * fileio.c (Fset_file_modes): Doc fix.
5565
5566 2008-10-18 Martin Rudalics <rudalics@gmx.at>
5567
5568 * window.c (Fwindow_width, Fset_window_start)
5569 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
5570 (Fdelete_windows_on, Freplace_buffer_in_windows):
5571 Make doc-strings follow code and Elisp manual more closely.
5572 (Fwindow_dedicated_p): Make window argument optional.
5573 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
5574 (Fset_window_buffer): Respect any non-nil dedicated value for
5575 window. Rename "buffer" argument to "buffer_or_name".
5576
5577 2008-10-18 Ulrich Mueller <ulm@gentoo.org>
5578
5579 * m/sh3.h: New file, machine description for SuperH.
5580
5581 2008-10-17 Martin Rudalics <rudalics@gmx.at>
5582
5583 * window.c (Fsplit_window): Rename arg horflag to horizontal.
5584
5585 2008-10-17 Kenichi Handa <handa@m17n.org>
5586
5587 * ftfont.c (ftfont_otf_features): Fix indexing
5588 gsub_gpos->FeatureList.Feature. Check the validity of indices.
5589
5590 2008-10-16 Magnus Henoch <mange@freemail.hu>
5591
5592 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
5593 (Fdbus_call_method_asynchronously): Ditto.
5594 This change makes C-h f display the argument list.
5595
5596 2008-10-16 Chong Yidong <cyd@stupidchicken.com>
5597
5598 * fileio.c (Fexpand_file_name): Doc fix.
5599
5600 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
5601 of :foreground and :background equivalent to unspecified (20.x
5602 compatibility).
5603
5604 2008-10-15 Eli Zaretskii <eliz@gnu.org>
5605
5606 * buffer.c (syms_of_buffer): Doc fix.
5607
5608 2008-10-14 Kenichi Handa <handa@m17n.org>
5609
5610 * font.c (font_clear_prop): When clearing font width, clear the
5611 average width field too.
5612
5613 2008-10-12 Andreas Schwab <schwab@suse.de>
5614
5615 * ftfont.c (ftfont_shape_by_flt): Make static.
5616 * ftfont.h (ftfont_shape_by_flt): Don't declare.
5617
5618 * font.c: Don't include <m17n-flt.h>.
5619
5620 2008-10-10 Eli Zaretskii <eliz@gnu.org>
5621
5622 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
5623
5624 2008-10-09 Eli Zaretskii <eliz@gnu.org>
5625
5626 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
5627 away code.
5628
5629 2008-10-09 Chong Yidong <cyd@stupidchicken.com>
5630
5631 * dispnew.c (update_text_area): Avoid looping due to large glyph
5632 overhangs (bug#1070).
5633
5634 2008-10-09 Kenichi Handa <handa@m17n.org>
5635
5636 * fontset.c (face_for_char): If face->fontset is negative, just
5637 return ascii_face.
5638
5639 * font.c (font_delete_unmatched): Fix previous change.
5640 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
5641
5642 2008-10-09 Martin Rudalics <rudalics@gmx.at>
5643
5644 * frame.c (Fraise_frame): On text-only terminals select frame in
5645 order to make it visible. (Bug#1061)
5646
5647 2008-10-08 Chong Yidong <cyd@stupidchicken.com>
5648
5649 * fontset.c (fontset_find_font): Check frame validity.
5650
5651 2008-10-07 Chong Yidong <cyd@stupidchicken.com>
5652
5653 * gtkutil.c (xg_display_open): Reset default display if none exists.
5654 (xg_display_close): Allow Emacs to close all displays (bug#985).
5655
5656 2008-10-06 Andreas Schwab <schwab@suse.de>
5657
5658 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
5659
5660 2008-10-06 Chong Yidong <cyd@stupidchicken.com>
5661
5662 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
5663
5664 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
5665
5666 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
5667 during initialization.
5668
5669 2008-10-04 Eli Zaretskii <eliz@gnu.org>
5670
5671 * xdisp.c (redisplay_internal): If frame switched, redisplay the
5672 whole thing on MSDOS frames as well as on a TTY.
5673
5674 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
5675 well as for TTY.
5676 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
5677 well as on a TTY.
5678
5679 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
5680 as well as for TTY.
5681
5682 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
5683
5684 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
5685 MSDOS frames as well.
5686
5687 2008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5688
5689 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
5690 correct arguments.
5691 * menu.c (find_and_return_menu_selection): Add cast.
5692
5693 2008-10-03 Glenn Morris <rgm@gnu.org>
5694
5695 * emacs.c (USAGE1): Add --daemon.
5696
5697 2008-10-02 Eli Zaretskii <eliz@gnu.org>
5698
5699 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
5700 100, so it's in percents as advertised.
5701
5702 2008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5703
5704 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
5705 (ns_output.current_cursor, ns_output.desired_cursor)
5706 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
5707 (FRAME_NEW_CURSOR_COLOR): Remove.
5708
5709 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
5710 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
5711 enumeration (HOLLOW_BOX_CURSOR, etc.).
5712
5713 * nsterm.m (ns_frame_rehighlight): Remove commented code.
5714 (draw_window_cursor): Simplify code.
5715 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
5716 Don't change cursor type. In latter, call rehighlight instead of doing
5717 updates manually.
5718 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
5719 Use core Emacs cursor types.
5720
5721 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
5722
5723 2008-10-02 Martin Rudalics <rudalics@gmx.at>
5724
5725 * process.c (Faccept_process_output): Fix doc-string.
5726
5727 2008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
5728
5729 * gmalloc.c (__sbrk): Also define for uClibc.
5730
5731 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
5732 for uClibc.
5733
5734 2008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5735
5736 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
5737 styles.
5738 (nsfont_open): Reenable the cache.
5739
5740 2008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5741
5742 * font.c (font_matching_entity): Reflect ATTRS in font selection.
5743 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
5744
5745 2008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
5746
5747 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
5748 a suspended terminal.
5749
5750 2008-09-30 Michael Albinus <michael.albinus@gmx.de>
5751
5752 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
5753
5754 2008-09-30 Eli Zaretskii <eliz@gnu.org>
5755
5756 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
5757
5758 2008-09-30 Chong Yidong <cyd@stupidchicken.com>
5759
5760 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
5761 in a continued line coincides with a line beginning.
5762
5763 2008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5764
5765 * nsfont.m (nsfont_trait_distance): Fix bug.
5766 (nsfont_list): Return a list rather than a vector (syncs with Handa
5767 changes of 2008-05-14).
5768 (nsfont_open): Improve logging.
5769
5770 2008-09-29 Andreas Schwab <schwab@suse.de>
5771
5772 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5773
5774 2008-09-28 Martin Rudalics <rudalics@gmx.at>
5775
5776 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
5777 name as char-resolve-modifiers.
5778 Reported by: Markus Triska <markus.triska@gmx.at>
5779
5780 2008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
5781
5782 * dispnew.c (init_display): Return earlier when running as a daemon.
5783
5784 2008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5785
5786 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
5787
5788 2008-09-27 Eli Zaretskii <eliz@gnu.org>
5789
5790 * composite.c (Fcomposition_get_gstring)
5791 (Fcompose_region_internal, Fcompose_string_internal)
5792 (Ffind_composition_internal): Doc fix.
5793 (syms_of_composite) <compose-chars-after-function>: Doc fix.
5794 (syms_of_composite) <auto-composition-function>: Doc fix.
5795 (syms_of_composite) <composition-function-table>: Doc fix.
5796
5797 2008-09-25 Chong Yidong <cyd@stupidchicken.com>
5798
5799 * search.c (wordify): New argument for lax word-ends.
5800 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
5801
5802 2008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
5803
5804 * lisp.h (is_daemon): Declare.
5805 * dispnew.c (init_display): Do not try to initialize the terminal
5806 when running as a daemon.
5807
5808 2008-09-22 Chong Yidong <cyd@stupidchicken.com>
5809
5810 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
5811 x_display_pixel_height.
5812
5813 2008-09-22 Martin Rudalics <rudalics@gmx.at>
5814
5815 * undo.c (record_point): Don't call Fundo_boundary for first
5816 change. (Bug#731)
5817
5818 2008-09-22 Juanma Barranquero <lekktu@gmail.com>
5819
5820 * emacs.c (Fdaemonp): Doc fix.
5821
5822 2008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
5823
5824 * emacs.c (main): Place #ifdef in the proper place.
5825
5826 2008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
5827
5828 * emacs.c (standard_args): Add --daemon.
5829 (main): Disconnect from the terminal when --daemon is passed.
5830 (is_daemon): New variable.
5831 (Fdaemonp): New function.
5832 (syms_of_emacs): Defsubr it.
5833
5834 2008-09-20 Chong Yidong <cyd@stupidchicken.com>
5835
5836 * xdisp.c (get_next_display_element): Handle string display
5837 correctly when checking for the end of a box run.
5838
5839 2008-09-20 Glenn Morris <rgm@gnu.org>
5840
5841 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
5842 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
5843 (Frename_file): Avoid copying to trash if a rename involves
5844 a delete. (Bug#964).
5845
5846 2008-09-20 Eli Zaretskii <eliz@gnu.org>
5847
5848 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
5849 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
5850 frames as well as termcap frames.
5851 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
5852 get_named_tty.
5853
5854 2008-09-19 Eli Zaretskii <eliz@gnu.org>
5855
5856 * process.c (procfs_system_process_attributes): Fix cmdline in
5857 case /proc/PID/cmdline is empty.
5858
5859 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
5860 x_display_pixel_height.
5861
5862 2008-09-19 Juanma Barranquero <lekktu@gmail.com>
5863
5864 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
5865
5866 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
5867 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
5868
5869 2008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
5870
5871 * dispextern.h (struct it): Move line_wrap away from the middle of
5872 bitfields. Move voffset in struct iterator_stack_entry after the
5873 bitfields. Move tab_width near after another short.
5874
5875 2008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
5876
5877 * frame.h (struct frame): Move alpha from the middle of bitfields.
5878
5879 * window.h (struct window): Move frozen_window_start_p after the
5880 rest of the bitfields to reduce padding.
5881
5882 2008-09-18 Chong Yidong <cyd@stupidchicken.com>
5883
5884 * xterm.h (x_display_info): Remove `height' and `width' members.
5885
5886 * nsterm.h (ns_display_info): Remove `height' and `width' members.
5887
5888 * w32term.h (w32_display_info): Remove `height', `width',
5889 `height_in', and `width_in' members.
5890
5891 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5892 New functions.
5893 (x_calc_absolute_position): Use them.
5894 (x_term_init): Omit removed `height' and `width' members.
5895
5896 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5897 New functions.
5898 (w32_read_socket, x_calc_absolute_position): Use them.
5899 (w32_initialize_display_info, w32_term_init): Omit removed members
5900 of w32_display_info.
5901
5902 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
5903 New functions.
5904 (ns_initialize_display_info): Omit removed members of ns_display_info.
5905
5906 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5907 New functions.
5908 (x_calc_absolute_position): Use them.
5909 (x_term_init): Omit removed `height' and `width' members.
5910
5911 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
5912 (compute_tip_xy):
5913 * frame.c (x_fullscreen_adjust):
5914 * xmenu.c (menu_position_func): Use x_display_pixel_height and
5915 x_display_pixel_width.
5916
5917 2008-09-18 Kenichi Handa <handa@m17n.org>
5918
5919 * composite.c (fill_gstring_header): Don't check FROM and TO here.
5920 (composition_compute_stop_pos): Fix handling of static composition.
5921 (Fcomposition_get_gstring): Check FROM and TO at first.
5922
5923 2008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
5924
5925 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
5926 mixup (YAILOM).
5927
5928 2008-09-17 Chong Yidong <cyd@stupidchicken.com>
5929
5930 * indent.c (Fvertical_motion): Use position reported by iterator
5931 instead of PT for determining screen motion (bug#943).
5932
5933 2008-09-17 Romain Francoise <romain@orebokech.com>
5934
5935 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
5936
5937 2008-09-17 Kenichi Handa <handa@m17n.org>
5938
5939 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
5940
5941 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
5942 if necessary.
5943
5944 2008-09-16 Kenichi Handa <handa@m17n.org>
5945
5946 * coding.c (make_conversion_work_buffer): Avoid calling
5947 Fget_buffer_create if it is not necessary.
5948
5949 2008-09-15 Martin Rudalics <rudalics@gmx.at>
5950
5951 * window.c (Fselect_window): Don't update window_select_count and
5952 use_time when norecord is not nil.
5953
5954 2008-09-14 Kenichi Handa <handa@m17n.org>
5955
5956 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
5957 specpdl_ptr.
5958
5959 2008-09-12 Kenichi Handa <handa@m17n.org>
5960
5961 * indent.c (scan_for_column): Don't handle automatic composition
5962 if the current buffer is not associated with a window.
5963
5964 * composite.c (composition_reseat_it): If the current buffer is
5965 not associated with a window, ignore the automatic composition.
5966 (find_automatic_composition): Likewise.
5967
5968 2008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5969
5970 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
5971 (Fgpm_mouse_stop): Use it.
5972 * termhooks.h (close_gpm): Declare.
5973 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
5974 connection if Gpm_GetEvent fails.
5975
5976 * window.c (set_window_buffer): Always preserve current-buffer.
5977
5978 2008-09-12 Glenn Morris <rgm@gnu.org>
5979
5980 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
5981
5982 2008-09-11 Glenn Morris <rgm@gnu.org>
5983
5984 * charset.c (charset-map-path): Doc fix.
5985
5986 2008-09-10 Kenichi Handa <handa@m17n.org>
5987
5988 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
5989
5990 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
5991 compose a grapheme cluster with the preceding base glyph.
5992
5993 * composite.c (composition_compute_stop_pos): Fix previous change.
5994 Reset cmp_it->id to -1 at first.
5995
5996 2008-09-10 Glenn Morris <rgm@gnu.org>
5997
5998 * Makefile.in (character.o, chartab.o): Fix config.h typo.
5999
6000 2008-09-09 Chong Yidong <cyd@stupidchicken.com>
6001
6002 * keyboard.c (read_key_sequence): Reapply translation maps when
6003 switching keyboards.
6004
6005 2008-09-09 Kenichi Handa <handa@m17n.org>
6006
6007 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
6008 characters.
6009
6010 * composite.c (FORWARD_CHAR): Fix calculation
6011 of (POSITION).pos_byte.
6012 (composition_compute_stop_pos): Limit the search of composition to
6013 at most 500 characters ahead. If we reach the limit or find a
6014 newline, set cmp_it->ch to -2 and return 0.
6015 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
6016
6017 2008-09-08 Kenichi Handa <handa@m17n.org>
6018
6019 * indent.c (Fvertical_motion): Be sure to set
6020 it_overshoot_expected if it.cmp_it.id is non-negative.
6021
6022 2008-09-07 Andreas Schwab <schwab@suse.de>
6023
6024 * callproc.c (Fcall_process): Don't hold references to string data
6025 across garbage collection. Move initialisation of new_argv down
6026 to avoid compiler bug.
6027
6028 2008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
6029
6030 * process.c (Fsystem_process_attributes): Doc fix.
6031
6032 2008-09-07 Chong Yidong <cyd@stupidchicken.com>
6033
6034 * callproc.c (Fcall_process): Canonicalize current directory name.
6035
6036 * xdisp.c (move_it_to): When moving by vpos, ensure that the
6037 iterator advances to the next line if the current line ends in a
6038 continued tab.
6039
6040 2008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
6041
6042 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
6043 member to point to cmp_from.
6044
6045 * xdisp.c: Doc fix for references to gidx data member.
6046
6047 2008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
6048
6049 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
6050
6051 2008-09-07 Kenichi Handa <handa@m17n.org>
6052
6053 * composite.c (FORWARD_CHAR): Check STOP after
6054 incrementing (POSITION).pos.
6055
6056 2008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
6057
6058 * process.c (Fsystem_process_attributes): Doc fix.
6059
6060 2008-09-06 Chong Yidong <cyd@stupidchicken.com>
6061
6062 * keyboard.c (Ftop_level): Doc fix.
6063
6064 2008-09-06 Eli Zaretskii <eliz@gnu.org>
6065
6066 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
6067 minibuffer, don't let lower part of menu invade the echo area.
6068
6069 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
6070 "char *q" to access menu text and advance through it. Revert the
6071 change that displayed ">" instead of ASCII character 0x10.
6072
6073 2008-09-05 Eli Zaretskii <eliz@gnu.org>
6074
6075 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
6076 toggle boxes and radio buttons on MS-DOS as well.
6077
6078 2008-09-05 Kenichi Handa <handa@m17n.org>
6079
6080 * composite.c (autocmp_chars): Check lookback count.
6081 (composition_compute_stop_pos): Set cmp_it->lookback.
6082 (composition_reseat_it): Check lookback count.
6083 (struct position_record): New struct.
6084 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
6085 (find_automatic_composition): New function.
6086 (composition_adjust_point): Use find_automatic_composition.
6087
6088 * dispextern.h (struct composition_it): New member lookback.
6089
6090 2008-09-02 Chong Yidong <cyd@stupidchicken.com>
6091
6092 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
6093 if moving by a single line.
6094
6095 2008-09-02 Andreas Schwab <schwab@suse.de>
6096
6097 * xterm.c (x_delete_display): Fix merge error.
6098
6099 * fileio.c (Fexpand_file_name): Remove unused variables.
6100
6101 2008-09-02 Eli Zaretskii <eliz@gnu.org>
6102
6103 * fileio.c (Fexpand_file_name): Copy argument `name' into local
6104 storage on all platforms, not just on DOS_NT.
6105
6106 2008-09-02 Jason Rumney <jasonr@gnu.org>
6107
6108 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
6109 Ensure mouse is not grabbed after menu is finished.
6110
6111 2008-09-01 Chong Yidong <cyd@stupidchicken.com>
6112
6113 * xfaces.c (Finternal_set_alternative_font_family_alist)
6114 (Finternal_set_alternative_font_registry_alist): Properly copy
6115 entire alist structure.
6116
6117 2008-09-01 Kenichi Handa <handa@m17n.org>
6118
6119 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
6120 representative chars of the script is a vector.
6121 (ftfont_list): Handle the case where the representative chars of
6122 the script is a vector.
6123
6124 * character.c (syms_of_character): Docstring of
6125 script-representative-chars fixed.
6126
6127 2008-08-31 Eli Zaretskii <eliz@gnu.org>
6128
6129 * msdos.c (BUILD_CHAR_GLYPH): New macro.
6130 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
6131 the menu. Allocate larger buffer for `text', to account for
6132 possible ^C characters.
6133
6134 2008-08-31 Martin Rudalics <rudalics@gmx.at>
6135
6136 * xdisp.c (prepare_menu_bars): Don't call
6137 Vwindow_size_change_functions with arg Qt.
6138
6139 2008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
6140
6141 * font.h (font_range):
6142 * fileio.c (report_file_error):
6143 * composite.c (composition_update_it): Yet another int/Lisp_Object
6144 mixup (YAILOM).
6145
6146 2008-08-30 Glenn Morris <rgm@gnu.org>
6147
6148 * data.c (Fmake_variable_frame_local): Doc fix.
6149
6150 * frame.c (Fmodify_frame_parameters): Doc fix.
6151
6152 2008-08-30 Eli Zaretskii <eliz@gnu.org>
6153
6154 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
6155 needed by GetTokenInformation.
6156 (w32_system_process_attributes): Check return values of all system
6157 APIs.
6158
6159 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
6160 only when the state changes.
6161 (IT_update_begin, IT_update_end): Add termscript trace.
6162
6163 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
6164 clipboard is unavailable. Set dst to NULL if it doesn't point to
6165 malloc'ed data.
6166 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
6167 passing random values to xfree.
6168
6169 * dispnew.c (init_display): Set `tty's association in frame's
6170 parameters alist to the name of the terminal device, if that is known.
6171
6172 2008-08-29 Jason Rumney <jasonr@gnu.org>
6173
6174 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
6175
6176 2008-08-29 Eli Zaretskii <eliz@gnu.org>
6177
6178 * composite.c (fill_gstring_body): Avoid compiler warnings.
6179
6180 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
6181 LGLYPH_SET_CODE to avoid compiler warnings.
6182
6183 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
6184
6185 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
6186
6187 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
6188 LGLYPH_SET_CODE.
6189
6190 2008-08-29 Kenichi Handa <handa@m17n.org>
6191
6192 * fileio.c (report_file_error): Don't downcase the first character
6193 of errstring if it is still unibyte.
6194
6195 2008-08-29 Kenichi Handa <handa@m17n.org>
6196
6197 These changes are to re-implement the automatic composition so
6198 that it doesn't use text properties.
6199
6200 * Makefile.in (ftfont.o): Depend on composite.h.
6201 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
6202
6203 * character.h (Vunicode_category_table): Extern it.
6204
6205 * character.c (Vunicode_category_table): New variable.
6206 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
6207
6208 * chartab.c (optimize_sub_char_table): Perform more greedy
6209 optimization.
6210
6211 * composite.h (enum composition_method):
6212 Delete COMPOSITION_WITH_GLYPH_STRING.
6213 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
6214 (Vcomposition_function_table): Extern it.
6215 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
6216 (composition_gstring_put_cache, composition_gstring_from_id)
6217 (composition_gstring_p, composition_gstring_width)
6218 (composition_compute_stop_pos, composition_reseat_it)
6219 (composition_update_it, composition_adjust_point): Extern them.
6220 (Fcomposition_get_gstring): EXFUN it.
6221
6222 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
6223 (Vcomposition_function_table)
6224 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
6225 (gstring_hash_table, gstring_work, gstring_work_headers):
6226 New variables.
6227 (gstring_lookup_cache, composition_gstring_put_cache)
6228 (composition_gstring_from_id, composition_gstring_p)
6229 (composition_gstring_width, fill_gstring_header)
6230 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
6231 (composition_reseat_it, composition_update_it)
6232 (composition_adjust_point, Fcomposition_get_gstring): New functions.
6233 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
6234 and gstring_work_headers. DEFVAR_LISP composition-function-table.
6235 Defsubr compostion_get_gstring.
6236
6237 * dispextern.h (struct glyph): New union u.cmp. Delete the member
6238 cmp_id.
6239 (struct glyph_string): Delete the member gidx. New members
6240 cmp_id, cmp_from, and cmp_to.
6241 (enum it_method): Delete GET_FROM_COMPOSITION.
6242 (struct composition_it): New struct.
6243 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
6244 Delete c, len, cmp_id, cmp_len in u.comp.
6245
6246 * font.h (enum lgstring_indices): Delete it.
6247 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
6248 (enum lglyph_indices): Likewise.
6249 (font_range): Adjust extern.
6250 (font_fill_lglyph_metrics): Extern it.
6251
6252 * font.c (QCf): New variable.
6253 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6254 (font_prepare_composition): Delete this function.
6255 (font_range): Type and arguments changed.
6256 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
6257 (font_fill_lglyph_metrics): New function.
6258 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
6259 (syms_of_font): DEFSYM QCf. Delete defsubr for
6260 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
6261 Defsubr Sfont_shape_gstring.
6262
6263 * fontset.h (font_for_char): Extern it.
6264
6265 * fontset.c (font_for_char): New function.
6266
6267 * ftfont.c: Include composite.h.
6268 (ftfont_resolve_generic_family): Add langset "en" to pattern.
6269 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6270
6271 * indent.c: Include composite.h and dispextern.h.
6272 (check_composition): Delete this function.
6273 (scan_for_column): Handle composition by
6274 composition_compute_stop_pos, composition_reseat_it, and
6275 composition_update_it.
6276 (compute_motion): Likewise.
6277 (Fvertical_motion): Fix checking of composition.
6278
6279 * keyboard.c (adjust_point_for_property): Check composition by
6280 composition_adjust_point.
6281
6282 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
6283 struct glyph_string.
6284
6285 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
6286 (append_composite_glyph): Adjust for the change of struct it and
6287 struct glyph.
6288 (produce_composite_glyph): Likewise.
6289
6290 * w32term.c (x_draw_composite_glyph_string_foreground):
6291 Adjust for the change of struct glyph_string.
6292 (x_draw_glyph_string): Likewise.
6293
6294 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
6295 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6296
6297 * xdisp.c: Include font.h.
6298 (it_props): Delete the entry for Qauto_composed.
6299 (init_iterator): Initialize it->cmp_it.id to -1.
6300 (compute_stop_pos): Call composition_compute_stop_pos.
6301 (face_before_or_after_it_pos): Adjust for the change of struct it.
6302 (handle_auto_composed_prop): Delete it.
6303 (handle_composition_prop): Handle only static composition.
6304 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
6305 from xassert. Initialize it->cmp_it.stop_pos.
6306 (push_it): Adjust for the change of struct it.
6307 (pop_it): Likewise.
6308 (get_next_element): Delete next_element_from_composition.
6309 (CHAR_COMPOSED_P): New macro.
6310 (get_next_display_element): For automatic composition, get a face
6311 from the font in the glyph-string.
6312 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
6313 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
6314 (next_element_from_string): Check if the character at the current
6315 position is composed by CHAR_COMPOSED_P.
6316 (next_element_from_buffer): Likewise.
6317 (next_element_from_composition): Adjust for the change of struct it.
6318 Update it->cmp_it.
6319 (dump_glyph): Adjust for the change of struct glyph.
6320 (fill_composite_glyph_string): Adjust for the change of struct
6321 it and struct glyph. Don't handle automatic composition here.
6322 (fill_gstring_glyph_string): New function.
6323 (x_get_glyph_overhangs): Handle automatic composition.
6324 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
6325 (BUILD_GSTRING_GLYPH_STRING): New macro.
6326 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
6327 automatic composition.
6328 (append_composite_glyph): Adjust for the change of struct it and
6329 struct glyph.
6330 (x_produce_glyphs): Adjust for the change of struct it.
6331
6332 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
6333 the change of struct glyph_string.
6334 (x_draw_glyph_string): Likewise.
6335
6336 2008-08-29 Glenn Morris <rgm@gnu.org>
6337
6338 * buffer.c (word-wrap): Doc fix.
6339 * xdisp.c (truncate-partial-width-windows): Doc fix.
6340 Increase default to 50.
6341
6342 2008-08-29 Chong Yidong <cyd@stupidchicken.com>
6343
6344 * xdisp.c (update_tool_bar_unwind): New function.
6345 (update_tool_bar): Temporarily set selected frame before building
6346 tool-bar items.
6347
6348 2008-08-28 Michael Albinus <michael.albinus@gmx.de>
6349
6350 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
6351 snprintf, respectively.
6352 (xd_append_arg): Convert strings with Fstring_make_unibyte.
6353
6354 2008-08-28 Chong Yidong <cyd@stupidchicken.com>
6355
6356 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
6357 LDFLAGS to GNUstep CC invocation.
6358
6359 2008-08-27 Chong Yidong <cyd@stupidchicken.com>
6360
6361 * indent.c (Fvertical_motion): Revert last change. Handle the
6362 general case where we are moving forward, and PT spans multiple
6363 screen lines.
6364
6365 * eval.c (find_handler_clause): Temporarily increase
6366 max-lisp-eval-depth while printing the backtrace buffer, to
6367 guarantee that help-mode code can run.
6368
6369 2008-08-27 Eli Zaretskii <eliz@gnu.org>
6370
6371 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
6372 colors under -rv.
6373 (IT_set_frame_parameters): Don't swap foreground and background
6374 colors if `(reverse . t)' is present in the frame properties.
6375 (internal_terminal_init): Call init_frame_faces only for the
6376 initial frame.
6377
6378 2008-08-27 Andreas Schwab <schwab@suse.de>
6379
6380 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
6381
6382 2008-08-27 Andreas Schwab <schwab@suse.de>
6383
6384 * search.c (search_buffer): Set char_base to zero only at the end.
6385
6386 2008-08-27 Kenichi Handa <handa@m17n.org>
6387
6388 * fileio.c (report_file_error): Fix handling of multibyte error string.
6389
6390 2008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
6391
6392 * xterm.c (x_term_init): Temporarily hide the partially
6393 initialized terminal while calling vendor-specific-keysyms.
6394
6395 2008-08-26 Eli Zaretskii <eliz@gnu.org>
6396
6397 * msdos.c (internal_terminal_init): Most initializations done only
6398 once, especially initial_screen_colors[] and termscript open.
6399
6400 2008-08-26 Chong Yidong <cyd@stupidchicken.com>
6401
6402 * eval.c (Fcondition_case): Doc fix.
6403
6404 * widgetprv.h (EmacsFramePart): Change font member to the new font
6405 struct.
6406
6407 * widget.c: Include character.h and font.h for XSETFONT.
6408 (setup_frame_gcs): Compute X font id from font struct, just once.
6409
6410 2008-08-26 Eli Zaretskii <eliz@gnu.org>
6411
6412 * term.c (get_named_tty): Fix last change.
6413
6414 2008-08-26 Chong Yidong <cyd@stupidchicken.com>
6415
6416 * indent.c (Fvertical_motion): If moving forward starting from a
6417 multi-line string, move the iterator to the last line of that string.
6418
6419 2008-08-25 Eli Zaretskii <eliz@gnu.org>
6420
6421 * frame.c (do_switch_frame): Mark previously displayed frame as
6422 obscured for FRAME_MSDOS_P frames as well.
6423
6424 2008-08-24 Eli Zaretskii <eliz@gnu.org>
6425
6426 * frame.c (make_terminal_frame): Initialize f->terminal,
6427 f->terminal->reference_count, and scroll bars on MS-DOS as well.
6428 Set the top frame to newly created frame.
6429 (Fmake_terminal_frame): Reuse the_only_display_info.
6430
6431 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
6432 estimating available memory.
6433
6434 2008-08-23 David Reitter <david.reitter@gmail.com>
6435
6436 * nsterm.m (ns_draw_window_cursor): Don't call
6437 NSDisableScreenUpdates and NSEnableScreenUpdates on
6438 non-NS_IMPL_COCOA systems.
6439
6440 2008-08-23 Andreas Schwab <schwab@suse.de>
6441
6442 * process.c (procfs_system_process_attributes): Fix use of
6443 uninitialized variables.
6444
6445 2008-08-23 Eli Zaretskii <eliz@gnu.org>
6446
6447 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
6448
6449 * dispnew.c (init_display): Remove MS-DOS specific conditions for
6450 calling tty-set-up-initial-frame-faces.
6451
6452 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
6453 Allow MSDOS frames along with X frames.
6454
6455 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
6456 addition to output_termcap.
6457
6458 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
6459
6460 * termchar.h (FRAME_TTY): Support output_msdos_raw.
6461 (struct tty_display_info) [MSDOS]: Add fields related to mouse
6462 highlight.
6463
6464 * process.c [!subprocesses]: Define QCname.
6465 (syms_of_process): Intern and staticpro it.
6466
6467 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
6468 Adjust for changes in encoding/decoding routines.
6469 Use encode_coding_object and decode_coding_object instead of
6470 encode_coding and decode_coding.
6471
6472 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
6473
6474 * dosfns.c: Include frame.h before termhooks.h.
6475 (dos_cleanup): Use CURTTY ()->termscript instead of a global
6476 variable termscript.
6477
6478 * s/msdos.h (USER_FULL_NAME): Define.
6479 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
6480
6481 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
6482 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
6483 pw->pw_gecos.
6484
6485 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
6486 SELECTED_FRAME as additional (1st) argument.
6487 (tty_read_avail_input): Handle output_msdos_raw in
6488 addition to output_termcap.
6489
6490 * msdos.c: Include frame.h before termhooks.h.
6491 (mouse_on, mouse_off, mouse_moveto, mouse_init)
6492 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
6493 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
6494 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
6495 (IT_set_terminal_modes, IT_reset_terminal_modes)
6496 (IT_set_frame_parameters): Use tty->termscript instead of a global
6497 variable termscript.
6498 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
6499 global variable terminal_coding. Don't refer to
6500 Vnonascii_translation_table.
6501 (internal_terminal_init): Set Vwindow_system in current_kboard.
6502 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
6503 Announce date and time of session start, if termscript is open.
6504 Don't zero out the_only_display_info (it is done in
6505 term.c:init_tty). Open termscript only of not already open.
6506 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
6507 here instead of dos_ttraw. Don't initialize display if this is an
6508 initial tty. Don't set FRAME_FONT.
6509 (Vwindow_system_version): Bump to 23.
6510 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
6511 is available, set up mouse_position_hook.
6512 (dos_ttraw, IT_set_terminal_modes): If called with initial
6513 terminal, do nothing.
6514 (IT_set_frame_parameters): Handle the Qtty_type frame
6515 parameter by calling internal_terminal_init.
6516 (dos_set_window_size, show_mouse_face)
6517 (clear_mouse_face, IT_note_mode_line_highlight)
6518 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
6519 (dos_rawgetc): Use tty_display_info instead of x_display_info.
6520 (initialize_msdos_display): New function.
6521 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
6522 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
6523 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
6524 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
6525 Accept additional argument: a pointer to a frame. Update all callers.
6526 (request_sigio, unrequest_sigio): Don't define, now defined on
6527 sysdep.c.
6528 (IT_write_glyphs): Rewrite to use encode_terminal_code.
6529
6530 * term.c [MSDOS]: Include msdos.h.
6531 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
6532 conditional to DOS_NT. Allow only one call to this function in a
6533 session. Don't allocate a new struct tty_display_info; instead,
6534 reuse the_only_display_info. Call get_tty_size to get screen
6535 dimensions. Call init_baud_rate to set bad_rate.
6536 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
6537 (Fsuspend_tty) [MSDOS]: Don't close input and output.
6538 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
6539 (get_tty_terminal, get_named_tty, Ftty_type)
6540 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
6541 output_termcap.
6542 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
6543 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
6544 only when subprocesses are supported.
6545
6546 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
6547 f->output_data.x.
6548 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
6549 terminal devices.
6550
6551 * msdos.h: Remove definition of struct x_display_info and struct
6552 x_output.
6553 (FRAME_FONT): Use output_data.tty.
6554 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
6555 (struct x_display_info): Rename from display_info. Update all users in
6556 msdos.c.
6557 (struct x_output): Remove background_pixel and foreground_pixel.
6558 (the_only_display_info): Rename from the_only_x_display.
6559 (dos_ttraw): Update prototype.
6560
6561 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
6562 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
6563
6564 2008-08-23 Jason Rumney <jasonr@gnu.org>
6565
6566 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
6567 (fn_TIFFSetDirectory): New library function used.
6568 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
6569 (tiff_load): Use :index to select among multiple images. Set count
6570 property when multiple images exist.
6571 (gif_format): Use :index, not :image.
6572
6573 2008-08-23 Chong Yidong <cyd@stupidchicken.com>
6574
6575 * xdisp.c (try_scrolling): Check INT_MAX instead of
6576 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
6577 to obtain INT_MAX.
6578
6579 2008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
6580
6581 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
6582
6583 2008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
6584
6585 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
6586 GNUstep library location.
6587
6588 2008-08-21 Chong Yidong <cyd@stupidchicken.com>
6589
6590 * xfaces.c (x_update_menu_appearance): Check validity of menu font
6591 before using it.
6592
6593 * puresize.h (BASE_PURESIZE): Increase to 1250000.
6594
6595 2008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6596
6597 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
6598 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
6599 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
6600 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
6601 (EmacsApp-cursor_blink_handler): Remove declaration.
6602 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
6603 match 01 Feb 2008 changes in xterm.c.
6604 (ns_read_socket): Add cast to avoid warning.
6605 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
6606 GNUstep.
6607
6608 2008-08-20 Chong Yidong <cyd@stupidchicken.com>
6609
6610 * xselect.c (x_get_foreign_selection): Return nil if desired
6611 selection could not be obtained, instead of signalling an error.
6612
6613 2008-08-20 David Reitter <david.reitter@gmail.com>
6614
6615 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
6616 * nsterm.m: Remove ns-specific code for cursor blinking.
6617 (ns_draw_window_cursor): Clear cursor properly rather than
6618 redrawing the area. Respect width of bar cursors.
6619 These changes enable the use of generic blink-cursor-mode and
6620 generic cursor types in NS and support smooth cursor movements (do
6621 not blink off after command).
6622 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
6623 Nextstep, too.
6624
6625 2008-08-19 Kenichi Handa <handa@m17n.org>
6626
6627 * font.c (Vfont_log_deferred): New variable.
6628 (font_add_log): Check Vfont_log_deferred.
6629 (font_deferred_log): New function.
6630
6631 * font.h (font_deferred_log): Extern it.
6632
6633 * fontset.c (reorder_font_vector): Use encoding charset of fonts
6634 for sorting.
6635 (face_for_char): Use deferred log.
6636
6637 2008-08-18 Kenichi Handa <handa@m17n.org>
6638
6639 * fontset.c (face_for_char): Add font log.
6640
6641 * font.c (font_add_log): Add the font properties :script, :lang,
6642 and :otf in the log.
6643
6644 2008-08-17 Chong Yidong <cyd@stupidchicken.com>
6645
6646 * xdisp.c: Remove dead code.
6647 (handle_invisible_prop, next_overlay_string): Defer call to
6648 setup_for_ellipsis.
6649 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
6650
6651 2008-08-15 Chong Yidong <cyd@stupidchicken.com>
6652
6653 * xfaces.c (lookup_derived_face): Properly handle possible zero
6654 return value of get_lface_attributes.
6655 (merge_faces): Don't tell lookup_derived_face to signal an error
6656 if face is not found.
6657
6658 * dired.c (Fdirectory_files): Doc fix.
6659
6660 * process.c (make_process): Initialize kill_without_query struct
6661 member.
6662
6663 2008-08-15 Eli Zaretskii <eliz@gnu.org>
6664
6665 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
6666 Alternative calculation of totphys for Visual Studio 6.
6667
6668 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
6669
6670 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
6671 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
6672 All users changed.
6673 (stat): Only root directory passed to GetDriveType. Allow RAM
6674 disk as well as local fixed disk when w32-get-true-file-attributes
6675 is set to `local'.
6676 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
6677 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
6678 (w32_cached_id, w32_add_to_cache): New functions.
6679 (get_name_and_id): Look account names in the cache before calling
6680 lookup_account_sid.
6681 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
6682 New initialization flags.
6683 (globals_of_w32): Initialize them to zero.
6684 (w32_system_process_attributes): Use w32_cached_id and
6685 w32_add_to_cache.
6686
6687 2008-08-14 Lawrence Mitchell <wence@gmx.li>
6688
6689 * lread.c (Fread_char, Fread_char_exclusive): If no character
6690 event is read before timeout is reached, return nil, rather than
6691 converting to a number.
6692
6693 2008-08-14 Chong Yidong <cyd@stupidchicken.com>
6694
6695 * fns.c (use_dialog_box): Doc fix.
6696
6697 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
6698 on OS X.
6699
6700 2008-08-13 Chong Yidong <cyd@stupidchicken.com>
6701
6702 * frame.c (Qns_parse_geometry): New var.
6703 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
6704
6705 2008-08-11 Chong Yidong <cyd@stupidchicken.com>
6706
6707 * xdisp.c (x_produce_glyphs): Handle the case when font has no
6708 space character in calculating tabs.
6709
6710 2008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
6711
6712 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
6713
6714 2008-08-10 Glenn Morris <rgm@gnu.org>
6715
6716 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
6717 silence gcc "limited range of data type" warnings in some
6718 make_fixnum_or_float calls.
6719
6720 2008-08-09 Eli Zaretskii <eliz@gnu.org>
6721
6722 * w32.c (w32_system_process_attributes): If the process does not
6723 exist, return nil.
6724
6725 * w32.c: Include thelp32.h, psapi.h and coding.h.
6726 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
6727 declarations.
6728 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
6729 (Process32Next_Proc): New typedefs.
6730 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
6731 (g_b_init_process32_next, g_b_init_open_thread_token)
6732 (g_b_init_impersonate_self, g_b_init_revert_to_self)
6733 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
6734 (g_b_init_get_process_working_set_size)
6735 (g_b_init_global_memory_status_ex): New static variables.
6736 (globals_of_w32): Initialize them.
6737 (create_toolhelp32_snapshot, process32_first, process32_next)
6738 (open_thread_token, impersonate_self, revert_to_self)
6739 (get_process_memory_info, get_process_working_set_size)
6740 (global_memory_status, global_memory_status_ex): New wrapper
6741 functions.
6742 (w32_list_system_processes, w32_system_process_attributes)
6743 (enable_privilege, restore_privilege, ltime, process_times):
6744 New functions.
6745 (convert_time_raw): New function.
6746 (convert_time): Remove conversion of FILETIME into time in 100
6747 nsec units, call convert_time_raw instead.
6748
6749 * process.h (w32_list_system_processes, w32_system_process_attributes):
6750 Add prototypes.
6751 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
6752 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
6753 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
6754 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
6755
6756 * process.c (Fsystem_process_attributes): Doc fix.
6757
6758 2008-08-08 Chong Yidong <cyd@stupidchicken.com>
6759
6760 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
6761 a continued multi-char glyph; if so, advance to the actual glyph.
6762
6763 2008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
6764
6765 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
6766
6767 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
6768 (.m.o): Use it.
6769 * config.in: Regenerate.
6770
6771 2008-08-07 Chong Yidong <cyd@stupidchicken.com>
6772
6773 * xdisp.c (redisplay_window): Revert last change.
6774 (try_window): Check bottom scroll margin too.
6775
6776 2008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6777
6778 * config.in: Regenerate.
6779
6780 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
6781 -list-load-path-shadows'.
6782 (nsgui.h): Reduce number of things depending on it.
6783
6784 2008-08-06 Chong Yidong <cyd@stupidchicken.com>
6785
6786 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
6787 instead of window-end which does the wrong thing at eob.
6788 (try_cursor_movement): Minor optimization.
6789 (redisplay_window): If scroll margin is defined, don't assume
6790 window doesn't need scrolling.
6791
6792 2008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6793
6794 * config.in: Regenerate.
6795
6796 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
6797 (mostlyclean): Don't delete *.d under NS.
6798
6799 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
6800
6801 2008-08-06 Kenichi Handa <handa@m17n.org>
6802
6803 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
6804
6805 2008-08-06 Andreas Schwab <schwab@suse.de>
6806
6807 * config.in: Regenerate.
6808
6809 2008-08-05 Chong Yidong <cyd@stupidchicken.com>
6810
6811 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
6812 forcing a window start.
6813
6814 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
6815 (auto_save_1): Update modtime when auto-save-list-file-name is on.
6816
6817 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6818
6819 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
6820 argument.
6821
6822 2008-08-05 Juanma Barranquero <lekktu@gmail.com>
6823
6824 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
6825 <scroll-down-aggressively, before-change-functions>:
6826 <after-change-functions>: Reflow docstrings.
6827
6828 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6829 Ken Raeburn <raeburn@gnu.org>
6830
6831 Dock menu customization, based on a patch by Ken Raeburn, plus some
6832 other fixes.
6833 * nsmenu.m (dockMenu): New variable.
6834 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
6835
6836 * nsterm.h (dockMenu): Declare.
6837
6838 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
6839 (ns_term_init): Initialize dockMenu.
6840 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
6841 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
6842 left.
6843
6844 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
6845
6846 2008-08-04 Chong Yidong <cyd@stupidchicken.com>
6847
6848 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
6849
6850 * config.in: Regenerate.
6851
6852 2008-08-04 Seiji Zenitani <zenitani@mac.com>
6853
6854 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
6855
6856 2008-08-04 Chong Yidong <cyd@stupidchicken.com>
6857
6858 * nsterm.h (find_and_call_menu_selection): Fix prototype.
6859
6860 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6861
6862 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
6863
6864 * keyboard.h: Comment an #endif.
6865
6866 * lisp.h (have_menus_p): Adjust comment.
6867
6868 * menu.c (find_and_return_menu_selection): Fix comparison with
6869 client_data.
6870
6871 * nsmenu.m (popup_activated_flag): New variable.
6872 (popup_activated): New function.
6873 (menu-or-popup-active-p): New exported lisp definition.
6874 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
6875 when popup done.
6876 (ns_popup_dialog): Set popup_activated_flag.
6877
6878 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
6879 version for GNUstep (handled by conditional typedef in nsterm.m).
6880 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
6881 in rgb.txt).
6882
6883 * process.c (init_process): Use DARWIN_OS, not DARWIN.
6884
6885 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
6886
6887 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
6888
6889 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
6890 shortcircuit if popup_activated like GTK and X toolkit.
6891
6892 * m/inter386.h: Change DARWIN to DARWIN_OS.
6893
6894 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
6895 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
6896 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
6897 comment on NO_SOCK_SIGIO.
6898
6899 2008-08-03 Chong Yidong <cyd@stupidchicken.com>
6900
6901 * nsterm.m (windowDidResize): Remove stopModal call.
6902
6903 2008-08-03 Andreas Schwab <schwab@suse.de>
6904
6905 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
6906 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
6907
6908 2008-08-02 Chong Yidong <cyd@stupidchicken.com>
6909
6910 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
6911 Don't use uninitialized pointer variable when using getrlimit.
6912
6913 2008-08-02 Jason Rumney <jasonr@gnu.org>
6914
6915 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
6916
6917 2008-08-02 Eli Zaretskii <eliz@gnu.org>
6918
6919 * alloc.c (NSTATICS): Bump to 0x640.
6920
6921 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
6922
6923 * lisp.h: Add prototype for directory_files_internal.
6924
6925 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
6926 New functions.
6927 (syms_of_process): Defsubr them. Add initializations for various
6928 Q* symbols used in procfs_system_process_attributes.
6929 (procfs_list_system_processes, procfs_system_process_attributes)
6930 [HAVE_PROCFS]: New functions.
6931 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
6932 (procfs_get_total_memory): New functions.
6933
6934 2008-08-01 Juanma Barranquero <lekktu@gmail.com>
6935
6936 * xfaces.c (Fx_load_color_file): Fix previous change;
6937 it is #ifdef WINDOWSNT, not WINDOWS_NT.
6938
6939 2008-08-01 Michael Albinus <michael.albinus@gmx.de>
6940
6941 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
6942
6943 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6944
6945 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
6946
6947 2008-08-01 Chong Yidong <cyd@stupidchicken.com>
6948
6949 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
6950
6951 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
6952 define NSApplicationDelegateReplySuccess.
6953 (EmacsView -converstationIdentifier): Use long instead of
6954 NSInteger for GNUstep, since it doesn't have NSInteger.
6955
6956 * xmenu.c: Revert last change.
6957
6958 * keyboard.h: Fix last change.
6959
6960 2008-08-01 Juanma Barranquero <lekktu@gmail.com>
6961
6962 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
6963 on Windows.
6964
6965 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6966
6967 Warning clearing and clean-up in NS port.
6968 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
6969 Add prototypes.
6970 * nsgui.h (FACE_DEFAULT): Remove, unused.
6971 (XGCValues): Change colors to unsigned long.
6972 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
6973 nsterm.m.
6974 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
6975 (ns_list_fonts): Remove, unused.
6976 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
6977 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
6978 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
6979 (nsfont_draw): Compare face colors to 0, not nil.
6980 * nsmenu.m (struct widget_value): Drop unneeded declaration.
6981 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
6982 (-addSubmenuWithTitle:): Use NSMenuItem class.
6983 (ns_popup_menu): Use NO, not NULL, for enabled setting.
6984 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
6985 (ns_clip_to_row): Make gc arg a BOOL.
6986 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
6987 ns_clip_to_row() call.
6988 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
6989 used). Cast FRAME_FONT assignments.
6990 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
6991 (ns_string_to_lispmod): Change arg to const char.
6992 (ns_term_init): Use NSMenuItem class.
6993 (EmacsApp -openFile:): Move to different section of file.
6994 (EmacsApp -application:openFiles:): Don't return a value, call
6995 -replyToOpenOrPrint:.
6996 (EmacsView -keyDown:): Fix up cast.
6997 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
6998 (EmacsView -menuDown:): Cast tag in call to
6999 find_and_call_menu_selection().
7000 (ns_list_fonts): Remove, unused.
7001 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
7002 (ns_fontname_to_xlfd): Make static.
7003 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
7004 Remove prototypes (now in keyboard.h).
7005 (next_menubar_widget_id): Remove, unused.
7006 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
7007 Remove prototypes (now in keyboard.h).
7008 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
7009
7010 2008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
7011
7012 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
7013 (floatfns.o): Depend on syssignal.h.
7014 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
7015
7016 * systty.h: Fix previous change that removed BSD_TERMIOS.
7017 Add comments to #ifdefs.
7018
7019 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7020
7021 * w32fns.c (w32-load-color-file): Remove.
7022 (x-open-connection): Use renamed Fx_load_color_file.
7023 * xfaces.c (x-load-color-file): Add.
7024 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
7025 Emacs.clr.
7026 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
7027
7028 2008-07-31 Michael Albinus <michael.albinus@gmx.de>
7029
7030 * dbusbind.c (Fdbus_call_method_asynchronously)
7031 (Fdbus_method_error_internal): New defuns.
7032 (xd_read_message): Handle also reply messages.
7033 (Vdbus_registered_functions_table): Extend docstring.
7034
7035 2008-07-31 Juanma Barranquero <lekktu@gmail.com>
7036
7037 * keyboard.c (gobble_input): Fix previous change.
7038
7039 2008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
7040
7041 * bitmaps/README:
7042 * xfns.c:
7043 * termcap.c:
7044 * term.c:
7045 * syswait.h:
7046 * systty.h:
7047 * systime.h:
7048 * syssignal.h:
7049 * sysdep.c:
7050 * process.h:
7051 * process.c:
7052 * print.c:
7053 * ndir.h:
7054 * lread.c:
7055 * keyboard.c:
7056 * getpagesize.h:
7057 * floatfns.c:
7058 * fileio.c:
7059 * emacs.c:
7060 * doc.c:
7061 * dispnew.c:
7062 * dired.c:
7063 * data.c:
7064 * callproc.c:
7065 * buffer.c:
7066 * README:
7067 * Makefile.in:
7068 * s/template.h:
7069 * s/msdos.h:
7070 * m/vax.h: Remove VMS support.
7071 * s/vms.h:
7072 * vlimit.h:
7073 * uaf.h:
7074 * temacs.opt:
7075 * param.h:
7076 * ioctl.h: Remove file.
7077
7078 2008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
7079
7080 * s/ms-w32.h (MULTI_KBOARD): Remove.
7081 * xterm.c:
7082 * xselect.c:
7083 * xfns.c:
7084 * window.c:
7085 * w32term.c:
7086 * w32fns.c:
7087 * terminal.c:
7088 * termhooks.h:
7089 * term.c:
7090 * sysdep.c:
7091 * keyboard.h:
7092 * keyboard.c:
7093 * frame.h:
7094 * frame.c:
7095 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
7096 * config.in: Regenerate.
7097
7098 2008-07-30 Jason Rumney <jasonr@gnu.org>
7099
7100 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
7101
7102 * w32font.c (w32font_encode_char): Leave as unicode if in range.
7103 (w32font_open_internal): Get unicode version of textmetrics.
7104 Don't enable or disable glyph indices here.
7105 (w32font_open): Disable use of glyph indices.
7106
7107 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
7108
7109 2008-07-30 Chong Yidong <cyd@stupidchicken.com>
7110
7111 * minibuf.c (Vread_buffer_function): Doc fix.
7112
7113 2008-07-30 John Paul Wallington <jpw@pobox.com>
7114
7115 * minibuf.c (read_buffer_completion_ignore_case): New var.
7116 (Fread_buffer): Use it.
7117
7118 2008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
7119
7120 * systty.h (sensemode): Remove empty #if. Remove reference to
7121 BSD_TERMIOS, unused.
7122
7123 * sysdep.c: Remove reference to DGUX.
7124 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
7125
7126 * config.in: Regenerate.
7127
7128 2008-07-30 Jason Rumney <jasonr@gnu.org>
7129
7130 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
7131
7132 2008-07-29 Jason Rumney <jasonr@gnu.org>
7133
7134 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
7135 is populated.
7136 (uniscribe_encode_char): Always use uniscribe.
7137 Avoid using context if cache is populated.
7138
7139 2008-07-29 Jan Djärv <jan.h.d@swipnet.se>
7140
7141 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
7142 open menu.
7143
7144 * gtkutil.c (menu_nav_ended): Remove.
7145 (create_menus): Remove signal connect for menu_nav_ended.
7146
7147 2008-07-28 Chong Yidong <cyd@stupidchicken.com>
7148
7149 * xdisp.c (redisplay_window): Check return value of
7150 compute_window_start_on_continuation_line before forcing a window
7151 start.
7152
7153 2008-07-28 Jason Rumney <jasonr@gnu.org>
7154
7155 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
7156
7157 * w32term.c (w32_enable_unicode_output, cleartype_active):
7158 Remove obsolete display options.
7159 (x_draw_glyph_string_background): Don't use old cleartype_active
7160 workaround.
7161 (w32_initialize): Remove cleartype_active initialization.
7162 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
7163
7164 2008-07-28 Andreas Schwab <schwab@suse.de>
7165
7166 * lisp.h (init_weak_hash_tables, syms_of_font)
7167 (xd_read_queued_messages, syms_of_dbusbind): Declare.
7168 (remove_hash_entry): Don't declare.
7169 * eval.c (maybe_call_debugger): Make static and move before use.
7170 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
7171 * xdisp.c: Include "gtkutil.h" if USE_GTK.
7172 * xterm.h (x_set_frame_alpha): Declare.
7173
7174 2008-07-28 Jan Djärv <jan.h.d@swipnet.se>
7175
7176 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
7177 (create_menus): Connect selection-done to menu_nav_ended.
7178
7179 2008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7180
7181 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
7182 Set Vx_resource_name to a fallback. Replace read of 'buffered'
7183 parameter with read of 'alpha' one.
7184 (Qns_frame_parameter): Remove.
7185 * nsselect.m (selection-coding-system)
7186 (next-selection-coding-system, Vselection_coding_system)
7187 (Vnext_selection_coding_system): Drop.
7188
7189 2008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7190
7191 * nsfns.m (do-applescript, do_applescript): Rename to
7192 ns-do-applescript, ns_do_applescript, and move within file.
7193
7194 2008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
7195
7196 Remove support for Mac Carbon.
7197 * mactoolbox.c:
7198 * macterm.h:
7199 * macterm.c:
7200 * macselect.c:
7201 * macmenu.c:
7202 * macgui.h:
7203 * macfns.c:
7204 * mac.c: Remove file.
7205 * s/darwin.h:
7206 * m/intel386.h:
7207 * xfaces.c:
7208 * xdisp.c:
7209 * window.c:
7210 * tparam.c:
7211 * termhooks.h:
7212 * termcap.c:
7213 * term.c:
7214 * syssignal.h:
7215 * sysselect.h:
7216 * sysdep.c:
7217 * process.c:
7218 * lread.c:
7219 * lisp.h:
7220 * keyboard.c:
7221 * image.c:
7222 * fringe.c:
7223 * frame.h:
7224 * frame.c:
7225 * fontset.c:
7226 * font.h:
7227 * font.c:
7228 * fns.c:
7229 * fileio.c:
7230 * emacs.c:
7231 * dispnew.c:
7232 * dispextern.h:
7233 * config.in:
7234 * atimer.c:
7235 * Makefile.in: Remove code for Carbon.
7236
7237 2008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7238
7239 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
7240
7241 2008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7242
7243 * macterm.h (kCGBitmapByteOrder32Host): New define for
7244 non-universal SDKs.
7245
7246 * image.c (mac_create_cg_image_from_image, image_load_image_io)
7247 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7248
7249 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
7250 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7251
7252 2008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
7253
7254 * w32inevt.c: Include dispextern.h.
7255
7256 2008-07-26 Andreas Schwab <schwab@suse.de>
7257
7258 * print.c (print_object): Fix off-by-one in last change.
7259
7260 2008-07-25 Juanma Barranquero <lekktu@gmail.com>
7261
7262 * term.c (syms_of_term): Don't initialize default_orig_pair,
7263 default_set_foreground and default_set_background on Windows.
7264
7265 2008-07-25 Jason Rumney <jasonr@gnu.org>
7266
7267 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
7268 ScriptItemize. Clean up return value checking. Remove unused
7269 variables.
7270 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
7271 shaping engine.
7272
7273 * w32font.c (w32font_has_char): Handle the case where we can't
7274 determine the script for a character.
7275
7276 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
7277
7278 * term.c (syms_of_term): Initialize default_orig_pair,
7279 default_set_foreground, and default_set_background.
7280
7281 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
7282 clash (bug#86).
7283 (getloadavg): Callers changed.
7284
7285 * image.c (svg_load_image): Fix last change.
7286 (svg_load_image): Use rsvg_handle_get_dimensions to check that
7287 image size is valid. Use g_object_unref instead of deprecated
7288 rsvg_handle_free to free rsvg handle.
7289 (x_from_xcolors): Don't initialize pixmap (silence compiler).
7290
7291 2008-07-25 Jason Rumney <jasonr@gnu.org>
7292
7293 * w32font.c (w32font_encode_char): Encode characters outside BMP as
7294 surrogates before looking up glyph index.
7295 (w32font_text_extents): Encode as surrogates if falling back to
7296 functions that need UTF-16 wide chars.
7297
7298 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
7299 BMP as surrogates before looking up glyph index.
7300
7301 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
7302
7303 * image.c (svg_load_image): Check for failure in return value of
7304 rsvg_handle_get_pixbuf. Free rsvg handle when done.
7305
7306 2008-07-25 Jason Rumney <jasonr@gnu.org>
7307
7308 * w32font.c (Fx_select_font): Reverse sense of second arg.
7309
7310 2008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
7311
7312 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
7313 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
7314
7315 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
7316 (PURESIZE): Use it.
7317
7318 2008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
7319
7320 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
7321 * m/alpha.h (TEXT_END):
7322 * m/ibmrs6000.h (TEXT_END):
7323 * m/macppc.h (TEXT_END):
7324 * s/darwin.h (TEXT_END):
7325 * s/msdos.h (TEXT_END): Remove, unused.
7326 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
7327 * s/cygwin.h: Remove comment.
7328
7329 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
7330 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
7331 * m/intel386.h (DOT_GLOBAL_START):
7332 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
7333 (USG): Remove, file not used on USG platforms.
7334
7335 * Makefile.in (HAVE_X11): Remove empty #else.
7336
7337 2008-07-24 Andreas Schwab <schwab@suse.de>
7338
7339 * fileio.c (Finsert_file_contents): Properly adjust undo list
7340 after format conversion.
7341
7342 2008-07-24 Jan Djärv <jan.h.d@swipnet.se>
7343
7344 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
7345 (menu_nav_ended): Remove.
7346 (create_menus): Remove signal connect for menu_nav_ended.
7347 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
7348 create_menus.
7349 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
7350
7351 2008-07-23 Jason Rumney <jasonr@gnu.org>
7352
7353 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
7354 with opened font.
7355 (w32font_open): Set font type to gdi.
7356
7357 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
7358
7359 2008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
7360
7361 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
7362 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
7363 defines it.
7364 * unexec.c (ADDR_CORRECT): Define unconditionally.
7365
7366 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
7367
7368 * unexec.c: Remove code depending on !COFF and USG, the file is
7369 not used for such systems.
7370
7371 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
7372 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
7373 (LD_SWITCH_SYSTEM_1): Remove, update users.
7374
7375 * s/darwin.h (DATA_END):
7376 * m/intel386.h (DATA_END):
7377 * m/ibmrs6000.h (DATA_END):
7378 * m/alpha.h (DATA_END): Remove, unused.
7379
7380 * config.in: Regenerate.
7381 * s/ms-w32.h (subprocesses): Define unconditionally.
7382 * s/template.h (subprocesses): Update comment.
7383 * s/vms.h (subprocesses):
7384 * s/usg5-4.h (subprocesses):
7385 * s/hpux10-20.h (subprocesses):
7386 * s/gnu-linux.h (subprocesses):
7387 * s/cygwin.h (subprocesses):
7388 * s/bsd-common.h (subprocesses):
7389 * s/aix4-2.h (subprocesses):
7390 * s/darwin.h (subprocesses): Do not define, defined by default now.
7391
7392 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
7393 Remove all references.
7394 (temacs): Add GNUstep specific ld flags.
7395
7396 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
7397 similarly to what X does.
7398
7399 2008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7400
7401 * nsfns.m (x-list-fonts): Remove.
7402 (syms_of_nsfns): Drop the x-list-fonts declaration.
7403 * nsterm.m: Get rid of remaining "//" comments.
7404
7405 2008-07-22 Chong Yidong <cyd@stupidchicken.com>
7406
7407 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
7408
7409 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
7410 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
7411 (Fns_own_selection_internal, Fx_disown_selection_internal)
7412 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
7413
7414 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
7415 ... */' style of docstrings. Doc fixes.
7416
7417 2008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7418
7419 * terminfo.c (UP, BC, PC): Undo previous change.
7420
7421 * nsfns.m: Rename ns prefixed functions/variables to the
7422 corresponding x versions. Update references.
7423
7424 2008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
7425
7426 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
7427
7428 2008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7429
7430 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
7431 Remove forwarding functions.
7432 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
7433 non-static.
7434 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
7435 non-static.
7436 (ns_frame_parm_handlers): Use the new names.
7437 (syms_of_nsfns): Move to the end of file.
7438
7439 * nsterm.m (syms_of_nsterm): Move to the end of file.
7440
7441 * dispnew.c (init_display): Remove code for X10.
7442
7443 2008-07-22 Jason Rumney <jasonr@gnu.org>
7444
7445 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
7446 bare drive.
7447
7448 2008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7449
7450 * nsterm.m (syms_of_nsterm): Remove debugging println.
7451
7452 2008-07-22 David Reitter <david.reitter@gmail.com>
7453
7454 * nsfns.m (do_applescript, F_do_applescript): NS version of the
7455 Carbon implementation of the same functionality: execute arbitrary
7456 AppleScript code.
7457
7458 2008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
7459
7460 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
7461 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
7462 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
7463 (Fx_display_mm_height, Fx_display_mm_width)
7464 (Fx_display_backing_store, Fx_display_visual_class)
7465 (Fx_display_save_under, Fx_open_connection)
7466 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
7467 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
7468 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7469 (Fx_display_pixel_width, Fx_display_pixel_height)
7470 (Fx_display_usable_bounds, Fx_display_planes)
7471 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
7472 ... */' style of docstrings.
7473
7474 2008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
7475
7476 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
7477 on this platform.
7478 (mips):
7479 * m/iris4d.h (mips): Do not define.
7480 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
7481
7482 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
7483
7484 * image.c:
7485 * nsfns.m:
7486 * nsselect.m:
7487 * nsterm.h:
7488 * nsterm.m: Rename ns prefixed functions/variables to the
7489 corresponding x versions. Update references.
7490
7491 * m/ibms390x.h (NO_REMAP): Do not undefine.
7492
7493 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
7494
7495 2008-07-21 Chong Yidong <cyd@stupidchicken.com>
7496
7497 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
7498 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
7499 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
7500 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
7501 (Fns_display_mm_height, Fns_display_mm_width)
7502 (Fns_display_backing_store, Fns_display_visual_class)
7503 (Fns_display_save_under, Fns_open_connection)
7504 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
7505 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
7506 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7507 (Fns_display_pixel_width, Fns_display_pixel_height)
7508 (Fns_display_usable_bounds, Fx_display_planes)
7509 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
7510
7511 2008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
7512
7513 * print.c (print_object): Check print_depth before searching for
7514 circularities.
7515
7516 2008-07-21 Michael Albinus <michael.albinus@gmx.de>
7517
7518 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
7519 only sprintf.
7520
7521 2008-07-21 Kenichi Handa <handa@m17n.org>
7522
7523 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
7524
7525 2008-07-20 Andreas Schwab <schwab@suse.de>
7526
7527 * syntax.c (find_start_pos, find_start_value)
7528 (find_start_value_byte, find_start_begv, find_defun_start)
7529 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
7530
7531 2008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7532
7533 * s/sol2-3.h: Insert contents of s/sol2.h.
7534 (LD_SWITCH_SYSTEM): Remove redundant definition.
7535 * s/sol2.h: Remove, unused.
7536
7537 2008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7538
7539 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
7540
7541 2008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7542
7543 * Makefile.in (ns_appdir): Fix typo in find command.
7544
7545 2008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7546
7547 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
7548
7549 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
7550 added not supported anymore.
7551
7552 * s/usg5-4-2.h (LIBS_SYSTEM):
7553 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
7554
7555 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7556 * s/lynxos.h (GETPGRP_NO_ARG):
7557 * s/hpux10-20.h (NO_SIOCTL_H):
7558 * s/gnu.h (GETPGRP_NO_ARG):
7559 * s/gnu-linux.h (NO_SIOCTL_H):
7560 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7561 * s/cygwin.h (GETPGRP_NO_ARG):
7562 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
7563 (C_DEBUG_SWITCH): Remove duplicate definition.
7564
7565 * m/ibms390.h: Remove boilerplate comments.
7566
7567 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
7568
7569 * process.c (HAVE_SERIAL): Consolidate ifdefs.
7570 (wait_reading_process_output): Remove code for SunOS, platform not
7571 supported anymore. Use SOLARIS2 instead of sun.
7572
7573 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7574
7575 * font.c (font_open_by_name): Under NS, default lface height to zero.
7576 (font_open_for_lface): Under NS, set size based on frame fontsize.
7577 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
7578 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
7579
7580 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7581
7582 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
7583 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
7584 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
7585 YES/NO.
7586 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
7587 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
7588 * Makefile.in (clean): Clear out build destination dir.
7589
7590 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7591
7592 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
7593 xterm, xselect.
7594 * lisp.h: Remove declaration of hash_remove.
7595 * nsgui.h: Remove redefinitions of hash_remove.
7596 * fns.c (hash_remove): Rename to hash_remove_from_table.
7597
7598 2008-07-19 Seiji Zenitani <zenitani@mac.com>
7599
7600 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
7601 strdup() the family UTF8String before modifying it.
7602
7603 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7604
7605 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
7606 NS_FACE_BACKGROUND with 0 instead of nil.
7607 * nsfont.m (nsfont_draw): Same.
7608
7609 2008-07-19 Chong Yidong <cyd@stupidchicken.com>
7610
7611 * nsfns.m (ns_set_background_color): Fix crash.
7612
7613 2008-07-18 Chong Yidong <cyd@stupidchicken.com>
7614
7615 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
7616
7617 2008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
7618
7619 * puresize.h (BASE_PURESIZE): Increase to 1240000.
7620
7621 2008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7622
7623 * gtkutil.c: Include <config.h> instead of "config.h".
7624
7625 * lisp.h (Foverlay_buffer): Add EXFUN.
7626
7627 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
7628 child process to complete child_setup. Undo 2005-09-21 change.
7629
7630 * s/darwin.h: Mention setsid after vfork.
7631
7632 2008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7633
7634 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
7635 Depend on macgui.h.
7636
7637 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
7638 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
7639
7640 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
7641 and f19.
7642 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
7643
7644 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
7645 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
7646 Remove enumerators.
7647
7648 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
7649 Check if FACE_FROM_ID returns NULL.
7650
7651 2008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
7652
7653 * w32inevt.c (change_frame_size): Remove extern declaration.
7654 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
7655 change_frame_size.
7656
7657 2008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7658
7659 * getloadavg.c: Revert last change (2008-07-15).
7660
7661 2008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7662
7663 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
7664 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
7665 from configure.
7666
7667 2008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
7668
7669 * s/sol2.h:
7670 * s/sol2-4.h: Reorganize conditionals.
7671
7672 * ecrt0.c: Remove code depending on m68000, not used anymore.
7673
7674 * fns.c (hash_remove): Make static.
7675 * lisp.h (hash_remove): Don't prototype.
7676
7677 * m/ibmrs6000.h:
7678 * m/ibms390x.h:
7679 * m/macppc.h: Remove boilerplate comments.
7680
7681 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
7682 Solaris, which does not need them.
7683
7684 * m/vax.h: Remove comments about unsupported systems.
7685
7686 * s/darwin.h: Reorganize ifdefs.
7687
7688 2008-07-17 Andreas Schwab <schwab@suse.de>
7689
7690 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
7691
7692 2008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
7693
7694 Use SDATA. Follow coding convention of placing operators at
7695 beginning of next line rather than end of previous line, and placing
7696 spaces around infix operators.
7697
7698 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
7699 in case it was defined already.
7700 USE @GNUSTEP_MAKEFILES@ rather than envvars.
7701 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
7702 ns_default.
7703 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
7704 Lisp_Objects.
7705 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
7706 (ns_defined_color, ns_color_to_lisp): Declare.
7707 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
7708 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
7709 it's accepted even with USE_LISP_UNION_TYPE.
7710 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
7711 (update_frame_tool_bar): Remove apparently obsolete tests for
7712 non-integerness of f->tool_bar_lines.
7713 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
7714 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
7715 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
7716 (nsfont_open): Don't confuse NULL for Qnil.
7717 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
7718 * menu.h (find_and_call_menu_selection):
7719 * menu.c (find_and_call_menu_selection): Use just int for vector size.
7720 (find_and_return_menu_selection): Always return something.
7721 * frame.h: Include dispextern.h for Display_Info.
7722 (display_x_get_resource): Declare.
7723
7724 2008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
7725
7726 * syntax.c: Remove stdio.h include accidentally introduced in
7727 Emacs.app commit.
7728 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
7729 NS_IMPL_COCOA.
7730 * keyboard.c (handle_async_input, input_available_signal): Remove
7731 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
7732
7733 2008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7734
7735 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
7736 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
7737 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
7738 Use SDATA.
7739
7740 * keymap.c: Remove all NS-specific code.
7741 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
7742 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
7743 where_is_preferred_modifier, return a different value depending on how
7744 preferred is the binding.
7745 (where_is_internal): Adjust accordingly.
7746 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
7747 Adjust to new preferred_sequence_p.
7748 (syms_of_keymap): Declare `where-is-preferred-modifier'.
7749 * keyboard.c (parse_solitary_modifier): Not static any more.
7750 * keyboard.h (parse_solitary_modifier): Declare.
7751
7752 2008-07-16 Andreas Schwab <schwab@suse.de>
7753
7754 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
7755 of easymenu.
7756
7757 2008-07-16 Chong Yidong <cyd@stupidchicken.com>
7758
7759 * xdisp.c (move_it_in_display_line): Account for word wrap, so
7760 that we don't move off the line.
7761
7762 2008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7763
7764 * keyboard.c (Qsuper): Remove.
7765 (parse_menu_item): Don't call where_is_internal specially for NS.
7766
7767 2008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7768
7769 * s/gnu-linux.h: Remove boilerplate comments.
7770
7771 * m/alpha.h (__ELF__): Consolidate conditions.
7772
7773 * m/m68k.h (linux): Use GNU_LINUX instead.
7774 Remove boilerplate comments.
7775
7776 * m/intel386.h: Undo refactoring from previous change.
7777 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
7778 too, remove dead code.
7779 (linux): Use GNU_LINUX instead.
7780
7781 2008-07-16 Jason Rumney <jasonr@gnu.org>
7782
7783 * w32gui.h: Repeat 26 June changes lost by last change.
7784
7785 2008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7786
7787 * systty.h: Remove code for Aix on 386, unsupported platform.
7788
7789 * s/ms-w32.h: Remove boilerplate comments.
7790 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
7791
7792 * s/gnu-linux.h (TERM): Remove support.
7793 (HAVE_SYSVIPC): Remove, unused.
7794 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
7795 for this system.
7796
7797 * process.c: Remove support for IRIS, unused.
7798 Remove support for TERM, not relevant anymore.
7799
7800 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
7801 used with the definition.
7802
7803 * s/aix4-2.h (static): Do not undef.
7804
7805 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
7806 only used on Aix.
7807 (HAVE_SYSVIPC): Remove, unused.
7808
7809 * m/hp800.h (CANNOT_DUMP): Do not undef.
7810
7811 * m/alpha.h: Fix comment.
7812
7813 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
7814 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
7815 used by this configuration.
7816 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
7817 * unexec.c: Remove code depending on HPUX and
7818 USG_SHARED_LIBRARIES, not used with this file. Remove code
7819 depending on IRIS, unused. Remove if 0-ed code.
7820
7821 * s/template.h: Remove comments about static.
7822
7823 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
7824 Remove if 0-ed code.
7825 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
7826 were the same as the default.
7827 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
7828 Remove boilerplate comments.
7829 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
7830 (HAVE_SYSVIPC): Remove, unused.
7831 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
7832
7833 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7834 Remove boilerplate comments.
7835 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7836 Remove boilerplate comments.
7837 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7838 Remove boilerplate comments.
7839 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
7840
7841 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
7842 USG systems which do not use DATA_SEG_BITS.
7843 Refactor code. Remove boilerplate comments.
7844
7845 * m/ibms390.h:
7846 * m/m68k.h:
7847 * s/bsd-common.h:
7848 * s/cygwin.h:
7849 * s/darwin.h:
7850 * s/freebsd.h:
7851 * s/gnu.h:
7852 * s/msdos.h: Remove boilerplate comments.
7853
7854 * m/iris4d.h: Remove boilerplate comments and code for systems that
7855 do not use this file.
7856 (IRIS_4D): Remove, unused.
7857
7858 * m/mips.h: Remove boilerplate comments and code for systems that
7859 do not use this file.
7860 (SIGN_EXTEND_CHAR):
7861 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
7862 * unexmips.c: Remove file, unused.
7863
7864 * editfns.c (Fuser_full_name): Replace the only use of
7865 USER_FULL_NAME with its value.
7866 * config.in: Regenerate.
7867
7868 2008-07-16 David Reitter <david.reitter@gmail.com>
7869
7870 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
7871 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
7872
7873 2008-07-16 Glenn Morris <rgm@gnu.org>
7874
7875 * emacs.c (system-type): Doc fix.
7876
7877 2008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
7878
7879 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
7880 If the cache doesn't work, let's fix it, rather than work around it.
7881
7882 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7883
7884 * Makefile.in: Correct additions for nsfont.o in last commit.
7885 * nsfont.m: New file (forgot last commit).
7886
7887 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7888
7889 * callproc.c (set_initial_environment): Initialize
7890 Vprocess_environment under CANNOT_DUMP (fixes crash when
7891 batch-compiling for bootstrap).
7892
7893 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7894 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7895
7896 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
7897 fix crash due to different init order.
7898
7899 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7900
7901 Changes and additions for NeXTstep windowing system (Cocoa and
7902 GNUstep) support.
7903
7904 * Makefile.in:
7905 * config.in: Support defines and build commands for NS port.
7906 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
7907 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
7908 * dispextern.h: Include nsgui.h and add needed typedefs under NS
7909 windowing.
7910 (struct face): Add synth_ital field.
7911 * dispnew.c: Include nsterm.h when compiling under NS windowing.
7912 (init_display): Initialize Vinitial_window_system to "ns" when so
7913 compiled.
7914 * emacs.c: Include GSConfig.h when compiling under GNUstep.
7915 (display_arg): Use under NS.
7916 (main): Under NS, allocate autorelease pool and handle command line
7917 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
7918 (standard_args): Add NS-specific args.
7919 (shut_down_emacs): Shut down NS terminal if compiled under NS.
7920 * font.c (DEFAULT_ENCODING): New variable.
7921 (font_find_for_lface): Use it.
7922 (syms_of_font): Load syms_of_nsfont under NS.
7923 * font.h: Declare nsfont_driver when compiled under NS.
7924 * fontset.c: When compiling under NS, include nsterm.h.
7925 (fontset_from_font): Autoconstruct fontset under NS.
7926 * frame.c (various): Under NS, include nsterm.h, add Qns window system
7927 symbol, document and use it.
7928 (do_switch_frame): When for_deletion under Cocoa, add
7929 Fraise_frame(Qnil).
7930 (x_set_frame_parameters): Ensure font attribute changes are picked up.
7931 (x_get_arg): Allow "yes" and "no" as boolean values.
7932 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
7933 Qright under Cocoa.
7934 (focus-follows-mouse): Default to 0 under NS.
7935 * frame.h (enum output_method): Add output_ns.
7936 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
7937 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
7938 (FRAME_WINDOW_P): NS-specific definition.
7939 * fringe.c (max_used_fringe_bitmap): Make public.
7940 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
7941 (getloadavg): Use NeXT code under descendant OS's.
7942 * image.c (includes and header section, x_create_bitmap_from_data)
7943 (x_create_bitmap_from_file, free_bitmap_record, image_background)
7944 (image_background_transparent, x_clear_image_1)
7945 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
7946 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
7947 (x_to_xcolors, x_from_xcolors, x_disable_image)
7948 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
7949 other GUIs, including XPM support using code originally written for
7950 Carbon GUI.
7951 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
7952 using NS API.
7953 (image_ascent): Use font metrics macros instead of direct struct field
7954 access.
7955 * keyboard.c (includes): Add nsterm.h when compiling under NS.
7956 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
7957 Also, handle NS as GTK for menu bar purposes.
7958 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
7959 toolkit where they differ.
7960 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
7961 use cachelist, still needed under NS.
7962 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
7963 (struct widget_value): Define it here for menu.c.
7964 * keymap.c (includes): Include modifier internals.
7965 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
7966 NS.
7967 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
7968 support for preferring sequences using certain modifiers, specified by
7969 the FIRSTONLY argument.
7970 * lisp.h (hash_remove): Rename to avoid name clash when compiling
7971 under NS GNUstep implementation.
7972 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
7973 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
7974 * menu.c: Include nsterm.h under NS.
7975 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
7976 (free_menubar_widget_tree_value, update_submenu_strings)
7977 (find_and_call_menu_selection): Treat NS as X and NT.
7978 (find_and_return_menu_selection): New function, used for popup menus.
7979 * nsgui.h:
7980 * nsterm.h:
7981 * nsfns.m:
7982 * nsimage.m:
7983 * nsmenu.m:
7984 * nsselect.m:
7985 * nsterm.m: New files.
7986 * process.c (wait_reading_process_output): Under NS, call ns_select()
7987 instead of plain select().
7988 * syntax.c (char_quoted): Under NS, avoid a crash when called near
7989 beginning of buffer.
7990 * sysselect.h (init_process): Rename when compiling under Cocoa to
7991 avoid name conflict.
7992 * termhooks.h (display_info): Add ns_display_info to union.
7993 * terminal.c (Fterminal_live_p): Add ns to terminal types.
7994 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
7995 COCOA environment.
7996 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
7997 unexec() signature. (Note, this will dump, but the resulting file
7998 crashes; unexosx is used instead; keeping around for reference and
7999 possible aid in getting dump working under GNUstep.)
8000 * w32gui.h (button_type, widget_value): Remove definitions (now in
8001 keyboard.h).
8002 * window.c: Include nsterm.h when compiling under NS.
8003 * xdisp.c (includes): Include nsterm.h when compiling under NS.
8004 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
8005 other GUI windowing systems.
8006 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
8007 GTK.
8008 (x_consider_frame_title): Under NS, set icon type and frame
8009 modified-state indicator; use ns_set_name_as_filename() when using
8010 formatted title.
8011 (update_window_cursor): Make public when compiling under NS.
8012 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
8013 (hourglass_atimer, Vhourglass_delay
8014 * xfaces.c (header section, init_frame_faces, clear_font_table)
8015 (defined_color, unload_color, x_face_list_fonts)
8016 (prepare_face_for_display): Add NS support parallel to other GUIs.
8017 Emulate GCs like other non-X GUIs.
8018 (split_font_name): Don't lowercase font name under NS.
8019 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
8020 under NS.
8021 * s/darwin.h: Add support for compilation under NS.
8022
8023 2008-07-15 Jason Rumney <jasonr@gnu.org>
8024
8025 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
8026 (w32_show_hourglass): Rename from show_hourglass.
8027 (w32_hide_hourglass): Rename from hide_hourglass.
8028 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
8029 (Vhourglass_delay): Declare extern.
8030 (hourglass_started): Remove.
8031
8032 * xdisp.c (Vhourglass_delay): Remove static.
8033 (hourglass_started, start_hourglass, cancel_hourglass):
8034 Don't include these versions on WINDOWSNT.
8035
8036 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
8037
8038 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
8039 variables (formerly in xfns.c).
8040 (show_hourglass, hide_hourglass): New prototypes (same).
8041 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
8042 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
8043 in xfns.c).
8044 (syms_of_xdisp): Declare/initialize display-hourglass,
8045 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
8046 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
8047 formerly in xfns.c.
8048 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
8049 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
8050 (start_hourglass, cancel_hourglass): Remove.
8051 (show_hourglass, hide_hourglass): Remove prototypes and static
8052 modifiers.
8053 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
8054 hourglass_atimer, hourglass_shown_p declaration/initialization.
8055 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
8056 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
8057 (start_hourglass, cancel_hourglass): Remove.
8058 (show_hourglass, hide_hourglass): Remove prototypes and static
8059 modifiers.
8060 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
8061 hourglass_atimer, hourglass_shown_p declaration/initialization.
8062 * w32fns.c (display_hourglass_p, Vhourglass_delay)
8063 (DEFAULT_HOURGLASS_DELAY): Remove.
8064 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
8065 hourglass_shown_p declaration/initialization.
8066
8067 2008-07-14 Jason Rumney <jasonr@gnu.org>
8068
8069 * w32fns.c (w32_get_arg): Remove wrapper function.
8070 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
8071 directly.
8072 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
8073
8074 2008-07-14 Kenichi Handa <handa@m17n.org>
8075
8076 * xfont.c (xfont_open): Add workaround for X's bug.
8077
8078 2008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8079
8080 * fontset.c: Include <stdio.h> unconditionally.
8081
8082 2008-07-13 Michael Albinus <michael.albinus@gmx.de>
8083
8084 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
8085 for filtering.
8086
8087 2008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
8088
8089 * s/vms.h: Use __GNUC__ instead of _GNUC_.
8090
8091 * m/macppc.h:
8092 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
8093
8094 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
8095 (SPECIAL_EMACS_INT):
8096 * m/ia64.h (SPECIAL_EMACS_INT):
8097 * m/amdx86-64.h (SPECIAL_EMACS_INT):
8098 * s/gnu.h (NLIST_STRUCT):
8099 * s/aix4-2.h (X11R5_INHIBIT_I18N):
8100 * s/gnu-linux.h (LINUX):
8101 * s/msdos.h (HAVE_FACES):
8102 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
8103
8104 * systty.h:
8105 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
8106 anymore.
8107
8108 2008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
8109
8110 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
8111 always defined as int.
8112
8113 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
8114 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
8115 * s/gnu-linux.h (HAVE_WAIT_HEADER):
8116 * s/freebsd.h (HAVE_WAIT_HEADER):
8117 * s/bsd-common.h (HAVE_UNION_WAIT):
8118 * s/aix4-2.h (HAVE_WAIT_HEADER):
8119 * m/mips.h (HAVE_UNION_WAIT):
8120 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
8121 (COFF, static): Do not define, they are undefined later in the file.
8122
8123 * process.c (update_status): Don't use a union.
8124 (status_convert):
8125 (sigchld_handler): Use int instead of WAITTYPE.
8126
8127 2008-07-12 Chong Yidong <cyd@stupidchicken.com>
8128
8129 * indent.c (Fvertical_motion): Restore hscroll before moving to
8130 goal column.
8131
8132 2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
8133
8134 * lisp.h: Remove left over code.
8135
8136 2008-07-11 Andreas Schwab <schwab@suse.de>
8137
8138 * lisp.h: Fix logic in last change.
8139
8140 * menu.h: New file.
8141 * menu.c: Include it.
8142 * xmenu.c: Likewise.
8143 * Makefile.in: Update dependencies.
8144
8145 2008-07-11 Kenichi Handa <handa@m17n.org>
8146
8147 * fontset.c (fontset_from_font): Cancel the previous change.
8148
8149 2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
8150
8151 * lisp.h:
8152 * w32heap.c:
8153 * emacs.c:
8154 * alloc.c: Replace all references of NO_UNION_TYPE with
8155 USE_LISP_UNION_TYPE.
8156
8157 * m/xtensa.h (NO_UNION_TYPE):
8158 * m/vax.h (NO_UNION_TYPE):
8159 * m/template.h (NO_UNION_TYPE):
8160 * m/sparc.h (NO_UNION_TYPE):
8161 * m/mips.h (NO_UNION_TYPE):
8162 * m/macppc.h (NO_UNION_TYPE):
8163 * m/m68k.h (NO_UNION_TYPE):
8164 * m/iris4d.h (NO_UNION_TYPE):
8165 * m/intel386.h (NO_UNION_TYPE):
8166 * m/ibms390x.h (NO_UNION_TYPE):
8167 * m/ibms390.h (NO_UNION_TYPE):
8168 * m/ibmrs6000.h (NO_UNION_TYPE):
8169 * m/ia64.h (NO_UNION_TYPE):
8170 * m/hp800.h (NO_UNION_TYPE):
8171 * m/arm.h (NO_UNION_TYPE):
8172 * m/amdx86-64.h (NO_UNION_TYPE):
8173 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
8174 defining it the same.
8175
8176 2008-07-10 Chong Yidong <cyd@stupidchicken.com>
8177
8178 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
8179
8180 2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8181
8182 * fileio.c:
8183 * sysdep.c
8184 * systty.h:
8185 * m/ibmrs6000.h:
8186 * m/iris4d.h:
8187 * s/aix4-2.h:
8188 * s/freebsd.h:
8189 * s/gnu-linux.h:
8190 * s/hpux10-20.h:
8191 * s/hpux11.h:
8192 * s/netbsd.h:
8193 * s/sol2-3.h:
8194 * s/sol2-4.h:
8195 * s/sol2.h:
8196 * s/usg5-4.h:
8197 * s/vms.h: Remove references to unused variables.
8198
8199 2008-07-10 Andreas Schwab <schwab@suse.de>
8200
8201 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
8202 pattern before matching the generic family.
8203
8204 2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8205
8206 * unexec.c:
8207 * s/vms.h:
8208 * s/usg5-4-2.h:
8209 * s/sol2-5.h:
8210 * s/freebsd.h:
8211 * s/darwin.h: Remove dead code.
8212
8213 * m/template.h:
8214 * m/sparc.h:
8215 * m/mips.h:
8216 * m/m68k.h:
8217 * m/iris4d.h:
8218 * m/intel386.h:
8219 * m/ibms390x.h:
8220 * m/ibms390.h:
8221 * m/ia64.h:
8222 * m/hp800.h:
8223 * m/arm.h:
8224 * m/amdx86-64.h: Remove dead code and references to unused
8225 and compiler defined symbols.
8226
8227 * unexmips.c:
8228 * unexelf.c: Remove references to desupported systems.
8229
8230 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
8231
8232 * m/powermac.h: Remove boilerplate comments.
8233 (NO_REMAP): Remove unused definition.
8234
8235 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
8236 define them.
8237
8238 2008-07-10 Kenichi Handa <handa@m17n.org>
8239
8240 * xfont.c (xfont_open): Log the reason of failure.
8241
8242 2008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
8243
8244 * fontset.c (fontset_get_font_group):
8245 * font.c (font_check_otf): Specify argument types.
8246
8247 2008-07-09 Kenichi Handa <handa@m17n.org>
8248
8249 * coding.c (detect_coding_utf_8): Set detect_info->found only when
8250 non-ASCII char is found.
8251
8252 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
8253 (reorder_font_vector): Change the arg preferred_family to font.
8254 Prefer the spec matching with font.
8255 (fontset_get_font_group): New function.
8256 (fontset_find_font): Change the format of an element of a realized
8257 fontset. Use fontset_get_font_group.
8258 (fontset_font): Try the current fontset, the default fontset, the
8259 fallbacks of the current fontset, and the fallbacks of the default
8260 fontset in this order.
8261 (face_for_char): Delete the shortcut to use the current font.
8262 (fontset_from_font): Don't set fonts for Latin in the fontset.
8263
8264 * font.h (font_make_object, font_match_p): Adjust prototypes.
8265
8266 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
8267
8268 * font.c (font_make_object): New arg entity and pixelsize.
8269 (font_check_otf_features, font_check_otf): New functions.
8270 (font_match_p): Check :lang, :script, and :otf properties.
8271
8272 * xfont.c (xfont_open): Adjust it for the change of
8273 font_make_object.
8274 (xfont_text_extents): Fix initial setting of metrics.
8275
8276 * ftfont.c (struct ftfont_info): New member index, delete member
8277 fc_charset_idx. Make the member order compatible with struct
8278 xftfont_info.
8279 (fc_charset_table): Change charset names to registry names.
8280 (ftfont_pattern_entity): Delete the args registry and
8281 fc_charset_idx. Change the value of :font-entity property
8282 to (FONTNAME . INDEX). Always set :registry property to
8283 `iso10646-1'.
8284 (struct ftfont_cache_data): New struct.
8285 (ftfont_lookup_cache): New arg for_face.
8286 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
8287 (ftfont_driver): Set the member otf_capability.
8288 (ftfont_get_charset): Adjust it for the change of
8289 fc_charset_table.
8290 (OTF_TAG_SYM): New macro.
8291 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
8292 for the change of fc_charset_table.
8293 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
8294 ftfont_pattern_entity. Add FC_INDEX to objset.
8295 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
8296 and ftfont_pattern_entity.
8297 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
8298 font_make_object, struct ftfont_info.
8299 (ftfont_has_char): Use ftfont_get_fc_charset.
8300 (ftfont_otf_features, ftfont_otf_capability): New functions.
8301 (ftfont_shape): Use ftfont_get_otf.
8302 (ftfont_text_extents): Fix initial setting of metrics.
8303
8304 * xftfont.c (struct xftfont_info): New member ft_size. Make the
8305 member order compatible with struct ftfont_info.
8306 (xftfont_open): Add FC_CHARSET to the pattern. Set
8307 xftfont_info->ft_size. Don't unlock the face. Check BDF
8308 properties if appropriate.
8309 (xftfont_close): Unlock the face.
8310 (xftfont_anchor_point, xftfont_shape): Deleted.
8311 (syms_of_xftfont): Don't set members anchor_point and shape of
8312 xftfont_driver.
8313
8314 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
8315 font_make_object.
8316
8317 * w32font.c (w32font_open): Adjust it for the change of
8318 font_make_object.
8319 (w32font_open_internal): Don't set properties of font_object here.
8320
8321 2008-07-08 Chong Yidong <cyd@stupidchicken.com>
8322
8323 * macfns.c (x_create_tip_frame):
8324 * w32fns.c (x_create_tip_frame):
8325 * xfns.c (x_create_tip_frame): Pass parameter argument to
8326 face-set-after-frame-default.
8327
8328 * xfaces.c (Finternal_merge_in_global_face): Save merged
8329 attributes for the default face back into the face vector.
8330
8331 2008-07-08 Andreas Schwab <schwab@suse.de>
8332
8333 * fontset.h: Declare fontset_from_font. Don't declare
8334 new_fontset_from_font and fontset_from_font_name.
8335 * xterm.c: Include "fontset.h".
8336 * Makefile.in (xterm.o): Update dependencies.
8337
8338 2008-07-08 Glenn Morris <rgm@gnu.org>
8339
8340 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
8341 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
8342
8343 2008-07-07 Chong Yidong <cyd@stupidchicken.com>
8344
8345 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
8346 (x_set_frame_parameters): Don't bind it.
8347
8348 2008-07-07 Juanma Barranquero <lekktu@gmail.com>
8349
8350 * w32fns.c (map_w32_filename): Declare extern.
8351
8352 2008-07-07 Jason Rumney <jasonr@gnu.org>
8353
8354 * w32term.c (WS_EX_LAYERED): Define if not already.
8355
8356 2008-07-06 Chong Yidong <cyd@stupidchicken.com>
8357
8358 * xfaces.c (set_font_frame_param): Don't try to set the font
8359 parameter if it is still unspecified in the lface.
8360
8361 2008-07-05 Chong Yidong <cyd@stupidchicken.com>
8362
8363 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
8364 face if it didn't already exist.
8365
8366 * xdisp.c (try_window_id): Give up if word-wrapping is on.
8367
8368 2008-07-05 Andreas Schwab <schwab@suse.de>
8369
8370 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
8371
8372 2008-07-05 Chong Yidong <cyd@stupidchicken.com>
8373
8374 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
8375 word-wrapping.
8376 (IT_DISPLAYING_WHITESPACE): New macro.
8377 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
8378 when word-wrapping. Simplify word-wrapping logic. Use correct
8379 pixel positions when saving copies of the iterator.
8380 (display_line): Use proper wrap point if the last character on a
8381 line was preceded by whitespace.
8382
8383 2008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
8384
8385 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
8386
8387 2008-07-04 Kenichi Handa <handa@m17n.org>
8388
8389 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
8390
8391 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
8392
8393 2008-07-02 Jason Rumney <jasonr@gnu.org>
8394
8395 * xfns.c (syms_of_xfns): Only define x-select-font when both
8396 HAVE_FREETYPE and USE_GTK.
8397
8398 * xdisp.c (next_element_from_display_vector): Move assignment out
8399 of if statement.
8400
8401 2008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
8402
8403 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
8404
8405 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
8406 (syms_of_fileio): Initialize and export them.
8407 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
8408
8409 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
8410 (Fsystem_move_file_to_trash): New function.
8411 (syms_of_w32fns): Export it to lisp.
8412
8413 2008-07-01 Jason Rumney <jasonr@gnu.org>
8414
8415 * w32font.c (w32font_text_extents): Don't count overhang as part
8416 of width.
8417
8418 2008-06-30 Miles Bader <miles@gnu.org>
8419
8420 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
8421 Add `avoid_cursor_p' field.
8422
8423 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
8424 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
8425 (append_glyph, append_composite_glyph, produce_image_glyph)
8426 (append_stretch_glyph): Initialize avoid_cursor_p.
8427 (get_it_property): Rename from `get_line_height_property'.
8428 (x_produce_glyphs): Use get_it_property.
8429 (handle_line_prefix, push_display_prop): New functions.
8430 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
8431 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
8432 New variables.
8433 (syms_of_xdisp): Initialize them.
8434
8435 2008-06-30 Kenichi Handa <handa@m17n.org>
8436
8437 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
8438 XftDefaultSubstitute (they are called in XftFontMatch).
8439 (xftfont_open): Fix args to ftfont_font_format.
8440
8441 * ftfont.c (fc_charset_table): New member lang.
8442 (ftfont_resolve_generic_family): New arg pattern.
8443 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
8444 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
8445 (ftfont_open): Fix args to ftfont_font_format.
8446 (ftfont_font_format): New arg filename.
8447
8448 2008-06-30 Chong Yidong <cyd@stupidchicken.com>
8449
8450 * xfaces.c (Finternal_merge_in_global_face): If default face was
8451 modified, realize it again. Update the font face attribute.
8452
8453 2008-06-29 Jason Rumney <jasonr@gnu.org>
8454
8455 * w32term.c (x_set_frame_alpha): Fix logic.
8456
8457 2008-06-29 Kenichi Handa <handa@m17n.org>
8458
8459 * fontset.c (Finternal_char_font): Return font-object instead of
8460 font-name.
8461
8462 * composite.c (get_composition_id): Fix the width calculation for TAB.
8463
8464 2008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
8465
8466 * indent.c (Fvertical_motion): Properly handle float column arg.
8467
8468 2008-06-28 Jason Rumney <jasonr@gnu.org>
8469
8470 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
8471 (pfnSetLayeredWindowAttributes): New function pointer.
8472 (w32_initialize): Initialize it when supported.
8473 (x_set_frame_alpha): New function.
8474
8475 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
8476 (w32_frame_parm_handlers): Set alpha handler.
8477
8478 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
8479
8480 2008-06-27 Jason Rumney <jasonr@gnu.org>
8481
8482 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
8483 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
8484 (w32_to_x_charset, x_to_w32_charset)
8485 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8486 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8487 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8488 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8489 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8490 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8491 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
8492 (Qw32_charset_unicode): Remove.
8493 (syms_of_w32fns): Update for above changes.
8494
8495 * w32font.c (w32_to_x_charset, x_to_w32_charset)
8496 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8497 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8498 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8499 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8500 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8501 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8502 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
8503 (syms_of_w32font): Update for above changes.
8504
8505 2008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
8506
8507 * s/usg5-4.h: Fix previous change: keep the correct branch of a
8508 removed #if.
8509 (USG_SHARED_LIBRARIES): Remove duplicate definition.
8510
8511 2008-06-26 Juanma Barranquero <lekktu@gmail.com>
8512 Eli Zaretskii <eliz@gnu.org>
8513
8514 * makefile.w32-in (LOCAL_FLAGS):
8515 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
8516
8517 * sysdep.c (_spawnlp, _getpid):
8518 Declare with explicit _cdecl instead of _CRTAPI1.
8519
8520 * editfns.c (Fget_internal_run_time):
8521 Check for WINDOWSNT with #ifdef, not #if.
8522
8523 2008-06-26 Jason Rumney <jasonr@gnu.org>
8524
8525 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
8526
8527 * w32term.c (x_draw_glyph_string_foreground)
8528 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
8529 Use FONT_HANDLE macro.
8530 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
8531
8532 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8533 (uniscribe_encode_char): Use FONT_HANDLE macro.
8534
8535 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
8536 (w32font_text_extents): Use precast w32_font.
8537 (w32font_close): Free cached metrics.
8538 (w32font_open_internal): Allocate space for name on stack.
8539
8540 2008-06-26 Chong Yidong <cyd@stupidchicken.com>
8541
8542 * xdisp.c (extend_face_to_end_of_line): Fix last change.
8543
8544 2008-06-26 Jason Rumney <jasonr@gnu.org>
8545
8546 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
8547 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
8548
8549 2008-06-26 Juanma Barranquero <lekktu@gmail.com>
8550
8551 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
8552
8553 2008-06-26 Jason Rumney <jasonr@gnu.org>
8554
8555 * w32bdf.c, w32bdf.h: Remove obsolete files.
8556
8557 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
8558
8559 * w32gui.h: Don't include w32bdf.h.
8560 (XCharStruct, enum w32_char_font_type, W32FontStruct):
8561 Remove obsolete font support.
8562
8563 * w32font.h (struct w32font_info): Remove compat_w32_font.
8564 Add hfont member.
8565 (FONT_COMPAT): Remove obsolete macro.
8566
8567 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
8568 (w32font_encode_char, w32font_text_extents): Use new hfont member.
8569 (w32font_open_internal): Remove compat code. Set new hfont member.
8570 (Fx_select_font): Use new hfont member.
8571
8572 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8573 (uniscribe_encode_char): Use new hfont member.
8574
8575 * w32term.c (x_draw_glyph_string_foreground)
8576 (x_draw_composite_glyph_string_foreground): Use new hfont member.
8577 (x_draw_glyph_string): Use metrics in w32font_info.
8578
8579 2008-06-26 Kenichi Handa <handa@m17n.org>
8580
8581 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
8582
8583 2008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
8584
8585 * unexnext.c:
8586 * m/ews4800.h:
8587 * m/hp9000s300.h:
8588 * m/ibm370aix.h:
8589 * m/mips-siemens.h:
8590 * m/ncr386.h:
8591 * m/next.h:
8592 * m/pmax.h:
8593 * m/powerpcle.h:
8594 * m/tandem-s2.h:
8595 * s/386bsd.h:
8596 * s/bsd386.h:
8597 * s/bsd4-1.h:
8598 * s/bsd4-2.h:
8599 * s/bsdos2-1.h:
8600 * s/bsdos2.h:
8601 * s/bsdos3.h:
8602 * s/bsdos4.h:
8603 * s/nextstep.h:
8604 * s/ultrix4-3.h:
8605 * s/usg5-0.h:
8606 * s/usg5-2-2.h:
8607 * s/usg5-2.h:
8608 * s/usg5-4-3.h:
8609 * s/ux4800.h:
8610 * s/uxpds.h:
8611 * s/uxpv.h: Remove support for obsolete systems.
8612 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8613 Remove, insert contents in s/hpux10-20.h.
8614 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
8615 Remove, insert contents in s/aix4-2.h.
8616 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
8617 * s/bsd4-3.h: Rename to ...
8618 * s/bsd-common.h: ... this.
8619 * data.c:
8620 * doc.c:
8621 * ecrt0.c:
8622 * emacs.c:
8623 * fileio.c:
8624 * floatfns.c:
8625 * keyboard.c:
8626 * mem-limits.h:
8627 * print.c:
8628 * process.c:
8629 * sysdep.c:
8630 * syssignal.h:
8631 * systty.h:
8632 * syswait.h:
8633 * term.c:
8634 * unexec.c:
8635 * unexelf.c:
8636 * unexhp9k800.c:
8637 * m/hp800.h:
8638 * m/ibmrs6000.h:
8639 * m/mips.h:
8640 * m/vax.h:
8641 * s/darwin.h:
8642 * s/freebsd.h:
8643 * s/gnu.h:
8644 * s/ms-w32.h:
8645 * s/msdos.h:
8646 * s/netbsd.h:
8647 * s/template.h: Remove references to obsolete variables.
8648
8649 * Makefile.in: Add dependencies for all unexec files.
8650 (admindir): Remove unused variable.
8651 (UNEXEC_SRC): Remove references.
8652
8653 2008-06-25 Chong Yidong <cyd@stupidchicken.com>
8654
8655 * xfns.c (x_default_font_parameter): If Xft is available, first
8656 try Monospace-12 for the default font.
8657
8658 2008-06-25 Jason Rumney <jasonr@gnu.org>
8659
8660 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
8661
8662 2008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
8663
8664 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
8665
8666 * buffer.c (syms_of_buffer): Remove default-word-wrap.
8667
8668 2008-06-25 Juanma Barranquero <lekktu@gmail.com>
8669
8670 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
8671 <scroll-conservatively>: Fix typo in docstring.
8672
8673 * xselect.c (Fx_send_client_event): Doc fix.
8674
8675 2008-06-25 Kenichi Handa <handa@m17n.org>
8676
8677 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
8678
8679 * font.c (font_parse_fcname): Remove unused variables.
8680 (font_sort_entites): Delete the arg SPEC. Caller changed.
8681 Fix for the case of ! best_only.
8682 (font_delete_unmatched): Check DPI and AVGWIDTH too.
8683
8684 * lisp.h (Fstring_to_unibyte): EXFUN it.
8685
8686 * character.h (str_to_unibyte): Extern it.
8687
8688 * character.c (str_to_unibyte): New function.
8689
8690 * fns.c (Fstring_to_unibyte): New function.
8691 (syms_of_fns): Defsubr it.
8692
8693 2008-06-24 Kenichi Handa <handa@m17n.org>
8694
8695 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
8696 DPI too.
8697 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
8698
8699 2008-06-24 Andreas Schwab <schwab@suse.de>
8700
8701 * Makefile.in (${lispsource}loaddefs.el): Rename from
8702 ../lisp/loaddefs.el.
8703 (bootstrap-clean): Do what distclean does but don't remove
8704 Makefile.
8705 (distclean): Depend on bootstrap-clean and remove Makefile.
8706
8707 2008-06-24 Chong Yidong <cyd@stupidchicken.com>
8708
8709 * buffer.h (struct buffer): New member word_wrap.
8710
8711 * buffer.c (syms_of_buffer): New variables default-word-wrap and
8712 word-wrap.
8713 (init_buffer_once): Initialize them.
8714
8715 * dispextern.h (struct it): Replace bool truncate_lines_p with a
8716 line_wrap enum possessing three possible values.
8717
8718 * termopts.h: Replace truncate_partial_width_windows with
8719 Vtruncate_partial_width_windows.
8720
8721 * dispnew.c (direct_output_for_insert): Avoid direct output when
8722 inserting a space with word wrap on.
8723
8724 * indent.c (compute_motion): Obey integer values of
8725 truncate-partial-width-windows.
8726
8727 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
8728 replacing truncate_partial_width_windows.
8729 (init_iterator): If Vtruncate_partial_width_windows is an integer,
8730 truncate only if the window width is below that integer.
8731 (start_display, resize_mini_window, produce_stretch_glyph)
8732 (display_string, move_it_in_display_line_to): Use line_wrap.
8733 (back_to_previous_visible_line_start, reseat_1): Reset
8734 string_from_display_prop_p.
8735 (display_line): Extend default face to end of line when wrapping.
8736
8737 2008-06-24 Kim F. Storm <storm@cua.dk>
8738
8739 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
8740 to wrap continued lines at word boundaries.
8741
8742 2008-06-24 Jason Rumney <jasonr@gnu.org>
8743
8744 * font.c (Ffont_face_attributes): Multiply pixel size before point
8745 conversion to avoid multiplying rounding error.
8746
8747 2008-06-23 Jason Rumney <jasonr@gnu.org>
8748
8749 * w32term.c (x_draw_glyph_string_background)
8750 (x_draw_glyph_string): Remove old bdf font code.
8751
8752 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
8753
8754 2008-06-22 Kenichi Handa <handa@m17n.org>
8755
8756 * font.c (font_find_for_lface): Try the adstyle specified in
8757 the property of LFACE_FONT of LFACE (if any).
8758
8759 2008-06-21 Seiji Zenitani <zenitani@mac.com>
8760 Ryo Yoshitake <ryo@shiftmode.net>
8761
8762 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
8763
8764 2008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
8765
8766 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
8767 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
8768 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
8769 (witness-emacs): Remove.
8770 (lisp, shortlisp): Move loaddefs.el earlier.
8771 (mostlyclean): Forget about witness-emacs.
8772
8773 2008-06-22 Glenn Morris <rgm@gnu.org>
8774
8775 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
8776 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
8777
8778 2008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8779
8780 * Makefile.in (PRECOMP): Remove.
8781 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
8782 (witness-emacs): Run `compile-first'.
8783 (.el.elc): Use the new compile-onefile target.
8784
8785 2008-06-21 Kenichi Handa <handa@m17n.org>
8786
8787 * xftfont.c (xftfont_open): Handle QCembolden only when
8788 FC_EMBOLDEN is defined.
8789
8790 2008-06-21 Andreas Schwab <schwab@suse.de>
8791
8792 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
8793 (.el.elc): Likewise.
8794
8795 2008-06-21 Miles Bader <miles@gnu.org>
8796
8797 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
8798 build dir, not the lisp source dir.
8799
8800 2008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8801
8802 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
8803 (bootstrapclean): Remove.
8804 (.el.elc): New rule.
8805 (PRECOMP): New var.
8806 (../lisp/subdirs.el): Remove.
8807 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
8808 (witness-emacs): New target.
8809 (mostlyclean): Remove witness-emacs as well.
8810 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
8811 Add witness-emacs dependency.
8812
8813 2008-06-20 Chong Yidong <cyd@stupidchicken.com>
8814
8815 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
8816 defined by the font.
8817
8818 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8819
8820 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
8821 (bootstrap-clean): New target that keeps TAGS around.
8822 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
8823 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
8824
8825 2008-06-20 Jason Rumney <jasonr@gnu.org>
8826
8827 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
8828 Remove obsolete font code.
8829
8830 * w32font.c (font_matches_spec): Use csb bitfield from font signature
8831 to determine language support.
8832
8833 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8834
8835 * sysdep.c (cfsetspeed): New fun extracted from the code.
8836 (cfmakeraw): Move before first use.
8837
8838 2008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
8839
8840 * sysdep.c (cfmakeraw): Provide fallback implementation.
8841 (serial_configure): Provide fallback implementation of cfsetspeed.
8842
8843 2008-06-20 Kenichi Handa <handa@m17n.org>
8844
8845 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
8846 the pattern.
8847
8848 * fontset.c (fontset_from_font): Copy font_spec before changing
8849 the elements.
8850
8851 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
8852
8853 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8854
8855 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
8856 for explicit `font' parameters.
8857
8858 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
8859
8860 2008-06-19 Kenichi Handa <handa@m17n.org>
8861
8862 * frame.c: Include <ctype.h>.
8863 (x_set_font_backend): Allow spacing characters in the X resource
8864 for FontBackend.
8865
8866 2008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
8867
8868 * w32fns.c, xfns.c (Qfont_param): New var.
8869 (syms_of_w32fns): Initialize it.
8870 (x_default_font_parameter): Record explicit `font' into
8871 `font-parameter'.
8872
8873 2008-06-18 Kenichi Handa <handa@m17n.org>
8874
8875 * font.c (font_parse_xlfd): Fix previous change.
8876 (font_parse_fcname): Don't use :fc-unknown-spec.
8877 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
8878 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
8879 (font_add_log): Prepend the driver name to the resulting fonts.
8880
8881 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
8882 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
8883 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
8884
8885 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
8886 (QCembolden): New variables.
8887 (syms_of_xftfont): DEFSYM them.
8888 (xftfont_open): Call XftFontMatch. Don't trust the result of
8889 XftTextExtents8 if the pixel_size is less than 5.
8890
8891 2008-06-18 Andreas Schwab <schwab@suse.de>
8892
8893 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
8894 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
8895
8896 2008-06-18 Jason Rumney <jasonr@gnu.org>
8897
8898 * w32font.c (w32font_list, w32font_match): Add logging.
8899
8900 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
8901
8902 2008-06-17 Chong Yidong <cyd@stupidchicken.com>
8903
8904 * font.c (font_parse_fcname): Store divider characters for
8905 unknown-spec list. For known key symbols, intern using correct
8906 symbol name.
8907
8908 2008-06-17 Kenichi Handa <handa@m17n.org>
8909
8910 * xfaces.c (realize_default_face): If the frame is not on window
8911 system, set the fontset of face to nil.
8912
8913 2008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8914
8915 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
8916
8917 2008-06-16 Juanma Barranquero <lekktu@gmail.com>
8918
8919 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
8920 (build_font_name_from_vector): Delete externs.
8921
8922 * xfaces.c (struct font_name): Don't declare.
8923
8924 2008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
8925
8926 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
8927
8928 2008-06-16 Chong Yidong <cyd@stupidchicken.com>
8929
8930 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
8931
8932 2008-06-16 Juanma Barranquero <lekktu@gmail.com>
8933
8934 * font.c (Ffont_spec): Fix usage in docstring.
8935 (Ffont_face_attributes): Doc fix.
8936
8937 2008-06-16 Andreas Schwab <schwab@suse.de>
8938
8939 * font.c (Ffont_face_attributes): Fix definition.
8940
8941 2008-06-16 Jason Rumney <jasonr@gnu.org>
8942
8943 * font.h (font_style_symbolic_from_value): Remove.
8944
8945 * font.c (font_style_symbolic_from_value): Remove.
8946 (font_style_symbolic): Revert to pre 2008-06-13 version.
8947
8948 * w32font.c (w32_to_fc_weight): New function.
8949 (w32font_full_name, logfont_to_fcname): Use it.
8950
8951 2008-06-16 Kenichi Handa <handa@m17n.org>
8952
8953 * font.c (font_check_object): Delete it.
8954 (font_clear_cache): Check if a font-object is alive.
8955 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
8956 font-object to nil.
8957 (font_close_object): Don't check FONT_CLOSE_OBJECT.
8958 (font_at): Don't call font_check_object.
8959 (Ffont_get): Return a symbol for :weight, :slant, and :width.
8960
8961 2008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
8962
8963 * puresize.h (BASE_PURESIZE): Increase to 1230000.
8964
8965 2008-06-16 Chong Yidong <cyd@stupidchicken.com>
8966
8967 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
8968
8969 2008-06-15 Chong Yidong <cyd@stupidchicken.com>
8970
8971 * font.c (font_parse_fcname): Only one decimal point.
8972 (font_unparse_fcname): Handle data in family and foundry indices
8973 as symbols, not strings.
8974 (font_unparse_gtkname, Ffont_face_attributes): New functions.
8975
8976 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
8977
8978 * font.h (font_unparse_gtkname): Add prototype.
8979
8980 2008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8981
8982 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
8983
8984 2008-06-15 Andreas Schwab <schwab@suse.de>
8985
8986 * font.c (font_update_drivers): Fix crash when no drivers match.
8987
8988 2008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
8989
8990 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
8991 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
8992
8993 2008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
8994
8995 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
8996
8997 2008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
8998
8999 * process.c (Fserial_process_configure, Fprocess_send_eof):
9000 Use EQ to compare Lisp_Objects.
9001
9002 2008-06-13 Jason Rumney <jasonr@gnu.org>
9003
9004 * w32fns.c (Fw32_select_font): Remove old font API function.
9005
9006 * w32font.c (logfont_to_fcname): New function.
9007 (Fx_select_font): New font dialog function compatible with
9008 GTK/fontconfig version.
9009
9010 * font.c (font_style_symbolic_from_value): New function.
9011 (font_style_symbolic): Use it.
9012
9013 * font.h (font_style_symbolic_from_value): Declare new function.
9014
9015 2008-06-13 Juanma Barranquero <lekktu@gmail.com>
9016
9017 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
9018 <font-width-table>: Fix typos in docstrings.
9019
9020 2008-06-13 Daniel Engeler <engeler@gmail.com>
9021
9022 These changes add serial port access.
9023 * process.c: Add HAVE_SERIAL.
9024 (Fdelete_process, Fprocess_status, Fset_process_buffer)
9025 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
9026 (list_processes_1, select_wrapper, Fstop_process)
9027 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
9028 (status_notify): Modify to handle serial processes.
9029 [HAVE_SERIAL] (Fserial_process_configure)
9030 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
9031 New functions.
9032 * process.h (struct Lisp_Process): Add `type'.
9033 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
9034 New functions.
9035 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
9036 serial ports.
9037 (serial_open, serial_configure): New functions.
9038 * w32.h: Add FILE_SERIAL.
9039 (struct _child_process): Add ovl_read, ovl_write.
9040
9041 2008-06-13 Kenichi Handa <handa@m17n.org>
9042
9043 * dispextern.h (enum lface_attribute_index): New member
9044 LFACE_FOUNDRY_INDEX.
9045
9046 * font.c (font_score): Delete arg alternate_families. Check only
9047 weight, slant, width, and size. Ignore the difference of alias
9048 style symbols.
9049 (font_sort_entites): Adjust for the above change. Reflect the
9050 order of font-driver to scores.
9051 (font_list_entities): Don't check alternate_familes here.
9052 (font_clear_prop): Handle foundry.
9053 (font_update_lface): Don't parse "foundry-family" form here.
9054 Handle FONT_FOUNDRY_INDEX.
9055 (font_find_for_lface): Likewise. Handle alternate families here.
9056 If registry is nil, try iso8859-1 and ascii-0.
9057 (font_open_for_lface): Pay attention to size in ENTITY.
9058 (font_open_by_name): Simplify by calling font_load_for_lface.
9059 (free_font_driver_list): Delete it.
9060 (font_update_drivers): Preserve the order of backends.
9061 (syms_of_font): Setting of sort_shift_bits adjusted for the change
9062 of font_score and font_sort_entites.
9063 (font_update_sort_order): Likewise.
9064
9065 * xfaces.c (LFACE_FOUNDRY): New macro.
9066 (check_lface_attrs): Check foundry.
9067 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
9068 (merge_face_vectors): Check foundry.
9069 (merge_face_ref): Likewise.
9070 (Finternal_set_lisp_face_attribute): Likewise.
9071 (x_update_menu_appearance): Likewise.
9072 (Finternal_get_lisp_face_attribute): Likewise.
9073 (lface_hash): Likewise.
9074 (lface_same_font_attributes_p): Likewise.
9075 (x_supports_face_attributes_p): Likewise.
9076 (tty_supports_face_attributes_p): Likewise.
9077 (Finternal_set_alternative_font_family_alist): Intern strings.
9078 (Finternal_set_alternative_font_registry_alist): Downcase strings.
9079 (realize_default_face): Set LFACE_FOUNDRY (lface).
9080
9081 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
9082 font-driver at first.
9083
9084 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
9085
9086 2008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
9087
9088 * lread.c (Fload): Use xfree, not free on saved_doc_string.
9089
9090 2008-06-12 Jim Meyering <meyering@redhat.com>
9091
9092 Make unexec_free handle NULL the same way free does.
9093 * unexmacosx.c (unexec_free): Ignore a NULL argument.
9094
9095 2008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
9096
9097 * character.h (CHAR_TO_BYTE_SAFE): New macro.
9098 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
9099 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
9100 (WEAK_ALIAS): Simplify.
9101 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
9102 when searching a unibyte buffer.
9103
9104 2008-06-12 Chong Yidong <cyd@stupidchicken.com>
9105
9106 * xfns.c (Fx_select_font): Rename from x-font-dialog.
9107
9108 2008-06-12 Juanma Barranquero <lekktu@gmail.com>
9109
9110 * w32font.c: Include ctype.h.
9111
9112 2008-06-11 Jason Rumney <jasonr@gnu.org>
9113
9114 * w32font.c (w32font_encode_char): Detect missing glyphs that are
9115 misreported as space.
9116 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
9117 as aliases for registry iso10646-1.
9118
9119 2008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
9120
9121 * buffer.c (clone_per_buffer_values): Skip `name'.
9122
9123 2008-06-11 Chong Yidong <cyd@stupidchicken.com>
9124
9125 * font.c (font_parse_fcname): Fix last change; accept decimal
9126 points in font size.
9127
9128 2008-06-10 Jason Rumney <jasonr@gnu.org>
9129
9130 * w32uniscribe.c (add_opentype_font_name_to_list):
9131 Skip non unicode fonts.
9132
9133 2008-06-10 Chong Yidong <cyd@stupidchicken.com>
9134
9135 * xfns.c (Fx_font_dialog): New function.
9136
9137 * gtkutil.c (xg_dialog_response_cb): Rename from
9138 xg_file_response_callback.
9139 (pop_down_dialog): Rename from pop_down_file_dialog.
9140 (xg_get_file_name): Callers changed.
9141 (xg_get_font_name): New function.
9142
9143 * gtkutil.h (xg_get_font_name): Insert prototype.
9144
9145 2008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9146
9147 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
9148 x_underline_minimum_display_offset.
9149 (syms_of_xdisp): Declare it here rather than in xterm.c.
9150 * dispextern.h (underline_minimum_offset): Declare it.
9151 * w32term.c (x_draw_glyph_string): Use it.
9152 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
9153 (syms_of_xterm): Don't declare it any more.
9154 (x_draw_glyph_string): Adjust to the new name.
9155
9156 2008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
9157
9158 * xterm.c (x_underline_minimum_display_offset): New var.
9159 (x_draw_glyph_string): Use it.
9160 (syms_of_xterm): Declare it.
9161
9162 2008-06-10 Chong Yidong <cyd@stupidchicken.com>
9163
9164 * font.c (font_parse_fcname): Accept GTK-style font names too.
9165
9166 2008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9167
9168 * dired.c (file_name_completion): Don't return t if the match is exact
9169 but with different capitalization.
9170 * minibuf.c (Ftry_completion): Simplify.
9171
9172 * window.c (Vwindow_point_insertion_type): New var.
9173 (set_window_buffer): Use it.
9174 (syms_of_window): Init and export it to Lisp.
9175
9176 2008-06-10 Kenichi Handa <handa@m17n.org>
9177
9178 * font.h (font_intern_prop): Prototype adjusted.
9179
9180 * font.c (font_intern_prop): New arg force_symbol.
9181 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
9182 Adjust for the change of font_intern_prop.
9183
9184 * ftfont.c (ftfont_pattern_entity):
9185 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
9186 (w32_registry):
9187 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
9188 the change of font_intern_prop.
9189
9190 2008-06-09 Juanma Barranquero <lekktu@gmail.com>
9191
9192 * w32menu.c (digest_single_submenu): Declare extern.
9193
9194 2008-06-09 Jason Rumney <jasonr@gnu.org>
9195
9196 * w32term.c (x_make_frame_visible): Use alternate restore flags.
9197
9198 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
9199 (parse_single_submenu): Remove.
9200 (digest_single_submenu): Remove.
9201 (syms_of_w32menu): Don't initialise variables that have moved
9202 to menu.c.
9203 (set_frame_menubar): Sync with version in xmenu.c.
9204 (w32_menu_show): Sync with xmenu_show in xmenu.c.
9205
9206 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
9207 Make static again.
9208
9209 2008-06-09 Jason Rumney <jasonr@gnu.org>
9210
9211 Changes to w32 files related to the move of common menu code
9212 to menu.c on 2008-06-08 by Chong Yidong.
9213
9214 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
9215 defs to w32gui.h.
9216 (single_keymap_panes, push_menu_item, push_menu_pane):
9217 Make globally visible.
9218
9219 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
9220 (local_free, malloc_widget_value, free_widget_value)
9221 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
9222 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
9223 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
9224 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
9225 (menu_items, menu_items_allocated, menu_items_used)
9226 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
9227 (init_menu_items, finish_menu_items, discard_menu_items)
9228 (grow_menu_items, push_submenu_start, push_submenu_end)
9229 (push_left_right_boundary, push_menu_pane, push_menu_item)
9230 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
9231 (free_menubar_widget_tree_value, parse_single_submenu)
9232 (update_submenu_strings): Remove functions.
9233 (xmalloc_widget_value): Remove and declare extern.
9234
9235 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
9236 (OBJ1): Build it.
9237
9238 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
9239 (local_heap, local_alloc, local_free, malloc_widget_value)
9240 (free_widget_value): Define here.
9241
9242 2008-06-09 Kenichi Handa <handa@m17n.org>
9243
9244 * font.h (Qascii_0): Extern it.
9245
9246 * font.c (Qascii_0): New variable.
9247 (syms_of_font): DEFSYM it.
9248 (font_open_by_name): If the registry "iso8859-1" fails, try also
9249 "ascii-0".
9250
9251 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
9252
9253 2008-06-08 Kenichi Handa <handa@m17n.org>
9254
9255 * .gdbinit (xfont): New command.
9256
9257 2008-06-08 Andreas Schwab <schwab@suse.de>
9258
9259 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
9260 * Makefile.in (menu.o): Update dependencies.
9261
9262 * Makefile.in (obj): Always add menu.o.
9263 * emacs.c (main): Always call syms_of_menu.
9264 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
9265
9266 2008-06-08 Chong Yidong <cyd@stupidchicken.com>
9267
9268 * Makefile.in: Compile menu.c.
9269
9270 * lisp.h: Declare syms_of_menu.
9271
9272 * emacs.c (main): Call syms_of_menu.
9273
9274 * keyboard.h: Relocate platform-independent menu definitions from
9275 xmenu.c.
9276
9277 * menu.c: New file. Relocate platform-independent menu
9278 definitions from xmenu.c. Suggested by Adrian Robert.
9279
9280 * xmenu.c: Remove platform-independent menu definitions.
9281 (menu_items menu_items_inuse, menu_items_allocated)
9282 (menu_items_used, menu_items_n_panes)
9283 (menu_items_submenu_depth): Move to keyboard.h.
9284 (init_menu_items, finish_menu_items, unuse_menu_items)
9285 (discard_menu_items, restore_menu_items, save_menu_items)
9286 (grow_menu_items, push_submenu_start, push_submenu_end)
9287 (push_left_right_boundary, push_menu_pane, push_menu_item)
9288 (keymap_panes, single_keymap_panes, single_menu_item)
9289 (list_of_panes, list_of_items, find_and_call_menu_selection)
9290 (xmalloc_widget_value, free_menubar_widget_value_tree)
9291 (parse_single_submenu, digest_single_submenu)
9292 (update_submenu_strings): Move to menu.c.
9293
9294 2008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
9295
9296 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
9297
9298 2008-06-06 Miles Bader <miles@gnu.org>
9299
9300 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
9301 face, not frame default.
9302
9303 2008-06-05 Martin Rudalics <rudalics@gmx.at>
9304
9305 * window.c (pop_up_windows, pop_up_frames)
9306 (display_buffer_reuse_frames, Vpop_up_frame_function)
9307 (Vdisplay_buffer_function, Veven_window_heights)
9308 (Vspecial_display_buffer_names, Vspecial_display_regexps)
9309 (Vspecial_display_function, Vsame_window_buffer_names)
9310 (Vsame_window_regexps, split_height_threshold)
9311 (Vsplit_window_preferred_function): Move those vars to window.el.
9312 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
9313 (Fdisplay_buffer): Move those functions to window.el.
9314 (syms_of_window): Remove corresponding declarations.
9315 (display_buffer): New function.
9316 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
9317 * dispnew.c (Flast_nonminibuf_frame): New function.
9318 * buffer.c (Fpop_to_buffer): Move to window.el.
9319
9320 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9321
9322 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
9323
9324 2008-06-05 Kenichi Handa <handa@m17n.org>
9325
9326 * coding.c (detect_coding): Fix previous change.
9327 (detect_coding_system): Likewise.
9328
9329 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9330
9331 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
9332
9333 * keymap.c (Vminibuffer_local_filename_must_match_map):
9334 Rename from Vminibuffer_local_must_match_filename_map.
9335 (syms_of_keymap):
9336 * minibuf.c (Fcompleting_read): Adjust accordingly.
9337 * commands.h: Rename declaration as well.
9338
9339 2008-06-05 Kenichi Handa <handa@m17n.org>
9340
9341 * font.c (Ffont_spec): Don't use font_parse_family_registry for
9342 family name.
9343 (Ffont_put): Likewise.
9344
9345 * fontset.c (fontset_find_font): Call font_open_for_lface with the
9346 current font-spec.
9347
9348 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
9349 is unspecified.
9350
9351 * xfaces.c (realize_x_face): If the font-related face attributes
9352 are the same as those of default face, realize a new fontset from
9353 default->fontset.
9354 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
9355
9356 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9357
9358 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
9359 (move_it_in_display_line): New wrapper.
9360
9361 * window.c (window_scroll_pixel_based_preserve_x)
9362 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
9363 (window_scroll_pixel_based, window_scroll_line_based):
9364 Use them to preserve column positions.
9365 (syms_of_window): Initialize them.
9366
9367 * indent.c (Fvertical_motion): Extend first arg to allow passing an
9368 (HPOS . VPOS) pair.
9369
9370 * dispextern.h (move_it_in_display_line): Declare.
9371
9372 2008-06-05 Juanma Barranquero <lekktu@gmail.com>
9373
9374 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
9375 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
9376 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
9377
9378 2008-06-04 Juanma Barranquero <lekktu@gmail.com>
9379
9380 * window.c (Fset_window_parameter): Doc fix.
9381 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
9382
9383 2008-06-04 Joakim Verona <joakim@verona.se>
9384
9385 * window.h (struct window): Add new member window_parameters.
9386
9387 * window.c (Fwindow_parameters, Fwindow_parameter)
9388 (Fset_window_parameter): New defuns.
9389 (syms_of_window): Defsubr the new defuns.
9390 (make_window): Initialize window_parameters to nil.
9391
9392 2008-06-04 John Paul Wallington <jpw@pobox.com>
9393
9394 * eval.c (Fdefmacro): Doc fix.
9395
9396 2008-06-04 Kenichi Handa <handa@m17n.org>
9397
9398 * coding.c (detect_coding): Fix handling of coding->head_ascii.
9399 Be sure to call setup_coding_system when we find a proper coding system.
9400 (detect_coding_system): Fix handling of coding->head_ascii.
9401
9402 2008-06-03 Andreas Schwab <schwab@suse.de>
9403
9404 * font.c (font_prop_validate_spacing): Fix last change.
9405
9406 2008-06-03 Kenichi Handa <handa@m17n.org>
9407
9408 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
9409 (font_parse_fcname): Fix handling of unknown key.
9410
9411 * xfont.c (xfont_list): Try an alias.
9412
9413 * charset.c (char_charset): Return NULL if the arg charset_list is
9414 specified and C doesn't belong to any of them.
9415
9416 2008-06-02 Chip Coldwell <coldwell@redhat.com>
9417
9418 * font.c (font_pixel_size): Don't take cdr of an integer.
9419
9420 2008-06-02 Jim Meyering <meyering@redhat.com>
9421
9422 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
9423 * alloc.c (xfree): Return right away for a NULL arg.
9424 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
9425 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
9426 * mac.c (create_apple_event_from_event_ref): Likewise.
9427 (create_apple_event_from_drag_ref, cfstring_create_normalized):
9428 Likewise.
9429 * doprnt.c (doprnt1): Likewise.
9430 * frame.c (frame): Likewise.
9431 * keyboard.c (wipe_kboard): Likewise.
9432 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
9433 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
9434 * term.c (tty_default_color_capabilities, maybe_fatal)
9435 (delete_tty): Likewise.
9436 * w16select.c (string): Likewise.
9437 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
9438 * w32bdf.c (w32_free_bdf_font): Likewise.
9439 * w32fns.c (w32_unload_font): Likewise.
9440 * w32font.c (w32font_close): Likewise.
9441 * window.c (size_window): Likewise.
9442 * xselect.c (receive_incremental_selection): Likewise.
9443 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
9444 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
9445 * w32.c (stat): Likewise.
9446
9447 Remove useless if-before-free tests.
9448 * editfns.c (Fset_time_zone_rule): Likewise.
9449 * lread.c (nosuffix): Likewise.
9450 * ralloc.c (get_bloc): Likewise.
9451 * regex.c (reg_free): Likewise.
9452 * xftfont.c (xftfont_open, xftfont_close): Likewise.
9453 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
9454 * xsmfns.c (smc_save_yourself_CB): Likewise.
9455
9456 2008-06-02 Kenichi Handa <handa@m17n.org>
9457
9458 * font.c (font_find_for_lface): Handle float font size.
9459 (font_open_for_lface): Likewise.
9460
9461 * xfaces.c (x_supports_face_attributes_p): Check face->font before
9462 comparing the properties.
9463
9464 2008-06-01 Jason Rumney <jasonr@gnu.org>
9465
9466 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
9467 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
9468 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
9469 Don't add empty script list.
9470 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
9471
9472 2008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
9473
9474 * Makefile.in (dot, dotdot): Remove, update users.
9475 ".." has been used elsewhere in the file for a long time.
9476 (LIBXT_STATIC): Remove conditional based on unused variable.
9477
9478 2008-06-01 Miles Bader <miles@gnu.org>
9479
9480 * xfaces.c (Vface_remapping_alist): New variable.
9481 (syms_of_xfaces): Initialize it.
9482 (enum named_merge_point_kind): New type.
9483 (struct named_merge_point): Add `named_merge_point_kind' field.
9484 (push_named_merge_point): Make cycle detection respect different
9485 named-merge-point kinds.
9486 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
9487 Remove face-name alias resolution.
9488 (lface_from_face_name): New definition using
9489 `lface_from_face_name_no_resolve'.
9490 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
9491 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
9492 (get_lface_attributes): New definition that layers face-remapping on
9493 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
9494 (lookup_basic_face): New function.
9495 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
9496 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
9497 `get_lface_attributes'.
9498 (face_at_buffer_position): Use `lookup_basic_face' to lookup
9499 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
9500 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
9501
9502 * xdisp.c (init_iterator): Pass base_face_id through
9503 `lookup_basic_face' when we actually use it as a face-id.
9504 (handle_single_display_prop): Use `lookup_basic_face' to lookup
9505 DEFAULT_FACE_ID.
9506
9507 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
9508 lookup the initial face-id.
9509
9510 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
9511
9512 2008-06-01 Juanma Barranquero <lekktu@gmail.com>
9513
9514 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
9515 (Fremove_text_properties): Fix typos in docstrings.
9516
9517 2008-05-31 Kenichi Handa <handa@m17n.org>
9518
9519 * font.c (font_list_entities): Fix the car part of data to be
9520 stored in the cache.
9521
9522 * ftfont.c (ftfont_font_format): Don't use strcasestr.
9523
9524 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9525
9526 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
9527 Add a `test' argument so another predicate than `equal' can be used.
9528 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
9529 (map_char_table): Remove unused vars `c' and `i'.
9530 * lisp.h (Foptimize_char_table): Adjust declaration.
9531 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
9532
9533 2008-05-30 Kenichi Handa <handa@m17n.org>
9534
9535 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
9536 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
9537 defined.
9538
9539 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9540
9541 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
9542 (Fmake_variable_frame_local): Disallow mixing buffer-local and
9543 frame-local settings for the same variable.
9544
9545 2008-05-30 Kenichi Handa <handa@m17n.org>
9546
9547 * fontset.c (Ffont_info): Move to font.c.
9548 (syms_of_fontset): Delete defsubr of Sfont_info.
9549
9550 * font.c (font_style_to_value, font_score): Delete casting of the
9551 args to xstcasecmp.
9552 (register_font_driver): Increment num_font_drivers only when
9553 registering the driver globally.
9554 (Ffont_info): Move from fontset.c. Handle a font object too.
9555 (syms_of_font): Defsubr Sfont_info.
9556
9557 2008-05-29 Kenichi Handa <handa@m17n.org>
9558
9559 * coding.h (enum define_coding_utf8_arg_index): New enum.
9560 (enum coding_attr_index): Change coding_attr_utf_16_bom to
9561 coding_attr_utf_bom.
9562 (enum utf_bom_type): Rename from utf_16_bom_type.
9563 (struct utf_16_spec): Adjust for the above change.
9564 (struct coding_system): Add utf_8_bom in `spec' union.
9565
9566 * coding.c (CODING_UTF_8_BOM): New macro.
9567 (enum coding_category): Delete coding_category_utf_8, add
9568 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
9569 coding_category_utf_8_sig.
9570 (CATEGORY_MASK_UTF_8): Delete it.
9571 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
9572 (CATEGORY_MASK_UTF_8_SIG): New macros.
9573 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
9574 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
9575 CATEGORY_MASK_UTF_8_SIG.
9576 (CATEGORY_MASK_UTF_8): New macro.
9577 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
9578 (detect_coding_utf_8): Check BOM.
9579 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
9580 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
9581 (encode_coding_utf_16): Likewise.
9582 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
9583 (detect_coding, detect_coding_system): Handle utf-8-auto.
9584 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
9585 (syms_of_coding): Fix setting up of Vcoding_category_table.
9586
9587 2008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
9588
9589 * process.c (Faccept_process_output): If `millisec' is non-nil,
9590 `seconds' default to 0.
9591 (wait_reading_process_output): Also return non-nil if we read output
9592 from a non-running process.
9593
9594 2008-05-29 Jason Rumney <jasonr@gnu.org>
9595
9596 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
9597 `raster' specified.
9598 (add_font_entity_to_list): Allow non-opentype truetype fonts back
9599 in the uniscribe backend, but disallow any font that has no
9600 unicode subrange support.
9601
9602 2008-05-29 Juanma Barranquero <lekktu@gmail.com>
9603
9604 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
9605 Fix typos in docstrings.
9606
9607 2008-05-29 Kenichi Handa <handa@m17n.org>
9608
9609 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
9610 (Fx_family_fonts): Set frame correctly.
9611
9612 2008-05-28 Jason Rumney <jasonr@gnu.org>
9613
9614 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
9615
9616 2008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9617
9618 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
9619 calling build_annotations.
9620
9621 2008-05-28 Juanma Barranquero <lekktu@gmail.com>
9622
9623 * coding.c (Fdecode_coding_region, Fencode_coding_region)
9624 (Fencode_coding_string):
9625 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
9626 <latin-extra-code-table>: Fix typos in docstrings.
9627 (syms_of_coding) <coding-system-alist>: Doc fix.
9628 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
9629
9630 2008-05-28 Kenichi Handa <handa@m17n.org>
9631
9632 * fontset.c (Ffont_info): Don't call font_close_object.
9633
9634 * font.c (font_parse_family_registry): Use Ffont_put to validate
9635 foundry and family.
9636 (font_delete_unmatched): Don't check spacing.
9637 (font_list_entities): Add spacing to the spec to list fonts.
9638
9639 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
9640 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
9641
9642 * coding.c (encode_coding_raw_text): Fix previous change.
9643 (encode_coding_object): When the dst_object is a buffer and is
9644 different from src_object, move gap to PT.
9645
9646 2008-05-27 Chong Yidong <cyd@stupidchicken.com>
9647
9648 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
9649
9650 2008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9651
9652 * coding.c (encode_coding_raw_text): Set coding->produced_char for
9653 all branches. Compute it differently.
9654
9655 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
9656
9657 2008-05-27 Juanma Barranquero <lekktu@gmail.com>
9658
9659 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
9660 into "else if () ... else ...".
9661
9662 2008-05-27 Jason Rumney <jasonr@gnu.org>
9663
9664 * w32font.c (w32font_open_internal): Determine if glyph indices
9665 are likely to work here.
9666
9667 2008-05-27 Chong Yidong <cyd@stupidchicken.com>
9668
9669 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
9670 draw overlap glyphs with appropriate highlighting.
9671
9672 2008-05-27 Kenichi Handa <handa@m17n.org>
9673
9674 * xfont.c (xfont_open): Fix calculation of font->average_width.
9675
9676 2008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9677
9678 * casefiddle.c (casify_object): Try to guess better whether the
9679 argument is a byte or a char.
9680
9681 2008-05-26 Andreas Schwab <schwab@suse.de>
9682
9683 * xselect.c (x_reply_selection_request): Properly handle format == 32.
9684 Always send multiples of format size.
9685
9686 * xterm.c (x_set_frame_alpha): Fix type mismatch.
9687
9688 2008-05-26 Jason Rumney <jasonr@gnu.org>
9689
9690 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
9691 (compute_metrics): Don't set failure if we just cleared the cache.
9692 (w32_weight_table): Remove unused variable.
9693 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
9694 backwards compatibility.
9695
9696 2008-05-25 Kenichi Handa <handa@m17n.org>
9697
9698 * w32term.c (x_draw_glyph_string):
9699 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
9700
9701 * xfaces.c: Delete unused function prototypes.
9702 (xstrlwr, font_frame): Delete them.
9703 (clear_face_cache): Delete unused variable.
9704
9705 * xftfont.c (xftfont_open): Delete unused variable.
9706 If underline_thickness is not 1, adjust underline_position.
9707
9708 * ftxfont.c (ftxfont_open): Delete unused variable.
9709
9710 * fontset.c (face_for_char): Optimize for the case of no charset
9711 property.
9712
9713 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
9714 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
9715 (otf_open, font_otf_capability, generate_otf_features)
9716 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9717 Comment out by surrounding "#if 0" and "#endif" for the moment.
9718 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
9719 (syms_of_font): Codes for accessing above commented out.
9720
9721 2008-05-24 Eli Zaretskii <eliz@gnu.org>
9722
9723 * w32proc.c: Include dispextern.h.
9724
9725 * w32.c: Include dispextern.h.
9726
9727 2008-05-23 Juanma Barranquero <lekktu@gmail.com>
9728
9729 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
9730 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
9731 Fix typos in docstrings.
9732
9733 2008-05-23 Jason Rumney <jasonr@gnu.org>
9734
9735 * xsmfns.c: Remove includes that are already included by config.h.
9736
9737 2008-05-23 Kenichi Handa <handa@m17n.org>
9738
9739 * charset.c (Qemacs, charset_emacs): New variables.
9740 (char_charset): Fix for non-Unicode characters.
9741 (syms_of_charset): Define charset_emacs.
9742
9743 * w32term.c (x_draw_glyph_string): Be sure to update
9744 s->underline_thickness and s->underline_position. Be sure to draw
9745 underline within the current line area.
9746
9747 * xterm.c (x_draw_glyph_string): Be sure to update
9748 s->underline_thickness and s->underline_position. Be sure to draw
9749 underline within the current line area.
9750
9751 * fontset.c: Delete unused variables and add casting for char *
9752 throughout the file.
9753 (fontset_font): Try the fallback fonts of the current fontset
9754 before consulting the default fontset.
9755
9756 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
9757
9758 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
9759
9760 2008-05-22 Jason Rumney <jasonr@gnu.org>
9761
9762 * font.c: Don't include strings.h.
9763
9764 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
9765
9766 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
9767 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
9768 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
9769 to call xstrcasecmp.
9770
9771 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
9772
9773 * fontset.c (fs_query_fontset): Use xstrcasecmp.
9774
9775 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
9776
9777 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
9778
9779 2008-05-22 Kenichi Handa <handa@m17n.org>
9780
9781 * puresize.h (BASE_PURESIZE): Increase to 1220000.
9782
9783 * font.c (font_prop_validate_style): Adjust for the format
9784 change of font_style_table.
9785
9786 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
9787 two args.
9788
9789 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
9790 two args.
9791
9792 2008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
9793
9794 * minibuf.c (keys_of_minibuf): Delete.
9795 * lisp.h (keys_of_minibuf): Delete.
9796 * emacs.c (main): Don't call keys_of_minibuf.
9797
9798 2008-05-22 Kenichi Handa <handa@m17n.org>
9799
9800 * ftfont.c (ftfont_resolve_generic_family): Rename from
9801 ftfont_list_generic_family. Return a single family for each
9802 generic family.
9803 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
9804 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
9805 Call font_add_log.
9806 (ftfont_match): Call font_add_log.
9807
9808 * font.h (Ffont_xlfd_name): EXFUN adjusted.
9809 (FONT_DEBUG): Define it.
9810 (font_add_log): Extern it.
9811 (font_assert): Rename from xassert.
9812
9813 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
9814 (xfont_list_family): Call font_add_log.
9815 (xfont_match): Likewise.
9816 (memq_no_quit): Delete.
9817
9818 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
9819 call of Ffont_xlfd_name.
9820
9821 * xfaces.c (struct table_entry, slant_table, weight_table)
9822 (swidth_table): Move to font.c.
9823
9824 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
9825 xassert are changed to font_assert. Delete many unused variables.
9826 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
9827 New variables.
9828 (struct table_entry): Move from xfaces.c and modified.
9829 (weight_table, slant_table, width_table): Move from xfaces.c and
9830 contents adjusted for the change of struct table_entry.
9831 (font_style_to_value, font_style_symbolic): Adjust for the
9832 format change of font_style_table.
9833 (font_parse_family_registry): Don't overwrite existing foundry and
9834 family of font_spec.
9835 (font_score): Fix calculation of diff for sizes.
9836 (font_sort_entites): Call font_add_log.
9837 (font_delete_unmatched): Return a newly created list.
9838 (font_list_entities): Fix previous change. Call font_add_log.
9839 (font_matching_entity, font_open_entity, font_close_entity):
9840 Call font_add_log.
9841 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
9842 (Finternal_set_font_style_table): Delete.
9843 (BUILD_STYLE_TABLE): New macro.
9844 (build_style_table): New function.
9845 (Vfont_log, font_log_env_checked): New variables.
9846 (font_add_log): New function.
9847 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
9848 Declare Lisp variables "font-weight-table", "font-slant-table",
9849 "font-width-table", and "font-log". Initialize font_style_table.
9850
9851 2008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
9852
9853 * xterm.c (x_set_frame_alpha): Move declarations before statements.
9854
9855 2008-05-21 Seiji Zenitani <zenitani@mac.com>
9856 Ryo Yoshitake <ryo@shiftmode.net>
9857
9858 * frame.c (Qalpha): Add a new frame parameter `alpha'.
9859 (Vframe_alpha_lower_limit): New variable.
9860 (x_set_alpha): New function.
9861
9862 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
9863
9864 * xfns.c (x-create-frame, Qalpha):
9865 Initialize the frame parameter `alpha'.
9866 * xterm.c (OPAQUE, OPACITY): New.
9867 (x_set_frame_alpha): New function.
9868 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
9869
9870 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
9871 * w32fns.c (w32_frame_parm_handlers): Likewise.
9872
9873 2008-05-20 Jason Rumney <jasonr@gnu.org>
9874
9875 * w32font.c (add_font_entity_to_list): Don't add non-opentype
9876 truetype fonts to opentype list.
9877
9878 2008-05-20 Juanma Barranquero <lekktu@gmail.com>
9879
9880 * fontset.c (Ffontset_info): Doc fix.
9881 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
9882 <ignore-relative-composition>: Fix typos in docstrings.
9883
9884 * font.c (syms-of-font) <font-encoding-alist>:
9885 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
9886 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
9887 (Ffont_otf_alternates): Doc fixes.
9888
9889 2008-05-20 Kenichi Handa <handa@m17n.org>
9890
9891 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
9892 font.h through out the file.
9893 (FONT_DRIVERS): Rename from FONTOBJ.
9894 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
9895 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
9896
9897 * emacs.c (main): Call syms_of_font unconditionally.
9898
9899 * font.h (find_font_encoding): Extern it.
9900
9901 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
9902 fontset.c.
9903 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
9904 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
9905 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
9906 only when HAVE_WINDOW_SYSTEM is defined.
9907 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
9908 when HAVE_WINDOW_SYSTEM is defined.
9909
9910 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
9911 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
9912
9913 * xfaces.c: Include font.h unconditionally.
9914 (merge_face_ref, merge_face_vectors)
9915 (Finternal_set_lisp_face_attribute): Cancel the previous change.
9916
9917 2008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
9918
9919 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
9920 indirect_variable.
9921 * eval.c (lisp_indirect_variable): New fun.
9922 (Fuser_variable_p): Use it.
9923
9924 2008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
9925
9926 * lisp.h (indirect_variable):
9927 * data.c (indirect_variable, let_shadows_buffer_binding_p):
9928 Use Lisp_Symbol pointers rather than Lisp_Object.
9929 Adjust callers.
9930 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
9931 To this end, change calling-convention.
9932
9933 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
9934 if some non-hidden buffers are selected by string&pred.
9935
9936 2008-05-19 Chong Yidong <cyd@stupidchicken.com>
9937
9938 * process.c (wait_reading_process_output): Always check status
9939 when in batch mode.
9940
9941 2008-05-19 Kenichi Handa <handa@m17n.org>
9942
9943 * font.c (font_list_entities): Fix handling of cache.
9944 (font_matching_entity): Likewise.
9945
9946 * ftfont.c (cs_iso8859_1): Delete.
9947 (ft_face_cache): New variable.
9948 (struct ftfont_info): New member fc_charset_idx.
9949 (ftfont_build_basic_charsets): Delete.
9950 (fc_charset_table): New variable.
9951 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
9952 . FC_CHARSET_IDX) as :font-entity property in the font entity.
9953 Callers changed.
9954 (ftfont_lookup_cache, ftfont_get_charset): New functions.
9955 (ftfont_spec_pattern): New argument fc_charset_idx.
9956 Check registry more rigidly. Change callers.
9957 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
9958 change of :font-entity property of the font.
9959
9960 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
9961 property of the font.
9962
9963 2008-05-18 Juanma Barranquero <lekktu@gmail.com>
9964
9965 * coding.c (Fcoding_system_p): Rename argument to match docstring.
9966 (Funencodable_char_position, Fcheck_coding_systems_region)
9967 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
9968 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
9969 (Ffind_operation_coding_system, Fset_coding_system_priority)
9970 (Fcoding_system_eol_type): Doc fixes.
9971
9972 2008-05-17 Glenn Morris <rgm@gnu.org>
9973
9974 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
9975
9976 2008-05-16 Eli Zaretskii <eliz@gnu.org>
9977
9978 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
9979 and st_gid.
9980
9981 * frame.c (Fdelete_frame): Don't call font_update_drivers if
9982 HAVE_WINDOW_SYSTEM is not defined.
9983
9984 * xfaces.c (merge_face_ref, merge_face_vectors)
9985 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
9986 HAVE_WINDOW_SYSTEM is defined.
9987 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
9988
9989 2008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
9990
9991 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
9992
9993 2008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9994
9995 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
9996
9997 2008-05-15 Kenichi Handa <handa@m17n.org>
9998
9999 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
10000 preference.
10001
10002 2008-05-15 Glenn Morris <rgm@gnu.org>
10003
10004 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
10005
10006 2008-05-15 Chong Yidong <cyd@stupidchicken.com>
10007
10008 * fns.c (init_fns): Don't initialize weak_hash_tables here.
10009 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
10010
10011 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
10012
10013 2008-05-15 Kenichi Handa <handa@m17n.org>
10014
10015 * ftfont.c (ftfont_list): Downcase family name to check generic
10016 families.
10017
10018 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
10019 font-spec for QCfont value.
10020
10021 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
10022 buffer. Check the return value of it.
10023
10024 2008-05-14 Jason Rumney <jasonr@gnu.org>
10025
10026 * w32term.c (w32_get_glyph_overhangs): Remove.
10027 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
10028
10029 2008-05-14 Kenichi Handa <handa@m17n.org>
10030
10031 * font.c (font_prop_validate): Make nil a valid value.
10032 (font_clear_cache): Check if the cached vector of entities is nil
10033 or not.
10034
10035 2008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10036
10037 * emacs.c (main_thread): Conditionalize on
10038 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
10039 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
10040
10041 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
10042 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
10043 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
10044
10045 2008-05-14 Kenichi Handa <handa@m17n.org>
10046
10047 * coding.c (detect_coding_iso_2022): Ignore a coding category that
10048 has no corresponding coding system.
10049
10050 2008-05-14 Jason Rumney <jasonr@gnu.org>
10051
10052 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
10053
10054 * w32font.h (w32font_open_internal): Update declaration.
10055
10056 * w32font.c (w32font_open_internal): Change last argument from
10057 w32font_info struct to font object. Fill in font object from
10058 font_entity. Get Outline metrics if possible. Use them to
10059 calculate underline position and thickness. Use xlfd name as name
10060 property. Don't set codepage.
10061 (w32font_open): Pass font_object to w32font_open_internal. Don't
10062 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
10063 (w32font_draw): Use s->font.
10064 (clear_cached_metrics): Don't clear non-existent blocks.
10065
10066 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
10067 font was not found.
10068 (x_draw_glyph_string): Use underline position and thickness from font.
10069
10070 * w32uniscribe.c (uniscribe_open): Pass font_object to
10071 w32font_open_internal.
10072
10073 2008-05-14 Kenichi Handa <handa@m17n.org>
10074
10075 These changes are to delete all legacy font-handling codes, and
10076 make Emacs use only font-backends.
10077
10078 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
10079 (frame.o, image.o, print.o): Depend on $(FONTSRC).
10080
10081 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
10082
10083 * charset.h (Vcharset_non_preferred_head)
10084 (Vcurrent_iso639_language): Extern them.
10085
10086 * charset.c (Vcharset_non_preferred_head): New variable.
10087 (Vcurrent_iso639_language): New variable.
10088 (syms_of_charset): Declare it as a Lisp variable.
10089 (char_charset): Don't check non preferred charsets. As a last
10090 resort, return charset_unicode.
10091 (Fset_charset_priority): Update Vcharset_non_preferred_head.
10092
10093 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
10094 conditionals. Don't check enable_font_backend. Delete all codes
10095 used only when USE_FONT_BACKEND is not defined.
10096
10097 * dispextern.h (struct glyph_string): Change type of `font' to
10098 `struct font *'.
10099 (struct glyph_string): New member underline_position and
10100 underline_thickness.
10101 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
10102 (struct face): Change type of `font' to `struct font *'. Remove
10103 members `font_name', `font_info_id'.
10104 (per_char_metric, encode_char): Delete externs.
10105 (calc_pixel_width_or_height): Adjust the prototype.
10106
10107 * emacs.c (enable_font_backend): Delete extern.
10108 (main): Don't set enable_font_backend. Don't check the command
10109 line argument "-disable-font-backend".
10110
10111 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
10112 (enum font_property_index): New members FONT_DPI_INDEX,
10113 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
10114 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
10115 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
10116 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
10117 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
10118 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
10119 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
10120 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
10121 (struct font_spec, struct font_entity): New structs.
10122 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
10123 (struct font): Many members from old "struct font_info" moved to
10124 here. Members font and entity deleted.
10125 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
10126 the new font-related objects.
10127 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
10128 (CHECK_FONT_GET_OBJECT): Likewise.
10129 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
10130 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
10131 (struct font_driver): New members case_sensitive anc check. Type
10132 of the member list and open changed.
10133 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
10134 (font_symbolic_width, font_find_object, font_get_spec)
10135 (font_set_lface_from_name): Delete extern.
10136 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
10137
10138 * font.c: Include <strings.h>.
10139 (enable_font_backend): Delete it.
10140 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
10141 (CHECK_VALIDATE_FONT_SPEC): Delete it.
10142 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
10143 (null_string): Delete it.
10144 (null_vector): Make it static.
10145 (font_family_alist): Delete it.
10146 (Qnormal): Extern it.
10147 (QCextra, QClanguage): Delete it.
10148 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
10149 (font_make_spec, font_make_entity, font_make_object)
10150 (font_intern_prop): Renamed from intern_downcase. Don't downcase
10151 the string. Callers changed.
10152 (font_pixel_size): Adjusted for the format change of font-related
10153 objects.
10154 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
10155 (font_style_to_value, font_style_symbolic): New function.
10156 (build_font_family_alist): Delete it.
10157 (font_registry_charsets): Use Fassoc_string instead of
10158 assq_no_quit.
10159 (font_prop_validate_symbol): Don't return null_string.
10160 (font_prop_validate_style): Adjusted for the change of
10161 style-related values in a font vector.
10162 (font_property_table): Delete entries for QClanguage and
10163 QCantialias, add entries for QCavgwidth.
10164 (get_font_prop_index): Delete the 2nd argument FROM.
10165 (font_prop_validate): Arguments changed.
10166 (font_put_extra): Adjusted for the change of font-related objects.
10167 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
10168 (font_parse_fcname, font_unparse_fcname)
10169 (font_prepare_composition): Likewise.
10170 (font_parse_family_registry): Renamed from font_merge_old_spec.
10171 (otf_open): Delete the 1st arg entity.
10172 (font_otf_capability): Adjusted for the above change.
10173 (font_score): New arg alternate_families. Adjusted for the change
10174 of font-related objects.
10175 (font_sort_entites): New arg best_only.
10176 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
10177 Delete them.
10178 (font_match_p): Check alternate families.
10179 (font_find_object): Delete it.
10180 (font_check_object): New function.
10181 (font_clear_cache): Adjusted for the change of font-related objects.
10182 (font_delete_unmatched): New arg.
10183 (font_list_entities): Call font_driver->list with a spec that
10184 doesn't specify style-related properties.
10185 (font_matching_entity): Arguments changed. Caller changed.
10186 (font_open_entity): Adjusted for the change of font-related objects.
10187 (font_close_object, font_has_char, font_encode_char)
10188 (font_get_name, font_get_spec): Likewise.
10189 (font_spec_from_name, font_clear_prop, font_update_lface):
10190 New functions.
10191 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
10192 (font_prepare_for_face, font_done_for_face, font_open_by_name)
10193 (font_at): Adjusted for the change of font-related objects.
10194 (font_range): New function.
10195 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
10196 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
10197 (Fcopy_font_spec, Fmerge_font_spec): New function.
10198 (Ffont_family_list): Renamed from list-families.
10199 (Finternal_set_font_style_table): Arguments changed.
10200 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
10201 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
10202 change of font-related objects.
10203 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
10204
10205 * fontset.h (struct font_info): Delete it. Most members go to
10206 struct font.
10207 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
10208 (enum FONT_SPEC_INDEX): Delete it.
10209 (font_info, list_fonts_func, load_font_func, query_font_func)
10210 (set_frame_fontset_func, find_ccl_program_func)
10211 (get_font_repertory_func, new_fontset_from_font_name): Delete
10212 externs.
10213 (fontset_from_font_name): Extern it.
10214 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
10215 (FONT_INFO_FROM_FACE): Deleted.
10216 (face_for_font): Adjust prototype.
10217
10218 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
10219 conditionals. Don't check enable_font_backend. Delete all codes
10220 used only when USE_FONT_BACKEND is not defined.
10221 (get_font_info_func, list_font_func, load_font_func)
10222 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
10223 (get_font_repertory_func): Delete them.
10224 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
10225 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
10226 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
10227 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
10228 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
10229 (fontset_compare_rfontdef): New function.
10230 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
10231 rfont-defs by qsort. Adjusted for the change of font-group vector.
10232 (load_font_get_repertory): Deleted.
10233 (fontset_find_font): Use new macros to ref/set elements of
10234 font-def and rfont-def.
10235 (fontset_font): Fix the timing of remembering that no font for C.
10236 (free_face_fontset): Do nothing if the face has no fontset.
10237 (face_suitable_for_char_p): Use new macros to ref/set elements of
10238 rfont-def.
10239 (face_for_char): Likewise. Call face_for_char with font_object.
10240 (fs_load_font): Delete. Delete #pragma surrounding it.
10241 (fs_query_fontset): Use strcasecmp instead of strcmp.
10242 (generate_ascii_font_name): Adjusted for the format change of
10243 font-spec.
10244 (Fset_fontset_font): Likewise. Use new macros to set elements of
10245 font-def.
10246 (Fnew_fontset): Use font_unparse_xlfd to generate
10247 FONTSET_ASCII (fontset).
10248 (new_fontset_from_font_name): Deleted.
10249 (fontset_from_font): Renamed from new_fontset_from_font. Check if
10250 a fontset is already created for the font. FIx updating of
10251 Vfontset_alias_alist.
10252 (fontset_ascii_font): Deleted.
10253 (Ffont_info): Adjusted for the format change of font-spec.
10254 (Finternal_char_font): Likewise.
10255 (Ffontset_info): Likewise.
10256 (syms_of_fontset): Don't check load_font_func.
10257
10258 * fns.c (internal_equal): Handle PREV_FONT.
10259
10260 * frame.h: Delete USE_FONT_BACKEND conditional.
10261
10262 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
10263 conditionals. Don't check enable_font_backend. Delete all codes
10264 used only when USE_FONT_BACKEND is not defined.
10265 (x_set_font): Call x_new_font, not x_new_fontset2.
10266 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
10267 already set for the frame.
10268
10269 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
10270 a font-entity by font_make_entity. Use font_intern_prop instead
10271 of intern_downcase. Use FONT_SET_STYLE to set a style-related
10272 font property. If a font is scalable, set avgwidth property to 0.
10273 Set font-entity property by font_put_extra.
10274 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
10275 (ffont_driver): Adjusted for the change of struct font_driver.
10276 (ftfont_spec_pattern): New function.
10277 (ftfont_list): Return a list, not vector.
10278 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
10279 (ftfont_list_family): Don't downcase names.
10280 (ftfont_free_entity): Deleted.
10281 (ftfont_open): Return a font-object. Adjusted for the change of
10282 struct font. Get underline_thickness and underline_position from
10283 font property. Don't update dpyinfo->smallest_font_height and
10284 dpyinfo->smallest_char_width.
10285 (ftfont_close): Don't free `struct font'.
10286 (ftfont_has_char): Adjusted for the format change of font-entity.
10287 (ftfont_encode_char, ftfont_text_extents): Likewise.
10288
10289 * ftxfont.c (ftxfont_list): Return a list, not vector.
10290 (ftxfont_open): Return a font-object. Adjusted for the change of
10291 struct font. Get underline_thickness and underline_position from
10292 font property. Don't update dpyinfo->smallest_font_height and
10293 dpyinfo->smallest_char_width.
10294 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
10295 (ftxfont_draw): Adjusted for the change of struct font.
10296
10297 * image.c (image_ascent): Don't include "charset.h". Include
10298 "character.h" and "font.h".
10299
10300 * lisp.h (enum pvec_type): New member PREV_FONT.
10301 (Fassoc_string): EXFUN it.
10302
10303 * print.c: Include font.h.
10304 (print_object): Handle font-related objects.
10305
10306 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
10307 conditionals. Don't check enable_font_backend. Delete all codes
10308 used only when USE_FONT_BACKEND is not defined.
10309 (handle_auto_composed_prop): Do nothing if it->f is not on a
10310 window system. Check how many following characters can be
10311 displayed by the same font.
10312 (calc_pixel_width_or_height): Type of the 4th arg is changed to
10313 'struct font *'.
10314 (get_char_face_and_encoding): Assign the whole encoding task to
10315 the `encode-char' method of a font driver.
10316 (fill_composite_glyph_string): Adjusted for the change of `struct
10317 face' and `struct glyph_string'.
10318 (fill_glyph_string): Likewise.
10319 (get_per_char_metric): Arguments changed.
10320 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
10321 and `struct glyph_string'.
10322 (produce_stretch_glyph, calc_line_height_property)
10323 (x_produce_glyphs): Likewise.
10324
10325 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
10326 conditionals. Don't check enable_font_backend. Delete all codes
10327 used only when USE_FONT_BACKEND is not defined. Use
10328 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
10329 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
10330 (Qp): Extern them.
10331 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
10332 Deleted.
10333 (struct font_name): Deleted.
10334 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
10335 (compare_fonts_by_sort_order): New function.
10336 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
10337 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
10338 Deleted.
10339 (Fx_family_fonts): Use font_list_entities, and sort fonts by
10340 compare_fonts_by_sort_order.
10341 (Fx_font_family_list): Call Ffont_family_list.
10342 (face_numeric_value, face_numeric_weight, face_numeric_slant)
10343 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
10344 (face_symbolic_slant, face_symbolic_swidth)
10345 (split_font_name_into_vector, build_font_name_from_vector)
10346 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
10347 (font_rescale_ratio, split_font_name, build_font_name)
10348 (free_font_names, sort_fonts, x_face_list_fonts)
10349 (face_font_available_p, sorted_font_list, cmp_font_names)
10350 (font_list_1, concat_font_list, font_list, remove_duplicates):
10351 Deleted.
10352 (Fx_list_fonts): Use Ffont_list.
10353 (LFACE_AVGWIDTH): Deleted.
10354 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
10355 by FONTP.
10356 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
10357 (set_lface_from_font_name): Delete it.
10358 (set_lface_from_font): Renamed from
10359 set_lface_from_font_and_fontset. Caller changed. Don't set
10360 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
10361 for face.
10362 (merge_face_vectors): Copy font-spec if necessary.
10363 Clear properties of the font-spec if necessary.
10364 (merge_face_ref): Clear properties of the font-spec if necessary.
10365 (Finternal_set_lisp_face_attribute): Likewise.
10366 (set_font_frame_param): Use font_load_for_lface to load a
10367 font-object, and call Fmodify_frame_parameters with it.
10368 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
10369 font name by Ffont_xlfd_name.
10370 (Finternal_lisp_face_attribute_values): Don't check QCweight,
10371 QCslant, and QCwidth.
10372 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
10373 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
10374 Compare fonts by EQ.
10375 (lookup_non_ascii_face): Deleted.
10376 (face_for_font): The 2nd argument changed.
10377 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
10378 Check atomic font properties by case insensitive.
10379 (realize_non_ascii_face): Set face->overstrike correctly.
10380 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
10381 (dump_realized_face): Get font name from
10382 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
10383
10384 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
10385 conditionals. Don't check enable_font_backend. Delete all codes
10386 used only when USE_FONT_BACKEND is not defined.
10387 (xic_create_xfontset): Original code deleted and renamed from
10388 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
10389 (x_make_gc): Don't set GCFont in GCs.
10390 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
10391 opened by "fixed".
10392 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
10393 find_ccl_program_func, query_font_func, set_frame_fontset_func,
10394 get_font_repertory_func.
10395
10396 * xfont.c: Include <stdlib.h> and "ccl.h".
10397 (struct xfont_info): New structure.
10398 (xfont_query_font): Deleted.
10399 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
10400 moved from xterm.c.
10401 (xfont_driver): Adjusted for the change of struct font_driver.
10402 (compare_font_names): New function.
10403 (xfont_list_pattern): Sort font names case insensitively. Make
10404 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
10405 (xfont_list): Return a list, not vector.
10406 (xfont_match): If the font doesn't have QCname property, generate
10407 a name from the other font properties.
10408 (xfont_open): Return a font-object. Adjusted for the change of
10409 struct font. Get underline_thickness and underline_position from
10410 font property. Don't update dpyinfo->smallest_font_height and
10411 dpyinfo->smallest_char_width.
10412 (xfont_close): Don't free struct font.
10413 (xfont_prepare_face): Adjusted for the change of struct font.
10414 (xfont_done_face): Deleted.
10415 (xfont_has_char): Adjusted for the change of struct font.
10416 (xfont_encode_char, xfont_draw): Likewise.
10417 (xfont_check): New function.
10418
10419 * xftfont.c (xftfont_list): Adjusted for the change of `list'
10420 callback function.
10421 (xftfont_match): Adjusted for the format change of font-entity.
10422 (xftfont_open): Adjusted for the format change of font-entity and
10423 font-object. Adjusted for the change of struct font. Return a
10424 font-object. Don't update dpyinfo->smallest_font_height and
10425 dpyinfo->smallest_char_width.
10426 (xftfont_close): Block input while calling XftFontClose.
10427 (xftfont_prepare_face): Don't block input while calling
10428 xftfont_get_colors. Adjusted for the change of struct font.
10429 (xftfont_shape): Return value of error case fixed.
10430
10431 * xrdb.c (x_load_resources): Don't setup a fontset resource.
10432
10433 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
10434 conditionals.
10435 (FONT_WIDTH): Return (f)->max_width.
10436 (struct x_display_info): Delete member `font'.
10437 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
10438 (x_find_ccl_program, x_get_font_repertory): Delete externs.
10439 (struct x_output): Change type of `font' to `struct font *'.
10440
10441 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
10442 conditionals. Don't check enable_font_backend. Delete all codes
10443 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
10444 (x_per_char_metric, x_encode_char): Deleted.
10445 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
10446 (x_compute_glyph_string_overhangs): Adjusted for the change of
10447 `struct face'.
10448 (x_draw_glyph_string_foreground)
10449 (x_draw_composite_glyph_string_foreground): Likewise.
10450 (x_draw_glyph_string): Likewise. Use font->underline_position and
10451 font->underline_thickness.
10452 (x_new_font): Renamed from x_new_fontset2.
10453 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
10454 (x_check_font): Call `check' method of a font driver.
10455 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
10456 (x_query_font, x_get_font_repertory): Deleted.
10457 (x_find_ccl_program): Renamed and moved to xfont.c.
10458 (x_redisplay_interface): Adjusted for the change of `struct
10459 redisplay_interface'.
10460
10461 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
10462 conditionals. Don't check enable_font_backend. Delete all codes
10463 used only when USE_FONT_BACKEND is not defined. Surround non-used
10464 code by "#ifdef OLD_FONT" and "endif".
10465 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
10466
10467 * w32font.h (struct w32font_info): New member.
10468 (FONT_COMPAT): New macro.
10469 (w32font_open_internal): Prototype adjusted.
10470
10471 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
10472 OLD_FONT" and "endif".
10473
10474 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
10475 conditionals. Don't check enable_font_backend. Delete all codes
10476 used only when USE_FONT_BACKEND is not defined.
10477 (w32font_open): Return a font-object. Make a font-object by
10478 font_make_object. Adjusted for the change of struct w32font_info.
10479 (w32font_close): Don't free struct font. Adjusted for the change
10480 of struct w32font_info.
10481 (w32font_encode_char, w32font_text_extents, w32font_draw):
10482 Adjusted for the change of struct w32font_info.
10483 (w32font_draw): Likewise.
10484 (w32font_list_internal): Return a list, not vector.
10485 (w32font_open_internal): Change the 4th arg to font-object.
10486 Adjusted for the change of struct w32font_info and font-object format.
10487 (add_font_name_to_list): Don't downcase names.
10488 (w32_enumfont_pattern_entity): Make a font-entity by
10489 font_make_entity. Adjusted for the format change of font-entity.
10490 Use FONT_SET_STYLE to set a style-related font property. If a
10491 font is scalable, set avgwidth property to 0. Set font-entity
10492 property by font_put_extra.
10493 (font_matches_spec): Adjusted for the format change of font-entity.
10494 (w32_weight_table, w32_decode_weight): New variables.
10495 (w32_encode_weight): New function.
10496 (fill_in_logfont): Adjusted for the format change of font-spec.
10497 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
10498 weight value.
10499 (w32font_driver): Adjusted for the change of struct font_driver.
10500
10501 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
10502 conditionals. Don't check enable_font_backend. Surround non-used
10503 code by "#ifdef OLD_FONT" and "endif".
10504 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
10505 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
10506
10507 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
10508 conditionals. Don't check enable_font_backend. Delete all codes
10509 used only when USE_FONT_BACKEND is not defined. Surround non-used
10510 code by "#ifdef OLD_FONT" and "endif".
10511
10512 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
10513 (uniscribe_open): Return value changed to font-object.
10514 Adjusted for the format change of font-object.
10515 (uniscribe_otf_capability): Adjusted for the change of struct font.
10516 (add_opentype_font_name_to_list): Don't downcase names.
10517 (uniscribe_font_driver): Adjusted for the change of struct
10518 font_driver.
10519
10520 2008-05-13 Chong Yidong <cyd@stupidchicken.com>
10521
10522 * dispnew.c (update_frame_1): Check if tty output is still valid
10523 before flushing it.
10524
10525 2008-05-13 Jan Djärv <jan.h.d@swipnet.se>
10526
10527 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
10528 to Gtk+ menus.
10529
10530 2008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
10531
10532 * dired.c (file_name_completion): Tweak the code so as to always do it
10533 in a single pass. Tighten the scope of some variables.
10534
10535 * dired.c (Qdefault_directory): New var.
10536 (file_name_completion): Use it instead of Fexpand_file_name.
10537 (syms_of_dired): Initialize it.
10538
10539 2008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
10540
10541 * fileio.c (double_dollars): Remove dead code.
10542
10543 2008-05-10 Eli Zaretskii <eliz@gnu.org>
10544
10545 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
10546 Mention w32-get-true-file-attributes in doc string.
10547
10548 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
10549
10550 2008-05-09 Glenn Morris <rgm@gnu.org>
10551
10552 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
10553 2008-04-23.
10554
10555 2008-05-09 Eli Zaretskii <eliz@gnu.org>
10556
10557 Support for reporting owner and group of each file on MS-Windows:
10558 * dired.c (stat_uname, stat_gname): New functions, with special
10559 implementation for w32.
10560 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
10561
10562 * w32.c: Rename the_passwd_* to dflt_passwd_*.
10563 (dflt_group_name): New static variable.
10564 (dflt_group): Rename from the_group.
10565 (init_user_info): Init dflt_group fields. Get user's group name
10566 from LookupAccountSid.
10567 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
10568 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
10569 New initialization states.
10570 (globals_of_w32): Initialize them to zero. Initialize the default
10571 group name to "None".
10572 (GetFileSecurity_Name): New global var, the name of the function
10573 to call for GetFileSecurity.
10574 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
10575 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
10576 (get_file_security, get_security_descriptor_owner)
10577 (get_security_descriptor_group, is_valid_sid)
10578 (get_file_security_desc, get_rid, get_name_and_id)
10579 (get_file_owner_and_group): New functions.
10580 (stat): Use get_file_security_desc and get_file_owner_and_group to
10581 report the owner and primary group of each file. Don't ignore the
10582 high 32 bits of file's size, now that st_size is 64-bit wide.
10583 Fix test when to get true file attributes.
10584 (init_user_info): Use get_rid instead of equivalent inline code.
10585 (fstat): Don't ignore the high 32 bits of file's size.
10586
10587 2008-05-09 Chong Yidong <cyd@stupidchicken.com>
10588
10589 * image.c (png_load): Use correct bit-depth for setting background
10590 color.
10591
10592 2008-05-08 Eli Zaretskii <eliz@gnu.org>
10593
10594 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
10595 epa-hook.elc.
10596
10597 2008-05-08 Juanma Barranquero <lekktu@gmail.com>
10598
10599 * font.c (Ffont_match_p): Don't use `iff' in docstring.
10600
10601 2008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
10602
10603 * macfns.c (Fx_create_frame): Make a copy of frame parameters
10604 because the original parameters are in pure storage now.
10605 (mac_window): Remove unused params. Update callers.
10606
10607 2008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
10608
10609 * lread.c (substitute_object_recurse): Use lower-level primitives.
10610 Don't signal errors when traversing sub-char-tables.
10611 Don't loop over all the possible characters when traversing char-tables.
10612
10613 * print.c (print_preprocess): Add sub-char-tables to the print-table,
10614 just like we do in print.c.
10615
10616 2008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
10617
10618 * minibuf.c (Ftry_completion): Remove code left over from when we used
10619 scmp instead of Fcompare_strings.
10620
10621 2008-05-04 Juanma Barranquero <lekktu@gmail.com>
10622
10623 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
10624
10625 2008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10626
10627 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
10628 Create bitmap context in native byte order.
10629
10630 * macterm.c (XDrawLine)
10631 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
10632 context in native byte order.
10633
10634 2008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10635
10636 * config.in: Regenerate.
10637
10638 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
10639 New definitions for Image I/O support.
10640 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10641 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
10642 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10643 (mac_data_provider_release_data, image_load_image_io)
10644 [USE_MAC_IMAGE_IO]: New functions.
10645 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
10646 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
10647 (init_image_func_pointer) [MAC_OSX]: Remove function.
10648 (image_load_quartz2d) [MAC_OSX]: Check availability of
10649 CGImageCreateWithPNGDataProvider at compile time.
10650 Use lowercase `false' for boolean constant.
10651 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
10652 Use image_load_image_io.
10653 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
10654 Don't check MyCGImageCreateWithPNGDataProvider.
10655 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
10656 Don't call init_image_func_pointer.
10657
10658 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
10659
10660 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
10661 Make variable non-static.
10662 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
10663 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10664
10665 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
10666 (RED_FROM_ULONG): Mask off higher bits.
10667 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
10668
10669 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
10670 Include AvailabilityMacros.h.
10671 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
10672 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
10673
10674 2008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
10675
10676 * chartab.c (Fset_char_table_range): If range is t, really set all
10677 chars to that value.
10678
10679 2008-05-03 Eli Zaretskii <eliz@gnu.org>
10680
10681 * dired.c (Ffile_attributes): Don't allow the device number become
10682 negative.
10683
10684 2008-05-02 Daiki Ueno <ueno@unixuser.org>
10685
10686 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
10687
10688 2008-05-02 Juri Linkov <juri@jurta.org>
10689
10690 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
10691 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
10692 DEFAULT argument as a list of default values in docstrings.
10693
10694 2008-05-01 Chong Yidong <cyd@stupidchicken.com>
10695
10696 * puresize.h (BASE_PURESIZE): Increase to 1210000.
10697
10698 2008-05-01 Martin Rudalics <rudalics@gmx.at>
10699
10700 * dispnew.c (change_frame_size_1): Preserve small windows when
10701 shrinking frames by calling set_window_height|width with third
10702 arg 2.
10703
10704 * window.h (struct window): Replace field too_small_ok by field
10705 resize_proportionally.
10706
10707 * window.c (make_window): Initialize resize_proportionally.
10708 (enlarge_window): Temporarily set resize_proportionally to make
10709 sure that shrink_windows does scale the window proportionally.
10710 (shrink_windows): When window has resize_proportionally set try
10711 to shrink it proportionally by stealing from other windows.
10712 (struct saved_window, Fset_window_configuration)
10713 (compare_window_configurations): Handle resize_proportionally.
10714 (WINDOW_TOTAL_SIZE): New macro.
10715 (window_min_size, shrink_windows, size_window): Use it.
10716 (check_min_window_sizes): Remove. Invalid values of
10717 window-min-height|width are handled by window_min_size_2 now.
10718 (size_window, Fsplit_window, enlarge_window)
10719 (adjust_window_trailing_edge, grow_mini_window): Don't call
10720 check_min_window_sizes.
10721 (window_min_size_2, window_min_size_1, window_min_size):
10722 New argument safe_p for retrieving "safe" minimum sizes.
10723 (Fdisplay_buffer, Fsplit_window, enlarge_window)
10724 (adjust_window_trailing_edge, grow_mini_window):
10725 Adjust arguments of window_min_size... functions.
10726 (shrink_windows): Argument min_size removed. New argument
10727 safe_p allows shrinking windows to their safe minimum sizes.
10728 Calculate minimum size and decide whether a window shall be
10729 deleted for each window individually.
10730 (size_window): When nodelete_p equals 2, tell shrink_windows to
10731 delete windows only if their new minimum size is no more safe.
10732 (shrink_window_lowest_first): Call window_min_size_1 to make
10733 sure to preserve modeline of bottom-most window when resizing
10734 the minibuffer.
10735 (Fset_window_configuration, Fcurrent_window_configuration)
10736 (compare_window_configurations): Do not handle
10737 window-min-height|width any more.
10738 (syms_of_window): Clarify window-min-height|width doc-strings.
10739
10740 2008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
10741
10742 * dired.c (file_name_completion): Fix up the encoding/decoding issue
10743 some more. Copy some of the code from Ftry_completions.
10744 Remove special case code that dates back to initial revision when the
10745 slash was only added when necessary and that can't trigger nowadays.
10746
10747 2008-04-27 Kenichi Handa <handa@m17n.org>
10748
10749 * font.c (font_prop_validate): Signal `error' instead of `font'.
10750
10751 2008-04-29 Jason Rumney <jasonr@gnu.org>
10752
10753 * w32fns.c (Fw32_battery_status): New defun.
10754 (syms_of_w32fns): Defsubr it.
10755
10756 2008-04-28 Andreas Schwab <schwab@suse.de>
10757
10758 * dired.c (file_name_completion): Fix another mixing of encoded
10759 and decoded names.
10760
10761 2008-04-28 Juanma Barranquero <lekktu@gmail.com>
10762
10763 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
10764
10765 2008-04-27 Juanma Barranquero <lekktu@gmail.com>
10766
10767 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
10768
10769 2008-04-27 Andreas Schwab <schwab@suse.de>
10770
10771 * dired.c (file_name_completion): Fix inappropriate mixing of
10772 encoded and decoded names.
10773
10774 * xterm.c (XTread_socket): Fix use of uninitialized variable.
10775
10776 * puresize.h (BASE_PURESIZE): Increase to 1200000.
10777
10778 2008-04-26 Eli Zaretskii <eliz@gnu.org>
10779
10780 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
10781 2008-03-31, it's not needed anymore with `struct stat' definition
10782 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
10783 for the same reasons.
10784
10785 2008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
10786
10787 * m/sparc.h: Additional redefinitions for GNU/Linux.
10788
10789 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10790
10791 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
10792 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
10793 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
10794 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
10795 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10796 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
10797 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10798 Likewise.
10799
10800 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
10801 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
10802 (mac_ax_number_of_characters): Add externs.
10803 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10804 [USE_MAC_TSM]: Likewise.
10805 (mac_handle_text_input_event) [MAC_OSX]:
10806 Handle kEventTextInputOffsetToPos for no active input area case.
10807 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10808 (mac_handle_document_access_event)
10809 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
10810 (install_application_handler) [MAC_OSX]: Register handlers for
10811 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10812 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10813 Register mac_handle_document_access_event.
10814
10815 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
10816 Make functions non-static.
10817
10818 2008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
10819
10820 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
10821 (read_file_name_completion_ignore_case, insert_default_directory)
10822 (Qdefault_directory): Move to minibuffer.el.
10823 (Fread_file_name): Call the new `read-file-name' instead.
10824
10825 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10826
10827 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
10828 Make function non-static.
10829 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
10830 Remove function.
10831 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10832 Move to mactoolbox.c.
10833 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
10834
10835 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
10836 (mac_rect_make): New macro.
10837
10838 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
10839 instead of float.
10840 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10841 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
10842 (XSetBackground) [USE_CG_DRAWING]: Likewise.
10843 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
10844 CGRectMake.
10845 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10846 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
10847 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
10848 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10849 instead of WindowRef in argument type.
10850 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
10851 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
10852 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
10853 instead of DISPLAY. All uses changed.
10854 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
10855 (x_calc_absolute_position): Simplify so as not to use
10856 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
10857
10858 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10859 instead of WindowRef in argument type.
10860 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
10861 [TARGET_API_MAC_CARBON]: Remove externs.
10862 (create_apple_event, mac_event_parameters_to_lisp)
10863 [TARGET_API_MAC_CARBON]: Add externs.
10864
10865 * mactoolbox.c (Vmac_ts_script_language_on_focus)
10866 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
10867 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
10868 is clicked.
10869 (x_activate_menubar): Remove extern for saved_menu_event_location.
10870 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10871 Move from mac.c.
10872
10873 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10874
10875 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
10876 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
10877
10878 2008-04-23 Jason Rumney <jasonr@gnu.org>
10879
10880 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
10881 attributes only for local files.
10882
10883 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
10884 default to Qlocal.
10885
10886 2008-04-22 Juri Linkov <juri@jurta.org>
10887
10888 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
10889 read-buffer-to-switch instead of using the letter "B".
10890
10891 2008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10892
10893 * fileio.c (Qdefault_directory): New variable.
10894 (Fread_file_name): Use it to pass `dir' to the completion functions.
10895
10896 2008-04-20 Chong Yidong <cyd@stupidchicken.com>
10897
10898 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
10899
10900 2008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
10901
10902 * keyboard.c (Vpre_help_message): Remove.
10903 (show_help_echo): Remove default C code.
10904
10905 * dired.c (directory_files_internal, file_name_completion):
10906 Only call ENCODE_FILE if the string is indeed decoded.
10907
10908 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10909
10910 * Makefile.in (TOOLKIT_DEFINES): Remove.
10911 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
10912
10913 2008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10914
10915 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
10916 (mactoolbox.o): New target.
10917
10918 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
10919 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
10920
10921 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
10922 Use mac_set_frame_window_background instead of XSetWindowBackground.
10923 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
10924 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
10925 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
10926 instead of SetWindowTitleWithCFString.
10927 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
10928 Move function to mactoolbox.c.
10929 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
10930 Use mac_set_window_modified instead of SetWindowModified.
10931 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
10932 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
10933 (Fx_focus_frame): Use mac_front_non_floating_window instead of
10934 FrontNonFloatingWindow. Use mac_activate_window instead of
10935 ActivateWindow. Use mac_active_non_floating_window instead of
10936 ActiveNonFloatingWindow.
10937 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
10938 Use mac_show_hourglass and mac_hide_hourglass.
10939 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
10940 instead of GetGlobalMouse.
10941 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
10942 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
10943 Use mac_bring_window_to_front instead of BringToFront.
10944 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
10945 mactoolbox.c.
10946 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
10947 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
10948 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
10949 mactoolbox.c.
10950
10951 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
10952 (XtPointer): Move typedef from macmenu.c.
10953 (enum button_type): Move enum from macmenu.c.
10954 (widget_value): Move typedef from macmenu.c.
10955 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
10956 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10957 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10958 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10959 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10960 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10961 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10962 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
10963 (Selection): Move typedef from macselect.c.
10964 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
10965 macterm.c.
10966 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
10967 (mac_is_window_collapsed, mac_bring_window_to_front)
10968 (mac_send_window_behind, mac_hide_window, mac_show_window)
10969 (mac_collapse_window, mac_front_non_floating_window)
10970 (mac_active_non_floating_window, mac_activate_window)
10971 (mac_move_window_structure, mac_move_window, mac_size_window)
10972 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
10973
10974 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
10975 (enum mac_menu_kind): Move enum to mactoolbox.c.
10976 (min_menu_id): Move variable to mactoolbox.c.
10977 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
10978 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
10979 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
10980 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
10981 [TARGET_API_MAC_CARBON]: Likewise.
10982 (XtPointer): Move typedef to macgui.h.
10983 (enum button_type): Move enum to macgui.h.
10984 (widget_value): Move typedef to macgui.h.
10985 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10986 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10987 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10988 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10989 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10990 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10991 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
10992 (popup_activated_flag): Make variable non-static.
10993 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
10994 (add_menu_item, fill_menu, dispose_menus):
10995 Move functions to mactoolbox.c.
10996 (restore_show_help_function, menu_target_item_handler)
10997 (install_menu_target_item_handler, mac_handle_dialog_event)
10998 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
10999 [TARGET_API_MAC_CARBON]: Likewise.
11000 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
11001 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
11002 (find_and_call_menu_selection, name_is_separator): Make function
11003 non-static.
11004 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
11005 to mactoolbox.c.
11006 (set_frame_menubar): Don't call install_menu_quit_handler.
11007 (menu_item_selection): New variable.
11008 (mac_menu_show): Use create_and_show_popup_menu.
11009 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
11010 selection but set variable menu_item_selection. All uses changed.
11011 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
11012 Call install_menu_quit_handler. Move to mactoolbox.c.
11013
11014 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
11015 (Selection): Move typedef to macgui.h.
11016 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
11017 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
11018 Make variables non-static.
11019 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
11020 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
11021 Make functions non-static.
11022 (Vmac_service_selection) [MAC_OSX]: Likewise.
11023 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
11024 (mac_valid_selection_target_p, mac_clear_selection)
11025 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
11026 (mac_put_selection_value, mac_selection_has_target_p)
11027 (mac_get_selection_value, mac_get_selection_target_list)
11028 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
11029 Move functions to mactoolbox.c.
11030 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
11031 Likewise.
11032 (copy_scrap_flavor_data, mac_handle_service_event)
11033 (install_service_handler) [MAC_OSX]: Likewise.
11034 (syms_of_macselect) <Vmac_dnd_known_types>:
11035 Use mac_dnd_default_known_types.
11036
11037 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
11038 Move to mactoolbox.c.
11039 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
11040 (Fx_selection_owner_p): Add EXFUN.
11041 (install_window_handler, remove_window_handler, XSetWindowBackground):
11042 Remove externs.
11043 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
11044 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
11045 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
11046 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
11047 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
11048 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
11049 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
11050 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
11051 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
11052 (create_and_show_popup_menu, mac_get_selection_from_symbol)
11053 (mac_valid_selection_target_p, mac_clear_selection)
11054 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
11055 (mac_put_selection_value, mac_selection_has_target_p)
11056 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
11057 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
11058 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
11059 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
11060 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
11061 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
11062 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
11063 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
11064 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
11065
11066 * mactoolbox.c: New file.
11067
11068 2008-04-18 Jason Rumney <jasonr@gnu.org>
11069
11070 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
11071
11072 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
11073
11074 * character.c (Fmultibyte_char_to_unibyte):
11075 Return latin1 chars unchanged.
11076
11077 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
11078 relocated if it points to `name'.
11079
11080 2008-04-17 Kenichi Handa <handa@m17n.org>
11081
11082 * data.c (Faset): Allow setting a multibyte character in an
11083 ASCII-only unibyte string.
11084
11085 * lisp.h (STRING_SET_MULTIBYTE): New macro.
11086
11087 2008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
11088
11089 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
11090 done in config.h.
11091
11092 2008-04-16 Juanma Barranquero <lekktu@gmail.com>
11093
11094 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
11095 (Fchar_direction): Add usage in the docstring.
11096
11097 2008-04-15 Chong Yidong <cyd@stupidchicken.com>
11098
11099 * keyboard.c (read_key_sequence): Remove always-true checks.
11100
11101 2008-04-14 Jason Rumney <jasonr@gnu.org>
11102
11103 * w32font.c (w32font_open_internal): Set max_bounds.descent in
11104 compatibility struct, for better underline positioning.
11105
11106 2008-04-13 David Hansen <david.hansen@gmx.net>
11107
11108 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
11109 string.
11110
11111 2008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
11112
11113 * m/hp800.h (XUINT, XSET): Remove.
11114
11115 2008-04-12 Juanma Barranquero <lekktu@gmail.com>
11116
11117 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
11118 previous change.
11119
11120 2008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
11121
11122 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
11123 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
11124
11125 2008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
11126
11127 * keymap.h (map_keymap_canonical): Declare.
11128 * xmenu.c (single_keymap_panes): Use it.
11129
11130 2008-04-11 Glenn Morris <rgm@gnu.org>
11131
11132 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
11133 set the target's value to that of the alias.
11134
11135 2008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
11136
11137 * term.c (set_tty_color_mode): Left over typo.
11138
11139 2008-04-10 Michael Albinus <michael.albinus@gmx.de>
11140
11141 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
11142 only after check for file name handler functions. Signal, when
11143 native functionality is not supported.
11144 (syms_of_fileio): Declare it unconditionally.
11145
11146 2008-04-10 Jason Rumney <jasonr@gnu.org>
11147
11148 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
11149 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
11150
11151 * w32.c (logon_network_drive): Also logon to remote drives that
11152 are mapped to drive letters.
11153
11154 2008-04-10 Glenn Morris <rgm@gnu.org>
11155
11156 * xdisp.c (truncate-partial-width-windows): Doc fix.
11157
11158 2008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
11159
11160 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
11161 Move functions to minibuffer.el.
11162 (syms_of_fileio): Don't declare them.
11163
11164 2008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11165
11166 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
11167 (syms_of_minibuf): Remove its initialization.
11168
11169 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
11170
11171 2008-04-09 Juanma Barranquero <lekktu@gmail.com>
11172
11173 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
11174
11175 2008-04-09 Jason Rumney <jasonr@gnu.org>
11176
11177 * makefile.w32-in (distclean): Delete makefile too.
11178 (maintainer-clean): New target.
11179
11180 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
11181
11182 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
11183 for new font backend and composite cases.
11184
11185 2008-04-09 Jan Djärv <jan.h.d@swipnet.se>
11186
11187 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
11188 Most of the code moved to run_timers.
11189 (do_pending_atimers): Call run_timers.
11190 (run_timers): New function.
11191
11192 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
11193 run atimers.
11194
11195 * process.c (wait_reading_process_output): The same as above.
11196
11197 2008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11198
11199 * minibuf.c (last_exact_completion): Remove variable.
11200 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
11201 (complete_and_exit_1, complete_and_exit_2)
11202 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
11203 (Fdisplay_completion_list, display_completion_list_1)
11204 (Fminibuffer_completion_help, Fself_insert_and_exit)
11205 (Fexit_minibuffer, Fminibuffer_message): Move functions to
11206 minibuffer.el.
11207 (syms_of_minibuf): Remove corresponding initializations.
11208
11209 * keyboard.c (Qdeactivate_mark): New var.
11210 (command_loop_1): Use it to call `deactivate-mark'.
11211 (syms_of_keyboard): Initialize it.
11212
11213 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
11214 to another frame.
11215 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
11216 Don't call set_tty_color_mode.
11217 (store_frame_param): Reset previous_frame rather than call
11218 set_tty_color_mode.
11219 * term.c (set_tty_color_mode): Rewrite.
11220 * dispextern.h (set_tty_color_mode): New type.
11221 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
11222
11223 2008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
11224
11225 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
11226 for generic chars, which do not exist any more in emacs-unicode.
11227
11228 2008-04-08 Michael Albinus <michael.albinus@gmx.de>
11229
11230 * coding.c (detect_coding_emacs_mule)
11231 (Ffind_operation_coding_system): Fix typo.
11232
11233 2008-04-08 Jason Rumney <jasonr@gnu.org>
11234
11235 * w32uniscribe.c (SNAME): Extract only symbol name.
11236
11237 * w32font.h (struct w32_metric_cache): New struct.
11238 (w32font_info): Use it.
11239 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
11240 (CACHE_BLOCKSIZE): New constants.
11241
11242 * w32font.c (Qja, Qko, Qzh): New symbols.
11243 (syms_of_w32font): Initialise them.
11244 (font_matches_spec): Use them to filter by language.
11245 (recompute_cached_metrics): Remove function.
11246 (compute_metrics, clear_cached_metrics): New functions.
11247 (w32font_encode_char): Use them to manage metric cache.
11248 (w32font_text_extents): Cache metrics for all glyphs on demand.
11249 Delay converting glyph indices to WORD until needed.
11250 (w32font_open_internal): Initialize metric cache to empty.
11251 (registry_to_w32_charset): Charset should always be a symbol.
11252 (fill_in_logfont, list_all_matching_fonts): Family should
11253 always be a symbol.
11254
11255 2008-04-06 Jason Rumney <jasonr@gnu.org>
11256
11257 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
11258 Give up if glyph indices not supported. Use uniscribe obtained
11259 ABC widths for individual metrics. Map glyph clusters back to
11260 characters using fClusterStart flag. Return number of glyphs
11261 produced, not chars processed.
11262 (uniscribe_shape): Map char at FROM to current glyph.
11263
11264 2008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11265
11266 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
11267 Use SetMenuItemHierarchicalMenu.
11268
11269 2008-04-05 Jason Rumney <jasonr@gnu.org>
11270
11271 * image.c (pbm_load): Allow color values up to 65535.
11272 Throw an error if max_color_idx is outside the supported range.
11273 Report an error when image size is invalid.
11274 Read two bytes at a time when raw images have max_color_idx above 255.
11275
11276 2008-04-05 Eli Zaretskii <eliz@gnu.org>
11277
11278 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11279 cFileName a file name that includes `?' characters, use the 8+3
11280 alias in cAlternateFileName instead.
11281
11282 2008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
11283
11284 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
11285 append "CCL: Quitted" when the CCL program is quitted.
11286 (setup_ccl_program): Initialize ccl->quit_silently to zero.
11287
11288 * ccl.h (struct ccl_program): New member quit_silently.
11289
11290 2008-04-05 Chong Yidong <cyd@stupidchicken.com>
11291
11292 * search.c (compile_pattern_1): Treat non-nil and non-string of
11293 search-spaces-regexp as nil.
11294
11295 * minibuf.c (Fassoc_string): Tweak docstring.
11296
11297 2008-04-05 Eli Zaretskii <eliz@gnu.org>
11298
11299 * dired.c (Ffile_attributes): Support inode numbers wider than 32
11300 bits. Remove ugly WINDOWSNT-specific kludge introduced on
11301 2008-03-14 to force inode be positive.
11302
11303 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
11304 _S_* ones, since we now use our own sys/stat.h.
11305 (stat, fstat): Don't mangle the inode number.
11306 (init_user_info): Don't restrict UID and GID to 0-60000 range.
11307
11308 2008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
11309
11310 * frame.h (struct frame): Give one more bit to `visible' since we use
11311 values larger than 1 to indicate obscured frames on ttys.
11312
11313 * keymap.c (Qkeymap_canonicalize): New var.
11314 (Fmap_keymap_internal): New fun.
11315 (describe_map): Use keymap-canonicalize.
11316
11317 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
11318 (Fundo_boundary): Set them.
11319 (syms_of_undo): Initialize them.
11320 (record_point): Use them instead of last_point_position*.
11321 (last_undo_buffer): Change type.
11322
11323 2008-04-04 Jason Rumney <jasonr@gnu.org>
11324
11325 * w32font.c (w32font_text_extents): Use font's ascent and descent.
11326 (recompute_cached_metrics): Don't set ascent and descent per char.
11327
11328 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
11329 (uniscribe_check_otf): Add GC protection before consing.
11330 Rearrange loop for counting features.
11331
11332 2008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
11333
11334 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
11335 buffer with byte-size of source buffer.
11336
11337 2008-04-03 Chong Yidong <cyd@stupidchicken.com>
11338
11339 * callint.c (Fcall_interactively): Handle temporary region even
11340 when shift-select-mode is off.
11341
11342 2008-04-03 Jason Rumney <jasonr@gnu.org>
11343
11344 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
11345
11346 2008-04-03 Kenichi Handa <handa@m17n.org>
11347
11348 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
11349 (CATEGORY_MASK_UTF_16): Likewise.
11350 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
11351 binary file.
11352 (detect_coding): Add null-byte detection for a binary file.
11353 (detect_coding_system): Likewise.
11354
11355 2008-04-03 Jason Rumney <jasonr@gnu.org>
11356
11357 * w32uniscribe.c: New file.
11358
11359 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
11360
11361 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
11362
11363 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
11364 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
11365 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
11366 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
11367 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
11368 (Qphonetic): New symbols.
11369 (syms_of_w32font): Initialize them.
11370 (font_supported_scripts): Use them.
11371 (w32font_list_family): List all charsets.
11372 (w32font_text_extents, recompute_cached_metrics): Fix metric
11373 calculations.
11374 (w32_enumfont_pattern_entity): Make full_type a DWORD.
11375 Give opentype fonts their own format.
11376 (font_matches_spec): New arguments backend and logfont.
11377 Handle :otf spec for uniscribe backend.
11378 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
11379 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
11380
11381 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
11382 font backend.
11383 (globals_of_w32fns): Initialize uniscribe font backend.
11384
11385 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
11386 dependencies.
11387 (w32uniscribe.$(O)): New file to build.
11388 (FONT_OBJ): Include w32uniscribe.$(O).
11389 (LIBS): Add uniscribe libraries.
11390
11391 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
11392
11393 2008-04-02 Chong Yidong <cyd@stupidchicken.com>
11394
11395 * callint.c (Vshift_select_mode): New var.
11396 (Finteractive): Document new ^ spec.
11397 (Fcall_interactively): Call handle-shift-selection if the ^ spec
11398 is present.
11399
11400 * keyboard.c (Vthis_command_keys_shift_translated): New var.
11401 (command_loop_1): Avoid running the direct display versions of
11402 forward-char and backward-char if shift-selection may occur.
11403 (read_key_sequence): Set Vthis_command_keys_shift_translated if
11404 shift-translation takes place.
11405
11406 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
11407 avoid clobbering by define-minor-mode.
11408
11409 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
11410 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
11411
11412 * syntax.c (Fforward_word): Add ^ interactive spec.
11413
11414 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
11415 (Fscroll_right): Add ^ interactive spec.
11416
11417 2008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
11418
11419 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
11420
11421 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
11422
11423 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
11424
11425 2008-03-31 Juri Linkov <juri@jurta.org>
11426
11427 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
11428
11429 2008-03-30 Jan Djärv <jan.h.d@swipnet.se>
11430
11431 * gtkutil.c (xg_set_geometry): Fix indentation.
11432 (xg_resize_outer_widget): Remove.
11433 (x_wm_size_hint_off): Fix indentation.
11434 (xg_frame_set_char_size): Call flush_and_sync after
11435 gtk_window_resize.
11436 (x_wm_set_size_hint): Pass NULL as geometry window to
11437 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
11438 Add menu bar and tool bar height to base height.
11439 (xg_update_frame_menubar, free_frame_menubar)
11440 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
11441 (update_frame_tool_bar, free_frame_tool_bar):
11442 Change xg_resize_outer_widget to xg_frame_set_char_size.
11443
11444 2008-03-30 Michael Albinus <michael.albinus@gmx.de>
11445
11446 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
11447 (Fdbus_call_method): New parameter TIMEOUT.
11448 (dbus-send-signal): Optimize UNGCPRO call.
11449
11450 2008-03-29 Juri Linkov <juri@jurta.org>
11451
11452 * window.c (Fdisplay_buffer): Move call to
11453 Vsplit_window_preferred_function out of conditions that check
11454 if window is eligible for vertical splitting.
11455 When Vsplit_window_preferred_function is non-nil, call it and use
11456 its non-nil return value as window. Otherwise, continue doing
11457 vertical splitting using Fsplit_window with arg horflag=nil.
11458 (syms_of_window) <Vsplit_window_preferred_function>: Change the
11459 default value from `split-window' to nil.
11460
11461 2008-03-29 Juri Linkov <juri@jurta.org>
11462
11463 * callint.c (Fcall_interactively): Revert 2008-03-16 change
11464 for interactive code letters 'b' and 'B'.
11465
11466 2008-03-29 Eli Zaretskii <eliz@gnu.org>
11467
11468 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
11469 multibyte string.
11470
11471 2008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
11472
11473 * keyboard.c (pending_funcalls): New var.
11474 (timer_check): Run it.
11475 (syms_of_keyboard): Initialize it.
11476 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
11477 (Vdelete_terminal_functions): New vars.
11478 (syms_of_terminal): Initialize them.
11479 (Fdelete_terminal): Run delete-terminal-functions.
11480 * xdisp.c (safe_eval): Rewrite.
11481 (safe_call2): New fun.
11482 * frame.c (Qdelete_frame_functions): New var.
11483 (syms_of_frame): Initialize it.
11484 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
11485 * lisp.h (safe_call2, pending_funcalls): Declare.
11486
11487 2008-03-28 Andreas Schwab <schwab@suse.de>
11488
11489 * indent.c (Fmove_to_column): Move declaration before statements.
11490
11491 2008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
11492
11493 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
11494 (struct frame): Use bit fields for boolean vars.
11495
11496 * process.c (server_accept_connection): Simplify naming.
11497 (emacs_get_tty_pgrp): Use SDATA.
11498
11499 * coding.c (decode_coding_object): Fix last change.
11500
11501 2008-03-27 Jason Rumney <jasonr@gnu.org>
11502
11503 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
11504
11505 2008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
11506
11507 * charset.c (Fdefine_charset_internal): Change the way of
11508 registering charsets in Vcharset_order_list.
11509 (syms_of_charset): Make the charset `eight-bit' supplementary.
11510
11511 2008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
11512
11513 * regex.c (EXTEND_BUFFER): Change order of pointer addition
11514 operations, to avoid having the difference between pointers
11515 overflow.
11516
11517 2008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
11518
11519 * indent.c (check_display_width): New fun.
11520 (scan_for_column): Use it.
11521
11522 * data.c (syms_of_data): Mark most-positive-fixnum and
11523 most-negative-fixnum as constants.
11524
11525 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
11526
11527 * indent.c (scan_for_column): Extract from current_column_1.
11528 Merge with the same code from Fmove_to_column.
11529 (current_column_1, Fmove_to_column): Use it.
11530
11531 2008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
11532
11533 * keymap.c (map_keymap_internal): New fun.
11534 (map_keymap): Use it.
11535 (Fmap_keymap_internal): New fun.
11536 (Fmap_keymap): Remove left-out test from before make_save_value.
11537
11538 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
11539
11540 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
11541 Use XCAR/XCDR.
11542
11543 * process.h (struct Lisp_Process): Remove filter_multibyte.
11544 * process.c (QCfilter_multibyte): Remove.
11545 (setup_process_coding_systems): Don't use filter_multibyte.
11546 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
11547 (read_process_output): Don't adjust multibyteness to filter_multibyte.
11548 (Fset_process_filter_multibyte): Change the coding-system to
11549 approximate the previous behavior.
11550 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
11551 coding-system.
11552
11553 * coding.c (decode_coding_object): When not decoding into a buffer,
11554 obey the coding system's preference of (uni|multi)byte.
11555
11556 2008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
11557
11558 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
11559 every char is changed and has a different byte-length.
11560 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
11561 Fix int -> EMACS_INT.
11562
11563 2008-03-23 David Hansen <david.hansen@gmx.net>
11564
11565 * dbusbind.c (xd_read_message): Remove extra copying of message
11566 strings. Check for NULL `interface' or `member'.
11567
11568 2008-03-22 Eli Zaretskii <eliz@gnu.org>
11569
11570 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11571 cFileName a file name that includes `?' characters, use the 8+3
11572 alias in cAlternateFileName instead.
11573
11574 2008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
11575
11576 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
11577
11578 2008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11579
11580 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
11581 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
11582 work on current_buffer only instead (that was already the case
11583 for some of the code anyway).
11584 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
11585 (temp_set_point, temp_set_point_both): Use EMACS_INT.
11586 (SET_PT, SET_PT_BOTH): Adjust.
11587 * intervals.h (set_point, temp_set_point, set_point_both)
11588 (temp_set_point_both): Remove redundant declarations.
11589
11590 2008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11591
11592 * fileio.c (Finsert_file_contents):
11593 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
11594 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
11595 when buffer != current_buffer anyway.
11596
11597 2008-03-20 Andreas Schwab <schwab@suse.de>
11598
11599 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
11600 as default.
11601
11602 2008-03-19 Jason Rumney <jasonr@gnu.org>
11603
11604 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
11605 (syms_of_w32fns): Initialize them.
11606 (HOURGLASS_ID): New constant.
11607 (x_window_to_frame): Don't check hourglass_window.
11608 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
11609 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
11610 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
11611 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
11612 Only change the cursor if hourglass is not active.
11613 (Fx_create_frame): Initialize frame's current_cursor.
11614 (hourglass_atimer): Remove.
11615 (hourglass_started): New function.
11616 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
11617 (show_hourglass): Adapt to w32, changing argument to frame.
11618
11619 * w32term.h (struct w32_output): Remove hourglass_window.
11620 Add current_cursor.
11621
11622 * eval.c (call_debugger, Fsignal):
11623 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
11624 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
11625 (Fexecute_extended_command, cancel_hourglass_unwind):
11626 * minibuf.c (read_minibuf):
11627 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
11628
11629 2008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
11630
11631 * window.c (run_funs): New fun.
11632 (run_window_configuration_change_hook): Use it to run the buffer-local
11633 and the global part of the hook.
11634
11635 * xdisp.c (format_mode_line_unwind_data): Add window argument.
11636 (unwind_format_mode_line): Restore selected window.
11637 (x_consider_frame_title, Fformat_mode_line): Set selected window.
11638
11639 2008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
11640
11641 * editfns.c (Fchar_equal): Check they are valid characters.
11642
11643 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
11644
11645 2008-03-17 Andreas Schwab <schwab@suse.de>
11646
11647 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
11648 against a charset.
11649
11650 * lisp.h (Fbuffer_list): Declare.
11651
11652 2008-03-17 Jan Djärv <jan.h.d@swipnet.se>
11653
11654 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
11655 handlebox_widget is != 0.
11656
11657 2008-03-16 Juri Linkov <juri@jurta.org>
11658
11659 * callint.c (Fcall_interactively): For interactive code letters
11660 'b' and 'B' put the buffer list into the list of default "future"
11661 values of the minibuffer.
11662
11663 2008-03-16 Andreas Schwab <schwab@suse.de>
11664
11665 * keyboard.c (read_key_sequence): Fix downcasing of letters with
11666 modifiers.
11667
11668 * regex.c (re_match_2_internal): Correct matching of a charset
11669 against latin-1 characters.
11670
11671 2008-03-16 Kenichi Handa <handa@m17n.org>
11672
11673 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
11674 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
11675 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
11676 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
11677 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
11678 CHAR_STRING_ADVANCE.
11679 (produce_chars): Fix for the case that the source and the
11680 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
11681 instead of CHAR_STRING_ADVANCE.
11682 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
11683 STRING_CHAR_ADVANCE.
11684
11685 2008-03-15 Andreas Schwab <schwab@suse.de>
11686
11687 * regex.c (re_match_2_internal): Correct matching of eight bit
11688 characters in unibyte strings.
11689
11690 2008-03-15 Martin Rudalics <rudalics@gmx.at>
11691
11692 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
11693 at end of range when it coincides with the end of the buffer.
11694
11695 2008-03-14 Eli Zaretskii <eliz@gnu.org>
11696
11697 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
11698
11699 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
11700
11701 2008-03-14 Jason Rumney <jasonr@gnu.org>
11702
11703 * editfns.c (initial_tz): New variable.
11704 (syms_of_editfns): Initialize it.
11705 (Fset_time_zone_rule): Set it when first called.
11706 Use it when TZSTRING is nil.
11707
11708 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
11709 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
11710 (monitor_from_point_fn, get_monitor_info_fn): New globals.
11711 (globals_of_w32fns): Initialize them.
11712 (compute_tip_xy): Use them to position tooltips.
11713
11714 2008-03-14 Glenn Morris <rgm@gnu.org>
11715
11716 * emacs.c (main): Revert previous change.
11717 (standard_args): Revert -internal-script back to -scriptload,
11718 and remove the long-option form.
11719
11720 2008-03-13 Glenn Morris <rgm@gnu.org>
11721
11722 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
11723 Remove option -enable-font-backend.
11724
11725 2008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
11726
11727 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
11728
11729 2008-03-11 Jan Djärv <jan.h.d@swipnet.se>
11730
11731 * xterm.c (x_connection_closed): For GTK: If this is the last
11732 terminal just exit without closing the display.
11733
11734 2008-03-11 Jason Rumney <jasonr@gnu.org>
11735
11736 * w32font.c (w32font_full_name): Use floor to round.
11737
11738 2008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
11739
11740 * sound.c (alsa_configure): Declare vol at beginning of block.
11741
11742 * fontset.c (Ffontset_info): Remove extra semicolon.
11743
11744 2008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
11745
11746 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
11747 size of resulting string.
11748
11749 2008-03-10 Jason Rumney <jasonr@gnu.org>
11750
11751 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
11752
11753 2008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11754
11755 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
11756 Don't pretend as if characters with display property haven't been
11757 consumed for string-replacing-string case.
11758
11759 2008-03-08 Kim F. Storm <storm@cua.dk>
11760
11761 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
11762 (get_next_display_element, next_element_from_string)
11763 (next_element_from_ellipsis, next_element_from_buffer): Use it.
11764
11765 2008-03-08 Andreas Schwab <schwab@suse.de>
11766
11767 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
11768
11769 2008-03-06 Jason Rumney <jasonr@gnu.org>
11770
11771 * w32font.c (w32_registry): Take font_type argument. Use ANSI
11772 when charset not specified. Only translate ANSI to unicode when
11773 font_type is truetype.
11774 (w32font_coverage_ok): New function.
11775 (add_font_entity_to_list): Use it to filter unsuitable fonts.
11776
11777 2008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
11778
11779 * lread.c (Fread_char): Resolve modifiers.
11780 (Fread_char_exclusive): Likewise.
11781
11782 * character.c (char_resolve_modifier_mask): New function.
11783 (char_string): Use char_resolve_modifier_mask.
11784 (Fchar_resolve_modifiers): New function.
11785 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
11786 function.
11787
11788 2008-03-04 Jason Rumney <jasonr@gnu.org>
11789
11790 * makefile.w32-in: Always include w32font.c in the build.
11791 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
11792
11793 2008-03-04 Andreas Schwab <schwab@suse.de>
11794
11795 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
11796 (versionclean): Likewise.
11797
11798 2008-03-04 Juanma Barranquero <lekktu@gmail.com>
11799
11800 * .cvsignore: Add oo.
11801
11802 2008-03-03 Andreas Schwab <schwab@suse.de>
11803
11804 * coding.c (decode_coding_object): Inhibit gap shrinking while
11805 decoding in place.
11806
11807 2008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
11808
11809 * w32term.c: Remove unused include "gnu.h".
11810 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
11811
11812 * gnu.h: Rename to ...
11813 * emacs-icon.h: ... this.
11814 * xterm.c: Use emacs-icon.h instead of gnu.h.
11815 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
11816
11817 2008-03-03 Juanma Barranquero <lekktu@gmail.com>
11818
11819 * w32font.c: Include math.h.
11820
11821 2008-03-03 Jason Rumney <jasonr@gnu.org>
11822
11823 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
11824 Compute options separately.
11825 (w32font_open_internal): Set glyph_idx before caching metrics.
11826
11827 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
11828 Define if system headers don't.
11829 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
11830 (w32font_encode_char): Don't declare here.
11831
11832 * w32font.c (Quniscribe, QCformat): New symbols.
11833 (syms_of_w32font): Define them.
11834 (w32font_has_char): Indicate uncertainty.
11835 (w32font_encode_char): Encode as glyph point. Make static.
11836 (recompute_cached_metrics): New function.
11837 (w32font_open_internal): Use it. Set font to use glyph points
11838 initially. Set format based on type of font.
11839 (w32font_text_extents, w32font_draw): Optionally use glyph points.
11840 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
11841 on it. Set format based on information available here.
11842 (add_font_entity_to_list): Identify backend based on opentype_only.
11843
11844 2008-03-02 Andreas Schwab <schwab@suse.de>
11845
11846 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
11847
11848 * coding.c (decode_coding_big5, produce_chars):
11849 Fix typos in last change.
11850
11851 2008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
11852
11853 * gnu.h: New icon.
11854
11855 2008-03-02 Kenichi Handa <handa@m17n.org>
11856
11857 * coding.c (decode_coding_utf_8): When eol-type of CODING is
11858 `dos', don't decode '\r' if that is the last in the source.
11859 (decode_coding_utf_16, decode_coding_emacs_mule)
11860 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11861 (decode_coding_raw_text, decode_coding_charset): Likewise.
11862 (produce_chars): Don't decode EOL here. Use EMACS_INT.
11863
11864 2008-03-01 Jason Rumney <jasonr@gnu.org>
11865
11866 * w32font.c (w32font_full_name): Report point size for scalable fonts.
11867
11868 2008-03-01 Kim F. Storm <storm@cua.dk>
11869
11870 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
11871
11872 2008-03-01 Jason Rumney <jasonr@gnu.org>
11873
11874 * w32font.c (w32font_full_name): New function.
11875 (w32font_open_internal): Use it.
11876
11877 2008-03-01 Kim F. Storm <storm@cua.dk>
11878
11879 * dispnew.c (line_draw_cost): Fix invalid glyph check.
11880
11881 2008-03-01 Jason Rumney <jasonr@gnu.org>
11882
11883 * font.c (font_unparse_fcname): Increase len when style is a symbol.
11884
11885 2008-03-01 Jan Djärv <jan.h.d@swipnet.se>
11886
11887 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
11888 xg_frame_resized when the event is for the edit widget.
11889
11890 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
11891
11892 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
11893 set_char_size.
11894 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
11895 operations on widgets here. Just set frame size if needed.
11896 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
11897 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
11898 (x_wm_set_size_hint): Set size hints on the edit widget only, not
11899 the whole frame.
11900 (xg_create_tool_bar): Move attachment of the tool bar to
11901 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
11902 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
11903
11904 2008-03-01 Jason Rumney <jasonr@gnu.org>
11905
11906 * w32fns.c (w32_msg_pump): Disable debug code.
11907
11908 2008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11909
11910 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
11911
11912 2008-02-29 Chong Yidong <cyd@stupidchicken.com>
11913
11914 * xdisp.c (next_overlay_string): Don't set
11915 overlay_strings_at_end_processed_p if we're currently reading from
11916 a display string.
11917
11918 2008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
11919
11920 * xdisp.c (get_overlay_strings_1): Fix typo.
11921
11922 2008-02-29 Chong Yidong <cyd@stupidchicken.com>
11923
11924 * xdisp.c (get_overlay_strings_1): Add missing argument type.
11925
11926 2008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
11927
11928 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
11929
11930 * xdisp.c (display_mode_element): Cancel the previous change.
11931 (decode_mode_spec): Likewise.
11932 (handle_auto_composed_prop): Don't make composition if it->string
11933 is a string.
11934
11935 2008-02-27 Kim F. Storm <storm@cua.dk>
11936
11937 * lisp.h (GLYPH): Change type from int to struct with separate char
11938 and face_id members.
11939 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
11940 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
11941 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
11942 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
11943 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
11944 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
11945 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
11946 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
11947 handle new Lisp glyph code encoding, either an integer or a cons.
11948
11949 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
11950 (GLYPH_ALIAS): Delete.
11951 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
11952 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
11953 (GLYPH_FROM_CHAR): Replace macro by ...
11954 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
11955
11956 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
11957 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
11958 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
11959 (GLYPH_INVALID_P): New macro.
11960 (spec_glyph_lookup_face): Update prototype.
11961
11962 * dispnew.c (line_draw_cost): Adapt to new glyph type.
11963 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
11964 new glyph code encoding.
11965 (spec_glyph_lookup_face): No return value; update passed glyph instead.
11966 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
11967
11968 * xdisp.c (get_next_display_element, next_element_from_display_vector):
11969 Adapt to new glyph type and new glyph code encoding.
11970
11971 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
11972
11973 * indent.c (current_column, current_column_1, Fmove_to_column)
11974 (compute_motion): Adapt to new glyph code encoding.
11975
11976 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
11977
11978 2008-02-27 Chong Yidong <cyd@stupidchicken.com>
11979
11980 * process.c (wait_reading_process_output): Check for window
11981 changes caused by timers.
11982 Suggested by Johan Bockgård.
11983
11984 2008-02-27 Glenn Morris <rgm@gnu.org>
11985
11986 * emacs.c (USAGE1): Add `--disable-font-backend'.
11987
11988 2008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
11989
11990 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
11991 is made to the buffer.
11992
11993 2008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
11994
11995 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
11996 (face_at_string_position):
11997 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
11998 (face_at_string_position):
11999 * xdisp.c (display_string, next_overlay_change):
12000 * buffer.h (overlays_at):
12001 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
12002 Update callers.
12003
12004 2008-02-26 Chong Yidong <cyd@stupidchicken.com>
12005
12006 * editfns.c (Fformat): Doc fix.
12007
12008 2008-02-26 Juanma Barranquero <lekktu@gmail.com>
12009
12010 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
12011 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
12012 (Ffont_otf_alternates, Fquery_font): Doc fixes.
12013
12014 2008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
12015
12016 * buffer.c (Fbuffer_swap_text): New function.
12017 (syms_of_buffer): Defsubr it.
12018
12019 2008-02-25 Chong Yidong <cyd@stupidchicken.com>
12020
12021 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
12022
12023 2008-02-25 Jason Rumney <jasonr@gnu.org>
12024
12025 * w32font.c (w32font_draw): Draw one character at a time when padding.
12026
12027 2008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
12028
12029 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
12030 Handle a nil arg. Use run_window_configuration_change_hook.
12031 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
12032 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
12033 Use run_window_configuration_change_hook.
12034
12035 2008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
12036
12037 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
12038 1-pixel width.
12039
12040 2008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
12041
12042 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
12043 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
12044 if the glyph in the font is zero pixel with.
12045
12046 * dispextern.h (struct glyph_string): New member padding_p.
12047
12048 * w32font.c (w32font_draw): Pay attention to s->padding_p.
12049
12050 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
12051
12052 * xfont.c (xfont_draw): Pay attention to s->padding_p.
12053
12054 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
12055
12056 * font.c: If the font driver doesn't have `shape' function, return Qnil.
12057
12058 2008-02-25 Jason Rumney <jasonr@gnu.org>
12059
12060 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
12061
12062 2008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
12063
12064 Allow fine-grained image-cache flushing.
12065 * dispextern.h (struct image): Add `dependencies' field.
12066 (clear_image_caches): Change arg to Lisp_Object.
12067 * image.c (make_image): Initialize `dependencies' field.
12068 (clear_image_cache): Change arg to allow fine-grained flushing.
12069 Perform the flush even if image-cache-eviction-delay is nil.
12070 (clear_image_caches): Change arg to Lisp_Object.
12071 (Fclear_image_cache): Expand meaning of the argument.
12072 (mark_image): Mark `dependencies' field.
12073 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
12074 (lface_hash): Use XHASH rather than XFASTINT.
12075 (face_at_buffer_position): Fix int -> EMACS_INT position.
12076 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
12077 (select_frame_for_redisplay): Remove code duplication.
12078 (redisplay_internal): Adapt arg to call to clear_image_caches.
12079
12080 2008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
12081
12082 * s/vms4-0.h:
12083 * s/vms4-2.h:
12084 * s/vms4-4.h:
12085 * s/vms5-5.h: Remove, unused.
12086
12087 * s/irix5-2.h:
12088 * s/irix6-0.h:
12089 * s/riscos5.h:
12090 * s/mach-bsd4-3.h:
12091 * m/mips4.h: Remove files for obsolete systems.
12092
12093 * Makefile.in:
12094 * filelock.c:
12095 * unexmips.c:
12096 * m/hp9000s300.h:
12097 * m/iris4d.h:
12098 * s/aix3-1.h:
12099 * s/hpux.h:
12100 * s/msdos.h:
12101 * s/usg5-0.h:
12102 * s/usg5-2-2.h:
12103 * s/usg5-2.h:
12104 * s/usg5-3.h: Remove references to obsolete variables.
12105
12106 * s/irix5-0.h: Remove, move all the contents ...
12107 * s/irix6-5.h: ... here. Simplify.
12108 * config.in: Regenerate.
12109
12110 2008-02-24 Jason Rumney <jasonr@gnu.org>
12111
12112 * w32term.c (x_draw_glyph_string_background): Clear the background
12113 manually when cleartype is in use.
12114 (x_draw_glyph_string_foreground): Draw text transparently when
12115 cleartype is in use.
12116
12117 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
12118 a font into it unless we have to.
12119
12120 2008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12121
12122 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
12123 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
12124
12125 2008-02-18 Jason Rumney <jasonr@gnu.org>
12126
12127 * w32fns.c (Fw32_shell_execute): Encode parameters.
12128
12129 2008-02-09 Eli Zaretskii <eliz@gnu.org>
12130
12131 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
12132
12133 2008-02-05 Juanma Barranquero <lekktu@gmail.com>
12134
12135 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
12136
12137 2008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
12138
12139 * xterm.c (x_set_offset): Don't change the gravity if
12140 CHANGE_GRAVITY is -1.
12141
12142 2008-02-23 Chong Yidong <cyd@stupidchicken.com>
12143
12144 * fileio.c (auto_save_error_occurred): New var.
12145 (auto_save_error): Set it.
12146 (Fdo_auto_save): Don't overwrite the error message if an auto-save
12147 error occurred.
12148
12149 2008-02-23 Eli Zaretskii <eliz@gnu.org>
12150
12151 * w32.c (globals_of_w32): Add initializations for
12152 g_b_init_get_sid_sub_authority and
12153 g_b_init_get_sid_sub_authority_count.
12154
12155 2008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
12156
12157 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
12158 (font_parse_xlfd): Use them for sanity check.
12159 (Finternal_set_font_style_table): Make sure the table is bijective.
12160
12161 Consolidate the image_cache to the terminal struct.
12162 * termhooks.h (P_): Remove redundant def.
12163 (struct terminal): New field `image_cache'.
12164 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
12165 of FRAME_X_IMAGE_CACHE.
12166 * xterm.h (struct x_display_info): Remove image_cache field.
12167 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12168 * w32term.h (struct w32_display_info): Remove image_cache field.
12169 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12170 * macterm.h (struct mac_display_info): Remove image_cache field.
12171 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12172 * xterm.c (x_term_init):
12173 * w32term.c (w32_term_init):
12174 * macterm.c (mac_term_init): Set the image_cache in the terminal.
12175 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
12176 Remove declarations.
12177 (clear_image_caches, mark_image_cache): New declarations.
12178 * xfaces.c (clear_face_cache):
12179 * xdisp.c (redisplay_internal): Use clear_image_caches.
12180 * image.c (clear_image_cache): Don't check that a frame is on
12181 a window-system before checking if it shares the same cache.
12182 (clear_image_caches): New function.
12183 (Fclear_image_cache): Use it.
12184 (mark_image): Move from allo.c.
12185 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
12186 * alloc.c (mark_image, mark_image_cache): Move to image.c.
12187 (mark_object): Don't call mark_image_cache for frames.
12188 (mark_terminals): Call mark_image_cache.
12189
12190 * lisp.h (Fdelete_terminal): Declare.
12191
12192 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
12193 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
12194 wrong_type_argument.
12195
12196 2008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
12197
12198 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
12199 malayalam.el, and tamil.el. Add sinhala.el.
12200
12201 2008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
12202
12203 * xterm.c (x_connection_closed): Consolidate identical tests.
12204 (x_delete_terminal): Don't crash if called via x_connection_closed.
12205
12206 2008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
12207
12208 * xdisp.c (decode_mode_spec): New arg string.
12209 (display_mode_element): Adjust for the above change.
12210
12211 2008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12212
12213 * callint.c (Fcall_interactively): Use AREF.
12214
12215 2008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
12216
12217 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
12218
12219 2008-02-18 Jan Djärv <jan.h.d@swipnet.se>
12220
12221 * xfns.c (Fx_show_tip): Set string to " " if empty.
12222
12223 2008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
12224
12225 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
12226 with Qt.
12227
12228 2008-02-17 Kenichi Handa <handa@m17n.org>
12229
12230 * ftfont.c (ftfont_shape): Return Lispy number.
12231
12232 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
12233 for GCs.
12234 (Finternal_set_font_selection_order): Call font_update_sort_order
12235 only when enable_font_backend is set.
12236 (realize_x_face): Set face->font_info to that of default face only
12237 when enable_font_backend is set.
12238
12239 * xdisp.c (handle_composition_prop): Set it->c to the fist
12240 character of the composed region.
12241 (fill_composite_glyph_string): Set base_face->font_info to
12242 s->font_info. Get a face for ascii from base_face->ascii_face.
12243 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
12244 with a face already decided.
12245 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
12246 non-negative.
12247 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
12248 call font_prepare_composition unconditionally.
12249
12250 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
12251
12252 * xterm.h (struct x_display_info): New member font.
12253
12254 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
12255 (x_set_mouse_face_gc, x_new_font): Likewise.
12256 (x_term_init): Setup display_info->font.
12257 (x_delete_terminal): Free display_info->font.
12258
12259 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
12260
12261 * ftxfont.c (ftxfont_default_fid): Delete it.
12262 (ftxfont_open): Set xfont->fid to 0.
12263 (ftxfont_end_for_frame): Clear data specific to the frame and the
12264 font-driver.
12265
12266 * xftfont.c (xftfont_default_fid): Delete it.
12267 (xftfont_open): Set xfont->fid to 0.
12268
12269 * fontset.c (FONTSET_OBJLIST): New macro.
12270 (fontset_find_font): Update font-object list of the fontset.
12271 (free_realized_fontset): New function.
12272 (free_face_fontset): Call free_realized_fontset.
12273 (Ffont_info): Call font_close_object only when enable_font_backend
12274 is set.
12275
12276 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
12277 [HAVE_NTGUI]: Include w32term.h.
12278 [MAC_OS]: Include macterm.ch.
12279 (font_otf_ValueRecord): Use make_number.
12280 (font_finish_cache): Fix handling of reference count.
12281 (font_clear_cache): Update num_fonts.
12282 (font_open_entity): Update smallest_char_width and
12283 smallest_font_height of the frame.
12284 (font_close_object): Update num_fonts.
12285 (Fclear_font_cache): Fix finding the target cache data.
12286
12287 2008-02-16 Glenn Morris <rgm@gnu.org>
12288
12289 * fontset.c (Finternal_char_font): Fix compilation warning.
12290
12291 2008-02-16 Eli Zaretskii <eliz@gnu.org>
12292
12293 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
12294 instead of char arrays. Enlarge the size of array passed to
12295 get_token_information.
12296
12297 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
12298 warnings.
12299
12300 2008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
12301
12302 * .gdbinit: Don't set `args', it breaks gdb --args.
12303
12304 2008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
12305
12306 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
12307 within a narrowed buffer.
12308
12309 2008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
12310
12311 * coding.c (decode_coding_object, encode_coding_object):
12312 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
12313
12314 2008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
12315
12316 * coding.c (coding_set_destination): Use BEG_BYTE rather than
12317 hardcoding 1.
12318 (detect_coding_system):
12319 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
12320 (string_char_to_byte, string_byte_to_char, insert_from_gap):
12321 * insdel.c (insert_from_gap):
12322 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
12323 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
12324 (string_to_multibyte):
12325 * character.c (chars_in_text, multibyte_chars_in_text):
12326 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
12327
12328 * character.h (FETCH_STRING_CHAR_ADVANCE)
12329 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
12330 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
12331 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
12332
12333 * casefiddle.c (casify_region): Only call after-change and composition
12334 functions on the part of the region that was changed.
12335
12336 * keyboard.c (read_avail_input):
12337 * frame.c (Fdelete_frame): Call Fdelete_terminal.
12338
12339 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12340
12341 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
12342 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
12343
12344 2008-02-11 Juanma Barranquero <lekktu@gmail.com>
12345
12346 * w32menu.c (push_submenu_start, push_submenu_end)
12347 (push_left_right_boundary, push_menu_pane, push_menu_item):
12348 * keyboard.c (read_key_sequence): Don't pass args with side effects
12349 to AREF, it fails when compiling with -DENABLE_CHECKING.
12350
12351 2008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
12352
12353 * Makefile.in (${lispsource}international/charprop.el):
12354 Delete this target.
12355
12356 * search.c (boyer_moore): Fix incorrect synching of the trunk and
12357 emacs-unicode-2.
12358
12359 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12360
12361 * terminal.c (Fdelete_terminal): Clean up the `force' path.
12362
12363 2008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12364
12365 * frame.c (Qnoelisp): New symbol.
12366 (syms_of_frame): Initialize it.
12367 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
12368 harmless Elisp code, from a strong `force' from x_connection_closed.
12369 * frame.h (Qnoelisp): Declare.
12370 * xterm.c (x_connection_closed): Pass `noelisp'.
12371
12372 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
12373 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
12374 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
12375 rather than `int' for the type of `type'.
12376
12377 2008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
12378
12379 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
12380
12381 * Makefile.in (GNUC): Remove support for gcc-1.x.
12382
12383 2008-02-10 Richard Stallman <rms@gnu.org>
12384
12385 * lisp.h (ASET): Use AREF, not ASLOT.
12386
12387 2008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12388
12389 * lisp.h (ASET): Check bounds.
12390
12391 2008-02-10 Glenn Morris <rgm@gnu.org>
12392
12393 * buffer.c (mode-name): Doc fix.
12394
12395 2008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12396
12397 * Makefile.in:
12398 * emacs.c:
12399 * gmalloc.c:
12400 * keyboard.c:
12401 * lisp.h:
12402 * m/ibm370aix.h:
12403 * process.c:
12404 * regex.c:
12405 * s/hpux.h:
12406 * sysdep.c:
12407 * sysselect.h:
12408 * systty.h:
12409 * unexec.c:
12410 * w32term.c:
12411 * xsmfns.c:
12412 * xterm.c: Remove code that deals with obsolete variables.
12413
12414 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
12415
12416 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
12417 nothing else needs it anymore.
12418
12419 2008-02-09 Eli Zaretskii <eliz@gnu.org>
12420
12421 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
12422 instead of unibyte_char_to_multibyte.
12423
12424 2008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12425
12426 * s/gnu-linux.h: Remove commented out code.
12427
12428 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
12429
12430 * Makefile.in: Update what RMS says about using autoconf.
12431 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
12432 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
12433 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
12434 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
12435
12436 2008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
12437
12438 * keymap.c (Fkey_description): Move side effect outside of macro call.
12439
12440 * xfaces.c (Finternal_make_lisp_face):
12441 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
12442
12443 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
12444 (syms_of_fontset): Use ASET.
12445
12446 * fns.c (concat): Move side effect outside of macro call.
12447 (hash_clear): Use ASET.
12448
12449 2008-02-08 Richard Stallman <rms@gnu.org>
12450
12451 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
12452 If FORCE, and frame has a surrogate minibuffer for another frame,
12453 delete the other frame first.
12454
12455 2008-02-07 Timo Savola <timo.savola@iki.fi>
12456
12457 * xterm.c (x_detect_focus_change): Handle embed client message.
12458 (handle_one_xevent): Ditto.
12459 (handle_one_xevent): If embedded and we get a button press/release,
12460 request focus.
12461 (xembed_set_info, xembed_send_message): New functions.
12462 (x_make_frame_visible): Call xembed_set_info if embedded.
12463 (x_make_frame_invisible): Call xembed_set_info if embedded.
12464 (x_term_init): Initialize Xatom_XEMBED.
12465 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
12466 (x_iconify_frame): Ditto.
12467
12468 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
12469 (enum xembed_info, enum xembed_message, enum xembed_focus)
12470 (enum xembed_modifier, enum xembed_accelerator): New.
12471 (xembed_set_info, xembed_send_message): Declare.
12472 (FRAME_X_EMBEDDED_P): New.
12473
12474 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
12475 gtk_plug_new.
12476
12477 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
12478 window ID of a frame.
12479 (x_window): Reparent frame if embedded.
12480 (Fx_create_frame): Don't set border width if embedded.
12481
12482 * emacs.c (USAGE3): Add --parent-id.
12483 (standard_args): Ditto.
12484
12485 2008-02-07 Jan Djärv <jan.h.d@swipnet.se>
12486
12487 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
12488
12489 2008-02-07 Jim Meyering <meyering@redhat.com>
12490
12491 Use "do...while (0)", not "if (1)...else" in macro definitions.
12492 The latter provokes a warning from gcc about the empty else, when
12493 followed by ";". Also, without that trailing semicolon, it would
12494 silently swallow up any following statement.
12495 * syntax.h (SETUP_SYNTAX_TABLE)
12496 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
12497 * buffer.h (DECODE_POSITION): Likewise.
12498 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
12499 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
12500 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
12501 (FETCH_CHAR_ADVANCE): Likewise.
12502 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
12503
12504 2008-02-07 Jim Meyering <meyering@redhat.com>
12505
12506 * lread.c [lint]: Don't include <sys/inode.h>.
12507
12508 2008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
12509
12510 * xselect.c (x_handle_dnd_message):
12511 * xmenu.c (digest_single_submenu, xmenu_show):
12512 * xdisp.c (with_echo_area_buffer_unwind_data)
12513 (format_mode_line_unwind_data, unwind_format_mode_line)
12514 (display_menu_bar):
12515 * eval.c (Ffetch_bytecode):
12516 * doc.c (store_function_docstring):
12517 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
12518 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
12519 * buffer.c (add_overlay_mod_hooklist): Use ASET.
12520
12521 2008-02-07 Kenichi Handa <handa@m17n.org>
12522
12523 * ftxfont.c (ftxfont_open): Don't set
12524 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
12525
12526 * ftfont.c (ftfont_open): Fix previous change.
12527
12528 2008-02-06 Jason Rumney <jasonr@gnu.org>
12529
12530 * w32font.c (w32font_text_extents): Fill in lbearing metric.
12531 Use cached metrics for ASCII characters.
12532 (w32font_open_internal): Don't set font's owning_frame.
12533 Cache metrics for ASCII characters.
12534
12535 * w32font.h (struct w32font_info): Add ascii_metrics.
12536 Remove owning_frame.
12537
12538 2008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
12539
12540 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
12541 to negative value.
12542
12543 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
12544
12545 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
12546
12547 * charset.c (syms_of_charset): Set QCtest and Qeq.
12548
12549 2008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
12550
12551 * process.c (Fstart_process):
12552 * callproc.c (Fcall_process): Handle the case where
12553 Funhandled_file_name_directory returns nil.
12554
12555 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
12556 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
12557 * font.c (check_gstring): Use them and AREF to access the vector before
12558 we know it's really a gstring.
12559 (Ffont_shape_text): Fix typo.
12560 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
12561
12562 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
12563 Declare.
12564
12565 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
12566
12567 2008-02-05 Jason Rumney <jasonr@gnu.org>
12568
12569 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
12570 Set smallest_font_height and smallest_char_width in display info.
12571
12572 2008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
12573
12574 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
12575
12576 2008-02-05 Miles Bader <miles@gnu.org>
12577
12578 * xfaces.c (get_lface_attributes, merge_named_face)
12579 (lookup_named_face, lookup_derived_face, realize_named_face):
12580 Revert 2008-02-01 change by cyd@stupidchicken.com.
12581
12582 2008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
12583
12584 * fontset.c (Ffontset_info): Handle the case of inhibitting the
12585 fallback fonts.
12586 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
12587
12588 2008-02-04 Jason Rumney <jasonr@gnu.org>
12589
12590 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
12591 set full_name.
12592 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
12593
12594 2008-02-03 Jason Rumney <jasonr@gnu.org>
12595
12596 * makefile.w32-in (OBJ1): Include font.o here.
12597 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
12598
12599 2008-02-02 Jason Rumney <jasonr@gnu.org>
12600
12601 * makefile.w32-in (temacs): Bump EMHEAP to 21.
12602
12603 2008-02-01 Jason Rumney <jasonr@gnu.org>
12604
12605 * s/cygwin.h: Define VIRT_ADDR_VARIES.
12606
12607 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
12608
12609 2008-02-01 Andreas Schwab <schwab@suse.de>
12610
12611 * Makefile.in (shortlisp, lisp): Update for rename of
12612 ../lisp/language/myanmar.el.
12613
12614 2008-02-01 Chong Yidong <cyd@stupidchicken.com>
12615
12616 * xfaces.c (get_lface_attributes): Delete function.
12617 (merge_named_face, lookup_named_face, lookup_derived_face)
12618 (realize_named_face): Call lface_from_face_name directly, and use
12619 the fact that merge_face_vectors does not alter its FROM argument.
12620
12621 2008-02-01 Jason Rumney <jasonr@gnu.org>
12622
12623 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
12624 input in the default locale. Handle non-Unicode multibyte input.
12625
12626 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12627
12628 * fontset.c (reorder_font_vector): Exclude nil elements from the
12629 font group. Don't try multiple fonts.
12630 (fontset_font): Adjust for the above change.
12631 (Finternal_char_font): Return nil if the found font doesn't
12632 contain the character ch.
12633
12634 * Makefile.in (lisp, shortlisp): Add cham.el.
12635
12636 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12637
12638 * font.h (FONTP): Make it return 1 also for a font-object.
12639
12640 * .gdbinit (xfontset): New function.
12641
12642 * font.c (font_find_for_lface): Check if the character C is
12643 supported or not only for the first font.
12644
12645 * fontset.c (reorder_font_vector): Fix typo.
12646 (fontset_find_font): Don't add a font-spec specifying a script.
12647 Use 0 (not Qt) for the indication of empty font-group. Change the
12648 format of RFONT-DEF. Return Qt if no font in the font-group
12649 support the character.
12650 (fontset_font): Adjust for the above change. If no font was
12651 found the character, remember that.
12652 (face_for_char): Adjust for the change of RFONT-DEF.
12653 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
12654 no font for the target.
12655 (Finternal_char_font): Adjust for the change of RFONT-DEF.
12656
12657 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12658
12659 * font.c (font_load_for_face): Handle the case that the font in
12660 face->lface is a string.
12661
12662 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12663
12664 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
12665
12666 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12667
12668 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
12669 Fix previous change. If the frame is not on a window system,
12670 signal an error.
12671
12672 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12673
12674 * coding.c (decode_coding_object, encode_coding_object): Adjust
12675 marker positions after conversion.
12676
12677 * lisp.h (struct Lisp_Marker): New member need_adjustment.
12678
12679 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12680
12681 * font.c (font_find_for_lface): Fix the handling of the return
12682 value of font_has_char.
12683 (Ffont_shape_text): Fix previous change.
12684
12685 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
12686 (fontset_ref_and_range): Delete it.
12687 (fontset_find_font): Call char_table_ref_and_range instead of
12688 FONTSET_REF_AND_RANGE.
12689 (make_fontset): Don't setup font groups of Latin here.
12690 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
12691 (new_fontset_from_font): Make the specified font the default for
12692 all Latin characters.
12693
12694 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12695
12696 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
12697 is on a window system before accessing the fontset of the frame.
12698
12699 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12700
12701 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
12702
12703 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
12704 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
12705
12706 * font.c (Ffont_shape_text): If the font driver doesn't have a
12707 shaper function, make zero-width glyphs to have at least one-pixel
12708 width. Fix setting of `to' field of glyphs.
12709
12710 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12711
12712 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
12713 glyphs.
12714
12715 * font.h (struct font_driver): Improve docstring of member `shape'.
12716
12717 2008-02-01 Kenichi Handa <handa@m17n.org>
12718
12719 * composite.c (syms_of_composite): Fix docstring of
12720 auto-composition-function.
12721
12722 * font.h (LGLYPH_SIZE): New macro.
12723
12724 * font.c (Ffont_fill_gstring): Stop filling when a character not
12725 supported by the font is found.
12726 (Ffont_shape_text): When a shape callback function returns nil,
12727 try at most two more times with larger gstring.
12728 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
12729
12730 * xdisp.c (handle_auto_composed_prop): Change the argument to
12731 auto-composition-function.
12732
12733 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
12734 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
12735 Lispy glyph and store it in the lgstring.
12736
12737 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
12738
12739 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
12740
12741 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12742
12743 * font.c (Ffont_shape_text): Avoid unnecessary composition.
12744
12745 * fontset.c (Vfont_encoding_charset_alist): New variable.
12746 (syms_of_fontset): DEFVAR it.
12747 (reorder_font_vector, fontset_find_font): Optimize for the case of
12748 no need of reordering.
12749 (face_for_char): Map the charset property by
12750 Vfont_encoding_charset_alist.
12751
12752 2008-02-01 Jason Rumney <jasonr@gnu.org>
12753
12754 * w32font.c (logfonts_match): Don't check adstyle here.
12755 (font_matches_spec): Check here against physical font instead.
12756 (add_font_entity_to_list): Avoid some substitutions.
12757
12758 * font.c (font_parse_fcname): Default weight and slant to normal.
12759 (font_score): Prefer normal fonts if weight or slant unspecified.
12760 (font_score) [WINDOWSNT]: Scale weight difference down to closer
12761 match freetype scores.
12762
12763 2008-02-01 Jason Rumney <jasonr@gnu.org>
12764
12765 * w32font.c (w32font_text_extents): Don't use the frame stored in the
12766 font, as it may have been deleted.
12767 (w32_enumfont_pattern_entity): Map generic family to adstyle using
12768 most common hyphenless variation.
12769 (logfonts_match): Check generic family.
12770 (font_matches_spec): Don't check generic family here.
12771 (fill_in_logfont): Set generic family based on adstyle.
12772
12773 * w32font.h (w32font_get_cache): Update declaration.
12774
12775 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12776
12777 * ftfont.c (ftfont_get_cache): Adjust the argument type.
12778
12779 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
12780 If none of the new drivers are available, call font_update_drivers
12781 with the old drivers.
12782
12783 * w32font.c (w32font_get_cache): Adjust the argument type.
12784
12785 * xfont.c (xfont_get_cache): Adjust the argument type.
12786
12787 * font.h (struct font_driver): Change argument type of get_cache.
12788
12789 * xftfont.c (xftfont_start_for_frame): Delete prototype.
12790
12791 * font.c (Ffont_get): Fix arguments to Fassoc.
12792 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
12793 (font_clear_cache): New function.
12794 (font_list_entities, font_matching_entity): Use font_get_cache.
12795 (font_update_drivers): Call font_clear_cache when finishing a driver.
12796
12797 * fontset.c (fontset_find_font): Fix previous change.
12798
12799 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12800
12801 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
12802 dpyinfo->font_table.
12803 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
12804 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
12805
12806 * font.c (font_at): Handle the case that the arg C is negative.
12807 Handle the unibyte case.
12808 (Ffont_at): Call font_at with the arg C -1.
12809
12810 * xdisp.c (handle_auto_composed_prop): Don't get a character at
12811 the position here, and call font_at with the arg C -1.
12812 Don't check the range of the existing composition at the point.
12813
12814 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12815
12816 * fontset.c (fontset_add): New args charset_id and family.
12817 Change caller.
12818 (load_font_get_repertory, fontset_find_font): Assume that
12819 font_spec is always a font-spec object.
12820 (Fset_fontset_font): Always store a font-spec object in a fontset.
12821
12822 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
12823 instead of get_property_and_range.
12824
12825 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12826
12827 * xftfont.c (struct xftfont_info): Delete the member ft_face.
12828 (xftfont_open): Don't keep locking face.
12829 (xftfont_close): Don't unlock face.
12830 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
12831
12832 * fontset.c (fontset_find_font): Don't prefer a font of
12833 supplementary charset.
12834
12835 2008-02-01 Kenichi Handa <handa@m17n.org>
12836
12837 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
12838 script, langsys_tag to langsys, new member script.
12839 (OTF_TAG_STR): Terminate by '\0'.
12840 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
12841 listing to the script specified in that property. Fix arg to
12842 OTF_check_features.
12843
12844 2008-02-01 Jason Rumney <jasonr@gnu.org>
12845
12846 * w32font.h: New file.
12847
12848 * w32font.c: Include it.
12849 (struct w32font_info): Add owning_frame field. Move to w32font.h.
12850 (w32font_open): Set owning_frame.
12851 (w32font_text_extents): Use owning_frame.
12852 (struct font_callback_data): Add opentype_only field.
12853 (add_font_entity_to_list): Use it to filter fonts.
12854 Don't check against full name.
12855 (w32font_list_internal): New function.
12856 (w32font_list): Use it.
12857 (w32font_match_internal): New function.
12858 (w32font_match): Use it.
12859 (w32font_open_internal): New function.
12860 (w32font_open): Use it.
12861 (w32font_get_cache, w32font_close, w32font_has_char)
12862 (w32font_encode_char, w32font_text_extents, w32font_draw):
12863 Make non-static.
12864
12865 * makefile.w32-in (w32font.o): Depend on w32font.h.
12866
12867 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12868
12869 * charset.c (Fdefine_charset_internal): Record a supplementary
12870 charset at the tail of Vcharset_order_list.
12871
12872 * font.c (Ffont_shape_text): Fix the return value.
12873
12874 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
12875
12876 * xdisp.c (handle_auto_composed_prop): Fix previous change.
12877
12878 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12879
12880 * ftfont.c (struct OpenTypeSpec): New struct.
12881 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
12882 (ftfont_get_open_type_spec): New function.
12883 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
12884
12885 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
12886
12887 2008-02-01 Jason Rumney <jasonr@gnu.org>
12888
12889 * w32font.c (add_font_entity_to_list): Compare only the beginning
12890 of full name.
12891
12892 2008-02-01 Kenichi Handa <handa@m17n.org>
12893
12894 * xdisp.c (handle_auto_composed_prop): Simplify the code.
12895 Never return HANDLED_RECOMPUTE_PROPS.
12896
12897 2008-02-01 Kenichi Handa <handa@m17n.org>
12898
12899 * font.c (font_gstring_produce): Delete it.
12900
12901 * composite.h (COMPOSITION_METHOD):
12902 Handle COMPOSITION_WITH_GLYPH_STRING.
12903
12904 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12905
12906 * xfont.c (Qx): Delete.
12907 (syms_of_xfont): Don't initialize Qx.
12908
12909 * composite.h (enum composition_method):
12910 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
12911
12912 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12913
12914 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
12915 (choose_face_font): Accept new form of font-spec.
12916
12917 * frame.h (font_driver_list): Declare it unconditionally.
12918 (struct frame): Define members font_driver_list and font_data_list
12919 unconditionally.
12920
12921 * fontset.c: Include "font.h" unconditionally.
12922 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
12923 (Fset_fontset_font): Accept a font-spec object.
12924
12925 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
12926 PIXEL_SIZE part a wild card.
12927
12928 * dispextern.h (struct glyph_string): Define members clip and
12929 num_clips unconditionally.
12930 (struct face): Define members font_info and extra unconditionally.
12931
12932 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
12933 ftfont_info only when HAVE_LIBOTF is defined.
12934
12935 2008-02-01 Andreas Schwab <schwab@suse.de>
12936
12937 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
12938 and end.
12939
12940 2008-02-01 Jason Rumney <jasonr@gnu.org>
12941
12942 * w32font.c (w32font_driver): Add new fields.
12943
12944 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12945
12946 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
12947 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
12948 (LIBES): Add @M17N_FLT_CFLAGS@.
12949
12950 * composite.c (compose_text): Don't treat the new style
12951 composition specially.
12952
12953 * emacs.c (main): Call syms_of_font unconditionally.
12954
12955 * font.h (FONT_ENTITY_NOT_LOADABLE)
12956 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
12957 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
12958 (struct font_driver): New member shape.
12959 (font_registry_charsets): Extern it.
12960 (font_find_for_lface, font_prepare_composition): Adjust prototype.
12961 (font_otf_capability, font_drive_otf): Delete their externs.
12962
12963 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
12964 (font_charset_alist, font_registry_charsets): Move from xfont.c
12965 and rename.
12966 (font_prop_validate_otf): New function.
12967 (font_property_table): Register it for QCotf.
12968 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
12969 (font_drive_otf): Delete.
12970 (font_prepare_composition): New arg F. Adjust for the change of
12971 lispy gstring.
12972 (font_find_for_lface): New arg C.
12973 (font_load_for_face): Adjust for the change of font_find_for_lface.
12974 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
12975 lispy gstring.
12976 (Ffont_shape_text): New function.
12977 (Fopen_font): If the font size is not given, use 12-pixel.
12978 (Ffont_at): New arg STRING.
12979 (syms_of_font): Initalize font_charset_alist.
12980 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
12981 conditionally.
12982
12983 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
12984 fonts of the same font-spec. Change the format of RFONT-DEF.
12985 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
12986 Adjust for the change of RFONT-DEF.
12987 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
12988
12989 * ftfont.h: New file.
12990
12991 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
12992 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12993 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12994 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
12995 font_otf_capability and font_drive_otf, set ftfont_shape.
12996 (ftfont_list): Adjust for the change of :otf property value.
12997 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
12998 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
12999 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
13000 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
13001 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
13002 (otf_gstring, gstring, m17n_flt_initialized): New variables.
13003
13004 * w32term.c (x_draw_composite_glyph_string_foreground):
13005 Adjust for the change of lispy gstring.
13006
13007 * xdisp.c (handle_composition_prop): Adjust for the change of
13008 lispy gstring. Call a function for auto-composition with the
13009 third arg it->window.
13010 (fill_composite_glyph_string): Adjust for the change of lispy string.
13011 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
13012
13013 * xfaces.c (set_font_frame_param): Adjust for the change of
13014 font_find_for_lface.
13015
13016 * xfont.c (x_font_charset_alist): Move to font.c and rename.
13017 (xfont_registry_charsets): Likewise. Change caller.
13018 (syms_of_xfont): Don't handle x_font_charset_alist.
13019
13020 * xftfont.c: Include "ftfont.h".
13021 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
13022 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
13023 (xftfont_close) [HAVE_LIBOTF]: Close otf.
13024 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
13025 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
13026 Set xftfont_driver.shape to xftfont_shape.
13027
13028 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
13029 the change of lispy gstring.
13030
13031 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13032
13033 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
13034
13035 2008-02-01 Jason Rumney <jasonr@gnu.org>
13036
13037 * w32font.c (w32font_draw): Fill background manually.
13038
13039 2008-02-01 Jason Rumney <jasonr@gnu.org>
13040
13041 * font.c (Qfontp): Remove unused symbol.
13042 (QCantialias): New symbol.
13043 (syms_of_font): Define it.
13044 (font_property_table): Set a validator for QCantialias.
13045
13046 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
13047 Define if not already.
13048 (QCfamily): Share with xfaces.c.
13049 (Qstandard, Qsubpixel, Qnatural): New symbols.
13050 (syms_of_w32font): Define them. Don't define QCfamily here.
13051 (w32_antialias_type, lispy_antialias_type): New functions.
13052 (w32_enumfont_pattern_entity): New arg requested_font.
13053 Set antialias parameter if non-default was requested.
13054 (fill_in_logfont): Fill in lfQuality if :antialias specified.
13055
13056 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13057
13058 * lread.c (read1): Undo the previous change.
13059
13060 2008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
13061
13062 * frame.c (Fdelete_frame): Call font_update_drivers only when
13063 USE_FONT_BACKEND is defined.
13064
13065 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13066
13067 * font.h (struct font_bitmap): New member bits_per_pixel.
13068 (struct font_driver): New members start_for_frame and end_for_frame.
13069 (struct font_data_list): New struct.
13070 (font_put_frame_data, font_get_frame_data): Extern them.
13071
13072 * frame.h (struct frame): New member font_data_list.
13073
13074 * font.c (font_update_drivers): Call driver->start_for_frame and
13075 driver->end_for_frame at proper timings.
13076 (font_put_frame_data, font_get_frame_data): New functions.
13077 (Ffont_spec): Add usage in the docstring.
13078
13079 * frame.c (make_frame): Initialize f->font_data_list to NULL.
13080 (Fdelete_frame): Call font_update_drivers.
13081
13082 * xftfont.c (struct xftface_info): Delete the member xft_draw.
13083 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
13084 (xftfont_get_xft_draw): New function.
13085 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
13086 (xftfont_end_for_frame): New function.
13087 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
13088
13089 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
13090 Change argument. Cache GCs in the per-frame data.
13091 (struct ftxfont_frame_data): New struct.
13092 (ftxfont_draw_bitmap): New arg gc_fore and flush.
13093 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
13094 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
13095 (ftxfont_end_for_frame): New function.
13096 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
13097
13098 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
13099
13100 2008-02-01 Kenichi Handa <handa@m17n.org>
13101
13102 * xselect.c (Vselection_coding_system)
13103 (Vnext_selection_coding_system): Delete them.
13104 (syms_of_xselect): Don't declare selection-coding-system and
13105 next-selection-coding-system. They are declared in select.el.
13106
13107 2008-02-01 Jason Rumney <jasonr@gnu.org>
13108
13109 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
13110
13111 * w32fns.c: Include imm.h.
13112 (get_composition_string_fn, get_ime_context_fn): New optional
13113 system functions.
13114 (globals_of_w32fns): Load them from imm32.dll.
13115 (ignore_ime_char): New flag.
13116 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
13117 WM_IME_ENDCOMPOSITION messages.
13118
13119 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
13120 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
13121
13122 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13123
13124 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
13125 (READCHAR_REPORT_MULTIBYTE): New macro.
13126 (readchar): New 2nd arg MULTIBYTE.
13127 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
13128 Make symbol's name multibyte according to the multibyteness of the
13129 source.
13130
13131 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13132
13133 * xfaces.c (face_for_overlay_string): Call lookup_face with
13134 correct arguments (fix of synching with the trunk).
13135
13136 2008-02-01 Kenichi Handa <handa@m17n.org>
13137
13138 * font.c (font_prop_validate_symbol, font_prop_validate_style)
13139 (font_prop_validate_non_neg, font_prop_validate_spacing):
13140 Delete argument prop_index.
13141 (font_property_table): Change arguments to validater. Change Callers.
13142 (font_lispy_object): Delete.
13143 (font_at): Use font_find_object instead fo font_lispy_object.
13144
13145 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13146
13147 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
13148 and file names.
13149
13150 2008-02-01 Jason Rumney <jasonr@gnu.org>
13151
13152 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
13153 (font_matches_spec): Remove debug output.
13154 (add_font_entity_to_list): Avoid using substituted fonts.
13155
13156 2008-02-01 Jason Rumney <jasonr@gnu.org>
13157
13158 * doc.c (Fsnarf_documentation):
13159 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
13160
13161 2008-02-01 Miles Bader <miles@gnu.org>
13162
13163 * dispextern.h (struct glyph_row): Only define "clip" field if
13164 HAVE_WINDOW_SYSTEM is defined.
13165
13166 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13167
13168 Fix up multi-tty merge.
13169
13170 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
13171 and indentation.
13172
13173 * xfaces.c (free_realized_face, clear_face_gcs):
13174 Include font_done_for_face in the input_blocked section, just in case.
13175
13176 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
13177 (get_char_face_and_encoding): Undo last change and remove the *other*
13178 duplicate definition (i.e. keep the one that's better scoped and that
13179 includes code for the font-backend).
13180
13181 * terminal.c (create_terminal): Default keyboard_coding to
13182 `no-conversion' and terminal_coding to `undecided'.
13183
13184 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
13185
13186 * fontset.c (free_realized_fontsets): Check that the table entry does
13187 contain a fontset before trying to compare it to `base'.
13188
13189 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
13190 syms_of_charset, and syms_of_coding earlier because init_window_once
13191 now needs Vcoding_system_hash_table to be setup.
13192
13193 * coding.h (default_buffer_file_coding): Remove.
13194
13195 * coding.c (default_buffer_file_coding): Remove.
13196 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
13197 than ->symbol, and use the terminal-local coding system.
13198 (syms_of_coding): Don't setup the coding-systems that are not
13199 terminal-local.
13200 (Fdefine_coding_system_internal): Use XCAR/XCDR.
13201
13202 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
13203 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
13204
13205 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
13206 in chartab.c and were re-added here by mistake.
13207 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
13208
13209 * doc.c (Fsnarf_documentation):
13210 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
13211 src to etc.
13212
13213 * ChangeLog.10: Add mistakenly removed entry.
13214
13215 2008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
13216
13217 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
13218
13219 2008-02-01 Miles Bader <miles@gnu.org>
13220
13221 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
13222 Add extra args to FACE_FOR_CHAR.
13223
13224 2008-02-01 Kenichi Handa <handa@m17n.org>
13225
13226 * keymap.c (where_is_internal_1): If key is a cons, store the copy
13227 in sequence.
13228
13229 * chartab.c (map_sub_char_table, map_char_table): If the range
13230 contains just one character, call the function with that character
13231 even if the depth is not 3.
13232
13233 2008-02-01 Jason Rumney <jasonr@gnu.org>
13234
13235 * w32font.c (w32font_text_extents): Calculate metrics for the
13236 whole string.
13237
13238 2008-02-01 Jason Rumney <jasonr@gnu.org>
13239
13240 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
13241
13242 2008-02-01 Jason Rumney <jasonr@gnu.org>
13243
13244 * w32term.c (x_set_glyph_string_clipping): Use
13245 get_glyph_string_clip_rects.
13246 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13247 Adjust for the change of struct glyph_string.
13248
13249 * w32font.c (w32font_draw): Do clipping here.
13250
13251 2008-02-01 Kenichi Handa <handa@m17n.org>
13252
13253 * xftfont.c (xftfont_draw): Adjust for the change of struct
13254 glyph_string.
13255
13256 * xterm.c (x_set_glyph_string_clipping): Use
13257 get_glyph_string_clip_rects.
13258 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13259 Adjust for the change of struct glyph_string.
13260
13261 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
13262 the resulting clip(s}.
13263 (expose_overlaps): Add arg r. Change callers. Set it to
13264 row->clip temporarily.
13265 (expose_window): Redraw rows overlapping the exposed area.
13266
13267 * dispextern.h (struct glyph_row): New member clip.
13268 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
13269 clip_height, new member clip, and num_clips.
13270
13271 2008-02-01 Kenichi Handa <handa@m17n.org>
13272
13273 * data.c (Fchar_or_string_p): Fix docstring.
13274
13275 2008-02-01 Kenichi Handa <handa@m17n.org>
13276
13277 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
13278 create a temporary XftDraw object.
13279
13280 2008-02-01 Kenichi Handa <handa@m17n.org>
13281
13282 * font.c (Ffontp): Fix docstring.
13283
13284 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
13285 strong evidence of ISO-2022.
13286
13287 2008-02-01 Kenichi Handa <handa@m17n.org>
13288
13289 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
13290 SYNTAX_ENTRY_FOLLOW_PARENT.
13291
13292 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13293
13294 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
13295 its type.
13296 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
13297 Update to the new type of weak_hash_tables and next_weak.
13298
13299 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
13300 a plain C pointer to Lisp_Hash_Table.
13301
13302 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
13303 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
13304 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
13305 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
13306 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
13307 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
13308 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
13309 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
13310 (GC_EQ): Remove since they've been identical to their non-GC_
13311 alter-egos ever since the markbit was eradicated.
13312
13313 * alloc.c:
13314 * buffer.c:
13315 * buffer.h:
13316 * data.c:
13317 * fileio.c:
13318 * filelock.c:
13319 * fns.c:
13320 * frame.h:
13321 * lisp.h:
13322 * macterm.c:
13323 * print.c:
13324 * process.c:
13325 * w32fns.c:
13326 * w32menu.c:
13327 * w32term.c:
13328 * xfns.c:
13329 * xmenu.c:
13330 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
13331
13332 2008-02-01 Kenichi Handa <handa@m17n.org>
13333
13334 * chartab.c (map_sub_char_table): Make it work for the top-level
13335 char-table. Fix handling of parent char-table.
13336 (map_char_table): Adjust for the above change.
13337
13338 2008-02-01 Jason Rumney <jasonr@gnu.org>
13339
13340 * w32font.c (Qgdi): Rename from Qw32.
13341
13342 2008-02-01 Jason Rumney <jasonr@gnu.org>
13343
13344 * w32bdf.c (get_quoted_string): Make function static.
13345
13346 2008-02-01 Kenichi Handa <handa@m17n.org>
13347
13348 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
13349 bigger ascent and descent than those of the font, use them as
13350 font's ascent and descent.
13351
13352 2008-02-01 Kenichi Handa <handa@m17n.org>
13353
13354 * Makefile.in (${lispsource}international/charprop.el): Move this
13355 target within "#ifdef HAVE_UNIDATA" and "#endif".
13356
13357 2008-02-01 Kenichi Handa <handa@m17n.org>
13358
13359 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
13360 (shortlisp): Add ../lisp/language/tai-viet.el.
13361
13362 2008-02-01 Ulrich Mueller <ulm@gentoo.org>
13363
13364 * Makefile.in (${lispsource}international/charprop.el): Depend on
13365 temacs${EXEEXT}.
13366
13367 2008-02-01 Jason Rumney <jasonr@gnu.org>
13368
13369 * w32font.c (w32font_close): Delete the GDI font object.
13370
13371 * w32menu.c: Include character.h.
13372
13373 * w32proc.c: Likewise.
13374
13375 * w32select.c: Likewise.
13376
13377 * makefile.w32-in (w32proc.o): Depend on character.h.
13378
13379 2008-02-01 Jason Rumney <jasonr@gnu.org>
13380
13381 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
13382
13383 * w32menu.c (syms_of_w32menu): Likewise.
13384
13385 * w32proc.c (syms_of_ntproc): Likewise.
13386
13387 * w32select.c (syms_of_w32select): Likewise.
13388
13389 * w32term.c (syms_of_w32term): Likewise.
13390
13391 2008-02-01 Jason Rumney <jasonr@gnu.org>
13392
13393 * w32font.c (w32font_draw): Delete brush after using it.
13394
13395 2008-02-01 Jason Rumney <jasonr@gnu.org>
13396
13397 * w32font.c (w32font_open): Don't set font_idx.
13398 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
13399 to font settings.
13400 (w32font_draw): Fill background explicitly.
13401
13402 2008-02-01 Jason Rumney <jasonr@gnu.org>
13403
13404 * w32term.c (w32_initialize): Don't call w32font_initialize.
13405
13406 * w32font.c (w32font_info): Remove subranges.
13407 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
13408 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
13409 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
13410 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
13411 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
13412 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
13413 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
13414 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
13415 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
13416 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
13417 New symbols.
13418 (font_callback_data): New struct.
13419 (w32font_list, w32font_match): Use it.
13420 (w32font_open): Don't populate subranges.
13421 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
13422 (w32font_encode_char): Always return unicode code-point as-is.
13423 (w32font_text_extents): Supply a transformation matrix to
13424 GetGlyphOutline. Never look up by glyph index. Avoid looping
13425 twice. Use unicode version of GetTexExtentPoint32 instead of
13426 glyph index version.
13427 (set_fonts_frame): Remove.
13428 (w32_enumfont_pattern_entity): Add frame parameter, use it to
13429 set frame parameter. Use backward compatible fake foundries.
13430 Save generic family in extra slot under QCfamily. Make width slot
13431 constant. Save QCspacing value. Save list of scripts instead of
13432 binary subranges.
13433 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
13434 (add_font_entity_to_list): Use font_callback_data struct. Filter
13435 unwanted fonts.
13436 (add_one_font_entity_to_list): Use font_callback_data struct.
13437 (w32_registry): Default to iso10646_1.
13438 (fill_in_logfont): Use dpi from extra slot. Don't bother with
13439 string font registries. Don't fill in font name if it is a generic
13440 family name, fill family instead. Use spacing, family and script
13441 extra info to fill pitch, family and charset fields.
13442 (list_all_matching_fonts): Use font_callback_data struct.
13443 (unicode_range_for_char): Remove.
13444 (font_supported_scripts): New function.
13445 (w32font_initialize): Remove.
13446 (syms_of_w32font): Update which symbols are defined.
13447
13448 2008-02-01 Jason Rumney <jasonr@gnu.org>
13449
13450 * font.c (font_pixel_size): Reverse assq_no_quit args.
13451
13452 * w32term.h (FONT_WIDTH): Report max width, not average.
13453 (FONT_MAX_WIDTH): Remove.
13454 (FONT_AVG_WIDTH): New macro.
13455
13456 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
13457 redefinition of FONT_WIDTH.
13458
13459 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
13460 (w32_cache_char_metrics): Use FONT_WIDTH.
13461
13462 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
13463
13464 2008-02-01 Jason Rumney <jasonr@gnu.org>
13465
13466 * w32font.c (w32font_open): Make lfHeight negative.
13467
13468 * w32fns.c (x_default_font_parameter): Use new style font name.
13469 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
13470
13471 2008-02-01 Jason Rumney <jasonr@gnu.org>
13472
13473 * w32font.c (QCsubranges): New symbol.
13474 (w32font_open, w32font_has_char): Get subranges from subproperty
13475 of extra.
13476 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
13477 (syms_of_w32font): Define :subranges symbol.
13478
13479 * font.c (font_put_extra): Expose externally.
13480
13481 * font.h (font_put_extra): Move declaration from font.c.
13482
13483 * font.c (Ffont_get): Use font driver to determine otf capability.
13484 (adjust_anchor): Check if driver defines anchor_point before using.
13485
13486 * w32font.c (w32font_open): Handle size, height and pixel_size better.
13487 (w32font_draw): Use options.
13488 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
13489 Fix detection of truetype fonts.
13490 (registry_to_w32_charset): Handle charsets other than iso8859-1
13491 expressed as lisp symbols.
13492 (w32_registry): Express charset as lisp symbol.
13493 (fill_in_logfont): Reverse pixel and point height logic.
13494 Don't set width here. Set quality to default.
13495
13496 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
13497 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
13498
13499 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13500 Remove redundant loop and allocation.
13501
13502 * makefile.w32-in (font.o, w32font.o): New objects.
13503 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
13504 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
13505
13506 * xdisp.c (fill_composite_glyph_string): Make the first arg to
13507 STORE_XCHARB a valid l-value.
13508
13509 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
13510 calculations for non-Truetype fonts.
13511 (x_draw_glyph_string): Sync with xterm.c.
13512 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13513 Remove redundant code.
13514 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
13515
13516 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
13517 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
13518
13519 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
13520 (x_to_w32_charset, w32_to_x_charset): Expose externally.
13521
13522 * w32font.c: New file for w32 font backend.
13523
13524 2008-02-01 Kenichi Handa <handa@m17n.org>
13525
13526 * term.c: Don't include "buffer.h" twice.
13527
13528 2008-02-01 Kenichi Handa <handa@m17n.org>
13529
13530 * character.c (Funibyte_string): New function.
13531 (syms_of_character): Defsubr it.
13532
13533 2008-02-01 Jason Rumney <jasonr@gnu.org>
13534
13535 * w32term.c [USE_FONT_BACKEND]:
13536 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
13537 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
13538 (x_draw_glyph_string, x_draw_glyph_string_foreground)
13539 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
13540 (x_free_frame_resources): Sync with xterm.c.
13541
13542 2008-02-01 Andreas Schwab <schwab@suse.de>
13543
13544 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
13545 char-table size.
13546
13547 2008-02-01 Kenichi Handa <handa@m17n.org>
13548
13549 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
13550
13551 2008-02-01 Kenichi Handa <handa@m17n.org>
13552
13553 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
13554 font_otf_gpos, add font_drive_otf.
13555
13556 * fontset.c (fontset_find_font): Pay attention to font size
13557 specified for a font.
13558 (reorder_font_vector): Check contents of font_def.
13559
13560 * font.c (struct otf_list): Delete it.
13561 (otf_list): Make it a lisp variable.
13562 (otf_open): Use lispy otf_list.
13563 (generate_otf_features): Rename from parse_gsub_gpos_spec.
13564 (check_otf_features): New function.
13565 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
13566 New functions.
13567 (font_drive_otf): New function merging font_otf_gsub and
13568 font_otf_gpos.
13569 (font_open_for_lface): New arg spec. Change argument order.
13570 (font_load_for_face): Adjust for the change of font_open_for_lface.
13571 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
13572 Ffont_otf_gpos.
13573 (syms_of_font): Staticpro otf_list. Delete defsubr of
13574 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
13575
13576 * xfaces.c (set_font_frame_param): Adjust for the change of
13577 font_open_for_lface.
13578
13579 * font.h (font_open_for_lface): Adjust prototype.
13580 (struct font_driver): Delete members otf_gsub and otf_gpos, add
13581 member otf_drive.
13582 (font_otf_gsub, font_otf_gpos): Delete externs.
13583 (font_drive_otf): Extern it.
13584
13585 2008-02-01 Kenichi Handa <handa@m17n.org>
13586
13587 * font.c (font_at): If the window W is not on a window system,
13588 return Qnil.
13589
13590 * coding.c (produce_chars, encode_coding): Don't call
13591 insert_from_gap if no characters to produce.
13592
13593 2008-02-01 Kenichi Handa <handa@m17n.org>
13594
13595 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
13596 Fclear_face_cache.
13597
13598 * xfaces.c (face_for_font): Check also face->font==font->font.font.
13599
13600 2008-02-01 Miles Bader <miles@gnu.org>
13601
13602 * emacs.c (main): Change default value of `enable_font_backend' to 1.
13603 Parse "--disable-font-backend" option.
13604 (standard_args): Add "--disable-font-backend" option.
13605
13606 2008-02-01 Kenichi Handa <handa@m17n.org>
13607
13608 * fontset.c (fontset_find_font): New function.
13609 (fontset_font): Use fontset_find_font.
13610 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
13611 Register the specified font for all Latin characters.
13612 (new_fontset_from_font): Register the specified font for all Latin
13613 characters.
13614 (dump_fontset): For a realized fontset, include the base fontset
13615 name in the returned vector.
13616
13617 2008-02-01 Kenichi Handa <handa@m17n.org>
13618
13619 * character.h (CHAR_STRING): Cast C to unsigned on calling
13620 char_string.
13621
13622 * character.c (char_string): Type of arg C changed to unsigned.
13623 Signal an error if C is an invalid character code.
13624
13625 * editfns.c (general_insert_function, Fchar_to_string):
13626 Use CHARACTERP, not INTEGERP.
13627
13628 2008-02-01 Kenichi Handa <handa@m17n.org>
13629
13630 * character.h (MIN_MULTIBYTE_LEADING_CODE)
13631 (MAX_MULTIBYTE_LEADING_CODE): New macros.
13632
13633 * regex.c (analyse_first): Fix for multibyte characters in "case
13634 charset:" and "case categoryspec:".
13635
13636 2008-02-01 Andreas Schwab <schwab@suse.de>
13637
13638 * Makefile.in (LIBES): Move standard libraries to the end.
13639
13640 2008-02-01 Kenichi Handa <handa@m17n.org>
13641
13642 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
13643 nonzero, don't shrink the buffer nextb.
13644
13645 * buffer.h (struct buffer_text): New member inhibit_shrinking.
13646
13647 * coding.c (coding_alloc_by_making_gap): New arg offset.
13648 (alloc_destination): Call coding_alloc_by_making_gap with the arg
13649 offset.
13650 (decode_coding_iso_2022): Update coding->safe_charsets.
13651 (decode_coding_gap): Temporarily set
13652 current_buffer->text->inhibit_shrinking to 1.
13653
13654 2008-02-01 Kenichi Handa <handa@m17n.org>
13655
13656 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
13657 indexing into elements of s->cmp and s->char2b.
13658
13659 2008-02-01 Juanma Barranquero <lekktu@gmail.com>
13660
13661 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
13662
13663 2008-02-01 Kenichi Handa <handa@m17n.org>
13664
13665 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
13666 target_multibyte instead of multibyte.
13667 (re_match_2_internal): Call bcmp_translate with target_multibyte.
13668 (bcmp_translate): Change the argument name from multibyte to
13669 target_multibyte.
13670
13671 2008-02-01 Kenichi Handa <handa@m17n.org>
13672
13673 These changes are to compile a regexp into a pattern that can be
13674 used both for multibyte and unibyte targets.
13675
13676 * Makefile.in (search.o): Depend on charset.h.
13677
13678 * character.c (multibyte_char_to_unibyte_safe): New function.
13679
13680 * search.c: Include "charset.h".
13681 (compile_pattern_1): Delete argument multibyte. Don't set
13682 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
13683 (compile_pattern): Don't compare cp->buf.target_multibyte.
13684 Compare cp->buf.charset_unibyte.
13685 (compile_pattern): Set cp->buf.target_multibyte.
13686
13687 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
13688
13689 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
13690
13691 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
13692 multibyte. Change callers.
13693 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
13694 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
13695 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
13696 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
13697 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
13698 (regex_compile): Make the compiled pattern usable both for
13699 multibyte and unibyte targets.
13700 (analyse_first): Make the fastmap usable both for multibyte and
13701 unibyte targets.
13702 (TRANSLATE_VIA_MULTIBYTE): Delete.
13703 (re_match_2_internal): Pay attention to the case that the
13704 multibyteness of bufp and target may be different.
13705
13706 2008-02-01 Kenichi Handa <handa@m17n.org>
13707
13708 * xdisp.c (x_produce_glyphs): When a font is not found, make the
13709 empty box occupy at least one column width.
13710
13711 2008-02-01 Miles Bader <miles@gnu.org>
13712
13713 * Makefile.in: Remove redundant HAVE_XFT clause.
13714
13715 2008-02-01 Kenichi Handa <handa@m17n.org>
13716
13717 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
13718
13719 2008-02-01 Kenichi Handa <handa@m17n.org>
13720
13721 * fontset.c (Finternal_char_font): Fix for the case of POSITION
13722 being nil.
13723
13724 2008-02-01 Kenichi Handa <handa@m17n.org>
13725
13726 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
13727
13728 2008-02-01 Kenichi Handa <handa@m17n.org>
13729
13730 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
13731
13732 2008-02-01 Kenichi Handa <handa@m17n.org>
13733
13734 * search.c (simple_search): Fix previous change.
13735
13736 2008-02-01 Kenichi Handa <handa@m17n.org>
13737
13738 * xftfont.c (ftfont_font_format): Extern declaration.
13739
13740 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
13741
13742 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
13743 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
13744
13745 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
13746 (ftfont_font_format): Fix previous change.
13747
13748 * font.h (Ffont_xlfd_name): EXFUN it.
13749
13750 * font.c (font_parse_xlfd): Fix the array size of `f'.
13751 (register_font_driver): Use EQ to compare driver->type.
13752
13753 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
13754 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
13755 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
13756
13757 2008-02-01 Kenichi Handa <handa@m17n.org>
13758
13759 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
13760 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
13761
13762 2008-02-01 Kenichi Handa <handa@m17n.org>
13763
13764 * xfont.c (xfont_open): Set font->format.
13765
13766 * xftfont.c (xftfont_open): Set font->format.
13767
13768 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
13769 (ftfont_list): Include FC_FONTFORMAT in FcObject.
13770 (ftfont_open): Set font->format.
13771 (ftfont_font_format): New function.
13772
13773 * font.h (struct font): New member format.
13774
13775 * font.c (Qopentype): New variable.
13776 (syms_of_font): Defsym it.
13777 (Fquery_font): Change the format of the last element of the return
13778 value.
13779
13780 2008-02-01 Kenichi Handa <handa@m17n.org>
13781
13782 * xfns.c (xic_create_xfontset): Try the default fontset name as a
13783 last resort.
13784
13785 2008-02-01 Kenichi Handa <handa@m17n.org>
13786
13787 * coding.c (detect_coding_charset): Fix detection of multi-byte
13788 charset.
13789
13790 2008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
13791
13792 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
13793
13794 2008-02-01 Kenichi Handa <handa@m17n.org>
13795
13796 * xdisp.c (get_next_display_element): Set it->face_id for the
13797 first component of a composition.
13798 (x_produce_glyphs): Check if the font is changed or not for composition.
13799
13800 2008-02-01 Kenichi Handa <handa@m17n.org>
13801
13802 * fontset.c (Qlatin): New variable.
13803 (syms_of_fontset): Define it as a lisp symbol.
13804 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
13805
13806 2008-02-01 Kenichi Handa <handa@m17n.org>
13807
13808 * font.c (font_unparse_fcname): Pay attention to the case that
13809 some of font property is a null string.
13810
13811 2008-02-01 Kenichi Handa <handa@m17n.org>
13812
13813 * term.c: Include "composite.h".
13814 (encode_terminal_code): Output all components of composition.
13815 Check the size of encode_terminal_src.
13816 (produce_glyphs): For composition, call produce_composite_glyph.
13817 (append_composite_glyph, produce_composite_glyph): New functions.
13818
13819 * xdisp.c (x_produce_glyphs): In handling composition, if a font
13820 is not found, get font_info from the current ascii face.
13821
13822 2008-02-01 Kenichi Handa <handa@m17n.org>
13823
13824 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
13825 buffer-file-name to Qnil before calling insert_from_buffer.
13826
13827 * font.c (font_unparse_fcname): Pay attention to the case that
13828 foundry is a null string.
13829
13830 2008-02-01 Kenichi Handa <handa@m17n.org>
13831
13832 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
13833
13834 * font.c (Qunicode_sip): New variable.
13835 (syms_of_font): Declare it as a Lisp symbol.
13836
13837 * font.h (Qunicode_sip): Extern it.
13838
13839 2008-02-01 Kenichi Handa <handa@m17n.org>
13840
13841 * composite.c (get_composition_id): Pay attention to TAB component.
13842
13843 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
13844 TAB. Adjust for the change of s->char2b which always points to
13845 the first element of allocated memory.
13846
13847 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
13848
13849 * xdisp.c (handle_composition_prop): Set it->c to the first
13850 non-TAB component.
13851 (fill_composite_glyph_string): Change argument.
13852 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
13853 (x_produce_glyphs): Fix handling of left/right padding.
13854
13855 2008-02-01 Kenichi Handa <handa@m17n.org>
13856
13857 * coding.c (detect_coding_system): Fix for handling off
13858 inhibit_iso_escape_detection. Fix for the case that no coding
13859 system is defined for a specific coding category.
13860
13861 2008-02-01 Kenichi Handa <handa@m17n.org>
13862
13863 * font.c (font_matching_entity): Delete unused local var.
13864
13865 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
13866 opening a font.
13867
13868 * fileio.c (Finsert_file_contents): On recovering a file, assume
13869 Unix-like eol.
13870 (choose_write_coding_system): On auto-saving a file, force
13871 Unix-like eol.
13872
13873 * coding.c (setup_coding_system): Fix setting of
13874 coding->common_flags based on eol_type.
13875 (coding_inherit_eol_type): If PARENT is not nil, be sure to
13876 inherit from it.
13877
13878 2008-02-01 Kenichi Handa <handa@m17n.org>
13879
13880 * alloc.c (NSTATICS): Increas to 0x600.
13881
13882 2008-02-01 Kenichi Handa <handa@m17n.org>
13883
13884 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
13885 (ftfont_list): Don't check :name property.
13886 (ftfont_match): New function.
13887 (ftfont_pattern_entity): If the pattern doesn't contain
13888 FC_SPACING, don't assume FC_MONO.
13889
13890 * font.h (struct font_driver): New member `match'.
13891 (font_update_drivers): Adjust prototype.
13892
13893 * font.c (font_parse_fcname, font_parse_name): Don't change :name
13894 property of FONT.
13895 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
13896 them unconditionally.
13897 (font_matching_entity): New function.
13898 (font_open_by_name): Try font_matching_entity if exact match is
13899 not found.
13900 (font_update_drivers): Delete the arg FONT. Return a list of
13901 actually used backends. Don't free faces, font caches here.
13902 Don't store data in frame parameters. Don't call x_set_font.
13903 (Ffont_spec): Store :name property as is.
13904 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
13905 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
13906 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
13907 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
13908 Call font->driver->otf_gsub instead of font_otf_gsub.
13909
13910 * frame.c (x_set_font_backend): Do more works that were done in
13911 font_update_drivers before.
13912
13913 * xfont.c (xfont_match): New function.
13914 (xfont_driver): Set xfont_driver.match to xfont_match.
13915 (xfont_draw): Set font in GC if necessary.
13916
13917 * ftxfont.c (ftxfont_match): New function.
13918 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
13919
13920 * xftfont.c (xftfont_match): New function.
13921 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
13922
13923 2008-02-01 Kenichi Handa <handa@m17n.org>
13924
13925 * font.h (struct font): New member scalable.
13926 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
13927 (font_otf_gsub): Adjust prototype.
13928
13929 * font.c (font_otf_capability): Fix handling of the default langsys.
13930 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
13931 Check the contents of SPEC.
13932 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
13933 (check_gstring): New function.
13934 (REPLACEMENT_CHARACTER): New macro.
13935 (font_otf_gsub): New arg alternate_subst. Be sure to set all
13936 glyph codes of GSTRING.
13937 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
13938 (font_prepare_composition): Set cmp->glyph_len.
13939 (font_open_entity): Set font->scalable.
13940 (Ffont_get): Handle :otf property.
13941 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
13942 functions.
13943 (Fquery_font): Use font->font.full_name.
13944 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
13945 Sfont_otf_alternates.
13946
13947 * ftfont.c (ftfont_open): Set font->font.full_name and
13948 font->font.name properly. Fix calculation of font->font.height
13949 and font->min_width.
13950
13951 * ftxfont.c (ftxfont_create_gcs): New function.
13952 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
13953 (ftxfont_draw_backgrond): Fix filling region.
13954 (ftxfont_default_fid): New function.
13955 (ftxfont_open): Set xfont->fid to the return value of
13956 ftxfont_default_fid.
13957 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
13958 (ftxfont_done_face): Free only GCs that are created by
13959 ftxfont_create_gcs.
13960 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
13961
13962 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
13963 Clip to src->width, etc (not src->clip_XXX).
13964
13965 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
13966 FontBackend frame parameter.
13967
13968 2008-02-01 Kenichi Handa <handa@m17n.org>
13969
13970 * font.h (struct font_driver_list): New member `on'.
13971 (Fclear_font_cache): EXFUN it.
13972 (font_update_drivers): Extern it.
13973
13974 * font.c (font_unparse_fcname): Fix typo (swidth->width).
13975 (font_list_entities): Check driver_list->on.
13976 (register_font_driver): Initalize `on' member to 0.
13977 (font_update_drivers): New function.
13978 (Fclear_font_cache): Check driver_list->on.
13979
13980 * frame.h (Qfont_backend): Extern it.
13981 (x_set_font_backend): Extern it.
13982
13983 * frame.c (Qfont_backend): New variable.
13984 (frame_parms): New element for font-backend.
13985 (x_set_font_backend): New function.
13986
13987 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
13988 FontBackend frame parameter.
13989 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
13990 x_set_font_backend.
13991
13992 * xfont.c (xfont_list): Don't try listing by :name property if the
13993 name is not for XLFD.
13994
13995 2008-02-01 Kenichi Handa <handa@m17n.org>
13996
13997 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
13998 (LGLYPH_SET_TO): New macros.
13999 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
14000 element of G is vector or not.
14001 (font_at): Extern it.
14002
14003 * font.c: Include window.h.
14004 (font_lispy_object): New function.
14005 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
14006 end of valid glyph.
14007 (font_close_object): Fix getting (struct font *).
14008 (font_at): New function.
14009 (Ffont_get): If FONT is a font-object, get entity from it.
14010 (Ffont_make_gstring): Initialize elements of glyphs with nil.
14011 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
14012 range check.
14013 (Ffont_at): New function.
14014 (syms_of_font): Defsubr Sfont_at.
14015
14016 * xdisp.c (it_props): Move the entry for Qauto_composed to just
14017 before the entry for Qcomposition.
14018 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
14019 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
14020 the font in gstring.
14021 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
14022 LGLYPH_FORM (g) to detect the end of valid glyph.
14023 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
14024 we are composing with gstring.
14025
14026 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
14027 Check if adjustment is vector or not.
14028
14029 * Makefile.in (font.o): Make it depends on window.h.
14030
14031 2008-02-01 Kenichi Handa <handa@m17n.org>
14032
14033 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
14034 adjustment is vector or not.
14035
14036 2008-02-01 Miles Bader <miles@gnu.org>
14037
14038 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
14039
14040 2008-02-01 Kenichi Handa <handa@m17n.org>
14041
14042 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
14043 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
14044 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
14045
14046 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
14047 (DEVICE_DELTA): Fix typo.
14048 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
14049 LGLYPH format.
14050
14051 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
14052 the change of LGLYPH format.
14053
14054 2008-02-01 Kenichi Handa <handa@m17n.org>
14055
14056 * ftfont.c (ftfont_list): Fix typo.
14057 (ftfont_build_basic_charsets): Don't include letters with diacritics.
14058
14059 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14060
14061 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
14062
14063 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
14064 xftface_info is non-NULL.
14065
14066 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14067
14068 * ftfont.c (ftfont_list): Move misplaced #endif.
14069
14070 2008-02-01 Kenichi Handa <handa@m17n.org>
14071
14072 * ftfont.c (ftfont_list): Pay attention to the case that
14073 FC_CAPABILITY is not defined.
14074
14075 2008-02-01 Kenichi Handa <handa@m17n.org>
14076
14077 * xftfont.c (xftfont_open): Set charset related members to -1.
14078
14079 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
14080 QCname.
14081 (ftfont_open): Set charset related members to -1.
14082
14083 * fontset.c (Votf_script_alist): New variable.
14084 (syms_of_fontset): Initialize it.
14085 (fontset_font): Delete unused variable.
14086
14087 * fontset.h (Votf_script_alist): Extern it.
14088
14089 * font.c (font_find_for_lface): Optimize code.
14090
14091 * font.h (font_close_object, font_merge_old_spec): Extern them.
14092
14093 2008-02-01 Kenichi Handa <handa@m17n.org>
14094
14095 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
14096 (syms_of_font): Initialize them.
14097 (font_pixel_size): Allow float value in dpi.
14098 (font_prop_validate_type): Delete.
14099 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
14100 Change caller.
14101 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
14102 (font_prop_validate_extra): Delete.
14103 (font_prop_validate_spacing): New function.
14104 (font_property_table): Add elements for all known properties.
14105 (get_font_prop_index): Rename from check_font_prop_name. New
14106 argument FROM. Change caller.
14107 (font_prop_validate): Validate all known properties.
14108 (font_put_extra): Delete argument force. Change caller.
14109 (font_expand_wildcards): Make it static. Fix the way of shrinking
14110 the possible range.
14111 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
14112 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
14113 Change caller.
14114 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
14115 (font_parse_fcname): Delete argument merge. Fix parsing of point
14116 size. Don't validate properties values here. Change caller.
14117 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
14118 (font_open_by_name): Delete unused variable.
14119 (Ffont_spec): Likewise. Validate property values.
14120 (Ffont_match_p): New function.
14121
14122 * font.h (QCscalable): Extern it.
14123 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
14124
14125 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
14126
14127 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
14128 (xfont_list_pattern): New function.
14129 (xfont_list): Use xfont_list_pattern.
14130
14131 2008-02-01 Kenichi Handa <handa@m17n.org>
14132
14133 * font.h (Flist_fonts): EXFUN it.
14134
14135 2008-02-01 Jason Rumney <jasonr@gnu.org>
14136
14137 * w32term.c (w32_initialize): Add back smoothing_type and
14138 smoothing_enabled definitions.
14139
14140 2008-02-01 Kenichi Handa <handa@m17n.org>
14141
14142 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
14143 s->face->font on determining underline position.
14144
14145 2008-02-01 Kenichi Handa <handa@m17n.org>
14146
14147 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
14148 (font_has_char): Accept font-object too.
14149 (font_find_for_lface): Try at first with a size specified in face.
14150
14151 2008-02-01 Kenichi Handa <handa@m17n.org>
14152
14153 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
14154 font_open_by_name.
14155
14156 2008-02-01 Kenichi Handa <handa@m17n.org>
14157
14158 * font.h (QCspacing, QCdpi): Extern them.
14159 (enum font_spacing): New enum.
14160 (FONT_PIXEL_SIZE_QUANTUM): New macro.
14161
14162 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
14163 (QCspacing, QCdpi): New variables.
14164 (syms_of_font): Initialize them.
14165 (font_pixel_size): New function.
14166 (font_put_extra): New function.
14167 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
14168 in FONT_EXTRA.
14169 (font_parse_fcname): Handle enumerated values (e.g. bold).
14170 Fix handling font size. Add QCname property that contains only
14171 unknown properties.
14172 (font_score): Change argument. Change caller. Pay attention to
14173 FONT_PIXEL_SIZE_QUANTUM.
14174 (font_sort_entites, font_list_entities, font_find_for_lface)
14175 (font_open_for_lface, font_open_by_name): Fix handling of font size.
14176 (Ffont_spec): Add QCname property that contains only unknown properties.
14177
14178 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
14179 include weight in listing pattern, instead check weight of each
14180 listed font. Don't include scalable in pattern. Pay attention to
14181 FONT_PIXEL_SIZE_QUANTUM.
14182
14183 2008-02-01 Kenichi Handa <handa@m17n.org>
14184
14185 * font.c (font_parse_fcname): Fix parsing of point-size.
14186 (font_unparse_fcname): Produce symbolic names for style properties.
14187 (font_list_entities): Handle float size correctly.
14188 (font_open_by_name): Prefer `normal' property values if the name
14189 doesn't specify them.
14190
14191 * fontset.c (Finternal_char_font): Use font_get_name, not
14192 Ffont_xlfd_name.
14193
14194 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
14195 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
14196 pattern. Don't force scalable.
14197
14198 * xftfont.c (xftfont_open): For generating a name, start from
14199 96-byte buffer.
14200
14201 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14202
14203 * frame.h (x_new_fontset2): Fix prototype.
14204
14205 2008-02-01 Kenichi Handa <handa@m17n.org>
14206
14207 * font.h (struct font_driver): Delete member parse_name.
14208 (font_match_p, font_get_spec, font_parse_fcname)
14209 (font_unparse_fcname): Extern them.
14210 (font_get_name): Adjust prototype.
14211
14212 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
14213 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
14214 (font_expand_wildcards): Fix handling ENCODING field. Avoid
14215 unnecessary checks for weight, slant, and swidth.
14216 (font_parse_fcname): New function.
14217 (font_unparse_fcname): New function.
14218 (font_parse_name): New function.
14219 (font_match_p): New function.
14220 (font_get_name): Change return value to Lisp string.
14221 (font_get_spec): New function.
14222 (Qunspecified, Qignore_defface): Don't extern them.
14223 (font_find_for_lface): Assume that LFACE is fully specified.
14224 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
14225 object, use it for FACE.
14226 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
14227 driver->parse_name.
14228 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
14229
14230 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
14231 prototype.
14232
14233 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
14234 argument F. Don't call Fnew_fontset. Instead, directly call
14235 make_fontset.
14236
14237 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
14238
14239 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
14240 of x_new_fontset2.
14241
14242 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
14243 (Qsans__serif): New variables.
14244 (ftfont_generic_family_list): New variable.
14245 (syms_of_ftfont): Initialize the above variables.
14246 (ftfont_pattern_entity): Delete argument NAME.
14247 (ftfont_list_generic_family): New function.
14248 (ftfont_parse_name): Delete this function.
14249 (ftfont_list): Try generic family only when FcFontList found no font.
14250 (ftfont_list_family): Fix args to FcObjectSetBuild.
14251
14252 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
14253 object in attrs[LFACE_FONT_INDEX].
14254 (set_lface_from_font_name): Cancel all changes for font-backend.
14255 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
14256 function.
14257 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
14258 font object in QCfont attribute.
14259 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
14260 (realize_default_face) [USE_FONT_BACKEND]: Call
14261 set_lface_from_font_and_fontset.
14262
14263 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
14264 "fixed", and signal error here if no suitable font was found.
14265
14266 * xfont.c (xfont_parse_name): Delete this function.
14267
14268 * xftfont.c (xftfont_open): Change coding style of error
14269 handling. Generate fontconfig's fontname pattern.
14270
14271 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
14272 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
14273
14274 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
14275 Both args FONTSET and FONT_OBJECT must be existing ones.
14276
14277 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14278
14279 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
14280
14281 2008-02-01 Kenichi Handa <handa@m17n.org>
14282
14283 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
14284
14285 * font.h (struct font): Fix typo.
14286
14287 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
14288 XLFD_XXX_INDEX.
14289 (enum xlfd_field_mask): New enum.
14290 (intern_font_field): Changed argument. Change caller. If digits
14291 are followed by non-digits, return a symbol.
14292 (font_expand_wildcards): New function.
14293 (font_parse_xlfd): Fix wildcard handling.
14294 (Ffont_spec): If :name is specified, reflect the info in the other
14295 properties.
14296
14297 * ftfont.c (ftfont_pattern_entity): Fix typo.
14298 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
14299 locale.
14300
14301 2008-02-01 Kenichi Handa <handa@m17n.org>
14302
14303 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
14304
14305 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
14306 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
14307 registry doesn't specify encoding part.
14308 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
14309 (font_open_by_name): At first try parsing the name.
14310 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
14311 as Lisp symbols.
14312
14313 * fontset.c (reorder_font_vector): Pay attention to the case that
14314 the 3rd element of font_def is nil.
14315 (fontset_font): For the default fontset, append one more fontset
14316 elements for a script-based font specification. Don't add script
14317 attribute on finding a font.
14318 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
14319 font name.
14320 (fontset_ascii_font): If a font can't be opened, return nil.
14321
14322 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
14323 (ftfont_pattern_entity): New function.
14324 (ftfont_get_cache): Assume that freetype_font_cache is already
14325 initialized.
14326 (ftfont_list): Handle the case that a file is specified in font
14327 name. Use ftfont_pattern_entity to generate entities.
14328 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
14329 (syms_of_ftfont): Initialize freetype_font_cache.
14330
14331 * xftfont.c (xftfont_open): Make the font name fontconfig's
14332 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
14333 (xftfont_close): Free font->font.name if not NULL.
14334
14335 * xfont.c (xfont_list): If script is specified for a font, return
14336 null_vector.
14337 (xfont_list_family): Declare argument type.
14338
14339 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
14340 name, set LFACE_FONT (lface) to nil.
14341
14342 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
14343 return Qnil.
14344
14345 2008-02-01 Kenichi Handa <handa@m17n.org>
14346
14347 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
14348 (standard_args): Add "-enable-font-backend".
14349
14350 2008-02-01 Kenichi Handa <handa@m17n.org>
14351
14352 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
14353 (struct xftdraw_list, xftdraw_list): Delete them.
14354 (register_xftdraw, check_xftdraw): Delete them.
14355 (xftfont_prepare_face): Don't call register_xftdraw.
14356 (xftfont_done_face): Don't call check_xftdraw.
14357 (xftfont_draw): Get background color only when with_background is
14358 nonzero.
14359
14360 * xfont.c (xfont_encode_char): Fix calculation of char2b.
14361
14362 2008-02-01 Kenichi Handa <handa@m17n.org>
14363
14364 These changes are for the new font handling codes.
14365
14366 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
14367 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
14368 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
14369 (FONTSRC, FONTOBJ): New variables.
14370 (obj): Add $(FONTOBJ).
14371 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
14372 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
14373 @LIBOTF_LIBS@.
14374 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
14375 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
14376
14377 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
14378
14379 * character.h (Vscript_representative_chars): Extern it.
14380
14381 * character.c (Vscript_representative_chars): New variable.
14382 (syms_of_character): Declare it as a Lisp variable.
14383
14384 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
14385 enable_font_backend is nonzero, accept the composition method
14386 COMPOSITION_WITH_GLYPH_STRING.
14387
14388 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
14389 enumeration COMPOSITION_WITH_GLYPH_STRING.
14390
14391 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
14392 members clip_x, clip_y, clip_width, and clip_height.
14393 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
14394
14395 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
14396 --enable-font-backend. Call syms_of_font.
14397
14398 * fns.c (assoc_no_quit): New function.
14399
14400 * fontset.h (FONT_INFO_FROM_FACE): New macro.
14401 (face_for_font, new_fontset_from_font)
14402 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
14403
14404 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
14405 (fontset_font, fontset_ascii, face_for_char)
14406 (make_fontset_for_ascii_face, Ffont_info)
14407 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
14408 is nonzero, use font-backend mechanism.
14409 (find_font_encoding): Make it non-static.
14410 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
14411 New functions.
14412
14413 * frame.h (struct frame): New members resx and resy.
14414 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
14415 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
14416
14417 * frame.c [USE_FONT_BACKEND]: Include "font.h".
14418 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
14419
14420 * lisp.h (assoc_no_quit): Extern it.
14421
14422 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
14423 Through out the file, use FONT_INFO_FROM_FACE instead of
14424 FONT_INFO_FROM_ID, use get_per_char_metric instead of
14425 rif->per_char_metric.
14426 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
14427 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
14428 (get_glyph_face_and_encoding, fill_composite_glyph_string)
14429 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14430 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
14431 nonzero, use font-backend mechanism.
14432 (get_per_char_metric): New function.
14433
14434 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
14435 (set_lface_from_font_name)
14436 (set_font_frame_param, free_realized_face)
14437 (prepare_face_for_display, clear_face_gcs)
14438 (Finternal_set_font_selection_order, realize_x_face)
14439 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
14440 font-backend mechanism.
14441 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
14442 (load_face_font) [USE_FONT_BACKEND]: Abort.
14443 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
14444 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
14445
14446 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
14447 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
14448 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
14449 nonzero, register all available font drivers. Call
14450 x_default_font_parameter for deciding a font.
14451 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
14452
14453 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
14454 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
14455 (x_set_glyph_string_clipping_exactly)
14456 (x_compute_glyph_string_overhangs)
14457 (x_draw_glyph_string_foreground)
14458 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
14459 (x_free_frame_resources) [USE_FONT_BACKEND]: If
14460 enable_font_backend is nonzero, use font-backend mechanism.
14461 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
14462
14463 2008-02-01 Kenichi Handa <handa@m17n.org>
14464
14465 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
14466 system_eol_type.
14467 (syms_of_coding): Initialize system_eol_type.
14468
14469 * process.c (Fset_process_coding_system): Inherit system's eol
14470 format if necessary.
14471
14472 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14473
14474 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
14475
14476 2008-02-01 Kenichi Handa <handa@m17n.org>
14477
14478 * coding.c (decode_eol): Pay attention to buffer relocation in
14479 del_range_2.
14480 (decode_coding): Call decode_eol before restoring undo_list.
14481
14482 2008-02-01 Kenichi Handa <handa@m17n.org>
14483
14484 * charset.c (Fdefine_charset_internal): Fix setting of
14485 emacs_mule_bytes.
14486
14487 2008-02-01 Kenichi Handa <handa@m17n.org>
14488
14489 * keyboard.c (read_char): Check if C is a character or not before
14490 looking up Vkeyboard_translate_table.
14491
14492 2008-02-01 Kenichi Handa <handa@m17n.org>
14493
14494 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
14495 condition to terminate the loop.
14496
14497 2008-02-01 Kenichi Handa <handa@m17n.org>
14498
14499 * coding.c (produce_composition): Compare charbuf[i] instead of
14500 args[i] against 0.
14501 (Fterminal_coding_system): Use EQ to compare Lisp objects.
14502
14503 2008-02-01 Kenichi Handa <handa@m17n.org>
14504
14505 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
14506 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
14507 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
14508 detect_coding.
14509 (emacs_mule_char): Handle old style (Emacs 20) component character
14510 of a composition.
14511 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
14512 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
14513 composition rule.
14514 (decode_coding_emacs_mule): Handle invalid bytes correctly.
14515
14516 2008-02-01 Kenichi Handa <handa@m17n.org>
14517
14518 * coding.c (encode_coding_ccl): Allocate destination dynamically
14519 when necessary.
14520
14521 2008-02-01 Kenichi Handa <handa@m17n.org>
14522
14523 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
14524 the loop. When quitted, show a proper error message.
14525
14526 2008-02-01 Kenichi Handa <handa@m17n.org>
14527
14528 * xterm.c (x_set_glyph_string_clipping_exactly): Set
14529 src->clip_head and src->clip_tail temporarily instead of src->hl.
14530
14531 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
14532 character sequence.
14533 (Fccl_execute_on_string): Use ASET, not XSET.
14534
14535 2008-02-01 Kenichi Handa <handa@m17n.org>
14536
14537 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
14538
14539 2008-02-01 Kenichi Handa <handa@m17n.org>
14540
14541 * coding.c (decode_coding): Fix the condition of terminating the
14542 decoding loop.
14543
14544 2008-02-01 Kenichi Handa <handa@m17n.org>
14545
14546 * data.c (Faset): On setting a character bigger than 255 in a
14547 unibyte string, signal an error instead of make the string multibyte.
14548
14549 2008-02-01 Kenichi Handa <handa@m17n.org>
14550
14551 * charset.c (map_charset_chars): Fix for ascii-compatible charset
14552 made by a mapping table.
14553
14554 2008-02-01 Kenichi Handa <handa@m17n.org>
14555
14556 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
14557 not.
14558 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
14559 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
14560
14561 * xterm.c (x_draw_composite_glyph_string_foreground): Check
14562 s->face is NULL or not.
14563
14564 2008-02-01 Kenichi Handa <handa@m17n.org>
14565
14566 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
14567 (x_draw_glyph_string): Fix drawing of right_overhang and
14568 left_overhang around/on cursor.
14569
14570 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
14571
14572 2008-02-01 Kenichi Handa <handa@m17n.org>
14573
14574 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
14575
14576 2008-02-01 Kenichi Handa <handa@m17n.org>
14577
14578 * coding.c (Fdefine_coding_system_internal)
14579 (Fdefine_coding_system_alias): Avoid a duplicated element in
14580 Vcoding_system_alist.
14581
14582 2008-02-01 Kenichi Handa <handa@m17n.org>
14583
14584 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
14585
14586 * coding.c (Qcoding_system_define_form): New variable.
14587 (syms_of_coding): Intern and staticpro it.
14588 (Fcoding_system_p): Check Qcoding_system_define_form.
14589 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
14590
14591 * coding.h (CODING_SYSTEM_P): If ID is not available, call
14592 Fcoding_system_p.
14593 (CHECK_CODING_SYSTEM): If ID is not available, call
14594 Fcheck_coding_system.
14595 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
14596 Try also Fcheck_coding_system.
14597
14598 2008-02-01 Kenichi Handa <handa@m17n.org>
14599
14600 * coding.c (code_conversion_restore): GCPRO arg.
14601
14602 2008-02-01 Kenichi Handa <handa@m17n.org>
14603
14604 * character.c (lisp_string_width): Check multibyteness of STRING.
14605
14606 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14607
14608 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
14609 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
14610 (decode_mac_font_name): Use decode_coding_c_string instead of
14611 decode_coding.
14612 (x_load_font): Initialize fontp->fontset to -1. Set
14613 fontp->encoding_type.
14614
14615 2008-02-01 Kenichi Handa <handa@m17n.org>
14616
14617 * search.c (search_buffer): Give up BM search on case-fold-search
14618 if one of a target character has a case-equivalence of different
14619 byte length even if that target charcter is an ASCII.
14620 (simple_search): Fix calculation of byte length of matched text.
14621 (boyer_moore): Fix handling of case-equivalent multibyte characters.
14622
14623 2008-02-01 Kenichi Handa <handa@m17n.org>
14624
14625 * coding.c (decode_coding): Fix handling of invalid bytes.
14626
14627 2008-02-01 Kenichi Handa <handa@m17n.org>
14628
14629 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
14630 Unicode characters.
14631
14632 2008-02-01 Kenichi Handa <handa@m17n.org>
14633
14634 * coding.c (encode_coding_object): If a pre-write-conversion
14635 function makes a new buffer, kill it.
14636
14637 2008-02-01 Kenichi Handa <handa@m17n.org>
14638
14639 * coding.c (QCascii_compatible_p): New variable.
14640 (syms_of_coding): Initialize it.
14641 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
14642 calling string_char.
14643 (record_conversion_result): Add `default:' case.
14644 (coding_charset_list): Delete unused variable `coding_type'.
14645 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
14646 property in the plist of the coding system.
14647 (Fcoding_system_put): Check QCascii_compatible_p.
14648
14649 2008-02-01 Miles Bader <miles@gnu.org>
14650
14651 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
14652 removed calculation of frame `f', as it's now used.
14653
14654 2008-02-01 Kenichi Handa <handa@m17n.org>
14655
14656 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
14657 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
14658 (UNIDATA): New variable.
14659 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
14660 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
14661 $(RUN_TEMACS) unconditionally.
14662
14663 2008-02-01 Kenichi Handa <handa@m17n.org>
14664
14665 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
14666 (admindir): New variable.
14667 ($(lispsource)international/charprop.el): New target.
14668
14669 2008-02-01 Miles Bader <miles@gnu.org>
14670
14671 * character.c (chars-in-region): Remove obsolete function.
14672 (syms_of_character): Remove its initialization.
14673
14674 2008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
14675
14676 * w32select.c (validate_coding_system)
14677 (setup_windows_coding_system): New functions.
14678 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
14679 setup_windows_coding_system.
14680 (setup_config, Fw32_get_clipboard_data): Use
14681 validate_coding_system.
14682 (Fx_selection_exists): Move call to setup_config to a place
14683 where signals are allowed.
14684
14685 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
14686 (Fcheck_coding_system): Add declarations.
14687
14688 2008-02-01 Kenichi Handa <handa@m17n.org>
14689
14690 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
14691
14692 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14693
14694 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
14695 string as the second argument for x_new_fontset.
14696
14697 2008-02-01 Kenichi Handa <handa@m17n.org>
14698
14699 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
14700 (encode_coding_object): Use safe_call instead of call2.
14701
14702 2008-02-01 Kenichi Handa <handa@m17n.org>
14703
14704 * fontset.c (Fset_fontset_font): Check family element of a given vector.
14705
14706 * Makefile.in (lisp): Include charprop.el.
14707
14708 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14709
14710 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
14711 Not sure if it's unnecessary.
14712
14713 2008-02-01 Steven Tamm <steventamm@mac.com>
14714
14715 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
14716 some possibly unnecessary fontset checking code that crashed
14717 when creating a new frame.
14718
14719 2008-02-01 Kenichi Handa <handa@m17n.org>
14720
14721 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
14722 lookup_face.
14723
14724 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
14725
14726 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
14727
14728 2008-02-01 Kenichi Handa <handa@m17n.org>
14729
14730 * coding.c: Cancel the change done in HEAD on 2008-02-01.
14731 (coding_charset_list): New function.
14732
14733 * coding.h (coding_charset_list): Extern it.
14734
14735 2008-02-01 Kenichi Handa <handa@m17n.org>
14736
14737 * fontset.c (Fset_fontset_font): Call find_font_encoding with
14738 concatenation of family and registry.
14739
14740 2008-02-01 Kenichi Handa <handa@m17n.org>
14741
14742 * character.h (BYTE8_STRING): Fix typo.
14743
14744 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
14745 string to multibyte (sync to HEAD).
14746
14747 * casefiddle.c (casify_region): Handle changes in byte-length
14748 using replace_range_2 (sync to HEAD).
14749
14750 2008-02-01 Andreas Schwab <schwab@suse.de>
14751
14752 * chartab.c (map_char_table): GCPRO table and arg.
14753
14754 2008-02-01 Kenichi Handa <handa@m17n.org>
14755
14756 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
14757 already at limit.
14758
14759 2008-02-01 Kenichi Handa <handa@m17n.org>
14760
14761 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
14762 instead of fast_c_string_match_ignore_case.
14763 (find_font_encoding): Change argument to Lisp_Object. Use
14764 fast_string_match_ignore_case instead of
14765 fast_c_string_match_ignore_case. Change caller.
14766
14767 2008-02-01 Kenichi Handa <handa@m17n.org>
14768
14769 * xdisp.c (get_next_display_element): In unibyte case, decide to
14770 display in octal form by checking a character by
14771 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
14772
14773 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
14774
14775 * character.c (unibyte_has_multibyte_table): New variable.
14776
14777 * character.h (unibyte_has_multibyte_table): Extern it.
14778 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
14779
14780 2008-02-01 Kenichi Handa <handa@m17n.org>
14781
14782 * coding.c (encode_coding_iso_2022): Fix handling of charset
14783 annotation.
14784
14785 2008-02-01 Kenichi Handa <handa@m17n.org>
14786
14787 * coding.c (setup_coding_system): If coding_system is nil, use
14788 Qundecided.
14789 (Fterminal_coding_system): Return nil if terminal coding system is
14790 `undecided'.
14791 (syms_of_coding): Define coding-system `undecided' here. Setup
14792 terminal_coding as `undecided'.
14793
14794 2008-02-01 Kenichi Handa <handa@m17n.org>
14795
14796 * xdisp.c (message_dolog, set_message_1): Call
14797 unibyte_char_to_multibyte with arg type int.
14798
14799 * lread.c (read1): Fix reading of a char-table.
14800
14801 * print.c (print_object): Include sub char-table in circularities
14802 detection.
14803
14804 2008-02-01 Kenichi Handa <handa@m17n.org>
14805
14806 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
14807 Append the found sequences in car of ARGS instead of prepending.
14808
14809 2008-02-01 Kenichi Handa <handa@m17n.org>
14810
14811 * fileio.c (report_file_error): Make a unibyte string from
14812 strerror (errorno).
14813 (Fsubstitute_in_file_name): Fix the arg to
14814 unibyte_char_to_multibyte. It is evaluated twice.
14815
14816 2008-02-01 Kenichi Handa <handa@m17n.org>
14817
14818 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
14819
14820 2008-02-01 Kenichi Handa <handa@m17n.org>
14821
14822 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
14823 BOM is not found.
14824 (detect_coding, detect_coding_system): Optimization for ISO-2022
14825 when no 8-bit data is found.
14826
14827 2008-02-01 Jason Rumney <jasonr@gnu.org>
14828
14829 * w32fns.c (x_to_w32_font): Update to use new coding struct.
14830
14831 2008-02-01 Kenichi Handa <handa@m17n.org>
14832
14833 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
14834 CHARS.
14835
14836 2008-02-01 Steven Tamm <steventamm@mac.com>
14837
14838 * macterm.c (mac_encode_char): Add charset argument and update
14839 to use encoding_type.
14840 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
14841 switch to pure fontset.
14842 (decode_mac_font_name): Temporarily remove decoding.
14843 (x_font_name_to_mac_font_name): Temporarily remove encoding.
14844 (x_load_font): Temporarily remove encoding.
14845
14846 2008-02-01 Kenichi Handa <handa@m17n.org>
14847
14848 * xfaces.c (Fface_font): If frame is not on a window system,
14849 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
14850 refer to face->font.
14851 (split_font_name_into_vector, build_font_name_from_vector)
14852 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
14853 when HAVE_WINDOW_SYSTEM is defined.
14854
14855 2008-02-01 Kenichi Handa <handa@m17n.org>
14856
14857 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
14858 (x_produce_glyphs): Fix setting of members of cmp in case
14859 cmp->glyph_len is zero.
14860
14861 * fontset.c (Fset_fontset_font): Fix docstring.
14862 (Ffontset_info): Make it backward compatible. New arg ALL.
14863
14864 2008-02-01 Kim F. Storm <storm@cua.dk>
14865
14866 * process.c (read_process_output): Grow decoding_buf when needed;
14867 this could cause a crash in allocate_string and compact_small_strings.
14868
14869 2008-02-01 Kenichi Handa <handa@m17n.org>
14870
14871 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
14872
14873 2008-02-01 Kenichi Handa <handa@m17n.org>
14874
14875 * coding.c (setup_coding_system): Set coding->common_flags
14876 correctly for raw-text.
14877 (consume_chars): On encoding unibyte text by raw-text, don't check
14878 multibyte form.
14879 (encode_coding): On encoding by raw-text, never use translation tables.
14880
14881 * fileio.c (e_write): Short cut for the case of no encoding.
14882
14883 2008-02-01 Kenichi Handa <handa@m17n.org>
14884
14885 * coding.c (detect_coding, detect_coding_system): Delete unused
14886 variables.
14887
14888 2008-02-01 Kenichi Handa <handa@m17n.org>
14889
14890 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
14891 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
14892
14893 2008-02-01 Kenichi Handa <handa@m17n.org>
14894
14895 * coding.c (Ffind_coding_systems_region_internal): Include
14896 raw-text and no-conversion in the result.
14897
14898 2008-02-01 Kenichi Handa <handa@m17n.org>
14899
14900 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
14901 (load_font_get_repertory): Delete unnecessary check of ENCODING of
14902 FONT_DEF.
14903 (font_def_arg, add_arg, from_arg, to_arg): New args.
14904 (set_fontset_font): Change argument.
14905 (Fset_fontset_font): Fix for the case that TARGET is a script
14906 name and charset name.
14907 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
14908
14909 2008-02-01 Kenichi Handa <handa@m17n.org>
14910
14911 * fontset.c (fontset_font): Rename from fontset_face. Change return
14912 value.
14913 (face_suitable_for_char_p, face_for_char): Adjust for the change
14914 of fontset_font.
14915 (make_fontset_for_ascii_face): Fix setting of the fontset element
14916 for ASCII.
14917 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
14918 to get a font name.
14919 (Ffontset_info): Adjust for the change of fontset_font.
14920
14921 * coding.c (emacs_mule_char): Check invalid code more rigidly.
14922
14923 * character.h (LEADING_CODE_LATIN_1_MIN)
14924 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
14925
14926 2008-02-01 Kenichi Handa <handa@m17n.org>
14927
14928 * editfns.c (check_translation): New function.
14929 (Ftranslate_region_internal): Handle M:N mapping.
14930
14931 2008-02-01 Kenichi Handa <handa@m17n.org>
14932
14933 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
14934
14935 2008-02-01 Kenichi Handa <handa@m17n.org>
14936
14937 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
14938 goto invalid_code.
14939 (decode_coding_iso_2022): Fix handling of invalid designation.
14940
14941 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
14942 after calling code_conversion_save.
14943
14944 2008-02-01 Kenichi Handa <handa@m17n.org>
14945
14946 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
14947
14948 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
14949
14950 * fontset.c: Include "intervals.h".
14951 (fontset_face): Fix comparing of Lisp_Objects.
14952 (free_face_fontset, new_fontset_from_font_name): Fix
14953 Lisp_Object/int mixup.
14954
14955 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
14956
14957 * coding.c: Add many prototypes for static functions.
14958 (get_translation_table): Allow max_lookup to be NULL.
14959 (decode_coding, Ffind_coding_systems_region_internal)
14960 (Funencodable_char_position, Fcheck_coding_systems_region): Call
14961 get_translation_table with max_lookup NULL.
14962
14963 2008-02-01 Kenichi Handa <handa@m17n.org>
14964
14965 * coding.c (get_translation_table): Declare it as Lisp_Object.
14966 (LOOKUP_TRANSLATION_TABLE): New macro.
14967 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
14968 instead of CHAR_TABLE_REF.
14969
14970 2008-02-01 Kenichi Handa <handa@m17n.org>
14971
14972 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
14973 annotation data format.
14974 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
14975 Change arguments FROM and TO to single argument NCHARS. Change caller.
14976 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
14977 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14978 (decode_coding_ccl, decode_coding_charset): Pay attention to
14979 coding->charbuf_used.
14980 (get_translation): New function.
14981 (produce_chars): New arguments translation_table and last_block.
14982 Translate characters here. Return number of carryover chars.
14983 Change caller.
14984 (produce_composition): New argument pos. Change caller.
14985 Adjust for the change of annotation data format.
14986 (produce_charset, produce_annotation): Likewise.
14987 (decode_coding, encode_coding): Don't call translate_chars.
14988 (consume_chars): New arg translation_table. Change caller.
14989 (translate_chars): Delete.
14990 (syms_of_coding): Make translation-table's number of extra slots 2.
14991
14992 2008-02-01 Kenichi Handa <handa@m17n.org>
14993
14994 * search.c (simple_search): Fix setting this_pos_byte in backward
14995 search.
14996
14997 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
14998 byte sequence.
14999 (detect_coding_ccl): Fix setting of the variable valids.
15000
15001 2008-02-01 Kenichi Handa <handa@m17n.org>
15002
15003 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
15004
15005 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
15006
15007 * editfns.c (Ftranslate_region_internal): Rename from
15008 Ftranslate_region. Accept a char-table in TABLE.
15009 (syms_of_editfns): Defsubr Stranslate_region_internal.
15010
15011 * xfaces.c (set_lface_from_font_name): If a font is specified for
15012 a frame, generate a fontset from the font.
15013 (build_scalable_font_name): If the scalable font is requested for
15014 a specific size, don't change that size.
15015 (try_font_list): Try a scalable font also in the case that a
15016 pattern string is specified.
15017
15018 2008-02-01 Kenichi Handa <handa@m17n.org>
15019
15020 * xfaces.c (Fface_font): New optional arg CHARACTER.
15021
15022 2008-02-01 Kenichi Handa <handa@m17n.org>
15023
15024 * charset.h (CHARSET_OFFSET): New macro.
15025
15026 2008-02-01 Kenichi Handa <handa@m17n.org>
15027
15028 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
15029
15030 * fontset.c (fontset_face): Handle the case that repertory is a
15031 char-table.
15032 (find_font_encoding): Return nil for unknown encoding.
15033 (Fset_fontset_font): Ignore a font of unknown encoding.
15034
15035 2008-02-01 Kenichi Handa <handa@m17n.org>
15036
15037 * keymap.c (describe_vector): Handle default value of a char table.
15038
15039 * fontset.c (fontset_face): Handle fallback fonts correctly.
15040 (Ffontset_info): Return infomation about fallback fonts.
15041
15042 2008-02-01 Kenichi Handa <handa@m17n.org>
15043
15044 * fontset.c (FONTSET_DEFAULT): New macro.
15045 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
15046 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
15047 the case that it is nil.
15048 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
15049 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
15050
15051 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
15052 subset or superset.
15053
15054 2008-02-01 Kenichi Handa <handa@m17n.org>
15055
15056 * emacs.c (main): Call init_charset after syms_of_XXX.
15057
15058 * charset.c (Vcharset_map_directory): Delete.
15059 (Vcharset_map_path): New variable.
15060 (load_charset_map_from_file): Use Vcharset_map_path instead.
15061 (init_charset): Initialize Vcharset_map_path.
15062 (syms_of_charset): Delete declaration of "charset-map-directory",
15063 add declaration of "charset-map-path".
15064
15065 2008-02-01 Kenichi Handa <handa@m17n.org>
15066
15067 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
15068 ASCII only string.
15069
15070 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
15071
15072 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
15073 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
15074
15075 2008-02-01 Kenichi Handa <handa@m17n.org>
15076
15077 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
15078
15079 * coding.c (QCmnemonic, QCdefalut_char)
15080 (QCdecode_translation_table, QCencode_translation_table)
15081 (QCpost_read_conversion, QCpre_write_conversion): New variables.
15082 (get_translation_table): Return a list of translation tables if
15083 necessary.
15084 (decode_coding): Call get_translation_table with ENCODEP 0.
15085 (char_encodable_p): If translation_table is non-nil, always call
15086 translate_char.
15087 (Fdefine_coding_system_internal): Accept list of translation
15088 tables as :encode-translation-table and :decode-translation-table.
15089 (Fcoding_system_put): New function.
15090 (syms_of_coding): Declare new symbols. Defsubr
15091 Scoding_system_put.
15092 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
15093 typically JISX0212.
15094
15095 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
15096 when the charset is superset type.
15097
15098 * character.c (translate_char): Accept list of translation tables.
15099
15100 2008-02-01 Kenichi Handa <handa@m17n.org>
15101
15102 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
15103 (CODING_ATTR_TRANS_TBL): New macro.
15104
15105 * coding.c (get_translation_table): New function.
15106 (translate_chars): Fix the bug of skipping annotation data.
15107 (decode_coding, encode_coding): Utilize get_translation_table.
15108 (char_encodable_p, Funencodable_char_position): Translate char if
15109 necessary.
15110 (Ffind_coding_systems_region_internal)
15111 (Fcheck_coding_systems_region): Setup translation table for encode
15112 in a coding system attribute vector in advance.
15113 (Fdefine_coding_system_internal): Allow a symbol as translation
15114 table. For shift-jis type coding system, allow 4th charset.
15115
15116 2008-02-01 Kenichi Handa <handa@m17n.org>
15117
15118 * coding.c (decode_coding_sjis): Check the first byte rigidly.
15119
15120 * xdisp.c (get_next_display_element): Pass -1 as POS to
15121 FACE_FOR_CHAR if displaying a C-string.
15122
15123 2008-02-01 Kenichi Handa <handa@m17n.org>
15124
15125 * composite.c (get_composition_id): Handle xoff and yoff in a
15126 composition rule.
15127
15128 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
15129 (struct composition): New member lbearing and rbearing.
15130
15131 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
15132 (x_get_glyph_overhangs): Handle a composition glyph.
15133 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
15134
15135 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
15136 composition glyph.
15137
15138 2008-02-01 Kenichi Handa <handa@m17n.org>
15139
15140 * print.c: Include charset.h.
15141 (Vprint_charset_text_property): New variable.
15142 (Qdefault): Extern it.
15143 (PRINT_STRING_NON_CHARSET_FOUND)
15144 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
15145 (print_check_string_result): New variable.
15146 (print_check_string_charset_prop): New function.
15147 (print_prune_charset_plist): New variable.
15148 (print_prune_string_charset): New function.
15149 (print_object): Call print_prune_string_charset if
15150 Vprint_charset_text_property is not t.
15151 (print_interval): Print nothing if interval->plist is nil.
15152 (syms_of_print): Declare Vprint_charset_text_property as a lisp
15153 variable. Init and staticpro print_prune_charset_plist.
15154
15155 2008-02-01 Kenichi Handa <handa@m17n.org>
15156
15157 * fontset.c (new_fontset_from_font_name): Use the specified font
15158 for all characters in the new fontset.
15159
15160 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15161 OBJECT args.
15162
15163 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
15164 OBJECT args for composition too.
15165
15166 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15167 OBJECT args.
15168
15169 2008-02-01 Kenichi Handa <handa@m17n.org>
15170
15171 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
15172
15173 * fontset.c (reorder_font_vector): Adjust for the change of
15174 FONT_DEF format.
15175 (fontset_face): New arg id. Change caller.
15176 (face_for_char): New args pos and object.
15177 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
15178 (fs_query_fontset): Check NAME by Fassoc too.
15179 (Fset_fontset_font): Allow non-XLFD font name.
15180 (Ffontset_info): Adjust for the change of FONT_DEF format.
15181
15182 * fontset.h (face_for_char): Adjust prototype.
15183
15184 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
15185 (append_space, extend_face_to_end_of_line)
15186 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
15187 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
15188
15189 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
15190 POS and OBJECT args.
15191
15192 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
15193 POS and OBJECT args.
15194
15195 2008-02-01 Jason Rumney <jasonr@gnu.org>
15196
15197 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
15198 of GlobalAlloc'ed memory.
15199
15200 2008-02-01 Kenichi Handa <handa@m17n.org>
15201
15202 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
15203
15204 * charset.h (charset_table_used): Delete extern.
15205
15206 * charset.c (charset_table_used): Make it static.
15207 (map_charset_chars): Fix args to c_function with.
15208
15209 * chartab.c (map_sub_char_table_for_charset): Fix args to
15210 c_function with.
15211
15212 * coding.h (enum coding_result_code): Delete
15213 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
15214
15215 * coding.c (Qinsufficient_source, Qinconsistent_eol)
15216 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
15217 (Vlast_code_conversion_error): New variables.
15218 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
15219 (ONE_MORE_BYTE): Record error if any instead of signaling an
15220 error. If non-ASCII multibyte char is found, return the negative
15221 value of the code. All callers changed to check it.
15222 (ONE_MORE_BYTE_NO_CHECK): Likewise.
15223 (record_conversion_result): New function. Change all codes setting
15224 coding->result to call this function.
15225 (detect_coding_utf_8, decode_coding_utf_8)
15226 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
15227 Don't use the local variable incomplete.
15228 (emacs_mule_char): Change the second arg to `const'.
15229 (decode_coding): Fix of flushing out unprocessed data.
15230 (make_conversion_work_buffer): Fix making of a work buffer.
15231 (decode_coding_object): Return coding->dst_object.
15232
15233 * fontset.c (set_fontset_font): Fix args.
15234
15235 * lisp.h (CHARACTERBITS): Define as 22.
15236
15237 * process.c (send_process): Be sure to set coding->src_multibyte.
15238
15239 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
15240
15241 2008-02-01 Kenichi Handa <handa@m17n.org>
15242
15243 * xdisp.c (handle_auto_composed_prop): Give limit to
15244 Fnext_single_char_property_change.
15245
15246 2008-02-01 Kenichi Handa <handa@m17n.org>
15247
15248 * composite.c (syms_of_composite): Don't make the composition hash
15249 table weak.
15250
15251 * fontset.c (Fset_fontset_font): Fix docstring.
15252
15253 * lisp.h (detect_coding_system): Adjust prototype.
15254
15255 * fileio.c (kill_workbuf_unwind): Delete this function.
15256 (Finsert_file_contents): Adjust the call of detect_coding_system.
15257 Get conversion_buffer by code_conversion_save. Use the macro
15258 CODING_MAY_REQUIRE_DECODING. After decoding, update
15259 coding_system.
15260
15261 * coding.h (make_conversion_work_buffer): Delete extern.
15262 (code_conversion_save): Extern it.
15263
15264 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
15265 (CODING_GET_INFO): Delete argument eol_type. Change callers.
15266 (decode_coding_utf_8): Don't do eol converion.
15267 (detect_coding_utf_16): Check coding->src_chars, not
15268 coding->src_bytes. Add heuristics for those that have no signature.
15269 (decode_coding_emacs_mule, decode_coding_iso_2022)
15270 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15271 Don't do eol converion.
15272 (adjust_coding_eol_type): Return a new coding system.
15273 (detect_coding): Don't detect eol. Fix for utf-16 detection.
15274 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
15275 each change.
15276 (decode_coding): Pay attention to undo_list. Do eol conversion for
15277 all types of coding-systems (if necessary).
15278 (Vcode_conversion_work_buf_list): Delete it.
15279 (Vcode_conversion_reused_workbuf): Rename from
15280 Vcode_conversion_reused_work_buf.
15281 (Vcode_conversion_workbuf_name): New variable.
15282 (reused_workbuf_in_use): New variable.
15283 (make_conversion_work_buffer): Delete the arg DEPTH.
15284 (code_conversion_restore): Change argument to cons.
15285 (code_conversion_save): Delete the argument BUFFER. Change callers.
15286 (detect_coding_system): New argument src_chars. Change callers.
15287 Fix for utf-16 detection.
15288 (init_coding_once): Don't use ISO_carriage_return.
15289 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
15290 reused_workbuf_in_use.
15291
15292 2008-02-01 Kenichi Handa <handa@m17n.org>
15293
15294 * keymap.c (store_in_keymap): Pay attention to the case that idx
15295 is a cons specifying a character range.
15296
15297 2008-02-01 Kenichi Handa <handa@m17n.org>
15298
15299 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
15300 HANDLED_RECOMPUTE_PROPS.
15301
15302 * coding.c (Fdefine_coding_system_internal): Fix checking of
15303 ascii compatibility.
15304
15305 2008-02-01 Kenichi Handa <handa@m17n.org>
15306
15307 * charset.c (find_charsets_in_text): Delete unused locale variable.
15308 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
15309
15310 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
15311 Resync charset_list to Vemacs_mule_charset_list.
15312
15313 * keymap.c (store_in_keymap): Pay attention to the case that idx
15314 is a cons specifying a character range.
15315
15316 2008-02-01 Kenichi Handa <handa@m17n.org>
15317
15318 * composite.c (update_compositions): Bind inhibit-read-only, etc
15319 to t before calling remove-list-of-text-properties.
15320
15321 * print.c (print_object): Always print ASCII chars as is.
15322
15323 2008-02-01 Kenichi Handa <handa@m17n.org>
15324
15325 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
15326
15327 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
15328 is a char table.
15329
15330 2008-02-01 Kenichi Handa <handa@m17n.org>
15331
15332 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
15333
15334 2008-02-01 Kenichi Handa <handa@m17n.org>
15335
15336 * xfaces.c (set_lface_from_font_name): Fix for the case that
15337 FONTNAME is not fontset name.
15338
15339 2008-02-01 Kenichi Handa <handa@m17n.org>
15340
15341 * fns.c (base64_encode_1): Fix previous change.
15342
15343 2008-02-01 Kenichi Handa <handa@m17n.org>
15344
15345 * fontset.c (set_fontset_font): New function.
15346 (Fset_fontset_font): If a font is specified for a charset, use
15347 map_charset_chars to store the font spec in a fontset.
15348
15349 2008-02-01 Kenichi Handa <handa@m17n.org>
15350
15351 * fontset.c (fontset_face): Create a fallback fontset on demand.
15352 (make_fontset): Don't create a fallback fontset here.
15353 (free_face_fontset): Free a fallback fontset (if any) too.
15354 (n_auto_fontsets): Delete this variable.
15355 (auto_fontset_alist): New variable.
15356 (new_fontset_from_font_name): Check auto_fontset_alist.
15357 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
15358 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
15359 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
15360 Defsubr Sfontset_list_all.
15361
15362 2008-02-01 Kenichi Handa <handa@m17n.org>
15363
15364 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
15365
15366 2008-02-01 Kenichi Handa <handa@m17n.org>
15367
15368 * fontset.c (Fnew_fontset): Check NAME more rigidly.
15369
15370 2008-02-01 Kenichi Handa <handa@m17n.org>
15371
15372 * editfns.c (Fgoto_char): Fix docstring.
15373
15374 2008-02-01 Kenichi Handa <handa@m17n.org>
15375
15376 * insdel.c (insert_from_gap): Adjust intervals correctly.
15377
15378 2008-02-01 Jason Rumney <jasonr@gnu.org>
15379
15380 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
15381 (pfnGetFontUnicodeRanges): New dynamically loaded function.
15382 (w32_initialize): Try to load it.
15383 (x_get_font_repertory): Use it if available.
15384 (w32_encode_char): Add shortcut for unicode output.
15385
15386 * w32fns.c (w32_load_system_font): Default charset to -1.
15387 (x_to_w32_charset): Match all fonts for unicode.
15388 (w32_to_x_charset): New parameter matching. Don't return partial
15389 or wildcard charsets.
15390 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
15391 (w32_codepage_for_font): Return CP_UNICODE for unicode.
15392 (w32_to_x_font): Match charset to real charset.
15393 (enum_font_cb2): Always list unicode versions.
15394
15395 * makefile.w32-in (temacs): Increase EMHEAP.
15396
15397 2008-02-01 Jason Rumney <jasonr@gnu.org>
15398
15399 * w32term.c (w32_encode_char): New charset parameter.
15400 font_info.encoding becomes encoding_type.
15401 (x_get_font_repertory): New function. Warning: stub only!
15402 (x_new_font): Return quickly if font already set.
15403 (x_new_fontset): fontsetname parameter is Lisp_Object.
15404 Use new fs_query_fontset. Try new_fontset_from_font_name.
15405 Use fontset_name for return value.
15406
15407 * w32term.h: Declare x_get_font_repertory.
15408
15409 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
15410 place of find_charset_in_text. Use encode_coding_object in place
15411 of encode_coding.
15412 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
15413 decode_coding.
15414
15415 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
15416 of x_new_fontset.
15417 (w32_load_system_font): Initialize charset as unicode.
15418 font_info.encoding becomes encoding_type.
15419 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
15420 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
15421 (syms_of_w32fns): Set get_font_repertory_func.
15422
15423 * w32console.c: Include character.h. Use terminal_encode_buffer
15424 from term.c.
15425 (write_glyphs): Use new version of encode_terminal_code. Use
15426 encode_coding_object in place of encode_coding.
15427
15428 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
15429 encoding becomes encoding_type.
15430
15431 * term.c (terminal_encode_buffer): Make externally visible.
15432
15433 * makefile.w32-in: Add character.h dependancies.
15434 (character.o, chartab.o): New targets.
15435
15436 2008-02-01 Kenichi Handa <handa@m17n.org>
15437
15438 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
15439 CODING_ID_EOL_TYPE.
15440
15441 2008-02-01 Andreas Schwab <schwab@suse.de>
15442
15443 * coding.c (produce_chars): Revert last change.
15444
15445 2008-02-01 Kenichi Handa <handa@m17n.org>
15446
15447 * charset.h (charset_unicode): Extern it.
15448
15449 * charset.c (string_xstring_p): Check by (C >= 0x100).
15450 (find_charsets_in_text): Change format of the arc CHARSETS. New
15451 arg MULTIBYTE.
15452 (Ffind_charset_region, Ffind_charset_string): Adjust for the
15453 change of find_charsets_in_text.
15454 (Fsplit_char): Fix doc. Never return unknown.
15455
15456 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
15457
15458 * coding.c (Fdefine_coding_system_alias): Update
15459 Vcoding_system_list.
15460
15461 * fontset.c (load_font_get_repertory): Pay attention to the case
15462 that ENCODING of a font is specified by a char-table.
15463
15464 * xterm.c (x_get_font_repertory): Handle the case that the
15465 encoding of font is other than Unicode.
15466
15467 2008-02-01 Kenichi Handa <handa@m17n.org>
15468
15469 * term.c (encode_terminal_code): Don't handle glyph-table. Check
15470 if a character is encodable by the terminal coding system. If
15471 not, produces proper number of `?'s. Update
15472 terminal_encode_buffer and terminal_encode_buf_size if necessary.
15473 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
15474
15475 2008-02-01 Kenichi Handa <handa@m17n.org>
15476
15477 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
15478 variables.
15479 (encode_terminal_code): Change argument. Encode multiple
15480 characters at once. Store the result of encoding in
15481 terminal_encode_buffer.
15482 (write_glyphs, insert_glyphs): Adjust for the change of
15483 encode_terminal_code.
15484 (term_init): Initialize terminal_encode_buffer and
15485 terminal_encode_buf_size.
15486
15487 * coding.c (consume_chars): If coding->src_object is nil, don't
15488 check annotation.
15489
15490 2008-02-01 Kenichi Handa <handa@m17n.org>
15491
15492 * character.c (char_string): Use ASCII_CHAR_P instead of
15493 SINGLE_BYTE_CHAR_P.
15494
15495 2008-02-01 Kenichi Handa <handa@m17n.org>
15496
15497 * xdisp.c (handle_auto_composed_prop): Check if the last
15498 characters of auto-composed region is newly composed with the
15499 following characters.
15500 (handle_composition_prop): Fix checking of point being inside
15501 composition.
15502
15503 2008-02-01 Kenichi Handa <handa@m17n.org>
15504
15505 * fns.c (concat): Don't change multibyteness of the result by
15506 concatenating an 8-bit character.
15507
15508 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
15509 multibyteness of the result when newelt is an 8-bit character.
15510
15511 2008-02-01 Dave Love <fx@gnu.org>
15512
15513 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
15514 EMACS_INT.
15515
15516 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
15517
15518 * xfaces.c (face_numeric_value): Declare dim size_t.
15519 (Finternal_lisp_face_equal_p): Remove unused f.
15520
15521 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
15522 (MATRIX_ROW): Remove unused vars.
15523 (draw_glyphs, x_insert_glyphs, fast_find_position)
15524 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
15525 byte/char counts.
15526
15527 * regex.c (regex_compile): Remove unused var.
15528
15529 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15530
15531 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
15532 (Faccessible_keymaps, where_is_internal): Remove unused vars.
15533
15534 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
15535
15536 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
15537
15538 * fileio.c (Fwrite_region): Remove unused var.
15539
15540 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
15541 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
15542
15543 * composite.c (Fremove_list_of_text_properties): Declare.
15544
15545 * coding.c (inhibit_pre_post_conversion): Remove (unused).
15546 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
15547 (coding_inherit_eol_type): Remove unused attrs.
15548 (detect_coding): Cast arg of detect_eol.
15549
15550 * charset.c (syms_of_charset): Remove unused var p.
15551 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
15552 byte/char counts.
15553
15554 * casetab.c (set_case_table): Remove unused var.
15555
15556 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
15557 unused vars.
15558
15559 2008-02-01 Dave Love <fx@gnu.org>
15560
15561 * xterm.c (x_bitmap_mask): Declare.
15562
15563 2008-02-01 Dave Love <fx@gnu.org>
15564
15565 * xterm.c (x_term_init): Fix type error.
15566
15567 * lisp.h: Add Funibyte_char_to_multibyte.
15568
15569 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
15570 (Fset_coding_system_priority): Doc fix.
15571
15572 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
15573
15574 * indent.c (check_composition): Make start and end EMACS_INT.
15575
15576 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
15577
15578 * xdisp.c (handle_composition_prop, check_point_in_composition):
15579 Make buffer positions EMACS_INT.
15580
15581 * composite.c (find_composition, run_composition_function)
15582 (update_compositions, Ffind_composition_internal): Make buffer
15583 positions EMACS_INT.
15584
15585 * composite.h (find_composition, update_compositions): Make
15586 position args EMACS_INT.
15587
15588 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
15589
15590 * intervals.c (get_property_and_range):
15591 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
15592
15593 * unexalpha.c: Don't include varargs.h.
15594
15595 2008-02-01 Dave Love <fx@gnu.org>
15596
15597 * coding.h (ENCODE_UTF_8): New.
15598
15599 * Makefile.in (gtkutil.o): Depend on coding.h.
15600
15601 * coding.c (Fset_coding_system_priority): Doc fix.
15602
15603 2008-02-01 Kenichi Handa <handa@m17n.org>
15604
15605 * fileio.c (Finsert_file_contents): Call setup_coding_system in
15606 the case of auto saving.
15607
15608 2008-02-01 Andreas Schwab <schwab@suse.de>
15609
15610 * chartab.c (map_char_table, map_char_table_for_charset): Protect
15611 `range' from GC.
15612
15613 2008-02-01 Kenichi Handa <handa@m17n.org>
15614
15615 * coding.c (decode_coding_sjis): Check bytes more rigidly.
15616
15617 2008-02-01 Kenichi Handa <handa@m17n.org>
15618
15619 * fileio.c (choose_write_coding_system): Return a decided coding system.
15620 (Fwrite_region): Set Vlast_coding_system_used to the return value
15621 of choose_write_coding_system.
15622
15623 2008-02-01 Kenichi Handa <handa@m17n.org>
15624
15625 * charset.c (Fset_charset_priority): Pay attention to duplicated
15626 arguments.
15627
15628 * coding.c (QCcategory): New variable.
15629 (syms_of_coding): Defsym it. Set all elements of
15630 Vcoding_category_table and their symbol values.
15631 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
15632 coding-category-XXX, and coding-category-list.
15633 (Fdefine_coding_system_internal): Add category in the plist.
15634
15635 2008-02-01 Kenichi Handa <handa@m17n.org>
15636
15637 * callproc.c (Fcall_process): Handle carryover correctly.
15638
15639 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
15640 (raw_text_coding_system): Check NILP (coding_system).
15641 (coding_inherit_eol_type): Check NILP (coding_system) and
15642 NILP (parent).
15643 (consume_chars): Fix for the case of raw-text.
15644
15645 * process.c (read_process_output): Handle carryover correctly.
15646
15647 2008-02-01 Dave Love <fx@gnu.org>
15648
15649 * regex.c (re_search_2): Fix last change.
15650
15651 2008-02-01 Kenichi Handa <handa@m17n.org>
15652
15653 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
15654 target_multibyte. Even in a unibyte case, return a converted
15655 multibyte char.
15656 (GET_CHAR_AFTER): New macro.
15657 (PATFETCH): Translate via multibyte char.
15658 (HANDLE_UNIBYTE_RANGE): Delete this macro.
15659 (SETUP_MULTIBYTE_RANGE): New macro.
15660 (regex_compile): Setup compiled code so that its multibyteness
15661 matches that of a target. Fix the handling of "[X-YZ]" using
15662 SETUP_MULTIBYTE_RANGE.
15663 (analyse_first) <charset>: For filling fastmap for all multibyte
15664 characters, don't check by BASE_LEADING_CODE_P.
15665 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
15666 the same as RE_MULTIBYTE_P (bufp) now.
15667 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
15668 (TARGET_CHAR_AND_LENGTH): Delete this macro.
15669 (TRANSLATE_VIA_MULTIBYTE): New macro.
15670 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
15671 It is the same as RE_MULTIBYTE_P (bufp) now.
15672 <exactn>: Translate via multibyte.
15673 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
15674 translate it.
15675 <charset, charset_not>: Fetch a character by
15676 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
15677 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
15678 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
15679 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
15680 by GET_CHAR_AFTER.
15681 (bcmp_translate): Likewise.
15682
15683 * search.c (compile_pattern): Check the member target_multibyte,
15684 not the member multibyte of buf.
15685
15686 * lread.c (read1): While reading a string, set force_singlebyte
15687 and force_multibyte correctly.
15688
15689 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
15690 up of unibyte_to_multibyte_table.
15691
15692 2008-02-01 Kenichi Handa <handa@m17n.org>
15693
15694 * coding.c (setup_coding_system): If coding has
15695 post-read-conversion or pre-write-conversion, set
15696 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
15697 respectively.
15698 (decode_coding_gap): Run post-read-conversion if any.
15699
15700 * fileio.c (Finsert_file_contents): Even if we read into a
15701 unibyte buffer, check if we must decode the result or not.
15702
15703 2008-02-01 Kenichi Handa <handa@m17n.org>
15704
15705 * coding.c (make_conversion_work_buffer): Change the work buffer
15706 name to the same one as that of Emacs 21.
15707
15708 2008-02-01 Kenichi Handa <handa@m17n.org>
15709
15710 * coding.h (make_conversion_work_buffer): Adjust prototype.
15711 (code_conversion_restore): Don't extern it.
15712
15713 * coding.c (detected_mask): Delete unused variable.
15714 (decode_coding_iso_2022): Pay attention to the byte sequence of
15715 CTEXT extended segment, and retain those bytes as is.
15716 (decode_coding_ccl): Delete unused variable `valids'.
15717 (setup_coding_system): Delete unused variable `category'.
15718 (consume_chars): Delete unused variable `category'. Make it work
15719 for non-multibyte case.
15720 (make_conversion_work_buffer): Change argument.
15721 (saved_coding): Delete unused variable.
15722 (code_conversion_restore): Don't check saved_coding->destination.
15723 (code_conversion_save): New function.
15724 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
15725 instead of record_unwind_protect.
15726 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
15727 (detect_coding_system): Delete unused variable `mask'.
15728 (Fdefine_coding_system_internal): Delete unused variable id.
15729
15730 * fileio.c (kill_workbuf_unwind): New function.
15731 (Finsert_file_contents): On replacing, call
15732 make_conversion_work_buffer with correct args, and call
15733 record_unwind_protect with the first arg kill_workbuf_unwind.
15734
15735 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
15736
15737 2008-02-01 Kenichi Handa <handa@m17n.org>
15738
15739 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
15740 (fontset_add): Fix for the case that TO is less than TO1.
15741 (Ffontset_info): Don't use fallback fontset on checking the
15742 default fontset.
15743 (dump_fontset): New function for debugging.
15744
15745 * coding.c (Fdefine_coding_system_internal): Fix for the case that
15746 coding_type is Qcharset.
15747
15748 2008-02-01 Kenichi Handa <handa@m17n.org>
15749
15750 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
15751 (map_char_table): Don't inherit the value from the parent on
15752 initializing VAL. Adjust for the above change.
15753
15754 2008-02-01 Kenichi Handa <handa@m17n.org>
15755
15756 * coding.c (Qsignature, Qendian): Delete these variables.
15757 (syms_of_coding): Don't initialize them.
15758 (CATEGORY_MASK_UTF_16_AUTO): New macro.
15759 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
15760 detect_info->found.
15761 (decode_coding_utf_16): Don't detect BOM here.
15762 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
15763 is NOT utf_16_without_bom.
15764 (setup_coding_system): For a coding system of type utf-16, check
15765 if the attribute :endian is Qbig or not (not nil or not), and set
15766 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
15767 (detect_coding): If coding type is utf-16 and BOM detection is
15768 required, detect it.
15769 (Fdefine_coding_system_internal): For a coding system of type
15770 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
15771
15772 2008-02-01 Kenichi Handa <handa@m17n.org>
15773
15774 * coding.c (coding_set_source): Fix for the case that the current
15775 buffer is different from coding->src_object.
15776 (decode_coding_object): Don't use the conversion work buffer if
15777 DST_OBJECT is a buffer.
15778
15779 2008-02-01 Dave Love <fx@gnu.org>
15780
15781 * lread.c (read_emacs_mule_char) [len==2]: Index
15782 emacs_mule_charset correctly.
15783
15784 2008-02-01 Dave Love <fx@gnu.org>
15785
15786 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
15787 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
15788 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
15789 treated specially.)
15790 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
15791 (detected_mask): Remove Big5 bits.
15792
15793 2008-02-01 Kenichi Handa <handa@m17n.org>
15794
15795 The following changes are to make the font rescaling facility
15796 compatible with Emacs 21.
15797
15798 * xfaces.c (Vface_font_rescale_alist): Rename from
15799 Vface_resizing_fonts.
15800 (struct font_name): Rename member resizing_ratio to rescale_ratio.
15801 (font_rescale_ratio): Rename from font_resizing_ratio.
15802 (split_font_name): Set font->rescale_ratio.
15803 (better_font_p): Pay attention to font->rescale_ratio.
15804 (build_scalable_font_name): Likewise. Change RESX, and RESY
15805 fields.
15806 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15807
15808 2008-02-01 Kenichi Handa <handa@m17n.org>
15809
15810 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
15811 (Qutf_16_le): Remove these variables.
15812 (syms_of_coding): Don't DEFSYM them.
15813 (decode_coding_utf_16): Fix handling of BOM.
15814 (encode_coding_utf_16): Fix handling of BOM.
15815
15816 2008-02-01 Kenichi Handa <handa@m17n.org>
15817
15818 * fileio.c (Finsert_file_contents): On replacing, before decoding
15819 the file into the work buffer, set point of the work buffer to the end.
15820
15821 2008-02-01 Dave Love <fx@gnu.org>
15822
15823 * coding.c (Fcheck_coding_systems_region): Fix type errors.
15824
15825 2008-02-01 Dave Love <fx@gnu.org>
15826
15827 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15828 and fix C types.
15829
15830 2008-02-01 Kenichi Handa <handa@m17n.org>
15831
15832 * xdisp.c (SKIP_GLYPHS): New macro.
15833 (set_cursor_from_row): Pay attention to string display properties.
15834
15835 * category.c (copy_category_entry): Fix for the case that RANGE
15836 is an integer.
15837
15838 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
15839
15840 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
15841
15842 2008-02-01 Kenichi Handa <handa@m17n.org>
15843
15844 * charset.c (Fcharset_id_internal): New function.
15845 (syms_of_charset): Defsubr it.
15846
15847 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
15848 with the last arg charset_list acquired from coding.
15849 (Fdefine_coding_system_internal): For ccl-based coding system, fix
15850 the attribute coding_attr_ccl_valids.
15851
15852 * coding.h (enum define_coding_ccl_arg_index): Set the first
15853 member coding_arg_ccl_decoder to coding_arg_max.
15854
15855 * ccl.h (ccl_driver): Adjust prototype.
15856
15857 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
15858 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
15859 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
15860 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
15861 last arg Qnil.
15862
15863 2008-02-01 Kenichi Handa <handa@m17n.org>
15864
15865 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
15866 call encode_char.
15867
15868 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
15869
15870 2008-02-01 Dave Love <fx@gnu.org>
15871
15872 * composite.c (syms_of_composite): Make composition_hash_table weak.
15873
15874 2008-02-01 Kenichi Handa <handa@m17n.org>
15875
15876 * dispextern.h (check_face_attributes, generate_ascii_font_name)
15877 (font_name_registry): Don't extern them.
15878 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
15879
15880 * fontset.h (Qfontset): Don't extern it.
15881 (new_fontset_from_font_name): Extern it.
15882
15883 * fontset.c: Give 8 extra slots to fontset objects.
15884 (Qfontset_info): New variable.
15885 (syms_of_fontset): Defsym it.
15886 (FONTSET_FALLBACK): New macro.
15887 (fontset_face): Try also the default fontset.
15888 (make_fontset): Realize a fallback fontset from the default fontset.
15889 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
15890 using split_font_name_into_vector and build_font_name_from_vector.
15891 (Fset_fontset_font): Access the elements of font_spec by enum
15892 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
15893 name by using split_font_name_into_vector.
15894 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
15895 generate a proper font name from the fontset name. Update
15896 Vfontset_alias_alist.
15897 (n_auto_fontsets): New variable.
15898 (new_fontset_from_font_name): New function.
15899 (Ffont_info): Store the information about fonts generated from the
15900 default fontset in the first extra slot of the returned char-table.
15901
15902 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
15903 (font_name_registry): Delete function.
15904 (split_font_name_into_vector): New function.
15905 (build_font_name_from_vector): New function.
15906 (font_list): The argument REGISTRY is now a list of registry names.
15907 (choose_face_font): If we are choosing an ASCII font, and ATTRS
15908 specifies an explicit font name, return the name as is. Make a
15909 list of registy names.
15910
15911 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
15912 of x_new_fontset.
15913 (Fx_create_frame): Don't call x_new_fontset here. Just use
15914 x_list_fonts to check the existence of fonts.
15915
15916 * xterm.h (x_new_fontset): Adjust prototype.
15917
15918 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
15919 string. Use new_fontset_from_font_name to create a fontset from a
15920 font name.
15921
15922 2008-02-01 Kenichi Handa <handa@m17n.org>
15923
15924 * syntax.c (Vfind_word_boundary_function_table): New name for
15925 Vnext_word_boundary_function_table.
15926 (find-word-boundary-function-table): New name for
15927 next-word-boundary-function-table.
15928
15929 2008-02-01 Dave Love <fx@gnu.org>
15930
15931 * Makefile.in: Fix some dependencies.
15932
15933 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
15934 set it to nil before returning.
15935
15936 * composite.c (update_compositions): Fix type error.
15937
15938 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
15939
15940 2008-02-01 Kenichi Handa <handa@m17n.org>
15941
15942 * xterm.c (x_new_font): Optimize for the case that the font is
15943 already set for the frame.
15944
15945 2008-02-01 Kenichi Handa <handa@m17n.org>
15946
15947 * chartab.c (char_table_ascii): Check if the char table contents
15948 is sub-char-table or not.
15949 (char_table_set, char_table_set_range): Fix argument to
15950 char_table_ascii.
15951
15952 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
15953 (detect_coding_utf_8, detect_coding_utf_16)
15954 (detect_coding_emacs_mule, detect_coding_iso_2022)
15955 (detect_coding_sjis, detect_coding_big5)
15956 (detect_coding_ccl, detect_coding_charset): Change argument MASK
15957 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
15958 sequence is valid in this coding system. Change callers.
15959 (MAX_ANNOTATION_LENGTH): New macro.
15960 (ADD_ANNOTATION_DATA): New macro.
15961 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
15962 ADD_ANNOTATION_DATA. Change the format of annotation data.
15963 (ADD_CHARSET_DATA): New macro.
15964 (emacs_mule_char): New argument ID. Change callers.
15965 (decode_coding_emacs_mule, decode_coding_iso_2022)
15966 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15967 Produce charset annotation data in coding->charbuf.
15968 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
15969 to charset annotation data in coding->charbuf.
15970 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
15971 coding->common_flags if the coding system is iso-2022 based and
15972 uses designation.
15973 (produce_composition): Adjust for the new annotation data format.
15974 (produce_charset): New function.
15975 (produce_annotation): Handle charset annotation.
15976 (handle_composition_annotation, handle_charset_annotation): New
15977 functions.
15978 (consume_chars): Handle charset annotation. Utilize the above two
15979 functions.
15980 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
15981 buffer, get the deleted text as a string and set
15982 coding->src_object to that string.
15983 (detect_coding, detect_coding_system): Use the new struct
15984 coding_detection_info.
15985
15986 * coding.h (struct coding_detection_info): New structure.
15987 (struct coding_system): Adjust prototype of the member `detector'.
15988 (CODING_ANNOTATE_CHARSET_MASK): New macro.
15989
15990 2008-02-01 Kenichi Handa <handa@m17n.org>
15991
15992 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
15993
15994 2008-02-01 Dave Love <fx@gnu.org>
15995
15996 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
15997 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
15998 to new local and nullify apropos_accumulate before returning.
15999 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
16000
16001 2008-02-01 Kenichi Handa <handa@m17n.org>
16002
16003 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
16004 correctly.
16005
16006 2008-02-01 Dave Love <fx@gnu.org>
16007
16008 * fns.c (Flanginfo): Call synchronize_system_time_locale.
16009
16010 2008-02-01 Kenichi Handa <handa@m17n.org>
16011
16012 The following changes are to make character composition happen
16013 automatically on displaying.
16014
16015 * Makefile.in (lisp, shortlisp): Add composite.elc.
16016
16017 * composite.h (Qauto_composed, Vauto_composition_function)
16018 (Qauto_composition_function): Extern them.
16019
16020 * composite.c (Vcomposition_function_table)
16021 (Qcomposition_function_table): Delete variables.
16022 (Qauto_composed, Vauto_composition_function)
16023 (Qauto_composition_function): New variables.
16024 (run_composition_function): Don't call
16025 compose-chars-after-function.
16026 (update_compositions): Clear `auto-composed' text property.
16027 (compose_chars_in_text): Delete this function.
16028 (syms_of_composite): Staticpro Qauto_composed and
16029 Qauto_composition_function. Declare Vauto_composition_function as
16030 a Lisp variable.
16031
16032 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
16033
16034 * xdisp.c (it_props): Add an entry for Qauto_composed.
16035 (handle_auto_composed_prop): New function.
16036
16037 * xselect.c (selection_data_to_lisp_data): Don't call
16038 compose_chars_in_text.
16039
16040 2008-02-01 Dave Love <fx@gnu.org>
16041
16042 * keyboard.c (read_char): Modify checking around use of
16043 Vkeyboard_translate_table.
16044
16045 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
16046 and fix C types.
16047
16048 2008-02-01 Kenichi Handa <handa@m17n.org>
16049
16050 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
16051 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
16052 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
16053 the case that the last byte is '\r' correctly.
16054 (decode_coding): Flush out the unprocessed data correctly.
16055 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
16056
16057 2008-02-01 Dave Love <fx@gnu.org>
16058
16059 * xterm.c (XTread_socket): Fix changes for defined keysyms.
16060 Add XK_ISO... case.
16061 (xaw_scroll_callback): Revert last change.
16062
16063 2008-02-01 Kenichi Handa <handa@m17n.org>
16064
16065 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
16066
16067 2008-02-01 Kenichi Handa <handa@m17n.org>
16068
16069 * xfaces.c (Vface_resizing_fonts): New variable.
16070 (struct font_name): New member `resizing_ratio'.
16071 (font_resizing_ratio): New function.
16072 (split_font_name): Set font->resizing_ratio.
16073 (better_font_p): Pay attention to font->resizing_ratio.
16074 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
16075 RESX, and RESY fields.
16076 (try_alternative_families): Try scalable fonts if
16077 Vscalable_fonts_allowed is not Qt.
16078 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
16079
16080 2008-02-01 Dave Love <fx@gnu.org>
16081
16082 * xterm.c (xaw_scroll_callback): Cast correctly.
16083
16084 2008-02-01 Dave Love <fx@gnu.org>
16085
16086 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
16087 (lispy_kana_keys): Comment out.
16088 (make_lispy_event) [XK_kana_A]: Comment out.
16089
16090 * xterm.c (xaw_scroll_callback): Cast call_data.
16091 (XTread_socket): Deal with ASCII keysyms.
16092 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
16093
16094 2008-02-01 Dave Love <fx@gnu.org>
16095
16096 * xterm.c (Vx_keysym_table): New.
16097 (syms_of_xterm): Initialize it.
16098 (XTread_socket): Use it.
16099 From head: Eliminate incorrect optimization that tried to avoid
16100 decoding the output of X*LookupString.
16101 (x_get_font_repertory): Delete charset declaration.
16102
16103 2008-02-01 Kenichi Handa <handa@m17n.org>
16104
16105 * coding.c (detect_coding_charset): If only ASCII bytes are found,
16106 return 0.
16107 (Fdefine_coding_system_internal): Setup
16108 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
16109
16110 2008-02-01 Dave Love <fx@gnu.org>
16111
16112 * coding.c (Fcheck_coding_system): Doc fix.
16113
16114 * editfns.c (Finsert_byte): Return a proper value.
16115
16116 2008-02-01 Kenichi Handa <handa@m17n.org>
16117
16118 * coding.c (decode_coding): Fix args to translate_chars. Pay
16119 attention to Vstandard_translation_table_for_decode.
16120 (encode_coding): Fix args to translate_chars. Pay attention to
16121 Vstandard_translation_table_for_encode.
16122
16123 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
16124 SINGLE_BYTE_CHAR_P.
16125
16126 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
16127 not by SINGLE_BYTE_CHAR_P.
16128
16129 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
16130 SINGLE_BYTE_CHAR_P.
16131
16132 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
16133 SINGLE_BYTE_CHAR_P.
16134
16135 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
16136 by SINGLE_BYTE_CHAR_P.
16137
16138 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
16139 SINGLE_BYTE_CHAR_P.
16140
16141 2008-02-01 Dave Love <fx@gnu.org>
16142
16143 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
16144
16145 2008-02-01 Dave Love <fx@gnu.org>
16146
16147 * fns.c (Flanginfo): Fix typo.
16148
16149 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
16150
16151 2008-02-01 Kenichi Handa <handa@m17n.org>
16152
16153 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
16154 (detect_coding_emacs_mule, detect_coding_iso_2022)
16155 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
16156 incomplete byte sequence. Don't update *mask when correctly detected.
16157 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
16158 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
16159 (detect_coding, detect_coding_system): Adjust for the changes above.
16160
16161 2008-02-01 Kenichi Handa <handa@m17n.org>
16162
16163 * character.c (char_string): Rename from
16164 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
16165 (string_char): Rename from string_char.
16166
16167 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
16168 if C is greater than MAX_3_BYTE_CHAR.
16169 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
16170 string_char instead of string_char_with_unification.
16171
16172 2008-02-01 Dave Love <fx@gnu.org>
16173
16174 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
16175
16176 2008-02-01 Kenichi Handa <handa@m17n.org>
16177
16178 * keymap.c (push_key_description): Pay attention to force_multibyte.
16179
16180 * regex.c (re_search_2): Fix for the case of unibyte buffer.
16181
16182 2008-02-01 Dave Love <fx@gnu.org>
16183
16184 * charset.c (define_charset_internal): Rename `supprementary'.
16185
16186 * Makefile.in (lisp, shortlisp): Remove latin-N.
16187
16188 2008-02-01 Dave Love <fx@gnu.org>
16189
16190 * xfns.c (x_window, x_window): Use use_xim.
16191
16192 * xterm.c (use_xim): Initialize.
16193 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
16194 (x_term_init): Maybe set use_xim.
16195
16196 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
16197
16198 2008-02-01 Kenichi Handa <handa@m17n.org>
16199
16200 * search.c (search_buffer): Fix case-fold-search of multibyte
16201 characters.
16202 (boyer_moore): Rename the last argument to char_high_bits.
16203
16204 2008-02-01 Kenichi Handa <handa@m17n.org>
16205
16206 * xdisp.c (display_string): Fix for the case of zero width glyph.
16207
16208 * xfns.c (x_set_font): Change the error message of the case that
16209 x_new_fontset returns Qt.
16210
16211 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
16212 (Finternal_set_lisp_face_attribute): Use signal_error for the
16213 error of invalid fontset.
16214
16215 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
16216 fontset, return Qt.
16217
16218 2008-02-01 Dave Love <fx@gnu.org>
16219
16220 * unexelf.c (unexec): Make .got handling not SGI-specific.
16221
16222 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
16223
16224 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
16225
16226 * keyboard.c (read_key_sequence): Fix type error.
16227
16228 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
16229 type error.
16230
16231 * fontset.c (fontset_add): Return Lisp_Object.
16232
16233 2008-02-01 Dave Love <fx@gnu.org>
16234
16235 * charset.h (charset_ordered_list_tick): Declare extern.
16236
16237 2008-02-01 Kenichi Handa <handa@m17n.org>
16238
16239 The following changes (and some of 2008-02-01 changes of mine) are
16240 for handling syntax, category, and case conversion for unibyte
16241 characters by converting them to multibyte on the fly. With these
16242 changes, we don't have to setup syntax and case tables for unibyte
16243 characters in each language environment.
16244
16245 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
16246 multibyte if necessary.
16247
16248 * bytecode.c (Fbyte_code): Likewise.
16249
16250 * character.h (LEADING_CODE_LATIN_1_MIN)
16251 (LEADING_CODE_LATIN_1_MAX): New macros.
16252 (unibyte_to_multibyte_table): Extern it.
16253 (unibyte_char_to_multibyte): New macro.
16254 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
16255 (CHAR_LEADING_CODE): New macro.
16256 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
16257
16258 * character.c (unibyte_to_multibyte_table): New variable.
16259 (unibyte_char_to_multibyte): Move to character.h and define as macro.
16260 (multibyte_char_to_unibyte): If C is an eight-bit character,
16261 convert it to the corresponding byte value.
16262
16263 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
16264 not 1, signals an error. Update the elements of
16265 unibyte_to_multibyte_table.
16266 (init_charset_once): Initialize unibyte_to_multibyte_table.
16267 (syms_of_charset): Define the charset `iso-8859-1'.
16268
16269 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
16270 as is without converting it to unibyte. In a unibyte buffer,
16271 convert C to multibyte before checking the syntax.
16272
16273 * lisp.h (unibyte_char_to_multibyte): Delete extern.
16274
16275 * minibuf.c (Fminibuffer_complete_word): Use the macro
16276 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
16277
16278 * regex.h (struct re_pattern_buffer): New member target_multibyte.
16279
16280 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
16281 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
16282 that is zero, convert an eight-bit char to multibyte.
16283 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
16284 non-emacs case.
16285 (PATFETCH): Convert an eight-bit char to multibyte.
16286 (HANDLE_UNIBYTE_RANGE): New macro.
16287 (regex_compile): Setup the compiled pattern for multibyte chars
16288 even if the given regex string is unibyte. Use PATFETCH_RAW
16289 instead of PATFETCH in many places. To handle `charset'
16290 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
16291 only for ASCII chars.
16292 (analyse_first) <exactn>: Simplify because the compiled pattern
16293 is multibyte.
16294 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
16295 <charset>: Use CHAR_LEADING_CODE to get leading codes.
16296 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
16297 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
16298 multibyte always 1.
16299 (re_search_2): In emacs, set the locale variable multibyte to 1,
16300 otherwise to 0. New local variable target_multibyte. Check it
16301 to decide the multibyteness of STR1 and STR2. If
16302 target_multibyte is zero, convert unibyte chars to multibyte
16303 before translating and checking fastmap.
16304 (TARGET_CHAR_AND_LENGTH): New macro.
16305 (re_match_2_internal): In emacs, set the locale variable multibyte
16306 to 1, otherwise to 0. New local variable target_multibyte. Check
16307 it to decide the multibyteness of STR1 and STR2. Use
16308 TARGET_CHAR_AND_LENGTH to fetch a character from D.
16309 <charset, charset_not>: If multibyte is nonzero, check fastmap
16310 only for ASCII chars. Call bcmp_translate with
16311 target_multibyte, not with multibyte.
16312 <begline>: Declare the local variable C as `unsigned'.
16313 (bcmp_translate): Change the last arg name to target_multibyte.
16314
16315 * search.c (compile_pattern_1): Don't adjust the multibyteness of
16316 the regexp pattern and the matching target. Set cp->buf.multibyte
16317 to the multibyteness of the regexp pattern. Set
16318 cp->but.target_multibyte to the multibyteness of the matching target.
16319 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
16320 FETCH_STRING_CHAR_ADVANCE.
16321 (Freplace_match): Convert unibyte chars to multibyte.
16322
16323 * syntax.c (char_quoted, back_comment, scan_words)
16324 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
16325 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
16326 unibyte chars to multibyte.
16327 (skip_chars): Delete the arg syntaxp, and move the code for
16328 handling syntaxes to skip_syntaxes. Change callers.
16329 Fix the case that the multibyteness of STRING and the current
16330 buffer doesn't match.
16331 (skip_syntaxes): New function.
16332 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
16333 SINGLE_BYTE_CHAR_P.
16334
16335 2008-02-01 Kenichi Handa <handa@m17n.org>
16336
16337 * xfaces.c (QCfontset): New variable.
16338 (LFACE_FONTSET): New macro.
16339 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
16340 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
16341 (Finternal_set_lisp_face_attribute)
16342 (Finternal_get_lisp_face_attribute): Handle QCfontset.
16343 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
16344 check also LFACE_FONTSET_INDEX.
16345 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
16346 attrs[LFACE_FONT_INDEX].
16347 (syms_of_xfaces): Intern and staticpro QCfontset.
16348
16349 * dispextern.h (enum lface_attribute_index): New member
16350 LFACE_FONTSET_INDEX.
16351
16352 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
16353
16354 2008-02-01 Kenichi Handa <handa@m17n.org>
16355
16356 * coding.c (coding_set_destination): Fix coding->destination for
16357 the case converting a region.
16358 (encode_coding_utf_8): Encode eight-bit chars as single byte.
16359 (encode_coding_object): Fix coding->dst_pos and
16360 coding->dst_pos_byte for the case converting a region.
16361
16362 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
16363
16364 * character.h (BYTE8_STRING): New macro.
16365
16366 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
16367
16368 2008-02-01 Kenichi Handa <handa@m17n.org>
16369
16370 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
16371 characters by octal form.
16372
16373 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16374
16375 * buffer.h (_fetch_multibyte_char_len): Delete extern.
16376 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
16377 _fetch_multibyte_char_len.
16378 (FETCH_CHAR_AS_MULTIBYTE): New macro.
16379
16380 * casetab.c (set_canon, set_identity, shuffle): Simplify.
16381
16382 * casefiddle.c (casify_object): Simplify. Handle the case that
16383 the case conversion change the byte length.
16384 (casify_region): Likewise.
16385
16386 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
16387
16388 * character.c (_fetch_multibyte_char_len): Delete this variable.
16389 (syms_of_character): Setup Vprintable_chars.
16390
16391 * editfns.c (Fchar_equal): Fix for the unibyte case.
16392 (Finsert_byte): New function.
16393 (syms_of_editfns): Defsubr it.
16394
16395 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
16396 of direct code 0x3ffff.
16397
16398 * search.c (Freplace_match): Fix for the unibyte case.
16399
16400 2008-02-01 Kenichi Handa <handa@m17n.org>
16401
16402 * lread.c (safe_to_load_p): Fix the logic.
16403
16404 * syntax.c (scan_words): Don't treat characters belonging to
16405 different scripts as constituting a word.
16406
16407 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16408
16409 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
16410
16411 * emacs.c (main): In the case of --unibyte, instead of aborting on
16412 finding non-empty buffer, make it unibyte.
16413
16414 2008-02-01 Kenichi Handa <handa@m17n.org>
16415
16416 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
16417 to create a fontset.
16418
16419 2008-02-01 Dave Love <fx@gnu.org>
16420
16421 * character.c (Funibyte_char_to_multibyte): Doc fix.
16422
16423 * xfns.c [HAVE_STDLIB_H]: Fix last change.
16424
16425 2008-02-01 Kenichi Handa <handa@m17n.org>
16426
16427 * fontset.c (fontset_add): Make the type `int'.
16428 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
16429
16430 * character.c (unibyte_char_to_multibyte)
16431 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
16432 charset_unibyte, not charset_primary.
16433
16434 * charset.h (charset_unibyte): Extern it instead of charset_primary.
16435
16436 * charset.c (charset_unibyte): Rename from charset_primary.
16437 (Funibyte_charset): Rename from Fprimary_charset.
16438 (Fset_unibyte_charset): Rename from Fset_primary_charset.
16439 (syms_of_charset): Adjust for the above changes.
16440
16441 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16442 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16443 it->multibyte_p is zero.
16444
16445 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
16446 Delete extern.
16447
16448 2008-02-01 Kenichi Handa <handa@m17n.org>
16449
16450 * coding.c (Fdefine_coding_system_internal): Fix category setting
16451 for a coding system of type iso-2022.
16452
16453 2008-02-01 Kenichi Handa <handa@m17n.org>
16454
16455 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
16456
16457 2008-02-01 Kenichi Handa <handa@m17n.org>
16458
16459 * syntax.c (Vnext_word_boundary_function_table): New variable.
16460 (next-word-boundary-function-table): Declare it as a Lisp variable
16461 in syms_of_syntax.
16462 (scan_words): Call functions in Vnext_word_boundary_function_table
16463 if any.
16464
16465 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
16466
16467 * fontset.c (fs_load_font): If fontp->charset is not negative,
16468 return fontp without setting its members.
16469
16470 2008-02-01 Dave Love <fx@gnu.org>
16471
16472 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
16473
16474 * m/sparc.h (HAVE_ALLOCA): Delete.
16475
16476 * s/irix6-5.h: Don't include strings.h.
16477 (bcopy, bzero, bcmp): Don't undef.
16478
16479 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
16480
16481 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
16482 (TIOCSIGSEND): Don't test IRIX6.
16483 (bcopy, bzero, bcmp): Define conditionally.
16484
16485 2008-02-01 Kenichi Handa <handa@m17n.org>
16486
16487 * buffer.c (Qas, Qmake, Qto): New variables.
16488 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
16489 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
16490
16491 * callproc.c (Fcall_process): Don't call insert_1_both directly if
16492 we are inserting a process output into a multibyte buffer.
16493
16494 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
16495 multibyte_char_to_unibyte.
16496
16497 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
16498 by the primary charset, make it eight-bit char.
16499 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
16500
16501 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
16502 (charset_8_bit__control, charset_8_bit_graphic)
16503 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
16504 (define_charset_internal): New function.
16505 (syms_of_charset): Call define_charset_internal for pre-defined
16506 charsets.
16507
16508 * charset.h (charset_8_bit): Extern it.
16509
16510 * coding.c (make_conversion_work_buffer): Adjust for the change
16511 of Fset_buffer_multibyte.
16512 (encode_coding_raw_text): Increment p0 in the loop.
16513
16514 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
16515
16516 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
16517 for the change of Fset_buffer_multibyte.
16518
16519 * fns.c (Fstring_to_multibyte): New function.
16520 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
16521
16522 2008-02-01 Dave Love <fx@gnu.org>
16523
16524 * xfns.c (x_put_x_image): Declare args.
16525
16526 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
16527 (try_font_list): Declare an arg.
16528
16529 * xdisp.c (message2_nolog, set_message): Declare an arg.
16530
16531 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
16532
16533 * syntax.c (scan_sexps_forward): Declare an arg.
16534
16535 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
16536 Declare an arg.
16537
16538 * lisp.h (Fnew_fontset): Declare.
16539
16540 * keymap.c (push_key_description): Call CHARACTERP correctly.
16541
16542 * fontset.c (fontset_add): Declare args. Call make_number correctly.
16543 (face_for_char): Delete unused vars.
16544 (Fset_fontset_font): Doc fix. Delete unused vars.
16545
16546 * doc.c (Fsubstitute_command_keys): Delete unused vars.
16547
16548 * composite.c (update_compositions): Declare arg.
16549
16550 * cm.c (calccost, cmgoto): Declare args.
16551
16552 * charset.c: Remove `emacs' conditional. Doc fixes.
16553 (map_char_table_for_charset): Declare.
16554
16555 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
16556
16557 * ccl.c: Remove `emacs' conditional.
16558
16559 2008-02-01 Kenichi Handa <handa@m17n.org>
16560
16561 The following changes are to allow specifying multiple font
16562 patterns for a character range (specified by script or charset).
16563
16564 * Makefile.in (abbrev.o): Depend on syntax.h.
16565 (xfaces.o): Depend on charset.h.
16566
16567 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
16568 SINGLE_BYTE_CHAR_P.
16569
16570 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
16571
16572 * character.h (Vchar_script_table): Extern it.
16573
16574 * character.c (Vscript_alist): Delete.
16575 (Vchar_script_table, Qchar_script_table): New variable.
16576 (syms_of_character): Declare Vchar_script_table as a lisp variable
16577 and initialize it.
16578
16579 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
16580 have property char-table-extra-slots, make no extra slot.
16581
16582 * dispextern.h (struct face): Delete member `charset'.
16583 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
16584 SINGLE_BYTE_CHAR_P.
16585 (choose_face_font, lookup_non_ascii_face, font_name_registry):
16586 Add prototypes.
16587 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
16588 (generate_ascii_font_name): Rename from generate_ascii_font.
16589
16590 * fontset.h (get_font_repertory_func): New prototype.
16591 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
16592 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
16593
16594 * fontset.c (Qprepend, Qappend): New variables.
16595 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
16596 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
16597 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
16598 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
16599 (fontset_ref_and_range, fontset_add, reorder_font_vector)
16600 (load_font_get_repertory): New functions.
16601 (fontset_set): Delete.
16602 (fontset_face): New arg FACE. Return face ID, not face.
16603 Complete re-write to handle new fontset structure. Change caller.
16604 (free_face_fontset): Use ASET istead of AREF (X) = Y.
16605 (face_for_char): Don't call lookup_face.
16606 (make_fontset_for_ascii_face): New arg FACE.
16607 (fs_load_font): New arg CHARSET_ID. Don't check
16608 Vfont_encoding_alist here.
16609 (find_font_encoding): New function.
16610 (list_fontsets): Use STRINGP, not ! NILP.
16611 (accumulate_script_ranges): New function.
16612 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
16613 re-written to handle new fontset structure.
16614 (Ffontset_font): Return a copy of element.
16615 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
16616 docstring of font-encoding-alist.
16617
16618 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
16619 (Fset_fotset_font): Fix arguments to 5.
16620
16621 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
16622
16623 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
16624 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16625 (highlight_trailing_whitespace): Adjust for the change of
16626 lookup_named_face.
16627
16628 * xfaces.c: Include charset.h.
16629 (load_face_font): Delete argument C. Change caller.
16630 (generate_ascii_font_name): Rename from generate_ascii_font.
16631 (font_name_registry): New function.
16632 (cache_face): Store ascii faces before non-ascii faces in buckets.
16633 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
16634 Lookup only ascii faces.
16635 (lookup_non_ascii_face): New function.
16636 (lookup_named_face): Delete argument C. Change caller.
16637 (lookup_derived_face): Delete argument C. Change caller.
16638 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
16639 a string, just call font_list with it.
16640 (choose_face_font): Delete arguments FACE and C. New arg
16641 FONT_SPEC. Change caller.
16642 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
16643 Change caller.
16644 (realize_non_ascii_face): New function.
16645 (realize_x_face): Call load_face_font here.
16646 (realize_tty_face): Delete argument C. Change caller.
16647 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
16648 get a face ID.
16649 (dump_realized_face): Don't print charset of FACE.
16650
16651 * xfns.c (x_set_font): Always call x_new_fontset and
16652 store_frame_parameter.
16653 (Fx_create_frame): Call x_new_fontset, not x_new_font.
16654 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
16655
16656 * xterm.h (x_get_font_repertory): Extern it.
16657
16658 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16659 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16660 it->multibyte_p is zero.
16661 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16662 (x_new_fontset): If FONTSETNAME doesn't match any existing
16663 fontsets, create a new one.
16664 (x_get_font_repertory): New function.
16665
16666 2008-02-01 Kenichi Handa <handa@m17n.org>
16667
16668 * coding.c (Ffind_coding_systems_region_internal): Detect an
16669 ASCII only string correctly.
16670
16671 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
16672 version is 0.
16673
16674 2008-02-01 Kenichi Handa <handa@m17n.org>
16675
16676 * lread.c: Include "coding.h".
16677 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
16678 (load_each_byte, unread_char): New variables.
16679 (readchar_backlog): Delete.
16680 (readchar): Return a character unless load_each_byte is nonzero.
16681 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
16682 cons. If unread_char is not -1, simply return it.
16683 (unreadchar): Handle the case that readcharfun is
16684 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
16685 (read_multibyte): Delete.
16686 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
16687 (read_emacs_mule_char): New functions.
16688 (Fload): Even if the file doesn't have the extension ".elc", if
16689 safe_to_load_p returns a positive version number, assume that the
16690 file contains bytecompiled code. If the version is less than 22,
16691 load the file while decoding multibyte sequences by emacs-mule.
16692 (readevalloop): Don't use readchar_backlog.
16693 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
16694 (Fread_from_string): Pay attention to the case that STREAM is a cons.
16695 (read_escape): Delete the arg BYTEREP.
16696 (read1): Set load_each_byte to 1 temporarily while handling
16697 #@NUMBER. Don't call read_multibyte.
16698 (read_vector): Call Fread with a cons. If readcharfun is
16699 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
16700 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
16701 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
16702 and Qload_force_doc_strings.
16703
16704 2008-02-01 Kenichi Handa <handa@m17n.org>
16705
16706 * xdisp.c (face_before_or_after_it_pos): Call
16707 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16708
16709 2008-02-01 Kenichi Handa <handa@m17n.org>
16710
16711 * character.h (TRAILING_CODE_P): New macro.
16712 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
16713 (string_char_with_unification): Fix prototype.
16714 (Vscript_alist): Extern it.
16715
16716 * character.c (Vscript_alist): New variable.
16717 (string_char_with_unification, str_as_unibyte)
16718 (string_escape_byte8): Add `const' to local variables.
16719 (syms_of_character): Declare script-alist as a Lisp variable.
16720
16721 * charset.h (Vcharset_ordered_list): Extern it.
16722 (charset_ordered_list_tick): Extern it.
16723 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
16724 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
16725 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
16726 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
16727 (Funify_charset): Adjust for the change of Funify_charset.
16728
16729 * charset.c (charset_ordered_list_tick): New variable.
16730 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
16731 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
16732 deunify intead of unify a charset.
16733 (string_xstring_p): Add `const' to local variables.
16734 (find_charsets_in_text): Add `const' to arguments and local variables.
16735 (encode_char): Adjust for the change of Funify_charset. Fix
16736 detecting of invalid code.
16737 (Fset_charset_priority): Increment charset_ordered_list_tick.
16738 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
16739 and TO_CODE.
16740
16741 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
16742 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
16743 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
16744 (decode_coding_ccl, consume_chars)
16745 (Ffind_coding_systems_region_internal)
16746 (Fcheck_coding_systems_region): Add `const' to local variables.
16747
16748 * print.c (print_object): Use octal form for printing the
16749 contents of a bool vector.
16750
16751 2008-02-01 Dave Love <fx@gnu.org>
16752
16753 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
16754 <version == 20>: Refuse to load.
16755
16756 2008-02-01 Dave Love <fx@gnu.org>
16757
16758 * fns.c: Move coding.h.
16759 (Qcodeset, Qdays, Qmonths): New.
16760 (concat): Use CHARACTERP instead of INTEGERP.
16761 (Flocale_codeset): Delete.
16762 (Flanginfo): New function.
16763 (syms_of_fns): Change accordingly.
16764
16765 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
16766
16767 2008-02-01 Dave Love <fx@gnu.org>
16768
16769 * casetab.c (init_casetab_once, init_casetab_once): Fix
16770 CHAR_TABLE_SET call.
16771
16772 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
16773
16774 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
16775
16776 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
16777 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
16778 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
16779
16780 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
16781
16782 * coding.c (ENCODE_DESIGNATION, decode_eol)
16783 (make_conversion_work_buffer, code_conversion_restore)
16784 (Fdefine_coding_system_internal): Convert Lisp types.
16785 (code_conversion_restore): Use EQ, not ==.
16786 (Fencode_coding_string): Fix code_convert_string call.
16787
16788 * coding.h (code_convert_region): Fix prototype.
16789
16790 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
16791
16792 * fontset.c (fontset_ref, fontset_set, fs_load_font)
16793 (Ffontset_info): Convert Lisp types.
16794
16795 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
16796
16797 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
16798
16799 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
16800
16801 * chartab.c: Include "...h", not <...h> in some cases.
16802
16803 * callproc.c (Fcall_process): Remove unused variables.
16804
16805 2008-02-01 Dave Love <fx@gnu.org>
16806
16807 * coding.c (Fset_coding_system_priority): Allow null arg list.
16808
16809 2008-02-01 Dave Love <fx@gnu.org>
16810
16811 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16812 (Fself_insert_and_exit): Use CHARACTERP.
16813
16814 * callproc.c (Fcall_process): Remove unused vars.
16815
16816 * xterm.c (XTread_socket): Add extra dead keysyms.
16817
16818 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
16819
16820 * dispextern.h: Remove prototypes for redraw_frame,
16821 redraw_garbaged_frames.
16822
16823 * cmds.c (Fself_insert_command): Use CHARACTERP.
16824
16825 * chartab.c (make_sub_char_table): Remove unused var.
16826 (Fset_char_table_default, Fmap_char_table): Doc fix.
16827
16828 * keymap.c (access_keymap): Remove generic char code.
16829 (push_key_description): Use CHARACTERP.
16830
16831 2008-02-01 Dave Love <fx@gnu.org>
16832
16833 * charset.c: Doc fixes.
16834 (Funify_charset): Extra checking.
16835
16836 2008-02-01 Dave Love <fx@gnu.org>
16837
16838 * lread.c: Remove some unused variables.
16839 (safe_to_load_p): If safe, return the magic number version byte.
16840 (Fload): Maybe use load-with-code-conversion.
16841
16842 2008-02-01 Kenichi Handa <handa@m17n.org>
16843
16844 * category.c (Fmodify_category_entry): Don't modify the contents
16845 of category_set for characters out of the range. Avoid
16846 unnecessary modification.
16847
16848 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
16849 Vchar_unify_table. The default value of the table is now nil.
16850
16851 * character.c (syms_of_character): Setup Vchar_width_table for
16852 eight-bit-control and raw-byte chars.
16853
16854 * charset.h (enum define_charset_arg_index): Delete
16855 charset_arg_parents and add charset_arg_subset and
16856 charset_arg_superset.
16857 (enum charset_attr_index): Delete charset_parents and add
16858 charset_subset and charset_superset.
16859 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
16860 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
16861 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
16862 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
16863 (CHARSET_SUPERSET): New macros.
16864 (charset_work): Extern it.
16865 (ENCODE_CHAR): Use charset_work.
16866 (CHAR_CHARSET_P): Adjust for the change of encoder format.
16867 (map_charset_chars): Extern it.
16868
16869 * charset.c (load_charset_map): Set the default value of encoder
16870 and deunifier char-tables to nil.
16871 (map_charset_chars): Change argument. Change callers. Use
16872 map_char_table_for_charset instead of map_char_table.
16873 (Fmap_charset_chars): New optional args from_code and to_code.
16874 (Fdefine_charset_internal): Adjust for the change of
16875 `define-charset' (:parents -> :subset or :superset).
16876 (charset_work): New variable.
16877 (encode_char, syms_of_charset): Adjust for the change of
16878 Fdefine_charset_internal.
16879 (Ffind_charset_string): Setup the vector `charsets' correctly.
16880
16881 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
16882 the previous change.
16883 (char_table_ref_and_range): Adjust for the above change.
16884 (map_sub_char_table_for_charset): New function.
16885 (map_char_table_for_charset): New function.
16886
16887 * keymap.c (describe_vector): Handle a char-table directly here.
16888 (describe_char_table): Delete.
16889
16890 * lisp.h (map_charset_chars): Delete.
16891
16892 2008-02-01 Dave Love <fx@gnu.org>
16893
16894 * fns.c (count_combining): Comment out (unused).
16895 (Flocale_codeset): New.
16896 (syms_of_fns): Defsubr it.
16897
16898 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
16899 (size_t): Remove.
16900
16901 2008-02-01 Dave Love <fx@gnu.org>
16902
16903 * Makefile.in (chartab.o): Depend on charset.h.
16904
16905 2008-02-01 Kenichi Handa <handa@m17n.org>
16906
16907 * character.c (syms_of_character): Set the default value of
16908 Vprintable_chars to Qnil.
16909
16910 2008-02-01 Dave Love <fx@gnu.org>
16911
16912 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
16913
16914 2008-02-01 Kenichi Handa <handa@m17n.org>
16915
16916 * charset.c (load_charset_map): Handle the case that from < to
16917 correctly.
16918
16919 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
16920 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
16921 Pay attention to raw-8-bit chars.
16922
16923 2008-02-01 Kenichi Handa <handa@m17n.org>
16924
16925 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
16926 It is not bytecompiled now.
16927
16928 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
16929 (charset_jisx0208): New variables.
16930 (Fdefine_charset_internal): Setup them if appropriate.
16931 (init_charset_once): Initialize them to -1.
16932
16933 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
16934 (charset_jisx0208): Extern them.
16935
16936 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
16937 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
16938 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
16939 (setup_iso_safe_charsets): Fix arguments to Fassq.
16940 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
16941 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
16942 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
16943 (encode_coding_iso_2022): Change the 1st arg to
16944 ENCODE_ISO_CHARACTER to a variable.
16945
16946 2008-02-01 Kenichi Handa <handa@m17n.org>
16947
16948 * charset.h (enum define_charset_arg_index): New enums
16949 charset_arg_min_code and charset_arg_max_code.
16950 (struct charset): New member char_index_offset.
16951
16952 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
16953 Take charset->char_index_offset into account.
16954 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
16955 args[charset_arg_max_code]. Setup charset.char_index_offset.
16956 (syms_of_charset): Fix args to Fdefine_charset_internal.
16957
16958 2008-02-01 Dave Love <fx@gnu.org>
16959
16960 * coding.c (decode_coding_utf_8): Reject overlong sequences.
16961
16962 2008-02-01 Dave Love <fx@gnu.org>
16963
16964 * coding.c: Doc fixes.
16965 (Fcoding_system_aliases): Fix return value.
16966 (Qmac): Remove (duplicated) definition.
16967
16968 2008-02-01 Dave Love <fx@gnu.org>
16969
16970 * charset.c (Fcharset_priority_list, Fset_charset_priority):
16971 New functions.
16972
16973 * character.c (Fstring): Doc fix.
16974
16975 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
16976
16977 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
16978 (font-encoding-alist): Doc fix.
16979
16980 2008-02-01 Dave Love <fx@gnu.org>
16981
16982 * term.c (costs_set): Declare static, non-initialized for pcc.
16983 (encode_terminal_code): Remove unused var.
16984
16985 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16986 for K&R.
16987
16988 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
16989
16990 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
16991 (suffixes): Move out of make_subsidiaries for K&R.
16992
16993 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
16994
16995 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
16996
16997 2008-02-01 Dave Love <fx@gnu.org>
16998
16999 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
17000
17001 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
17002
17003 2008-02-01 Yong Lu <lyongu@asia-infonet.com>
17004
17005 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
17006
17007 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
17008
17009 2008-02-01 Kenichi Handa <handa@m17n.org>
17010
17011 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
17012 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
17013
17014 2008-02-01 Kenichi Handa <handa@m17n.org>
17015
17016 * coding.c (decode_coding_charset): Adjust for the change of
17017 Fdefine_coding_system_internal.
17018 (Fdefine_coding_system_internal): For a coding system of
17019 `charset' type, store a list of charset IDs in
17020 `charset_attr_charset_valids' element of coding attributes.
17021
17022 2008-02-01 Kenichi Handa <handa@m17n.org>
17023
17024 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
17025 (emacs_mule_char): New arg src. Delete arg `composition'. Change
17026 caller. Handle 2-byte and 3-byte charsets correctly.
17027 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
17028 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
17029 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
17030 (DECODE_EMACS_MULE_21_COMPOSITION): Call
17031 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
17032 sequence.
17033 (decode_coding_emacs_mule): Handle composition correctly. Rewind
17034 `src' and `consumed_chars' correctly before calling emacs_mule_char.
17035 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
17036 and alt&rule composition.
17037 (decode_coding_iso_2022): Handle composition correctly.
17038 (init_coding_once): Setup emacs_mule_bytes for private charsets.
17039
17040 * charset.c (Fdefine_charset_internal): Fix bug for the case of
17041 re-defining a charset. If the charset has :emacs-mule-id, setup
17042 emacs_mule_bytes.
17043 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
17044
17045 2008-02-01 Kenichi Handa <handa@m17n.org>
17046
17047 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
17048 (encode_coding_big5, encode_coding_charset): If coding requires safe
17049 encoding, produce a character specified by
17050 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
17051
17052 2008-02-01 Dave Love <fx@gnu.org>
17053
17054 * xterm.c (XSetIMValues): Declare.
17055
17056 * process.c: Conditionally include sys/wait.h, pty.h.
17057
17058 * print.c (print_object): Fix print format for 64-bit systems.
17059
17060 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
17061
17062 * buffer.c (emacs_strerror): Declare.
17063
17064 * fontset.c (Fclear_face_cache): Declare.
17065 (accumulate_font_info): Comment-out (unused).
17066 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
17067 variables.
17068
17069 * character.h (string_escape_byte8): Declare.
17070
17071 * charset.c (load_charset_map, load_charset_map_from_file): Remove
17072 unused vars.
17073 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
17074 (Fmap_charset_chars): Doc fix.
17075
17076 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
17077 (Fset_coding_system_priority, Fset_coding_system_priority)
17078 (Fdefine_coding_system_internal): Doc fix.
17079
17080 2008-02-01 Dave Love <fx@gnu.org>
17081
17082 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
17083
17084 2008-02-01 Kenichi Handa <handa@m17n.org>
17085
17086 * character.c (string_escape_byte8): Make multibyte string with
17087 correct size.
17088
17089 * charset.c (Fmake_char): Delete unnecessary code.
17090
17091 2008-02-01 Kenichi Handa <handa@m17n.org>
17092
17093 * xfns.c (x_encode_text): Allocate coding.destination here, and
17094 call encode_coding_object with dst_object Qnil.
17095
17096 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
17097 multibyte form correctly.
17098
17099 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
17100 against Vfont_encoding_alist.
17101
17102 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
17103 handling of charset list.
17104 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
17105 (decode_coding_object): Move point to coding->dst_pos before
17106 calling post-read-conversion function.
17107 (encode_coding_object): Give correct arguments to
17108 pre-write-conversion. Ignore the return value of
17109 pre-write-conversion function. Pay attention to the case that
17110 pre-write-conversion changes the current buffer. If dst_object is
17111 Qt, even if coding->src_bytes is zero, allocate at least one byte
17112 to coding->destination.
17113
17114 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
17115
17116 * charset.c (Fmake_char): Make it more backward compatible.
17117 (Fmap_charset_chars): Fix docstring.
17118
17119 2008-02-01 Dave Love <fx@gnu.org>
17120
17121 * coding.c: Doc fixes.
17122 (Fdefine_coding_system_alias): Use names, not symbols, in
17123 coding-system-alist.
17124
17125 2008-02-01 Kenichi Handa <handa@m17n.org>
17126
17127 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
17128 of calling free_realized_face.
17129
17130 2008-02-01 Yong Lu <lyongu@asia-infonet.com>
17131
17132 * charset.c (read_hex): Don't treat SPC as a comment starter.
17133 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
17134 (Fdecode_char): Fix typo.
17135
17136 2008-02-01 Kenichi Handa <handa@m17n.org>
17137
17138 * charset.h (struct charset): New member `code_space_mask'.
17139
17140 * coding.c (coding_set_source): Delete the local variable beg_byte.
17141 (encode_coding_charset, Fdefine_coding_system_internal):
17142 Delete the local variable charset.
17143 (Fdefine_coding_system_internal): Setup
17144 attrs[coding_attr_charset_valids] correctly.
17145
17146 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
17147 member to check if CODE is valid or not.
17148 (Fdefine_charset_internal): Initialize `code_space_mask' member.
17149 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
17150 is within the range of charset->min_code and carset->max_code.
17151
17152 2008-02-01 Dave Love <fx@gnu.org>
17153
17154 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
17155
17156 * dispextern.h (generate_ascii_font): Fix return type.
17157
17158 * xfaces.c (generate_ascii_font): Fix arg declaration.
17159
17160 * coding.c (coding_inherit_eol_type)
17161 (Fset_terminal_coding_system_internal)
17162 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
17163
17164 2008-02-01 Kenichi Handa <handa@m17n.org>
17165
17166 * coding.c (decode_coding_charset, encode_coding_charset): Handle
17167 multiple charsets correctly.
17168
17169 2008-02-01 Kenichi Handa <handa@m17n.org>
17170
17171 * search.c (boyer_moore): Fix handling of multibyte character
17172 translation.
17173
17174 * xdisp.c (display_mode_element): When the variable `elt' is
17175 changed, update `this' and `lisp_string'.
17176
17177 2008-02-01 Kenichi Handa <handa@m17n.org>
17178
17179 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
17180
17181 * callproc.c (Fcall_process): Be sure to give the current buffer
17182 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
17183
17184 * charset.c (struct charset_map_entries): New struct.
17185 (load_charset_map): Rename from parse_charset_map. New args
17186 entries and n_entries. Change caller.
17187 (load_charset_map_from_file): Rename from load_charset_map.
17188 Change caller. New arg control_flag. Call load_charset_map at
17189 the tail.
17190 (load_charset_map_from_vector): New function.
17191 (Fdefine_charset_internal): Setup charset.compact_codes_p.
17192 (encode_char): If the charset is compact, change a character index
17193 to a code point.
17194
17195 * coding.c (coding_alloc_by_making_gap): Check the case that the
17196 source and destination are the same correctly.
17197 (decode_coding_raw_text): Set coding->consumed_char and
17198 coding->consumed to 0.
17199 (produce_chars): If coding->chars_at_source is nonzero, update
17200 coding->consumed_char and coding->consumed before calling
17201 alloc_destination.
17202 (Fdefine_coding_system_alias): Register ALIAS in
17203 Vcoding_system_alist.
17204 (syms_of_coding): Define `no-conversion' coding system at the tail.
17205
17206 * fileio.c (Finsert_file_contents): Set coding_system instead of
17207 val. If the current buffer is multibyte, always call
17208 decode_coding_gap.
17209
17210 * xfaces.c (try_font_list): Give higher priority to fontset's
17211 family than face's family.
17212
17213 2008-02-01 Kenichi Handa <handa@m17n.org>
17214
17215 * callproc.c (Fcall_process): Be sure to give the current buffer
17216 to decode_coding_c_string.
17217
17218 * xfaces.c (try_font_list): Give a family specified in a fontset
17219 higher priority than a family specified in a face.
17220
17221 2008-02-01 Kenichi Handa <handa@m17n.org>
17222
17223 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
17224 Fix arguments to insert_from_buffer.
17225
17226 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
17227
17228 2008-02-01 Kenichi Handa <handa@m17n.org>
17229
17230 * coding.c (produce_chars): Set the variable `multibytep' correctly.
17231 (decode_coding_gap): Set coding->dst_multibyte correctly.
17232
17233 2008-02-01 Kenichi Handa <handa@m17n.org>
17234
17235 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
17236 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
17237 (encode_coding_utf_16): Substitute coding->default_char for
17238 non-Unicode characters.
17239 (decode_coding): Don't call record_insert here.
17240 (setup_coding_system): Initialize `surrogate' of
17241 coding->spec.utf_16 to 0.
17242 (EMIT_ONE_BYTE): Fix for multibyte case.
17243
17244 * insdel.c (insert_from_gap): Call record_insert.
17245
17246 2008-02-01 Kenichi Handa <handa@m17n.org>
17247
17248 * casefiddle.c (casify_region): Fix multibyte case.
17249
17250 * character.c (c_string_width): Add return type `int'.
17251 (char_string_with_unification): Delete arg ADVANCED.
17252
17253 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
17254 (CHAR_STRING): Adjust for the change of char_string_with_unification.
17255 (CHAR_STRING_ADVANCE): Make it do-while statement.
17256
17257 * chartab.c (sub_char_table_set_range): Optimize for the case
17258 DEPTH == 3. Add workaround code for a GCC optimization bug.
17259
17260 * charset.c (parse_charset_map): Remove an unused variable.
17261
17262 * coding.c: Delete unused variables.
17263
17264 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
17265 earlier. If inserted is zero and the coding system doesn't
17266 require flushing, don't call decode_coding_gap.
17267
17268 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
17269
17270 2008-02-01 Kenichi Handa <handa@m17n.org>
17271
17272 The following changes are for using Unicode as an internal
17273 character model, and use UTF-8 format for buffer/string
17274 representation.
17275
17276 * .gdbinit (xchartable): Adjust for the change of char table structure.
17277 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
17278
17279 * Makefile.in (obj): Add character.o and chartab.o.
17280 (lisp, shortlisp): Remove utf-8.elc.
17281 (*.o): For many files, change dependency on charset.h to
17282 character.h, and add dependency on character.h.
17283 (character.o, chartab.o): New targets.
17284
17285 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
17286 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
17287 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
17288 of "charset.h".
17289
17290 * dired.c, filelock.c: Include "character.h".
17291
17292 * alloc.c: Include "character.h" instead of "charset.h".
17293 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
17294 (syms_of_alloc): Remove defsubr for Smake_char_table.
17295
17296 * buffer.c: Include "character.h" instead of "charset.h", don't
17297 include "coding.h".
17298 (Fset_buffer_multibyte): Adjust for UTF-8.
17299
17300 * buffer.h: EXFUN Fbuffer_live_p.
17301
17302 * callproc.c: Include "character.h" instead of "charset.h".
17303 (Fcall_process): Big change for the new code-conversion APIs.
17304
17305 * casetab.c: Include "character.h" instead of "charset.h".
17306 (set_canon, set_identity, shuffle): Adjust for the new
17307 map_char_table spec.
17308 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
17309 accessing the char table structure.
17310
17311 * chartab.c: New file that implements char table.
17312
17313 * category.c: Include "character.h".
17314 (copy_category_entry): New function.
17315 (copy_category_table): Call map_char_table and copy_category_entry.
17316 (Fmake_category_table): Initialize all top-level slots.
17317 (char_category_set): New function.
17318 (modify_lower_category_set): Delete.
17319 (Fmodify_category_entry): Call char_table_ref_and_range.
17320
17321 * category.h (CATEGORY_SET): Just call char_category_set.
17322
17323 * ccl.c: Include "character.h".
17324 (Qccl, Qcclp): New variables.
17325 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
17326 it's less than 256.
17327 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
17328 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
17329 and DST type.
17330 (ccl_driver): Change types of argument, adjust code accordingly.
17331 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
17332 ccl_driver.
17333 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
17334
17335 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
17336 New members src_multibyte, dst_multibyte, consumed, and produced.
17337 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
17338 (CODING_SPEC_CCL_PROGRAM): New macro.
17339 (ccl_driver): Update prototype.
17340 (Qccl, Qcclp, Fccl_program_p): Extern them.
17341 (CHECK_CCL_PROGRAM): New macro.
17342
17343 * character.c, character.h, chartab.c: New files.
17344
17345 * charset.c: Mostly re-written. Move character and multibyte sequence
17346 handling codes to character.c.
17347
17348 * charset.h: Mostly re-written. Move character and multibyte sequence
17349 handling codes to character.h.
17350
17351 * coding.c, coding.h: Mostly re-written.
17352
17353 * composite.c: Include "character.h" instead of "charset.h".
17354 (CHAR_WIDTH): Move to character.h.
17355 (HASH_KEY, HASH_VALUE): Delete.
17356
17357 * composite.h (enum composition_method): Change order of enumeration
17358 symbols.
17359
17360 * data.c: Include "character.h" instead of "charset.h".
17361 (Faref): Call CHAR_TABLE_REF for a char table.
17362 (Faset): Call CHAR_TABLE_SET for a char table.
17363
17364 * dispextern.h (free_realized_face, check_face_attribytes)
17365 (generate_ascii_font): Extern them.
17366 (free_realized_multibyte_face): Delete extern.
17367
17368 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
17369 table structure.
17370
17371 * editfns.c: Include "character.h" instead of "charset.h".
17372 (Fchar_to_string): Always call CHAR_STRING.
17373
17374 * emacs.c (main): Call init_charset_once, init_charset,
17375 syms_of_chartab, and syms_of_character.
17376
17377 * fileio.c: Include "character.h" instead of "charset.h".
17378 (Finsert_file_contents): Big change for the new code-conversion API.
17379 (choose_write_coding_system, Fwrite_region): Likewise.
17380 (build_annotations_2): Delete.
17381 (e_write): Big change for the new code-conversion API.
17382
17383 * fns.c: Include "character.h" instead of "charset.h".
17384 (copy_sub_char_table): Move to chartab.c.
17385 (Fcopy_sequence): Call copy_char_table for a char table.
17386 (concat): Delete codes calling count_multibyte.
17387 (string_char_to_byte, string_byte_to_char): Adjust for the new
17388 multibyte form.
17389 (internal_equal): Adjust for the change of char table structure.
17390 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
17391 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
17392 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
17393 (char_table_translate, optimize_sub_char_table)
17394 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
17395 chartab.c.
17396 (char_table_ref_and_index): Delete.
17397 (HASH_KEY, HASH_VALUE): Move to lisp.h.
17398 (Fmd5): Call preferred_coding_system instead of accessing
17399 Vcoding_category_list. Adjust for the new code-conversion API.
17400 (syms_of_fns): Move defsubr for char table related functions to
17401 chartab.c.
17402
17403 * fontset.c: Mostly re-written.
17404
17405 * fontset.h (struct font_info): Change type of the member encoding_type.
17406 (enum FONT_SPEC_INDEX): New enum.
17407 (fontset_font_pattern, fs_load_font): Update prototype.
17408 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
17409
17410 * indent.c: Include "character.h" instead of "charset.h".
17411 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
17412
17413 * insdel.c: Include "character.h" instead of "charset.h".
17414 (copy_text): Don't refer to Vnonascii_translation_table.
17415 (insert_from_gap): New function.
17416
17417 * keyboard.c: Include "character.h" instead of "charset.h".
17418 (command_loop_1): Never call direct_output_forward_char before
17419 a non-ASCII character.
17420 (read_char): If Vkeyboard_translate_table is a char table, always
17421 translate a character.
17422
17423 * keymap.c: Include "character.h".
17424 (store_in_keymap): Handle the case that IDX is a cons.
17425 (Fdefine_key): Handle the case that KEY is a cons and the car part
17426 is also a cons (range).
17427 (push_key_description): Adjust for the new character code.
17428 (describe_vector): Call describe_char_table for a char table.
17429 (describe_char_table): New function.
17430
17431 * keymap.h (describe_char_table): Extern it.
17432
17433 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
17434 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
17435 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
17436 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
17437 Delete.
17438 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
17439 structure.
17440 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
17441 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
17442 (CHARTAB_SIZE_BITS_3): New macros.
17443 (chartab_size): Extern it.
17444 (struct Lisp_Char_Table): Re-design.
17445 (struct Lisp_Sub_Char_Table): New structure.
17446 (HASH_KEY, HASH_VALUE): Move from fns.c.
17447 (CHARACTERBITS): Define as 22.
17448 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
17449 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
17450 (GC_SUB_CHAR_TABLE_P): New macro.
17451 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
17452 (code_convert_string_norecord): Deleted extern.
17453 (init_character_once, syms_of_character, init_charset)
17454 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
17455
17456 * lread.c: Include "character.h".
17457 (read_multibyte): New arg NBYTES.
17458 (read_escape): Change the meaning of returned *BYTEREP.
17459 (to_multibyte): Delete.
17460 (read1): Adjust the handling of char table and string.
17461
17462 * print.c: Include "character.h" instead of "charset.h".
17463 (print_string): Convert 8-bit raw bytes to octal form by
17464 string_escape_byte8.
17465 (print_object): Adjust for the new multibyte form. Print 8-bit
17466 raw bytes always in octal form. Handle sub char table correctly.
17467
17468 * process.c: Include "character.h" instead of "charset.h".
17469 (read_process_output, send_process): Adjust for the new
17470 code-conversion API.
17471
17472 * puresize.h (BASE_PURESIZE): Increase.
17473
17474 * regex.c: Include "character.h" instead of "charset.h".
17475 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
17476 (regex_compile): Accept a range whose starting and ending
17477 character have different leading bytes.
17478 (analyse_first): Adjust for the above change.
17479
17480 * search.c: Include "character.h" instead of "charset.h".
17481 (search_buffer, boyer_moore): Adjust for the new multibyte form.
17482 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
17483
17484 * syntax.c: Include "character.h" instead of "charset.h".
17485 (syntax_parent_lookup): Delete.
17486 (Fmodify_syntax_entry): Accept a cons as CHAR.
17487 (skip_chars): Adjust for the new multibyte form.
17488 (init_syntax_once): Call char_table_set_range instead of directly
17489 accessing the structure of a char table.
17490
17491 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
17492 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
17493 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
17494 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
17495
17496 * term.c: Include "buffer.h" and "character.h".
17497 (encode_terminal_code, write_glyphs): Adjust for the new
17498 code-conversion API.
17499 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
17500
17501 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
17502
17503 * xdisp.c: Include "character.h".
17504 (get_next_display_element): Adjust for the new multibyte form.
17505 (disp_char_vector): Adjust for the new char table structure.
17506 (decode_mode_spec_coding): Adjust for the new structure of
17507 coding system.
17508 (decode_mode_spec): Adjust for the new code-conversion API.
17509
17510 * xfaces.c: Include "character.h" instead of "charset.h".
17511 (load_face_font): Adjust for the change of choose_face_font and
17512 FS_LOAD_FONT.
17513 (generate_ascii_font): New function.
17514 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
17515 (set_font_frame_param): Adjust for the change of choose_face_font.
17516 (free_realized_face): Make it public.
17517 (free_realized_faces_for_fontset): Rename from
17518 free_realized_multibyte_face. Free also faces realized for ASCII.
17519 (choose_face_font): Change arguments. Adjust for the change of
17520 fontset_font_pattern and FS_LOAD_FONT.
17521
17522 * xfns.c: Include "character.h".
17523 (x_encode_text): Adjust for the new code-conversion API.
17524
17525 * xselect.c: Don't include "charset.h".
17526 (selection_data_to_lisp_data): Adjust for the new code conversion API.
17527
17528 * xterm.c: Include "character.h".
17529 (x_encode_char): New argument CHARSET. Change caller.
17530 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
17531 Call ENCODE_CHAR instead of SPLIT_CHAR.
17532 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
17533 CHAR_WIDTH instead of CHARSET_WIDTH.
17534 (XTread_socket): Adjust for the new code-conversion API.
17535 (x_new_font): Adjust for the change of FS_LOAD_FONT.
17536 (x_load_font): Adjust for the change of struct font.
17537
17538 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
17539
17540 * xfaces.c (face_at_buffer_position): Remove unused vars.
17541
17542 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17543
17544 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
17545 Fix overflow checking.
17546
17547 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17548
17549 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
17550 Cancel previous change.
17551
17552 2008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17553
17554 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
17555 ccl->eight_bit_control. Fix check for buffer overflow.
17556 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
17557 (ccl_driver): Initialize extra_bytes to 0.
17558
17559 2008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17560
17561 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
17562 return it ORed with ctrl_modifier.
17563
17564 2008-01-29 Miles Bader <miles@gnu.org>
17565
17566 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
17567
17568 2008-01-28 Jason Rumney <jasonr@gnu.org>
17569
17570 * w32.c (stat): Don't double check for networked drive.
17571
17572 2008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
17573
17574 * window.c (run_window_configuration_change_hook): New function.
17575 Code extracted from set_window_buffer. Set the selected frame.
17576 (set_window_buffer): Use it.
17577 * window.h (run_window_configuration_change_hook): Declare.
17578 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
17579
17580 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
17581
17582 2008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
17583
17584 * Makefile.in: Remove references to unused macros.
17585
17586 2008-01-26 Eli Zaretskii <eliz@gnu.org>
17587
17588 * w32.c (g_b_init_get_sid_sub_authority)
17589 (g_b_init_get_sid_sub_authority_count): New static variables.
17590 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
17591 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
17592 (init_user_info): Use them to retrieve uid and gid.
17593 Use 500/513, the Windows defaults, as Administrator's uid/gid.
17594 (fstat): Use pw_uid and pw_gid from the_passwd structure for
17595 st_uid and st_gid of the file.
17596
17597 2008-01-26 Jason Rumney <jasonr@gnu.org>
17598
17599 * w32.c (logon_network_drive): New function.
17600 (stat): Use it.
17601
17602 2008-01-26 Chong Yidong <cyd@stupidchicken.com>
17603
17604 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
17605 invisible text covered with an ellipsis.
17606
17607 2008-01-25 Richard Stallman <rms@gnu.org>
17608
17609 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
17610 jump back to beginning. Move some other initializations after that.
17611 (Qwindow_text_change_functions, Vwindow_text_change_functions):
17612 New variables.
17613 (syms_of_xdisp): Init them.
17614
17615 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
17616
17617 * buffer.c (reset_buffer_local_variables):
17618 Implement `permanent-local-hook'.
17619 (Qpermanent_local_hook): New variable.
17620 (syms_of_buffer): Init and staticpro it.
17621
17622 2008-01-25 Michael Albinus <michael.albinus@gmx.de>
17623
17624 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
17625
17626 2008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
17627
17628 * fns.c (Fclrhash): Return TABLE.
17629
17630 2008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17631
17632 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
17633 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
17634 is set even without positional changes.
17635 (x_scroll_bar_clear): Set bar->redraw_needed_p.
17636
17637 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
17638
17639 2008-01-23 Jason Rumney <jasonr@gnu.org>
17640
17641 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
17642
17643 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
17644 the unicode range available in MULE by locale-coding-system.
17645 Improve dbcs lead byte detection. Set event timestamp and modifiers
17646 earlier.
17647
17648 2008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17649
17650 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
17651 [MAC_OSX] (init_mac_osx_environment): Initialize it.
17652 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
17653 when used on child processes.
17654
17655 2008-01-21 Michael Albinus <michael.albinus@gmx.de>
17656
17657 * dbusbind.c (Fdbus_method_return_internal): Rename from
17658 Fdbus_method_return.
17659 (Fdbus_unregister_object): Move to dbus.el.
17660 (Fdbus_call_method, Fdbus_method_return_internal)
17661 (Fdbus_send_signal): Improve debug messages.
17662
17663 2008-01-20 Martin Rudalics <rudalics@gmx.at>
17664
17665 * undo.c (undo_inhibit_record_point): New variable.
17666 (syms_of_undo): Initialize it.
17667 (record_point): Don't record point when undo_inhibit_record_point
17668 is set.
17669
17670 2008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
17671
17672 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
17673
17674 * xdisp.c (Qauto_hscroll_mode): New var.
17675 (syms_of_xdisp): Initialize it.
17676 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
17677 window's buffer.
17678 (hscroll_windows): Don't check automatic_hscrolling_p here.
17679
17680 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
17681 vscroll if we're setting window-buffer to the value it already has.
17682
17683 2008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
17684
17685 * m/intel386.h: Remove references to XENIX.
17686
17687 2008-01-17 Andreas Schwab <schwab@suse.de>
17688
17689 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
17690 instead of HAVE_X86_64_LIB64_DIR.
17691 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
17692
17693 2008-01-17 Glenn Morris <rgm@gnu.org>
17694
17695 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
17696 to HAVE_X86_64_LIB64_DIR.
17697
17698 2008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
17699
17700 * s/irix3-3.h:
17701 * s/irix4-0.h:
17702 * s/386-ix.h:
17703 * s/domain.h:
17704 * s/hpux9-x11r4.h:
17705 * s/hpux9shxr4.h: Remove files for systems no longer supported.
17706
17707 * sysdep.c: Remove code containing references to symbols defined
17708 by unsupported systems.
17709
17710 2008-01-16 Glenn Morris <rgm@gnu.org>
17711
17712 * coding.c (select-safe-coding-system-function): Doc fix.
17713
17714 2008-01-15 Glenn Morris <rgm@gnu.org>
17715
17716 * config.in: Revert 2008-01-13 change: this is a generated file.
17717
17718 2008-01-13 Tom Tromey <tromey@redhat.com>
17719
17720 * lisp.h: Fix typo.
17721
17722 2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17723
17724 * m/sequent-ptx.h:
17725 * m/sequent.h:
17726 * s/ptx.h:
17727 * s/ptx4-2.h:
17728 * s/ptx4.h: Remove files for systems no longer supported.
17729
17730 * callproc.c (Fcall_process): Fix previous change.
17731
17732 2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17733
17734 * unexsunos4.c: Remove file, system not supported anymore.
17735
17736 * m/mips.h:
17737 * m/intel386.h:
17738 * callproc.c:
17739 * config.in:
17740 * ecrt0.c:
17741 * emacs.c:
17742 * fileio.c:
17743 * frame.c:
17744 * getpagesize.h:
17745 * keyboard.c:
17746 * lread.c:
17747 * process.c:
17748 * puresize.h:
17749 * sysdep.c:
17750 * systty.h:
17751 * syswait.h:
17752 * unexec.c:
17753 * xdisp.c:
17754 * alloc.c: Remove code containing references to symbols defined by
17755 unsupported systems.
17756
17757 2008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
17758
17759 * coding.c (detect_coding_mask): Fix previous change.
17760
17761 2008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
17762
17763 * coding.c (detect_coding_iso2022): New arg
17764 latin_extra_code_state. Allow Latin extra codes only
17765 when *latin_extra_code_state is nonzero.
17766 (detect_coding_mask): If there is a NULL byte, detect the encoding
17767 as UTF-16 or binary. If Latin extra codes exist, detect the
17768 encoding as ISO-2022 only when there's no other proper encoding is
17769 found.
17770
17771 2008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17772
17773 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
17774 #ifdef MAC_OS.
17775
17776 2008-01-08 Richard Stallman <rms@gnu.org>
17777
17778 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
17779
17780 2008-01-06 Nick Roberts <nickrob@snap.net.nz>
17781
17782 * keyboard.c (parse_menu_item): Don't enclose key bindings on
17783 menu bar in parentheses.
17784
17785 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
17786
17787 * m/7300.h:
17788 * m/acorn.h:
17789 * m/alliant-2800.h:
17790 * m/alliant.h:
17791 * m/alliant1.h:
17792 * m/alliant4.h:
17793 * m/altos.h:
17794 * m/amdahl.h:
17795 * m/apollo.h:
17796 * m/att3b.h:
17797 * m/aviion-intel.h:
17798 * m/aviion.h:
17799 * m/celerity.h:
17800 * m/clipper.h:
17801 * m/cnvrgnt.h:
17802 * m/convex.h:
17803 * m/cydra5.h:
17804 * m/delta88k.h:
17805 * m/dpx2.h:
17806 * m/dual.h:
17807 * m/elxsi.h:
17808 * m/f301.h:
17809 * m/gould-np1.h:
17810 * m/gould.h:
17811 * m/i860.h:
17812 * m/ibmps2-aix.h:
17813 * m/ibmrt-aix.h:
17814 * m/ibmrt.h:
17815 * m/irist.h:
17816 * m/is386.h:
17817 * m/isi-ov.h:
17818 * m/mega68.h:
17819 * m/mg1.h:
17820 * m/news-r6.h:
17821 * m/news-risc.h:
17822 * m/news.h:
17823 * m/nh3000.h:
17824 * m/nh4000.h:
17825 * m/ns16000.h:
17826 * m/ns32000.h:
17827 * m/nu.h:
17828 * m/orion.h:
17829 * m/orion105.h:
17830 * m/paragon.h:
17831 * m/pfa50.h:
17832 * m/plexus.h:
17833 * m/pyramid.h:
17834 * m/pyrmips.h:
17835 * m/sh3el.h:
17836 * m/sps7.h:
17837 * m/sr2k.h:
17838 * m/stride.h:
17839 * m/sun1.h:
17840 * m/sun2.h:
17841 * m/sun3-68881.h:
17842 * m/sun3-fpa.h:
17843 * m/sun3-soft.h:
17844 * m/sun3.h:
17845 * m/sun386.h:
17846 * m/symmetry.h:
17847 * m/tad68k.h:
17848 * m/tahoe.h:
17849 * m/targon31.h:
17850 * m/tek4300.h:
17851 * m/tekxd88.h:
17852 * m/tower32.h:
17853 * m/tower32v3.h:
17854 * m/ustation.h:
17855 * m/wicat.h:
17856 * m/xps100.h:
17857 * s/cxux.h:
17858 * s/cxux7.h:
17859 * s/dgux.h:
17860 * s/dgux4.h:
17861 * s/dgux5-4-3.h:
17862 * s/dgux5-4r2.h:
17863 * s/esix.h:
17864 * s/esix5r4.h:
17865 * s/hiuxmpp.h:
17866 * s/hiuxwe2.h:
17867 * s/iris3-5.h:
17868 * s/iris3-6.h:
17869 * s/isc2-2.h:
17870 * s/isc3-0.h:
17871 * s/isc4-0.h:
17872 * s/isc4-1.h:
17873 * s/newsos5.h:
17874 * s/newsos6.h:
17875 * s/osf1.h:
17876 * s/osf5-0.h:
17877 * s/riscix1-1.h:
17878 * s/riscix12.h:
17879 * s/sco4.h:
17880 * s/sco5.h:
17881 * s/sunos4-0.h:
17882 * s/sunos4-1.h:
17883 * s/sunos413.h:
17884 * s/sunos4shr.h:
17885 * s/umax.h:
17886 * s/unipl5-2.h:
17887 * s/xenix.h:
17888 * cxux-crt0.s:
17889 * unexapollo.c:
17890 * unexconvex.c:
17891 * unexenix.c:
17892 * unexsni.c: Remove files for systems no longer supported.
17893
17894 * m/intel386.h: Remove references to unsupported systems.
17895
17896 * w32.c (get_emacs_configuration): Remove reference to i860.
17897
17898 * sysdep.c: Remove dead code.
17899
17900 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
17901
17902 * s/rtu.h:
17903 * m/masscomp.h: Remove files. Platform is obsolete.
17904
17905 2008-01-04 Michael Albinus <michael.albinus@gmx.de>
17906
17907 * dbusbind.c (Fdbus_method_return): New function.
17908 (xd_read_message): Add the serial number to the event.
17909 (Fdbus_register_method): Activate the function.
17910
17911 2008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
17912
17913 * keyboard.c (read_key_sequence): Fix typo.
17914
17915 2008-01-03 Michael Albinus <michael.albinus@gmx.de>
17916
17917 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
17918 (xd_signature, xd_append_arg): Handle element type detection for
17919 empty arrays.
17920 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
17921 SDATA () calls; this must be solved more general.
17922 (Fdbus_register_signal): Use SBYTES instead of strlen.
17923
17924 2008-01-03 Magnus Henoch <magnus@zemdatav>
17925
17926 * dbusbind.c (xd_append_arg): Use unsigned char instead of
17927 unsigned int for byte values (necessary for big-endian platform).
17928 (Fdbus_call_method): Handle the case of no returned arguments.
17929
17930 2007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
17931
17932 * dbusbind.c (xd_read_message): Use non-static input_event struct.
17933
17934 2007-12-31 Magnus Henoch <mange@freemail.hu>
17935
17936 * dbusbind.c (xd_signature): Signature of variant is just "v".
17937
17938 2007-12-30 Michael Albinus <michael.albinus@gmx.de>
17939
17940 * dbusbind.c: Fix several errors and compiler warnings.
17941 Reported by Tom Tromey <tromey@redhat.com>.
17942 (XD_ERROR, XD_DEBUG_MESSAGE)
17943 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
17944 (xd_append_arg): Part for basic D-Bus types rewritten.
17945 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
17946 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
17947 appropriate.
17948 (xd_read_message): Return Qnil. Don't signal an error; it is not
17949 useful during event reading.
17950 (Fdbus_register_signal): Signal an error if the check for
17951 FUNCTIONP fails.
17952 (Fdbus_register_method): New function. The implementation is not
17953 complete, the call of the function signals an error therefore.
17954 (Fdbus_unregister_object): New function, renamed from
17955 Fdbus_unregister_signal. The initial check signals an error, if
17956 the object is not well formed.
17957
17958 2007-12-30 Richard Stallman <rms@gnu.org>
17959
17960 * textprop.c (get_char_property_and_overlay):
17961 Signal error if POSITION is out of range in a buffer.
17962
17963 2007-12-29 Martin Rudalics <rudalics@gmx.at>
17964
17965 * w32fns.c (Fx_create_frame): Make copy of frame parameters
17966 because the original parameters are in pure storage now.
17967
17968 2007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17969
17970 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
17971
17972 2007-12-22 Eli Zaretskii <eliz@gnu.org>
17973
17974 * callint.c (syms_of_callint) <command-history>: Add reference to
17975 history-length in the doc string.
17976
17977 2007-12-17 Jason Rumney <jasonr@gnu.org>
17978
17979 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
17980 before passing as wParam.
17981
17982 2007-12-22 Michael Albinus <michael.albinus@gmx.de>
17983
17984 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
17985 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
17986 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
17987 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
17988 as number.
17989 (Fdbus_call_method): Fix docstring.
17990
17991 2007-12-21 Michael Albinus <michael.albinus@gmx.de>
17992
17993 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
17994 New macros.
17995 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
17996 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
17997 Simplify.
17998 (xd_signature): New function.
17999 (xd_append_arg): Compute also signatures. Major rewrite.
18000 (xd_retrieve_arg): Make debug messages friendly.
18001 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
18002 Check for signatures of arguments.
18003
18004 2007-12-19 Michael Albinus <michael.albinus@gmx.de>
18005
18006 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
18007 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
18008 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
18009 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
18010 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
18011 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
18012 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
18013 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
18014 (xd_retrieve_value): Remove. Functionality included in ...
18015 (xd_append_arg): New function.
18016 (Fdbus_call_method, Fdbus_send_signal): Apply it.
18017
18018 2007-12-16 Michael Albinus <michael.albinus@gmx.de>
18019
18020 * dbusbind.c (top): Include <stdio.h>.
18021 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
18022 dbus_message_new_method_call and dbus_message_new_signal.
18023 (Fdbus_register_signal): Rename unique_name to uname.
18024 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
18025 non-existing unique name. Fix typos in matching rule. Return an
18026 object which is useful in Fdbus_unregister_signal.
18027 (Fdbus_unregister_signal): Reimplementation, in order to remove
18028 only the corresponding entry.
18029 (Vdbus_registered_functions_table): Change the order of entries.
18030 Apply these changes in xd_read_message and Fdbus_register_signal.
18031
18032 2007-12-16 Andreas Schwab <schwab@suse.de>
18033
18034 * fileio.c (Finsert_file_contents): Fix overflow check to not
18035 depend on undefined integer overflow.
18036
18037 2007-12-14 Jason Rumney <jasonr@gnu.org>
18038
18039 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
18040 for characters above 127.
18041
18042 2007-12-13 Jason Rumney <jasonr@gnu.org>
18043
18044 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
18045 before dereferencing array.
18046 (lookup_vk_code): Remove zero comparison.
18047
18048 2007-12-14 Michael Albinus <michael.albinus@gmx.de>
18049
18050 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
18051 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
18052 Use `unsigned int' instead of `uint'.
18053 (xd_read_message, Fdbus_register_signal): Split expressions into
18054 multiple lines before operators "&&" and "||", according to the
18055 GNU Coding Standards.
18056
18057 2007-12-14 Eli Zaretskii <eliz@gnu.org>
18058
18059 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
18060
18061 2007-12-12 Juri Linkov <juri@jurta.org>
18062
18063 * buffer.c (Frename_buffer): In interactive spec replace
18064 `read-buffer' with `read-string' that uses `buffer-name-history'
18065 as history, and the current buffer's name as default.
18066
18067 2007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
18068
18069 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
18070 manipulating the backtrace manually.
18071 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
18072 (struct backtrace, backtrace_list): Remove.
18073 (command_loop_1): Remove dead var `no_direct'.
18074
18075 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
18076 preserve non-built-in buffer-local variables.
18077 (Fkill_all_local_variables): Don't re-create&re-set permanent
18078 buffer-local variables.
18079
18080 2007-12-09 Juri Linkov <juri@jurta.org>
18081
18082 * buffer.c (Frename_buffer): Change interactive spec from "s" to
18083 Lisp code that uses `read-buffer' with current buffer as default.
18084
18085 2007-12-08 Michael Albinus <michael.albinus@gmx.de>
18086
18087 * dbusbind.c (xd_read_message): Generate an event for every
18088 registered handler. There might be several handlers registered
18089 for the same signal.
18090 (Fdbus_register_signal): Don't overwrite a registration for the
18091 same signal. Add a new registration if handlers are different.
18092 (Vdbus_registered_functions_table): Rework doc string.
18093
18094 2007-12-07 Michael Albinus <michael.albinus@gmx.de>
18095
18096 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
18097 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
18098 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
18099 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
18100 Unify argument lists.
18101 (xd_read_message, Fdbus_register_signal): Reorder and extend event
18102 arguments and hash table keys. Use unique name for service.
18103 (Fdbus_unregister_signal): Remove checks.
18104 (Vdbus_registered_functions_table): Fix doc string.
18105
18106 2007-12-05 Magnus Henoch <mange@freemail.hu>
18107
18108 * process.c (make_process): Initialize pty_flag to 0.
18109
18110 2007-12-05 Jason Rumney <jasonr@gnu.org>
18111
18112 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
18113 specified XBMs.
18114
18115 2007-12-05 Richard Stallman <rms@gnu.org>
18116
18117 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
18118
18119 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18120
18121 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
18122 New variable.
18123 (mac_try_close_socket) [MAC_OSX]: New function.
18124 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
18125 Update cfsockets_for_select. Replace invalid CFRunLoop source.
18126
18127 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
18128 Use mac_try_close_socket.
18129
18130 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18131
18132 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
18133 reloc_base.
18134 (copy_dysymtab): Compute relocation base here.
18135 (rebase_reloc_address) [__ppc64__]: New function.
18136 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
18137 changed.
18138
18139 2007-12-05 Jason Rumney <jasonr@gnu.org>
18140
18141 * w32proc.c (sys_spawnve): Quote args with wildcards.
18142
18143 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18144
18145 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
18146 __objc_* sections.
18147 (unrelocate) [_LP64]: Set relocation base to address of data segment.
18148
18149 2007-12-05 Michael Albinus <michael.albinus@gmx.de>
18150
18151 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
18152 Move check for Vdbus_registered_functions_table to
18153 xd_read_queued_messages.
18154 (xd_read_queued_messages): Protect xd_read_message calls by
18155 internal_condition_case_1.
18156
18157 2007-12-04 Michael Albinus <michael.albinus@gmx.de>
18158
18159 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
18160 Qdbus_system_bus and Qdbus_session_bus, respectively.
18161 (Vdbus_intern_symbols): Remove.
18162 (Vdbus_registered_functions_table): New hash table.
18163 (XD_SYMBOL_INTERN_SYMBOL): Remove.
18164 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
18165 Rewrite in order to manage registered functions by hash table
18166 Vdbus_registered_functions_table.
18167
18168 2007-12-03 Jan Djärv <jan.h.d@swipnet.se>
18169
18170 * xterm.c: Update URL to Window Manager Specification in comment.
18171
18172 2007-12-02 Michael Albinus <michael.albinus@gmx.de>
18173
18174 * config.in (HAVE_DBUS): Add.
18175
18176 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
18177 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
18178 (obj): Add $(DBUS_OBJ).
18179 (LIBES): Add $(DBUS_LIBS).
18180 (dbusbind.o): New target.
18181
18182 * dbusbind.c: New file.
18183
18184 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
18185
18186 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
18187 (Qdbus_event): New Lisp symbol.
18188 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
18189 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
18190 (keys_of_keyboard): Define dbus-event.
18191
18192 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
18193
18194 2007-12-01 Richard Stallman <rms@gnu.org>
18195
18196 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
18197
18198 2007-11-30 Jason Rumney <jasonr@gnu.org>
18199
18200 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
18201 (w32con_reset_terminal_modes): Clear screen buffer.
18202 (w32_face_attributes): Don't use color indexes that are out of range.
18203 Only reverse the default colors.
18204
18205 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
18206 WINDOWSNT.
18207
18208 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
18209
18210 2007-11-29 Jason Rumney <jasonr@gnu.org>
18211
18212 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
18213 (w32_face_attributes): Use Vtty_defined_color_alist to determine
18214 if the terminal colors are initialized.
18215 (unspecified_fg, unspecified_bg): Remove unused declarations.
18216
18217 2007-11-29 Andreas Schwab <schwab@suse.de>
18218
18219 * keyboard.c (apply_modifiers): Fix typo.
18220
18221 2007-11-29 Richard Stallman <rms@gnu.org>
18222
18223 * keymap.c (Fcurrent_local_map): Doc fix.
18224
18225 2007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
18226
18227 * s/gnu-kfreebsd.h: New file.
18228
18229 2007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
18230
18231 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
18232 Don't cast redundantly.
18233
18234 * keyboard.c (KEY_TO_CHAR): New macro.
18235 (parse_modifiers, apply_modifiers): Accept integer arguments.
18236 (read_key_sequence): Use them to unify the "shift->unshift" mapping
18237 for chars and symbol keys.
18238 After doing such remapping, apply function-key-map again.
18239
18240 2007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
18241
18242 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
18243 compiled anymore.
18244
18245 2007-11-26 Andreas Schwab <schwab@suse.de>
18246
18247 * process.c (list_processes_1): Fix indentation level of the
18248 command column.
18249
18250 2007-11-23 Andreas Schwab <schwab@suse.de>
18251
18252 * editfns.c (Fformat): Handle %c specially since it requires the
18253 argument to be of type int.
18254
18255 2007-11-23 Markus Triska <markus.triska@gmx.at>
18256
18257 * emacs.c (main): Call init_editfns before init_process, since
18258 init_process sets Vprocess_connection_type depending on OS release.
18259
18260 2007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
18261
18262 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
18263 (find_symbol_value): Use do_symval_forwarding.
18264
18265 * data.c (set_internal): Set the value in the `cons-cell' (for
18266 Buffer_Local_values) not only for frame-local variables.
18267
18268 2007-11-22 Andreas Schwab <schwab@suse.de>
18269
18270 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
18271 values to sprintf.
18272 * keymap.c (Fsingle_key_description): Likewise.
18273 * print.c (print_object): Likewise.
18274
18275 2007-11-22 Jan Djärv <jan.h.d@swipnet.se>
18276
18277 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
18278 file for image is nil.
18279
18280 2007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
18281
18282 * term.c: Include stdarg.h.
18283 (fatal): Implement using varargs.
18284 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
18285
18286 2007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18287
18288 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
18289 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
18290 Update call to buffer_slot_type_mismatch.
18291 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
18292 (buffer_slot_type_mismatch): Update.
18293 * buffer.c (buffer_local_types): Remove.
18294 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
18295 (defvar_per_buffer): Set the type in the buffer_objfwd.
18296
18297 2007-11-21 Jason Rumney <jasonr@gnu.org>
18298
18299 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
18300 CreateFileMapping returns NULL on failure.
18301
18302 2007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18303
18304 * search.c (Fset_match_data): Remove the `evaporate' feature.
18305 (unwind_set_match_data): Don't use the `evaporate' feature.
18306
18307 2007-11-21 Jason Rumney <jasonr@gnu.org>
18308
18309 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
18310
18311 * w32console.c (w32con_write_glyphs): Remove unused variables.
18312
18313 2007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
18314
18315 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
18316
18317 * s/darwin.h (MULTI_KBOARD): Remove.
18318
18319 * macfns.c (x_create_tip_frame, Fx_create_frame)
18320 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
18321
18322 2007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
18323
18324 * buffer.c (Fbuffer_local_value): Remove redundant test.
18325 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
18326 than in `current-buffer' to match the comment.
18327 Do the swap using swap_in_global_binding.
18328
18329 * data.c (store_symval_forwarding, set_internal):
18330 * eval.c (specbind): Remove dead code.
18331
18332 * coding.c (detect_coding, Fupdate_coding_systems_internal):
18333 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
18334 Since we do not want to see internal Lisp_*fwd objects here.
18335
18336 2007-11-18 Jan Djärv <jan.h.d@swipnet.se>
18337
18338 * sysdep.c (init_system_name): Use getaddrinfo if available.
18339
18340 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
18341 (x_scroll_bar_note_movement): start, end, with, height in struct
18342 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
18343
18344 2007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
18345
18346 * puresize.h (BASE_PURESIZE): Increase to 1190000.
18347
18348 2007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
18349
18350 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
18351 This undoes Richard's change of 14-Oct-2002.
18352
18353 * alloc.c (allocate_other_vector):
18354 * lisp.h (allocate_other_vector): Remove.
18355
18356 * window.c (struct save_window_data): Move non-lisp data to the end
18357 and make it `int' rather than Lisp_Object.
18358 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
18359 Done wrap/unwrap integer values.
18360 (Fset_window_configuration, compare_window_configurations):
18361 Update use of fields to their new types.
18362
18363 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
18364 Turn integer fields into `int'. Merge x_window_low and x_window_high.
18365 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
18366 (SET_SCROLL_BAR_X_WINDOW): Remove.
18367 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
18368 Access the new x_window field directly.
18369 * xterm.c (x_scroll_bar_create): Use a pseudovector.
18370 Don't wrap/unwrap integers into Lisp_Objects.
18371 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
18372 (x_scroll_bar_report_motion):
18373 Don't wrap/unwrap integers into Lisp_Objects.
18374 (x_term_init): Use SDATA.
18375 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
18376 (x_scroll_bar_set_handle, x_scroll_bar_remove)
18377 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
18378 (x_scroll_bar_report_motion, x_scroll_bar_clear):
18379 * xfns.c (x_set_background_color):
18380 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
18381 Access the new x_window field directly.
18382
18383 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
18384 (allocate_pseudovector): Make non-static.
18385
18386 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
18387 (allocate_pseudovector): Declare.
18388 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
18389
18390 2007-11-15 Andreas Schwab <schwab@suse.de>
18391
18392 * editfns.c (Fformat): Correctly format EMACS_INT values.
18393 Also take precision into account when formatting an integer.
18394
18395 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
18396
18397 2007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
18398
18399 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
18400 (syms_of_keyboard): Defsubr it.
18401
18402 * data.c (swap_in_global_binding): Fix longstanding bug where
18403 store_symval_forwarding was not called with the right second argument,
18404 thus causing objfwd-ing from being dropped.
18405
18406 2007-11-14 Juanma Barranquero <lekktu@gmail.com>
18407
18408 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
18409 (Fx_display_pixel_height, Fx_display_planes)
18410 (Fx_display_color_cells, Fx_server_max_request_size)
18411 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18412 (Fx_display_visual_class, Fx_display_save_under):
18413 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
18414 (Fx_display_pixel_height, Fx_display_planes)
18415 (Fx_display_color_cells, Fx_server_max_request_size)
18416 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
18417 (Fx_display_mm_height, Fx_display_mm_width)
18418 (Fx_display_backing_store, Fx_display_visual_class)
18419 (Fw32_select_font, Fx_display_save_under):
18420 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
18421 (Fx_display_pixel_height, Fx_display_planes)
18422 (Fx_display_color_cells, Fx_server_max_request_size)
18423 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18424 (Fx_display_save_under): Fix typos in docstrings.
18425
18426 2007-11-14 Juanma Barranquero <lekktu@gmail.com>
18427
18428 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
18429 corresponding to deleted entries; they are an implementation detail.
18430 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
18431 Remove variables.
18432 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
18433 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
18434 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
18435 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
18436 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
18437 (Fw32_define_rgb_color, Fw32_load_color_file)
18438 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
18439 Fix typos in docstrings.
18440 (Fx_server_version): Reflow docstring.
18441 (Fw32_shell_execute): Doc fixes.
18442
18443 2007-11-13 Juanma Barranquero <lekktu@gmail.com>
18444
18445 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
18446 if w32_parse_hot_key returned nil.
18447
18448 2007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
18449
18450 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
18451
18452 2007-11-09 Jason Rumney <jasonr@gnu.org>
18453
18454 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
18455
18456 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
18457
18458 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
18459 Remove W32_SCROLL_BAR_CLICK_EVENT.
18460
18461 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
18462 Add MULTIMEDIA_KEY_EVENT.
18463
18464 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
18465 (lispy_multimedia_keys) [WINDOWSNT]: New array.
18466 (make_lispy_event) [WINDOWSNT]: Use it to translate
18467 MULTIMEDIA_KEY_EVENT.
18468
18469 * w32term.h (WM_APPCOMMAND): Define if not already.
18470 (GET_APPCOMMAND_LPARAM): Likewise.
18471
18472 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
18473 WM_APPCOMMAND.
18474
18475 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
18476 (syms_of_w32fns): Export and initialize it.
18477 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
18478
18479 2007-11-09 Chong Yidong <cyd@stupidchicken.com>
18480
18481 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
18482 twice.
18483
18484 * xdisp.c (handle_face_prop): Fix last change.
18485
18486 2007-11-09 Richard Stallman <rms@gnu.org>
18487
18488 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
18489 not just for after-strings and before-strings.
18490 Call face_for_overlay_string and pass the overlay to it.
18491 (handle_display_prop): Determine whether property came from an overlay.
18492 Pass OVERLAY arg to handle_single_display_spec.
18493 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
18494 (load_overlay_strings): Fill in it->string_overlays.
18495 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
18496
18497 * xfaces.c (face_for_overlay_string): Function renamed from
18498 face_at_buffer_position_no_overlays, and add arg OVERLAY.
18499
18500 * dispextern.h (struct it): New elt string_overlays.
18501 New elt from_overlay, also in stack.
18502 Rearrange a few elements.
18503 (face_for_overlay_string): Decl renamed from
18504 face_at_buffer_position_no_overlays, and add argument.
18505
18506 2007-11-09 Richard Stallman <rms@gnu.org>
18507
18508 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
18509 to get the base face for an overlay string.
18510
18511 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
18512
18513 * xfaces.c (face_at_buffer_position_no_overlays): New function.
18514
18515 * xdisp.c (handle_stop): Move some code out of loop.
18516
18517 2007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18518
18519 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
18520 Fix conversion from Lisp object to ATSUFontID.
18521
18522 2007-11-09 Jason Rumney <jasonr@gnu.org>
18523
18524 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
18525
18526 2007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18527
18528 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
18529 Don't assume regions are aligned to page boundary.
18530 (print_load_command_name): Add LC_UUID if defined.
18531
18532 2007-11-09 Richard Stallman <rms@gnu.org>
18533
18534 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
18535
18536 2007-11-07 Jason Rumney <jasonr@gnu.org>
18537
18538 * s/windows95.h: Remove.
18539
18540 2007-11-06 Jan Djärv <jan.h.d@swipnet.se>
18541
18542 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
18543 abort with a message on unhandled store_type values.
18544
18545 2007-11-01 Jan Djärv <jan.h.d@swipnet.se>
18546
18547 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
18548 Remove HAVE_X11R5 and HAVE_X11R4.
18549
18550 2007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18551
18552 * Makefile.in: Remove references to sunfns.c and sunfns.o.
18553
18554 2007-11-01 Johan Bockgård <bojohan@gnu.org>
18555
18556 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
18557 Don't set s->stippled_p here, since it has already been set by
18558 x_set_glyph_string_gc from x_draw_glyph_string.
18559
18560 2007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18561
18562 * sunfns.c: Remove file.
18563
18564 * m/sun386.h:
18565 * m/sun2.h:
18566 * m/sparc.h: Remove Sun windows code.
18567
18568 2007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
18569
18570 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
18571 (init_keyboard): Set current_kboard's window-system to nil.
18572 (tty_read_avail_input): Typo.
18573 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
18574
18575 2007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
18576
18577 * s/usg5-4.h:
18578 * s/usg5-3.h:
18579 * s/ptx.h:
18580 * m/is386.h:
18581 * m/ibmps2-aix.h:
18582 * Makefile.in: Remove all mentions of X10.
18583
18584 * dispnew.c (syms_of_display): Don't mention version 10.
18585
18586 2007-10-28 Juanma Barranquero <lekktu@gmail.com>
18587
18588 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
18589 ($(BLD)/abbrev.$(O)): Remove.
18590
18591 2007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
18592
18593 Rewrite abbrev.c in Elisp.
18594 * image.c (Qcount): Don't declare as extern.
18595 (syms_of_image): Initialize and staticpro `Qcount'.
18596 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
18597 * emacs.c (main): Don't call syms_of_abbrev.
18598 * Makefile.in (obj): Remove abbrev.o.
18599 (abbrev.o): Remove.
18600 * abbrev.c: Remove.
18601
18602 2007-10-26 Martin Rudalics <rudalics@gmx.at>
18603
18604 * window.c (window_min_size_2): Don't count header-line.
18605
18606 2007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
18607
18608 * frame.h (struct frame): Move all bit fields after the first bit
18609 field to take advantage of the available space. Group all the
18610 chars together to reduce wasted space due to padding.
18611
18612 2007-10-26 Juanma Barranquero <lekktu@gmail.com>
18613
18614 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
18615
18616 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
18617 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
18618 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
18619 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
18620 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
18621 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
18622 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
18623 (last_marked, mark_object_loop_halt): Make static.
18624
18625 * frame.c (syms_of_frame) <delete-frame-functions>:
18626 Fix typo in docstring.
18627
18628 2007-10-25 Juanma Barranquero <lekktu@gmail.com>
18629
18630 * w32.c (init_environment): Fix tiny memory leak.
18631 (w32_get_resource): Remove unused variable `ok'.
18632
18633 2007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
18634
18635 Make `window-system' into a keyboard-local variable (rather than
18636 frame-local as done originally by multi-tty).
18637
18638 * keyboard.h (struct kboard): Add Vwindow_system.
18639 * keyboard.c (init_kboard): Set a default for Vwindow_system.
18640 (mark_kboards): Mark Vwindow_system.
18641
18642 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
18643 (init_display): Don't set the obsolete `window-system' frame-param.
18644
18645 * xterm.c (x_term_init):
18646 * w32term.c (w32_create_terminal):
18647 * term.c (init_tty): Set Vwindow_system.
18648 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
18649 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
18650
18651 * xfns.c (Fx_create_frame, x_create_tip_frame):
18652 * w32fns.c (Fx_create_frame, x_create_tip_frame):
18653 * macfns.c (Fx_create_frame):
18654 Don't set the obsolete `window-system' frame-param.
18655
18656 * frame.h (Qwindow_system): Remove.
18657 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
18658 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
18659
18660 2007-10-24 Richard Stallman <rms@gnu.org>
18661
18662 * frame.c (x_figure_window_size): For fullscreen case,
18663 set USPosition | PPosition without clobbering rest of window_prompting.
18664
18665 * keyboard.c (Fcurrent_idle_time): Doc fix.
18666
18667 * print.c (Fwith_output_to_temp_buffer): Doc fix.
18668
18669 2007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
18670
18671 * process.c (unwind_request_sigio): Only define if __ultrix__.
18672
18673 * callproc.c (child_setup): Remove spurious *.
18674
18675 * lisp.h (Fget_text_property): Declare.
18676 (have_menus_p): Declare it here rather than in sys-dep header files.
18677 * macterm.h (have_menus_p):
18678 * msdos.h (have_menus_p):
18679 * xterm.h (have_menus_p): Remove.
18680
18681 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
18682 (Fmake_variable_frame_local): Just check the variable's const-ness
18683 rather than checking nil or t.
18684
18685 2007-10-22 Jason Rumney <jasonr@gnu.org>
18686
18687 * w32fns.c: Include math.h.
18688 (w32_abort): Declaration moved to nt/config.nt.
18689
18690 * s/ms-w32.h (HAVE_STDLIB_H): Define.
18691 (abort): Redefinition moved to nt/config.nt.
18692
18693 * m/windowsnt.h: Remove.
18694
18695 2007-10-22 Juanma Barranquero <lekktu@gmail.com>
18696
18697 * emacs.c (Fdump_emacs): Fix typo in message.
18698 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
18699 <installation-directory>: Reflow docstring.
18700
18701 2007-10-22 Juri Linkov <juri@jurta.org>
18702
18703 * minibuf.c: Allow minibuffer default to be a list of default values.
18704 With empty input use the first element of this list as returned default.
18705 (string_to_object)
18706 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
18707 (read_minibuf): If defalt is cons, set histstring to its car.
18708 (Fread_string): If default_value is cons, set val to its car.
18709 (Fread_buffer): If def is cons, use its car.
18710 (Fcompleting_read): If defalt is cons, set val to its car.
18711
18712 2007-10-21 Michael Albinus <michael.albinus@gmx.de>
18713
18714 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
18715
18716 2007-10-20 Juanma Barranquero <lekktu@gmail.com>
18717
18718 * doc.c (Fdocumentation): Check for advice in all cases.
18719
18720 2007-10-19 Chong Yidong <cyd@stupidchicken.com>
18721
18722 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
18723
18724 2007-10-19 Richard Stallman <rms@gnu.org>
18725
18726 * doc.c (Fdocumentation): Check for and handle an advised function.
18727
18728 2007-10-19 Juanma Barranquero <lekktu@gmail.com>
18729
18730 * process.c (Fset_process_filter): Doc fix.
18731
18732 2007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
18733
18734 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
18735 which caused key-translation-map to applied repeatedly (thus breaking
18736 double-mode).
18737
18738 2007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18739
18740 * xselect.c (x_own_selection, x_handle_selection_clear)
18741 (x_clear_frame_selections):
18742 * w32menu.c (list_of_panes, list_of_items):
18743 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
18744 * textprop.c (validate_plist, interval_has_all_properties)
18745 (interval_has_some_properties, interval_has_some_properties_list)
18746 (add_properties, text_property_list):
18747 * process.c (Fget_buffer_process, list_processes_1, status_notify):
18748 * minibuf.c (Fassoc_string):
18749 * macselect.c (x_own_selection, x_clear_frame_selections)
18750 (Fx_disown_selection_internal):
18751 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
18752 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
18753
18754 2007-10-17 Chong Yidong <cyd@stupidchicken.com>
18755
18756 * process.c: Link to libs for calling res_init() if available.
18757 (Fmake_network_process): Call res_init() before getaddrinfo or
18758 gethostbyname, if possible.
18759
18760 2007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18761
18762 * lread.c (read1): Set pvectype for char_tables.
18763
18764 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
18765 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
18766 Add type checks.
18767 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
18768
18769 * alloc.c (free_misc): Use XMISCTYPE.
18770 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
18771
18772 2007-10-17 Glenn Morris <rgm@gnu.org>
18773
18774 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
18775 (syms_of_minibuf): Add Qcompletion_ignore_case.
18776 * dired.c (Qcompletion_ignore_case): Change to external.
18777 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
18778 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
18779 (Fread_file_name): Use it rather than intern'ing.
18780
18781 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
18782 (Fread_coding_system): Ignore case of user input.
18783
18784 2007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18785
18786 * xdisp.c (handle_display_prop): Ignore display specs after
18787 replacing one when string text is being replaced.
18788 (handle_single_display_spec): Pretend as if characters with display
18789 property haven't been consumed only when buffer text is being replaced.
18790
18791 2007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
18792
18793 * xfns.c (Fx_create_frame, Fx_display_list):
18794 * window.c (window_fixed_size_p, enlarge_window)
18795 (shrink_window_lowest_first):
18796 * macterm.c (init_font_name_table):
18797 * macfns.c (Fx_create_frame, Fx_display_list):
18798 * lread.c (close_load_descs):
18799 * keyboard.c (read_char_x_menu_prompt):
18800 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
18801 * coding.c (code_convert_region_unwind): Test the type of an object
18802 rather than just !NILP before extracting data from it.
18803
18804 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
18805
18806 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
18807 (XMISCANY): New macro.
18808 (XMISCTYPE): Use it.
18809 (struct Lisp_Misc_Any): New type.
18810 (union Lisp_Misc): Use it.
18811 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
18812 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
18813 (find_symbol_value, set_internal, default_value, Fset_default)
18814 (Fmake_variable_buffer_local, Fmake_local_variable)
18815 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
18816 (Flocal_variable_if_set_p, Fvariable_binding_locus):
18817 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
18818 * alloc.c (allocate_buffer): Set the size and tag.
18819 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
18820 Use XMISCANY.
18821 (die): Follow the GNU convention for error messages.
18822 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
18823 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
18824 tag any more.
18825 (set_buffer_internal_1):
18826 * frame.c (store_frame_param):
18827 * eval.c (specbind):
18828 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
18829
18830 * doc.c (Fsnarf_documentation): Simplify.
18831
18832 2007-10-14 Juanma Barranquero <lekktu@gmail.com>
18833
18834 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
18835 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
18836
18837 2007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
18838
18839 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
18840
18841 2007-10-14 Juanma Barranquero <lekktu@gmail.com>
18842
18843 * eval.c (do_autoload): Don't save autoloads.
18844
18845 * data.c (Ffset): Save autoload of the function being set.
18846
18847 2007-10-07 John Paul Wallington <jpw@pobox.com>
18848
18849 * xfns.c (x_create_tip_frame): Set the `display-type' frame
18850 parameter before setting up faces.
18851
18852 2007-10-13 Eli Zaretskii <eliz@gnu.org>
18853
18854 * ccl.c (Fregister_code_conversion_map):
18855 * keyboard.c (append_tool_bar_item): Reformat last change.
18856
18857 * lisp.h (eabs): Rename from `abs'. All callers changed.
18858
18859 2007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
18860
18861 * buffer.c (add_overlay_mod_hooklist):
18862 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
18863 * fontset.c (make_fontset):
18864 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
18865 (append_tool_bar_item):
18866 * macmenu.c (grow_menu_items):
18867 * w32menu.c (grow_menu_items):
18868 * xmenu.c (grow_menu_items): Use larger_vector.
18869
18870 2007-10-13 Eli Zaretskii <eliz@gnu.org>
18871
18872 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
18873 selected frame'' on MSDOS).
18874
18875 2007-10-12 Martin Rudalics <rudalics@gmx.at>
18876
18877 * frame.c (Qexplicit_name): New variable.
18878 (x_report_frame_params): Report it in parameter alist.
18879 (syms_of_frame): Intern and staticpro it.
18880
18881 2007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
18882
18883 * macfns.c (x_create_tip_frame): Set terminal for frame.
18884
18885 2007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
18886
18887 * frame.c (Qenvironment): Remove.
18888 (syms_of_frame) <Qenvironment>: Don't initialize.
18889 (Fdelete_frame): Don't treat the `environment' param specially.
18890 * frame.h (Qenvironment): Don't declare.
18891 * callproc.c (set_initial_environment): Don't set unused frame param.
18892
18893 * frame.c (Fframe_with_environment): Remove.
18894 (syms_of_frame) <Sframe_with_environment>: Don't declare.
18895
18896 * lisp.h (Fframe_with_environment): Don't declare.
18897
18898 2007-10-10 Juanma Barranquero <lekktu@gmail.com>
18899
18900 * indent.c (indent_tabs_mode, last_known_column)
18901 (last_known_column_modified): Make static.
18902 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
18903
18904 2007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
18905
18906 * puresize.h (BASE_PURESIZE): Increase to 1170000.
18907
18908 2007-10-09 Jason Rumney <jasonr@gnu.org>
18909
18910 * w32term.c (x_set_window_size): Disable code that attempts to tell
18911 Lisp code about a size change before it actually happens.
18912
18913 2007-10-09 Richard Stallman <rms@gnu.org>
18914
18915 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
18916 return HANDLED_RETURN.
18917
18918 2007-10-08 Martin Rudalics <rudalics@gmx.at>
18919
18920 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
18921 when there's an unread command event.
18922
18923 * frame.c (focus_follows_mouse): Move here from frame.el to allow
18924 window autoselection act appropriately when leaving selected frame.
18925 (syms_of_frame): Initialize focus_follows_mouse.
18926 * frame.h (focus_follows_mouse): Extern it.
18927 * macterm.c (XTread_socket): When focus_follows_mouse is nil
18928 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
18929 * msdos.c (dos_rawgetc): Likewise.
18930 * w32term.c (w32_read_socket): Likewise.
18931 * xterm.c (handle_one_xevent): Likewise.
18932 * xdisp.c (syms_of_xdisp): In doc-string of
18933 mouse-autoselect-window mention focus-follows-mouse.
18934
18935 2007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18936
18937 * macterm.c (mac_load_query_font): Fix missing return value.
18938 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
18939 Add BLOCK_INPUT.
18940
18941 2007-10-08 Richard Stallman <rms@gnu.org>
18942
18943 * xdisp.c (get_window_cursor_type): Implement documented behavior
18944 for cursor-in-non-selected-windows = t.
18945
18946 2007-10-08 Jason Rumney <jasonr@gnu.org>
18947
18948 * w32.c (w32_get_resource): Always close registry keys.
18949
18950 2007-10-08 Jason Rumney <jasonr@gnu.org>
18951
18952 * makefile.w32-in (LIBS): Add COMCTL32.
18953
18954 * w32fns.c (globals_of_w32fns): Init common controls.
18955
18956 2007-10-08 Richard Stallman <rms@gnu.org>
18957
18958 * image.c (our_memory_buffer): Rename from omfib_buffer.
18959
18960 2007-10-08 Richard Stallman <rms@gnu.org>
18961
18962 * buffer.c (Foverlays_at): Doc fix.
18963
18964 2007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
18965
18966 * fns.c (Fplist_put): Preserve uneven tail data.
18967
18968 2007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
18969
18970 * termhooks.h (enum event_kind): Remove trailing comma.
18971
18972 * frame.h (enum): Remove trailing comma.
18973
18974 2007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
18975
18976 * w32proc.c (delete_child): Don't terminate threads of zombies.
18977
18978 2007-10-08 Martin Rudalics <rudalics@gmx.at>
18979
18980 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
18981
18982 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
18983 last-repeatable-command.
18984 (init_kboard): Initialize Vlast_repeatable_command.
18985 (command_loop_1): Set it to real_this_command unless that was
18986 bound to an input event.
18987 (mark_kboards): Mark it.
18988
18989 2007-10-08 Richard Stallman <rms@gnu.org>
18990
18991 * eval.c (condition-case): Doc fix.
18992
18993 2007-10-08 Masatake YAMATO <jet@gyve.org>
18994
18995 * xfaces.c (tty_supports_face_attributes_p): Fix code
18996 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
18997 was copied and not edited.
18998
18999 2007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
19000
19001 Add new `input-decode-map' keymap and use it for terminal
19002 escape sequences.
19003 * keyboard.h (struct kboard): Add Vinput_decode_map.
19004 Remove Vlocal_key_translation_map.
19005 * keyboard.c (read_key_sequence): Add support for input-decode-map.
19006 (init_kboard): Init input-decode-map.
19007 Replace local-key-translation-map back with key-translation-map.
19008 (syms_of_keyboard): Declare input-decode-map.
19009 Remove local-key-translation-map. Update docstrings.
19010 (mark_kboards): Mark Vinput_decode_map.
19011 Don't mark Vlocal_key_translation_map.
19012 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
19013 Replace local-key-translation-map back with key-translation-map.
19014 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
19015 Bind in input-decode-map rather than function-key-map.
19016
19017 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
19018 This was made redundant by the previous introduction of XSETPVECTYPE.
19019
19020 2007-10-09 Richard Stallman <rms@gnu.org>
19021
19022 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
19023
19024 2007-09-29 Richard Stallman <rms@gnu.org>
19025
19026 * eval.c (internal_condition_case_2, internal_condition_case_1)
19027 (internal_condition_case): Reenable abort if x_catching_errors ()
19028 to see if that really happens and why.
19029
19030 2007-10-06 Andreas Schwab <schwab@suse.de>
19031
19032 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
19033
19034 2007-10-04 Juanma Barranquero <lekktu@gmail.com>
19035
19036 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
19037
19038 2007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
19039
19040 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
19041
19042 2007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
19043
19044 * window.h (struct window):
19045 * window.c (struct save_window_data, struct saved_window):
19046 * termhooks.h (struct terminal):
19047 * process.h (struct Lisp_Process):
19048 * frame.h (struct frame):
19049 * buffer.h (struct buffer):
19050 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
19051 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
19052 The size field of (pseudo)vectors is now unsigned.
19053 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
19054
19055 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
19056 Turn `count' into an integer.
19057
19058 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
19059 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
19060 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
19061 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
19062 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
19063
19064 * alloc.c (allocate_pseudovector): New fun.
19065 (ALLOCATE_PSEUDOVECTOR): New macro.
19066 (allocate_window, allocate_terminal, allocate_frame)
19067 (allocate_process): Use it.
19068 (mark_vectorlike): New function.
19069 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
19070 (mark_terminals): Use it.
19071 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
19072 (Fmake_byte_code): Use XSETPVECTYPE.
19073
19074 * frame.c (Fframe_parameters): Minor simplification.
19075
19076 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
19077
19078 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
19079
19080 * buffer.c (Fget_buffer_create, init_buffer_once):
19081 * lread.c (defsubr):
19082 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
19083
19084 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
19085 defined differently in the m/*.h files.
19086 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
19087 (XSETPVECTYPE): New macro.
19088 (XSETPSEUDOVECTOR): Use it.
19089
19090 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
19091 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
19092
19093 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
19094 * lread.c (defvar_per_buffer):
19095 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
19096
19097 * window.c (candidate_window_p): Only consider as visible frames that
19098 are on the same terminal.
19099
19100 * m/ibms390x.h (MARKBIT): Remove unused macro.
19101
19102 2007-10-01 Juanma Barranquero <lekktu@gmail.com>
19103
19104 * lread.c (Fload): Fix typo in docstring.
19105
19106 2007-10-01 Michaël Cadilhac <michael@cadilhac.name>
19107
19108 * floatfns.c (Fexpt): Manually check for overflows, so that a power
19109 of a non-zero value can't yield zero.
19110
19111 2007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
19112
19113 * term.c (term_clear_mouse_face, term_mouse_highlight)
19114 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
19115
19116 * print.c (safe_debug_print): Use XHASH.
19117
19118 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
19119 Lisp elements such as tags.
19120 (XHASH): New macro.
19121 (EQ): Use it.
19122 (SREF, SSET, STRING_COPYIN): Use SDATA.
19123 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
19124
19125 * alloc.c (mark_terminal): Remove left-over declaration.
19126 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
19127 (allocate_vectorlike): Remove type argument. Adjust callers.
19128 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
19129 Only handle the one remaining MEM_TYPE_VECTORLIKE.
19130
19131 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
19132 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
19133 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
19134 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
19135 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
19136 Use them.
19137
19138 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
19139 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
19140 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
19141
19142 2007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
19143
19144 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
19145 loaded by default.
19146
19147 2007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
19148
19149 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
19150 on this tty.
19151 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
19152
19153 * term.c (mouse_face_window): Rename from Qmouse_face_window.
19154 Update all users.
19155 (handle_one_term_event): Use Gpm_DrawPointer.
19156 (Fgpm_mouse_start): Rename from Fterm_open_connection.
19157 Signal errors instead of returning nil. Always return nil.
19158 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
19159 Make it a noop if gpm-mouse was not activated.
19160 (syms_of_term): Update names.
19161
19162 2007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
19163
19164 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
19165 (init_sys_modes): Check that gpm_tty is the current tty.
19166
19167 * alloc.c (allocate_terminal): Set the vector size to only count the
19168 lisp fields. Initialize those to nil.
19169 (mark_object): Don't treat terminals specially.
19170 (mark_terminal): Remove.
19171 (mark_terminals): Use mark_object instead.
19172
19173 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
19174 the GC to the beginning.
19175
19176 * indent.h:
19177 * indent.c: Use EMACS_INT for ints coming from Elisp data.
19178
19179 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
19180
19181 2007-09-25 Jason Rumney <jasonr@gnu.org>
19182
19183 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
19184
19185 * w32console.c (create_w32cons_output): Remove.
19186
19187 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
19188
19189 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
19190 (reset_sys_modes): Use reset_terminal_modes_hook.
19191
19192 2007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
19193
19194 * eval.c (do_autoload): Don't output any message.
19195
19196 2007-09-24 Juri Linkov <juri@jurta.org>
19197
19198 * emacs.c (standard_args): Change priority of "--no-splash"
19199 from 40 to 3. Add "--no-desktop" with the same priority.
19200
19201 2007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
19202
19203 * alloc.c (gc_sweep): Check cons cell mark bits word by word
19204 and optimize the case where they are all 1.
19205
19206 2007-09-23 Johannes Weiner <hannes@saeurebad.de>
19207
19208 * lisp.h (abs): Define if not defined.
19209 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
19210 Don't define `abs', since it's defined in lisp.h.
19211
19212 2007-09-22 Eli Zaretskii <eliz@gnu.org>
19213
19214 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
19215 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
19216 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
19217 (init_tty): Use DEV_TTY instead of "/dev/tty".
19218 [WINDOWSNT]: No need to protect from NAME arg being null.
19219
19220 2007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
19221
19222 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
19223 up the tty state.
19224
19225 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19226
19227 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
19228 (gpm_tty): Change its type.
19229 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
19230 (gpm_tty): Change its type and initialize it.
19231 (Fterm_open_connection): Check the frame is indeed a tty.
19232 Use the new gpm_tty.
19233 (Fterm_close_connection): Use the new gpm_tty.
19234 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
19235 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
19236
19237 2007-09-21 Juanma Barranquero <lekktu@gmail.com>
19238
19239 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
19240 underline_color, to draw strike-through.
19241
19242 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19243
19244 * lisp.h (allocate_terminal): Declare.
19245
19246 * window.c (candidate_window_p): Consider frames that are being placed
19247 by the user as somewhere between visible and iconified.
19248 (window_loop): Prefer windows on the current frame.
19249 (Fselect_window): Move the use of select-frame to the beginning so we
19250 can just delegate all the work (it'll call us back anyway).
19251
19252 * frame.c (Qdisplay_environment_variable):
19253 * frame.h (Qdisplay_environment_variable): Delete.
19254
19255 * .gdbinit (xbacktrace): Print the arg's address rather than the value
19256 of the first arg, since that value may be a union.
19257
19258 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
19259 parameter rather than Qdisplay_environment_variable. If all else
19260 fails, look for DISPLAY in initial-environment.
19261
19262 2007-09-21 Glenn Morris <rgm@gnu.org>
19263
19264 * Makefile.in (emacstool): Remove target.
19265 (lisp, shortlisp): Remove termdev.elc.
19266
19267 2007-09-21 Markus Triska <markus.triska@gmx.at>
19268
19269 * xterm.c (x_delete_display): Compile session management conditionally.
19270
19271 2007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
19272
19273 * callproc.c (getenv_internal_1): New function.
19274 (getenv_internal): Use it.
19275 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
19276
19277 * terminal.c (get_terminal): Don't accept ints to represent terminals.
19278 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
19279 (Fset_terminal_parameter): Work with dead terminals as well.
19280 (Fmodify_terminal_parameters): Remove.
19281
19282 * terminal.c (get_terminal): Handle terminals.
19283 Make sure the terminal returned is live.
19284 (create_terminal): Use allocate_terminal.
19285 (mark_terminals): Move to alloc.c.
19286 (delete_terminal): Use terminal->name as liveness status.
19287 NULL out fields after freeing their contents.
19288 Don't deallocate the object.
19289 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
19290 rather than an int.
19291 (Fterminal_live_p): Accept non-integer arguments.
19292 (Fterminal_list): Return terminal objects rather than an ints.
19293
19294 * alloc.c (enum mem_type): New member for `terminal' objects.
19295 (allocate_terminal): New function.
19296 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
19297 Handle terminals.
19298 (mark_terminal): New fun.
19299 (mark_terminals): Move from terminal.c.
19300
19301 * term.c (get_tty_terminal): Don't treat output_initial specially.
19302 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
19303 (delete_tty): Use terminal->name as liveness status.
19304
19305 * termhooks.h (struct terminal): Make it into a pseudovector.
19306 Remove `deleted' replaced by checking `name's nullness.
19307
19308 * print.c (print_object): Handle terminals.
19309
19310 * lisp.h (enum pvec_type): New `terminal' pseudovector.
19311 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
19312
19313 * frame.c (make_terminal_frame):
19314 * keyboard.c (tty_read_avail_input):
19315 * w32term.c (x_delete_terminal):
19316 * xfns.c (Fx_create_frame, x_create_tip_frame):
19317 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
19318
19319 2007-09-20 Glenn Morris <rgm@gnu.org>
19320
19321 * process.c (Fmake_network_process): Doc fix.
19322
19323 2007-09-19 Jason Rumney <jasonr@gnu.org>
19324
19325 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
19326
19327 2007-09-19 Michaël Cadilhac <michael@cadilhac.name>
19328
19329 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
19330 Fix a C warning regarding variable constness.
19331
19332 * xterm.c (handle_one_xevent): Fix a C warning.
19333
19334 2007-09-18 Jason Rumney <jasonr@gnu.org>
19335
19336 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
19337
19338 2007-09-17 Jan Djärv <jan.h.d@swipnet.se>
19339
19340 * gtkutil.c (gdpy_def): New variable.
19341 (xg_initialize): Initialize gdpy_def.
19342 (xg_display_close): If no other display exists, set gdpy_def to a
19343 new connection.
19344
19345 2007-09-16 Jan Djärv <jan.h.d@swipnet.se>
19346
19347 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
19348 when we have no file name for the icon.
19349 (xg_tool_bar_expose_callback): Remove.
19350 (xg_create_tool_bar): Don't connect expose signal to
19351 xg_tool_bar_expose_callback.
19352 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
19353
19354 2007-09-16 Andreas Schwab <schwab@suse.de>
19355
19356 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
19357 values instead of zapping them.
19358
19359 2007-09-14 Glenn Morris <rgm@gnu.org>
19360
19361 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
19362 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
19363 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
19364 scope and rename to omfib_buffer for clarity.
19365 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
19366
19367 2007-09-14 Kenichi Handa <handa@m17n.org>
19368
19369 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
19370
19371 2007-09-13 Jason Rumney <jasonr@gnu.org>
19372
19373 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
19374
19375 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
19376
19377 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
19378 (mac_term_init): Call here instead, passing rif.
19379
19380 2007-09-13 Glenn Morris <rgm@gnu.org>
19381
19382 * s/hpux.h: No longer define `static' as nothing.
19383
19384 2007-09-13 Johan Bockgård <bojohan@gnu.org>
19385
19386 * callint.c (Fcall_interactively): Remove unused var `fun'.
19387
19388 2007-09-12 Romain Francoise <romain@orebokech.com>
19389
19390 * window.c (prefer_window_split_horizontally, display_buffer):
19391 Revert 2007-09-08 change.
19392
19393 2007-09-12 Glenn Morris <rgm@gnu.org>
19394
19395 * alloca.c: Remove file.
19396 * Makefile.in (alloca): Do not undef.
19397 (allocaobj, alloca.o): Remove.
19398 (otherobj): Remove allocaobj.
19399 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
19400 * regex.c (C_ALLOCA): Remove all references and code that was only
19401 used when this was defined.
19402 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
19403 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
19404 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
19405
19406 * Makefile.in (SOURCES, unlock, relock): Delete.
19407
19408 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
19409 (menu_grab_callback): All uses changed.
19410
19411 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
19412 (x_reply_selection_request): All uses changed.
19413
19414 2007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
19415
19416 * lread.c (load_warn_old_style_backquotes): Change message to look
19417 better when it appears in the middle of byte-compiler messages.
19418
19419 2007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
19420
19421 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
19422
19423 * xterm.c (x_create_terminal): Add comment.
19424
19425 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
19426
19427 2007-09-10 Richard Stallman <rms@gnu.org>
19428
19429 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
19430
19431 2007-09-10 Michaël Cadilhac <michael@cadilhac.name>
19432
19433 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
19434 (DEFUN): Document `intspec', use it instead of `prompt'.
19435
19436 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
19437
19438 * data.c (Finteractive_form): If the interactive specification starts
19439 with a `(', use it as a Lisp form.
19440
19441 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
19442 name and file modes.
19443
19444 * callint.c (Fcall_interactively): Comment fixes.
19445
19446 2007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
19447
19448 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
19449 and compiled functions.
19450
19451 2007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
19452
19453 * window.c (prefer_window_split_horizontally): New variable.
19454 (display_buffer): Consider splitting window horizontally depending
19455 on prefer_window_split_horizontally.
19456
19457 2007-09-08 Eli Zaretskii <eliz@gnu.org>
19458
19459 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
19460
19461 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19462
19463 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
19464
19465 * frame.c (x_set_frame_parameters): Check number is positive before
19466 using XFASTINT.
19467
19468 * window.c (freeze_window_start): Don't presume selected_window holds
19469 a window object.
19470 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
19471
19472 2007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
19473
19474 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
19475
19476 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19477
19478 * window.c (Vsplit_window_preferred_function): New var.
19479 (Fdisplay_buffer): Use it.
19480 (syms_of_window): Export, and initialize it.
19481
19482 2007-09-06 Pixel <pixel@mandriva.com> (tiny change)
19483
19484 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
19485
19486 2007-09-06 Glenn Morris <rgm@gnu.org>
19487
19488 * gtkutil.c (menu_grab_callback) <cnt>:
19489 * xselect.c (x_reply_selection_request) <cnt>: Move static
19490 variable to file scope.
19491
19492 2007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
19493
19494 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
19495 consistent values of selected_frame and selected_window.
19496
19497 2007-09-04 Jason Rumney <jasonr@gnu.org>
19498
19499 * w32console.c (initialize_w32_display): Zero unused hooks.
19500
19501 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19502
19503 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
19504 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
19505
19506 2007-09-04 Jason Rumney <jasonr@gnu.org>
19507
19508 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
19509 in w32console.c. Set up input. Remove XXX comments that have been
19510 confirmed as correct.
19511
19512 * s/ms-w32.h (MULTI_KBOARD): Define.
19513
19514 * w32console.c (one_and_only_w32cons): Remove.
19515 (initialize_w32_display): Take terminal argument.
19516
19517 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
19518 initialize_w32_display.
19519 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
19520
19521 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
19522
19523 * keyboard.c (discard_mouse_events): Discard it.
19524 (make_lispy_event): Translate it to a lisp event.
19525 (lispy_wheel_names): Add wheel-left and right events.
19526 (syms_of_keyboard): Enlarge wheel_syms.
19527
19528 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
19529 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
19530
19531 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
19532
19533 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
19534 from WM_MOUSEHWHEEL.
19535 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
19536
19537 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
19538 terminal.
19539
19540 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
19541 keyboard for the terminal.
19542
19543 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19544
19545 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
19546 (Vresume_tty_hook): Rename from Vresume_tty_functions.
19547 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
19548 and resume-tty-function to resume-tty-hook.
19549 (Fsuspend_tty, Fresume_tty): Use new names.
19550
19551 2007-09-02 Jan Djärv <jan.h.d@swipnet.se>
19552
19553 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
19554 if it starts with "n:".
19555
19556 2007-08-31 Jan Djärv <jan.h.d@swipnet.se>
19557
19558 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
19559
19560 2007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
19561
19562 * frame.h:
19563 * frame.c (Qterm_environment_variable): Remove.
19564 (syms_of_frame): Don't init and staticpro it.
19565
19566 * callproc.c (getenv_internal): Remove special case for $TERM.
19567
19568 * callproc.c (Vinitial_environment): New variable.
19569 (set_initial_environment): Initialize it.
19570 (syms_of_callproc): Declare it.
19571 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
19572 TERM under which a process runs is never related to the TERM in which
19573 Emacs is running.
19574
19575 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19576
19577 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
19578 * s/darwin.h: ... do it here.
19579
19580 2007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
19581
19582 * lisp.h (set_initial_environment): Rename from set_global_environment.
19583
19584 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
19585 removed by mistake on the multi-tty branch.
19586
19587 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
19588 (Fmodify_frame_parameters): Return a value.
19589
19590 * image.c (png_load): Comment-out var only used in commented-out code.
19591
19592 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
19593 before passing it to mark_object.
19594
19595 * xfaces.c (internal_resolve_face_name): Return a value.
19596 (internal_resolve_face_name, resolve_face_name_error): Comment out.
19597
19598 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
19599 (x_icon): Comment-out var only used in commented-out code.
19600
19601 2007-08-29 Romain Francoise <romain@orebokech.com>
19602
19603 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
19604 QUIT hasn't been provided.
19605
19606 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19607
19608 * callproc.c (child_setup, getenv_internal): Use the
19609 display-environment-variable and term-environment-variable frame params.
19610 (set_initial_environment): Initialise Vprocess_environment.
19611
19612 * config.in: Disable multi-keyboard support on a mac.
19613
19614 * frame.c (Qterm_environment_variable)
19615 (Qdisplay_environment_variable): New variables.
19616 (syms_of_frame): Intern and staticpro them.
19617 (Fmake_terminal_frame): Disable output method test.
19618
19619 * frame.h: Declare them here.
19620
19621 * macfns.c (x_set_mouse_color): Get rif from the frame.
19622 (x_set_tool_bar_lines): Don't use updating_frame.
19623 (mac_window): Add 2 new parameters for consistency with other systems.
19624 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
19625 frame parameters following what is done in X11 and w32. Don't use
19626 FRAME_MAC_DISPLAY_INFO.
19627 (Fx_open_connection, start_hourglass): Remove window-system check.
19628 (x_create_tip_frame): Get the keyboard from the terminal.
19629
19630 * macmenu.c: Reorder includes.
19631 (Fx_popup_menu): Use terminal specific mouse_position_hook.
19632
19633 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
19634 terminal parameter.
19635 (x_clear_frame): Add a frame parameter.
19636 (note_mouse_movement): Get rif from the frame.
19637 (mac_term_init): Initialize the terminal.
19638 (mac_initialize): Make static and move terminal initialization ...
19639 (mac_create_terminal): ... to this new function.
19640
19641 * macterm.h (struct mac_display_info): Add terminal.
19642 (mac_initialize): Delete declaration.
19643
19644 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
19645
19646 * sysdep.c: Comment out text after #endif.
19647
19648 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
19649 is defined. Better initialize ttys in windows. Use terminal
19650 specific mouse_position_hook.
19651
19652 * termhooks.h (union display_info): Add mac_display_info.
19653
19654 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
19655 Set the default minibuffer frame, window_system and the rest of the
19656 frame parameters following what is done in X11.
19657
19658 * w32term.c (w32_initialize): Make static.
19659
19660 * xselect.c (x_handle_selection_clear): Only access
19661 terminal->kboard when MULTI_KBOARD is defined.
19662
19663 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
19664 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
19665
19666 2007-08-29 Jason Rumney <jasonr@gnu.org>
19667
19668 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
19669 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
19670
19671 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
19672 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
19673
19674 * keyboard.c (restore_kboard_configuration): Only define when
19675 MULTI_KBOARD defined.
19676
19677 * makefile.w32-in: Update dependancies from Makefile.in.
19678 (OBJ1): Add terminal.$(O)
19679
19680 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
19681 Don't define function body.
19682 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
19683
19684 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
19685
19686 * w32.c (request_sigio, unrequest_sigio): Remove.
19687
19688 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
19689 (w32con_clear_frame, w32con_clear_end_of_line)
19690 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
19691 (w32con_delete_glyphs, w32con_set_terminal_window)
19692 (scroll_line, w32_sys_ring_bell): Add frame arg.
19693 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
19694 Add terminal arg.
19695 (PICK_FRAME): Remove.
19696 (w32con_write_glyphs): Use frame specific terminal coding.
19697 (one_and_only_w32cons): New global variable.
19698 (initialize_w32_display): Use it for storing hooks.
19699 (create_w32cons_output): New function.
19700
19701 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
19702 arg a frame.
19703
19704 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
19705 Set window_system.
19706 (x_set_tool_bar_lines): Don't use updating_frame.
19707 (Fx_create_frame): Set terminal and ref count.
19708 (Fx_open_connection): Remove window-system check.
19709
19710 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
19711
19712 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
19713 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
19714 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
19715 Add frame arg.
19716 (x_delete_terminal, w32_create_terminal): New functions.
19717 (w32_term_init): Create a terminal.
19718 (w32_initialize): Move terminal specific initialization to
19719 w32_create_terminal.
19720
19721 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
19722 (w32_clear_rect, w32_clear_area): Use background from frame.
19723 (w32_display_info): Add terminal.
19724 (w32_sys_ring_bell, x_delete_display): Declare here.
19725
19726 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
19727
19728 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
19729
19730 2007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
19731
19732 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
19733 Fix get_named_tty calls for the controlling tty.
19734
19735 2007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
19736
19737 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
19738
19739 2007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
19740
19741 * term.c (tty_insert_glyphs): Add missing first parameter.
19742
19743 2007-08-29 Károly Lőrentey <karoly@lorentey.hu>
19744
19745 * buffer.c (Fbuffer_list, Fbury_buffer):
19746 Take frame->buried_buffer_list into account.
19747
19748 * cm.c (current_tty): New variable, for cmputc().
19749 (cmputc): Use it.
19750 (cmcheckmagic): Add tty parameter, look up terminal streams there.
19751 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
19752 (cmgoto): Add tty parameter. Pass it on to calccost().
19753 Use emacs_tputs() instead of tputs().
19754
19755 * cm.h (emacs_tputs): New macro to set current_tty, and then call
19756 tputs().
19757 (current_tty): New variable, for cmputc().
19758 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
19759
19760 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
19761 (internal_condition_case, internal_condition_case_1)
19762 (internal_condition_case_2): Don't abort when x_catching_errors.
19763
19764 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
19765 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
19766 prevent crashes caused by bogus longjmps in read_char.
19767
19768 * keymap.h (Fset_keymap_parent): Add EXFUN.
19769
19770 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
19771 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19772 Remove redundant definition.
19773
19774 * macfns.c (x_set_mouse_color, x_make_gc):
19775 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19776
19777 * w32term.c (x_free_frame_resources):
19778 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19779 (w32_initialize): Use the accessor macros for terminal characteristics.
19780
19781 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
19782 Use the accessor macros for terminal characteristics.
19783 * msdos.c (internal_terminal_init): Use the accessor macros for
19784 terminal characteristics.
19785 (ScreenVisualBell, internal_terminal_init):
19786 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19787
19788 * termopts.h (no_redraw_on_reenter): Declare.
19789
19790 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
19791 (mark_terminals, mark_ttys): Declare.
19792 (Fgarbage_collect): Call them.
19793 (mark_object): Mark buried_buffer_list.
19794
19795 * prefix-args.c: Include stdlib.h for exit.
19796
19797 * syssignal.h: Add comment.
19798
19799 * indent.c: Include stdio.h.
19800
19801 * window.h (Vinitial_window_system): Declare.
19802 (Vwindow_system): Delete declaration.
19803
19804 * fontset.c (Finternal_char_font): Use FRAME_RIF.
19805
19806 * image.c (lookup_image): Don't initialize `c' until the xasserts
19807 have been run.
19808
19809 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
19810 FRAME_FOREGROUND_PIXEL.
19811
19812 * print.c (print_preprocess): Don't lose print_depth levels while
19813 iterating.
19814
19815 * widget.c (update_from_various_frame_slots):
19816 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19817
19818 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
19819 frames.
19820 (window_internal_height): Remove bogus make_number call.
19821 (init_window_once): Call make_terminal_frame with two zero parameters.
19822
19823 * fileio.c (Fread_file_name): Update comment.
19824
19825 * callint.c (Fcall_interactively):
19826 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
19827 Make sure it is correctly unwound.
19828
19829 * xsmfns.c (x_session_close): New function.
19830
19831 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
19832 Delete declarations.
19833
19834 * xterm.h: Remove declaration for x_fully_uncatch_errors.
19835 (x_output): Remove background_pixel and foreground_pixel fields.
19836 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
19837 (x_delete_device, x_session_close): Declare.
19838
19839 * lread.c: Include setjmp.h. Update declaration of `read_char'.
19840 (read_filtered_event): Call `read_char' with a local
19841 `wrong_kboard_jmpbuf'.
19842
19843 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
19844 Don't call single_kboard_state. Use FRAME_RIF.
19845
19846 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
19847 systems.
19848
19849 * lisp.h (set_process_environment): Rename to `set_global_environment'.
19850 (Fframe_with_environment, Fset_input_meta_mode)
19851 (Fset_quit_char): EXFUN.
19852 (x_create_device, tty_output, terminal, tty_display_info): Declare.
19853 (init_sys_modes, reset_sys_modes): Update prototypes.
19854 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
19855
19856 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
19857 Vlocal_key_translation_map, and Vkeyboard_translate_table.
19858 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
19859 Delete declarations.
19860 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
19861 (temporarily_switch_to_single_kboard, tty_read_avail_input):
19862 New declarations.
19863
19864 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
19865 already does that during init_display(). Call syms_of_keymap
19866 before syms_of_keyboard. Call `syms_of_terminal'.
19867 Call set_initial_environment, not set_process_environment.
19868 (shut_down_emacs): Call reset_all_sys_modes() instead of
19869 reset_sys_modes().
19870
19871 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
19872 (internal_resolve_face_name, resolve_face_name_error): New functions.
19873 (resolve_face_name): Protect against loops and errors thrown by Fget.
19874 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
19875 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
19876
19877 * scroll.c: Replace CURTTY() with local variables throughout the
19878 file (where applicable).
19879 (calculate_scrolling, calculate_direct_scrolling)
19880 (scrolling_1, scroll_cost): Use the accessor macros for terminal
19881 characteristics.
19882
19883 * keymap.c (Vfunction_key_map): Remove.
19884 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
19885 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
19886 (Vkey_translation_map): Remove.
19887 (syms_of_keymap): Remove DEFVAR for key-translation-map.
19888 (Fdescribe_buffer_bindings)
19889 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
19890 Update for terminal-local key-translation-map.
19891
19892 * Makefile.in (callproc.o): Update dependencies.
19893 (lisp, shortlisp): Add termdev.elc.
19894 (obj): Add terminal.o.
19895 (terminal.o): Add dependencies.
19896 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
19897 (data.o, fns.o): Add termhooks.h dependency.
19898 (SOME_MACHINE_LISP): Add dnd.elc.
19899 (minibuf.o): Fix typo.
19900 Update dependencies.
19901
19902 * data.c (do_symval_forwarding, store_symval_forwarding)
19903 (find_symbol_value): Use the selected frame's keyboard, not
19904 current_kboard.
19905
19906 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
19907 Vwindow_system.
19908
19909 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
19910 Fmenu_bar_open.
19911 (syms_of_xmenu): Update defsubr.
19912 (mouse_position_for_popup, Fx_popup_menu)
19913 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
19914 (set_frame_menubar, free_frame_menubar)
19915 (create_and_show_popup_menu, xmenu_show)
19916 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
19917 an X frame.
19918
19919 * xselect.c (x_own_selection): Abort if not an X frame.
19920 (some_frame_on_display): Check if it is an X frame.
19921 (x_handle_selection_clear): Deal with MULTI_KBOARD.
19922
19923 * coding.c: Include frame.h and termhooks.h.
19924 (terminal_coding, keyboard_coding): Delete.
19925 (Fset_terminal_coding_system_internal)
19926 (Fset_keyboard_coding_system_internal)
19927 (Fkeyboard_coding_system)
19928 (Fterminal_coding_system): Add a terminal parameter.
19929 Get terminal_coding from the terminal.
19930 (init_coding_once): Don't call setup_coding_system here.
19931
19932 * dispextern.h (set_scroll_region, turn_off_insert)
19933 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
19934 (tty_clear_end_of_line, tty_setup_colors)
19935 (delete_tty, updating_frame)
19936 (produce_special_glyphs, produce_glyphs, write_glyphs)
19937 (insert_glyphs): Remove.
19938 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
19939 (tty_turn_off_highlight, get_tty_size): Add declaration.
19940 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
19941
19942 * frame.h (enum output_method): Add output_initial.
19943 (struct x_output): Delete.
19944 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19945 Access foreground_pixel and background_pixel directly from the frame.
19946 (tty_display): Delete.
19947 (struct frame): Add buried_buffer_list, foreground_pixel,
19948 background_pixel and terminal. Delete kboard.
19949 (union output_data): Add tty.
19950 (FRAME_KBOARD): Get the kboard from the terminal.
19951 (FRAME_INITIAL_P): New macro.
19952 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
19953 (Qterm_environment_variable, Qdisplay_environment_variable)
19954 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
19955 New declarations.
19956
19957 * termchar.h (tty_output, tty_display_info): New structures.
19958 (tty_list): Declare.
19959 (FRAME_TTY, CURTTY): New macros.
19960 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
19961 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
19962 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
19963 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
19964
19965 * callproc.c: Include frame.h and termhooks.h, for terminal
19966 parameters.
19967 (add_env): New function.
19968 (child_setup): Use it.
19969 (child_setup, getenv_internal): Handle the new Vprocess_environment.
19970 (getenv_internal): Fix get_terminal_param call.
19971 (Fgetenv_internal, egetenv): Update doc.
19972 (syms_of_callproc): Initialize Vprocess_environment to nil.
19973 Register and initialize them. Remove obsolete defvars. Update doc
19974 strings.
19975 (child_setup): Handle Vlocal_environment_variables.
19976 (getenv_internal): Add terminal parameter.
19977 Handle Vlocal_environment_variables.
19978 (Fgetenv_internal): Add terminal parameter.
19979 (child_setup, getenv_internal, Fgetenv_internal): Store the local
19980 environment in a frame (not terminal) parameter. Update doc strings.
19981 (set_initial_environment): Rename from set_global_environment.
19982 Store Emacs environment in initial frame parameter.
19983
19984 * xdisp.c (redisplay_internal): Update references to
19985 `previous_terminal_frame'.
19986 (display_mode_line, Fformat_mode_line): Replace calls to
19987 `push_frame_kboard' with `push_kboard'.
19988 (get_glyph_string_clip_rects): Add extra parentheses and
19989 braces to prevent compiler warnings.
19990 (calc_pixel_width_or_height): Add xassert to check that the
19991 frame is alive. Don't call `lookup_image' on a termcap frame.
19992 (message2_nolog, message3_nolog, redisplay_internal)
19993 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
19994 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
19995 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
19996 (Fx_display_pixel_width, Fx_display_pixel_height)
19997 (Fx_display_planes, Fx_display_color_cells)
19998 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
19999 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
20000 (Fx_display_backing_store, Fx_display_visual_class)
20001 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
20002 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
20003
20004 * xfns.c (x_set_foreground_color x_set_background_color)
20005 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
20006 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20007 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
20008 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
20009 terminal that is being deleted.
20010 (Fx_create_frame): Use `store_frame_param' to set `window-system'
20011 frame parameter, and make sure it overrides any user-supplied setting.
20012 (Fx_close_connection, Fx_synchronize): Unify argument names with
20013 the rest of the DEFUNs.
20014
20015 * dispnew.c (Fsend_string_to_terminal): Update call to
20016 `get_tty_terminal'.
20017 (Fredraw_frame, Fsend_string_to_terminal)
20018 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
20019 FRAME_TERMCAP_P and FRAME_TTY.
20020 (window_change_signal): Don't believe width/height values that are
20021 impossibly small.
20022 (Vinitial_window_system): Rename from Vwindow_system.
20023 (termscript, Wcm, rif): Delete.
20024
20025 * termhooks.h (struct terminal): New struct containing the
20026 previously global text display hooks and new members NAME,
20027 DELETED and PARAM_ALIST.
20028 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
20029 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
20030 (FRAME_RIF): New macros.
20031 (get_terminal_param, get_device): New declarations.
20032 (termscript): Delete declaration.
20033
20034 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
20035 (XTflash, x_free_frame_resources, x_scroll_bar_create)
20036 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
20037 FRAME_FOREGROUND_PIXEL.
20038 (x_fully_uncatch_errors): Disable definition.
20039 (x_scroll_bar_expose): Fix reference to foreground pixel.
20040 (XTread_socket): Disable loop on all X displays.
20041 (x_delete_terminal): Don't set terminal->deleted and let
20042 delete_terminal delete the frames on the terminal.
20043 (x_delete_display): Doc update to reflect changes in
20044 delete_terminal.
20045 (x_display_info) <terminal>: Move member earlier in the struct.
20046 (deleting_tty): Remove old variable.
20047 (Fsuspend_tty): Call clear_tty_hooks.
20048 (Fresume_tty, init_tty): Call set_tty_hooks.
20049 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
20050 errors on X frames.
20051 (x_catch_errors_unwind): Abort if x_error_message is NULL.
20052 (handle_one_xevent): Initialize `f' to NULL.
20053 (x_delete_terminal, x_create_terminal): New functions.
20054 (XTset_terminal_modes, XTreset_terminal_modes)
20055 (XTread_socket, x_connection_closed, x_term_init)
20056 (x_term_init, x_delete_display): Add terminal parameter.
20057 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
20058 X connections.
20059
20060 * frame.c: Include termchar.h.
20061 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
20062 (Qwindow_system, Qenvironment, Qterm_environment_variable)
20063 (Qdisplay_environment_variable): New vars.
20064 (Fframep): Deal with output_initial.
20065 (Fframe-live-p): Doc fix.
20066 (Fwindow-system): New function.
20067 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
20068 (make_terminal_frame): Don't create frames on a terminal that is
20069 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20070 (store_frame_param): Check for found_for_frame before calling XFRAME.
20071 (Fmake_terminal_frame): Handle NULL tty names correctly.
20072 (syms_of_frame): Enhance doc string of `default-frame-alist'.
20073 (Fdelete_frame): Remove unused variable `count'. Don't allow other
20074 frames to refer to a deleted frame in their 'environment parameter.
20075 (Fframe_with_environment): New function.
20076 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
20077 (get_future_frame_param): New function.
20078 (Fmake_terminal_frame): Use it.
20079 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
20080
20081 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
20082 * sysdep.c (reset_sys_modes): Update for renames.
20083
20084 * keyboard.c (tty_read_avail_input): New function.
20085 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
20086 (syms_of_keyboard): Defsubr them.
20087 (Fset_input_meta_mode, Fset_quit_char): New functions.
20088 (Fset_input_mode): Split to above functions.
20089 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
20090 parameter. Use it in call to `read_char'.
20091 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
20092 Set wrong_kboard_jmpbuf correctly in recursive calls.
20093 Use current_kboard to access Vkeyboard_translate_table.
20094 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
20095 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
20096 Update longjmp invocations. Remember the original current_kboard,
20097 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
20098 changes it. Comment out unnecessary calls to
20099 `record_single_kboard_state' and `any_kboard_state'.
20100 Update recursive calls.
20101 (wrong_kboard_jmpbuf): Remove global variable.
20102 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
20103 Handle deleted interrupted_kboards correctly; that is a legal
20104 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
20105 and read_char calls. Abort if interrupted_kboard died in read_char.
20106 (any_kboard_state, single_kboard_state)
20107 (push_frame_kboard): Remove function.
20108 (pop_kboard): Switch out of single_kboard mode if the kboard has
20109 been deleted. Remove unused variable. Help debugging by not
20110 changing current_kboard unnecessarily. Set current_kboard to the
20111 kboard of the selected frame when the stored kboard object has
20112 been deleted before pop_kboard.
20113 (temporarily_switch_to_single_kboard): Change first parameter to a
20114 frame pointer. Throw an error when caller wants to change kboards
20115 while in single_kboard mode. Don't push_kboard if we weren't in
20116 single kboard state. Don't pop_kboard if we popped into any
20117 kboard state.
20118 (restore_kboard_configuration): Abort if pop_kboard changed the
20119 kboard in single_kboard mode. Call pop_kboard only after setting
20120 up single_kboard mode.
20121 (Frecursive_edit): Switch to single_kboard mode only in nested
20122 command loops.
20123 (cmd_error, command_loop, command_loop_1, timer_check):
20124 Comment out unnecessary call to `any_kboard_state' and
20125 `record_single_kboard_state'.
20126 (delete_kboard): Exit single_kboard mode if we have just deleted
20127 that kboard. Use FRAME_KBOARD.
20128 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
20129 `fatal_error_signal'.
20130 (record_single_kboard_state): Don't push_kboard if we weren't in
20131 single kboard state. Don't pop_kboard if we popped into any
20132 kboard state.
20133 (push_frame_kboard): Rename to push_kboard.
20134 (kbd_buffer_get_event): Use FRAME_TERMINAL.
20135 (read_avail_input): Read input from all terminals.
20136 (mark_kboards): Also mark Vkeyboard_translate_table.
20137 (kbd_buffer_store_event_hold): Simplify condition.
20138 (read_key_sequence): Reinitialize fkey and keytran at each replay.
20139 (Vkeyboard_translate_table): Move to struct kboard.
20140 (init_kboard): Initialize Vkeyboard_translate_table.
20141 (syms_of_keyboard): Use DEFVAR_KBOARD to define
20142 Vkeyboard_translate_table. Update doc strings. Update docs of
20143 local-function-key-map and function-key-map.
20144
20145 * terminal.c: New file.
20146
20147 * term.c: Include errno.h.
20148 (Vring_bell_function, device_list, initial_device)
20149 (next_device_id, ring_bell, update_begin, update_end)
20150 (set_terminal_window, cursor_to, raw_cursor_to)
20151 (clear_to_end, clear_frame, clear_end_of_line)
20152 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
20153 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
20154 (syms_of_term): Move their initialization to terminal.c.
20155 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
20156 (Ftty_display_color_cells)
20157 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
20158 (clear_tty_hooks, set_tty_hooks)
20159 (init_tty, maybe_fatal): New functions.
20160 (Ftty_type): Return nil if terminal is not on a tty instead of
20161 throwing an error. Doc update.
20162 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
20163 Doc update. Initialize new subrs and variables.
20164 (delete_tty): Use terminal->deleted.
20165 (tty_set_terminal_modes): Rename from set_terminal_modes.
20166 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
20167 (set_scroll_region): Rename to `tty_set_scroll_region'.
20168 (turn_on_insert): Rename to `tty_turn_on_insert'.
20169 (turn_off_insert): Rename to `tty_turn_off_insert'.
20170 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
20171 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
20172 (toggle_highligh): Rename to `tty_toggle_highlight'.
20173 (background_highlight): Rename to `tty_background_highlight'.
20174 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
20175 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
20176 (tty_set_scroll_region, tty_background_highlight)
20177 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
20178 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
20179 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
20180 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
20181 Add static modifier.
20182 (tty_reset_terminal_modes, tty_set_terminal_window)
20183 (tty_set_scroll_region, tty_background_highlight)
20184 (tty_highlight_if_desired, tty_cursor_to)
20185 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
20186 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
20187 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
20188 renames.
20189
20190 2007-08-28 Jan Djärv <jan.h.d@swipnet.se>
20191
20192 * keyboard.c: Qrtl is new.
20193 (parse_tool_bar_item): Handle :rtl keyword.
20194 (syms_of_keyboard): Intern :rtl keyword.
20195
20196 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
20197
20198 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
20199 so no Lisp code is executed.
20200 (file_for_image, find_rtl_image): New functions.
20201 (xg_get_image_for_pixmap): Use file_for_image.
20202 (update_frame_tool_bar): If direction is RTL, use RTL image if
20203 defined. Use Gtk stock images if defined.
20204
20205 2007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20206
20207 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
20208 for nonexistent or zero-width glyph in composition glyph.
20209
20210 2007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
20211
20212 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
20213
20214 * xdisp.c (Finvisible_p): New function.
20215 (syms_of_xdisp): defsubr it.
20216
20217 2007-08-24 Juanma Barranquero <lekktu@gmail.com>
20218
20219 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
20220 Doc fixes.
20221
20222 2007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20223
20224 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
20225
20226 2007-08-24 Martin Rudalics <rudalics@gmx.at>
20227
20228 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
20229 whether decoding has modified buffer contents.
20230
20231 2007-08-24 Jason Rumney <jasonr@gnu.org>
20232
20233 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
20234 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
20235 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
20236 (init_svg_functions) [HAVE_NTGUI]: New function.
20237 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
20238 (svg_load_image): Use them.
20239 (svg_load_image) [HAVE_NTGUI]: Implement background.
20240
20241 2007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20242
20243 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
20244 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
20245 (LIBX): Remove @RSVG_LIBS@.
20246 (LIBES): Add $(RSVG_LIBS).
20247
20248 * image.c (svg_load_image): Blend with specified background if exists.
20249 Use IMAGE_BACKGROUND. Add Mac OS Support.
20250
20251 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
20252 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
20253 Remove macros.
20254 [MAC_OSX] (socket_callback): Do nothing.
20255 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
20256 ReceiveNextEvent.
20257 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
20258 socket_callback.
20259 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
20260
20261 2007-08-22 Glenn Morris <rgm@gnu.org>
20262
20263 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
20264
20265 2007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
20266
20267 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
20268
20269 * image.c: Add support for SVG images. Some additional comments
20270 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
20271 (svg_image_p): New function to test for SVG image.
20272 (svg_load): New function to load SVG image.
20273 (svg_load_image): New function, helper for svg_load.
20274 (Qsvg): New Lisp_object.
20275 (svg_keyword_index): New enum.
20276 (svg_format): New static `image_keyword' struct.
20277 (svg_type): New static `image_type' struct.
20278 (librsvg/rsvg.h): Include it.
20279
20280 2007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
20281
20282 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
20283
20284 2007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
20285
20286 * lread.c (Qold_style_backquotes): New var.
20287 (syms_of_lread): Init and staticpro it.
20288 (load_warn_old_style_backquotes): New fun.
20289 (Fload): Use them to warn about old style backquotes.
20290 (end_of_file_error, Fload): Remove unused vars.
20291
20292 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
20293
20294 * lread.c (Vold_style_backquotes): New var.
20295 (syms_of_lread): Init and export it to Elisp.
20296 (read1): Set it when we find an old-style (back)quote.
20297
20298 2007-08-22 Jason Rumney <jasonr@gnu.org>
20299
20300 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
20301
20302 2007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
20303
20304 * puresize.h (BASE_PURESIZE): Increase to 1140000.
20305
20306 2007-08-19 Richard Stallman <rms@gnu.org>
20307
20308 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
20309
20310 2007-08-19 Andreas Schwab <schwab@suse.de>
20311
20312 * alloc.c (pure): Round PURESIZE up.
20313
20314 2007-08-17 Jan Djärv <jan.h.d@swipnet.se>
20315
20316 * xterm.c (handle_one_xevent): Remove check that mouse click is in
20317 active frame.
20318
20319 2007-08-16 Richard Stallman <rms@gnu.org>
20320
20321 * eval.c (Fcommandp): Add parens to clarify.
20322
20323 * minibuf.c (Fall_completions): Use enum for type of table.
20324
20325 * emacs.c (USAGE2): Improve text.
20326
20327 2007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
20328
20329 * term.c (tty_default_color_capabilities): Declare static
20330 variables in file scope, to avoid HPUX compiler problem.
20331
20332 2007-08-13 Jan Djärv <jan.h.d@swipnet.se>
20333
20334 * gtkutil.c (update_frame_tool_bar): Use -1 as index
20335 to gtk_toolbar_insert.
20336
20337 2007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
20338
20339 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
20340
20341 * insdel.c (reset_var_on_error): New fun.
20342 (signal_before_change, signal_after_change):
20343 Use it to reset (after|before)-change-functions to nil in case of error.
20344 Bind inhibit-modification-hooks to t.
20345 Don't bind (after|before)-change-functions to nil while they run.
20346
20347 2007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20348
20349 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
20350 filling pixmap with stippled background.
20351
20352 2007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20353
20354 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
20355 Don't use invisible frame as parent window for repositioning.
20356
20357 2007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
20358
20359 * print.c (new_backquote_output): Rename from old_backquote_output.
20360 (print): Inverse its logic (according to its name) so as to match the
20361 behavior of new_backquote_flag in lread.c.
20362
20363 2007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20364
20365 * gmalloc.c (posix_memalign): New function.
20366
20367 * macterm.c (frame_highlight, frame_unhighlight): Don't call
20368 ActivateControl/DeactivateControl here.
20369 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
20370 frame-notice-user-settings is non-nil.
20371 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
20372 for kEventParamFMFontStyle.
20373 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
20374 mac_pass_command_to_system and mac_pass_control_to_system here.
20375 (XTread_socket): Call ActivateControl/DeactivateControl here.
20376 (XTread_socket) [TARGET_API_MAC_CARBON]:
20377 Check mac_pass_command_to_system and mac_pass_control_to_system here.
20378 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
20379 for window repositioning.
20380
20381 2007-08-08 Glenn Morris <rgm@gnu.org>
20382
20383 * Replace `iff' in doc-strings and comments.
20384
20385 2007-08-07 Chong Yidong <cyd@stupidchicken.com>
20386
20387 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
20388
20389 2007-08-07 Martin Rudalics <rudalics@gmx.at>
20390
20391 * fileio.c (Finsert_file_contents): Run format-decode and
20392 after_insert_file_functions on entire buffer when REPLACE is
20393 non-nil and inhibit modification_hooks and point_motion_hooks.
20394 For consistency, run after_insert_file_functions iff something
20395 got inserted. Move signal_after_change and update_compositions
20396 after code running after_insert_file_functions. Make sure that
20397 undo_list doesn't record intermediate steps of the decoding process.
20398
20399 2007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20400
20401 * emacs.c (main)
20402 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
20403 Call malloc_enable_thread on interactive startup.
20404
20405 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
20406 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
20407 [USE_PTHREAD]: Conditionalize with it.
20408 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
20409 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
20410 New functions.
20411
20412 2007-08-06 Chong Yidong <cyd@stupidchicken.com>
20413
20414 * xdisp.c (redisplay_window): When restoring original buffer
20415 position, make sure it is still valid.
20416
20417 * image.c (png_load): Ignore png-supplied background color.
20418
20419 2007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20420
20421 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
20422 Use kCFAbsoluteTimeIntervalSince1970.
20423
20424 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
20425 New variable.
20426 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
20427 event loop should be quit.
20428 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
20429 Quit dialog event loop if quit_dialog_event_loop is set.
20430
20431 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
20432 (Selection): New typedef. Use instead of ScrapRef.
20433 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
20434 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
20435 (mac_clear_selection): Rename from clear_scrap.
20436 (get_flavor_type_from_symbol): New argument SEL and subsume function of
20437 scrap_has_target_type. All uses changed.
20438 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
20439 (mac_selection_has_target_p): New functions.
20440 (mac_put_selection_value): Rename from put_scrap_string.
20441 (mac_get_selection_value): Rename from get_scrap_string.
20442 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
20443 (put_scrap_private_timestamp, scrap_has_target_type)
20444 (get_scrap_private_timestamp): Remove functions.
20445 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
20446 (x_own_selection, x_get_local_selection):
20447 Use mac_valid_selection_value_p.
20448 (x_own_selection): Don't use put_scrap_private_timestamp.
20449 Record OWNERSHIP-INFO into Vselection_alist instead.
20450 (x_get_local_selection): Don't check type if request is local.
20451 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
20452 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
20453
20454 2007-08-04 Jan Djärv <jan.h.d@swipnet.se>
20455
20456 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
20457 add comment explaining why.
20458
20459 2007-08-03 Richard Stallman <rms@gnu.org>
20460
20461 * fileio.c (Fvisited_file_modtime): Use make_time.
20462
20463 2007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
20464
20465 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
20466 build.
20467
20468 2007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
20469
20470 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
20471
20472 2007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
20473
20474 * puresize.h (BASE_PURESIZE): Increase to 1130000.
20475
20476 2007-07-30 Richard Stallman <rms@gnu.org>
20477
20478 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
20479
20480 2007-07-29 Jan Djärv <jan.h.d@swipnet.se>
20481
20482 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
20483
20484 2007-07-28 Nick Roberts <nickrob@snap.net.nz>
20485
20486 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
20487 remote default-directory.
20488
20489 * buffer.c (mode-line-format): Update doc string.
20490
20491 2007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20492
20493 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
20494 scroll bar gap.
20495 (x_scroll_bar_create): Set bar->fringe_extended_p.
20496 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
20497 on frame edge. Check fringe background extension. Don't clear
20498 extended fringe background area.
20499
20500 * w32term.h (struct scroll_bar): New member fringe_extended_p.
20501 (w32_fill_area): Enclose multiple statements with do ... while (0).
20502
20503 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
20504 Extend fringe background to scroll bar gap.
20505 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
20506 Set bar->fringe_extended_p.
20507 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20508 Put leftmost/rightmost scroll bars on frame edge. Check fringe
20509 background extension. Don't clear extended fringe background area.
20510
20511 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20512 New member fringe_extended_p.
20513
20514 2007-07-25 Glenn Morris <rgm@gnu.org>
20515
20516 * Relicense all FSF files to GPLv3 or later.
20517
20518 * COPYING: Switch to GPLv3.
20519
20520 2007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
20521
20522 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
20523
20524 * data.c (Finteractive_form): Check for the presence of an
20525 `interactive-form' symbol property more thoroughly.
20526
20527 * data.c (Finteractive_form): Use an `interactive-form' property if
20528 present, analogous to the function-documentation property.
20529
20530 2007-07-24 Jason Rumney <jasonr@gnu.org>
20531
20532 * w32fns.c (x_real_positions): Get real position from OS instead of
20533 calculating it.
20534
20535 2007-07-23 Jason Rumney <jasonr@gnu.org>
20536
20537 * filelock.c (current_lock_owner): Allow for @ sign in username.
20538
20539 2007-07-22 Nick Roberts <nickrob@snap.net.nz>
20540
20541 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
20542 remote default-directory.
20543
20544 * buffer.c (mode-line-format): Describe above case in doc string.
20545
20546 2007-07-20 Eli Zaretskii <eliz@gnu.org>
20547
20548 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
20549 Define if not defined.
20550
20551 2007-07-18 Jason Rumney <jasonr@gnu.org>
20552
20553 * w32proc.c (w32_executable_type): Handle 64 bit executables.
20554
20555 2007-07-18 Richard Stallman <rms@gnu.org>
20556
20557 * data.c (Fsetq_default): Doc fix.
20558
20559 * eval.c (Fsetq): Doc fix.
20560
20561 2007-07-18 Juanma Barranquero <lekktu@gmail.com>
20562
20563 * coding.c (Ffind_operation_coding_system):
20564 * eval.c (For, Fand): Doc fixes.
20565 Reported by Johan Bockgård.
20566
20567 2007-07-18 Jan Djärv <jan.h.d@swipnet.se>
20568
20569 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
20570
20571 * xterm.h: Declare x_ewmh_activate_frame.
20572
20573 * xterm.c (x_ewmh_activate_frame): New function.
20574 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
20575
20576 2007-07-17 Martin Rudalics <rudalics@gmx.at>
20577
20578 * window.c (Fdisplay_buffer): If largest or LRU window is the
20579 only window, split it even if it is not eligible for splitting.
20580 This restores the original behavior broken by the 2007-07-15
20581 change.
20582
20583 2007-07-17 Glenn Morris <rgm@gnu.org>
20584
20585 * abbrev.c (abbrev_check_chars): New function.
20586 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20587 Call abbrev_check_chars to check abbrev characters are word
20588 constituents. Doc fix.
20589
20590 2007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
20591
20592 * process.c (Fstart_process, Fmake_network_process)
20593 (read_process_output): Fix up last changes.
20594
20595 2007-07-16 Eli Zaretskii <eliz@gnu.org>
20596
20597 * makefile.w32-in (clean): Don't delete *~.
20598
20599 2007-07-16 Andreas Schwab <schwab@suse.de>
20600
20601 * window.c (Fdisplay_buffer): Use NILP.
20602 (Fset_window_scroll_bars): Likewise.
20603
20604 2007-07-15 Martin Rudalics <rudalics@gmx.at>
20605
20606 * window.c (window_min_size_2): New function.
20607 (window_min_size_1, size_window, Fdisplay_buffer)
20608 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
20609 windows without mode- or header-lines when window-min-height is
20610 too small.
20611 (size_window): Reset nodelete_p after testing it, following an
20612 earlier note by Kim F. Storm.
20613 (display_buffer): Do not set split_height_threshold to twice the
20614 value of window_min_height to avoid changing the value of a
20615 customizable variable. Rather explicitly check whether the
20616 height of the window that shall be splitted is at least as large
20617 as split_height_threshold.
20618 (Fwindow_full_width_p): New defun.
20619 (syms_of_window): Defsubr it.
20620
20621 * window.h: Add EXFUN for Fwindow_full_width_p.
20622
20623 2007-07-14 Jason Rumney <jasonr@gnu.org>
20624
20625 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
20626
20627 2007-07-14 Richard Stallman <rms@gnu.org>
20628
20629 * eval.c (maybe_call_debugger): New function.
20630 (find_handler_clause): Use maybe_call_debugger.
20631 Call it when the handler says `debug'.
20632 Eliminate DEBUGGER_VALUE_PTR.
20633 (Fsignal): Eliminate debugger_value.
20634 (Qdebug): New variable.
20635 (syms_of_eval): Initialize it.
20636
20637 2007-07-14 Juanma Barranquero <lekktu@gmail.com>
20638
20639 * eval.c (Fprogn):
20640 * keyboard.c (Ftrack_mouse):
20641 * print.c (Fwith_output_to_temp_buffer):
20642 * window.c (Fsave_window_excursion): Doc fix.
20643
20644 2007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
20645
20646 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
20647
20648 2007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
20649
20650 * process.h (struct Lisp_Process): Turn slots infd, outfd,
20651 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
20652 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
20653 read_output_delay, and read_output_skip from Lisp_Objects to ints.
20654 Remove unused encoding_carryover.
20655 * process.c: Adjust all functions accordingly.
20656
20657 2007-07-12 Richard Stallman <rms@gnu.org>
20658
20659 * term.c: Include unistd.h only if HAVE_UNISTD_H.
20660
20661 2007-07-11 Jason Rumney <jasonr@gnu.org>
20662
20663 * makefile.w32-in (LIBS): Include OLE32.
20664
20665 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
20666 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
20667
20668 2007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
20669
20670 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
20671 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
20672 from a Lisp_Object into a bare pointer.
20673 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
20674 Adjust the code correspondingly.
20675
20676 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
20677
20678 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
20679 (term_show_mouse_face): Remove unused var `j'.
20680 (handle_one_term_event): Remove unused vars `i' and `j'.
20681 Don't cast return value of ttyname since it's not necessary.
20682
20683 2007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
20684
20685 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
20686 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
20687
20688 * fns.c (map_char_table): Use an array of int for `indices' rather than
20689 an array of Lisp_Objects (which are only ever integers anyway).
20690 (Fmap_char_table): Update caller.
20691 * lisp.h: Update prototype.
20692 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
20693 * fontset.c (Ffontset_info):
20694 * casetab.c (set_case_table): Update callers.
20695
20696 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
20697
20698 * keymap.c (struct accessible_keymaps_data)
20699 (struct where_is_internal_data): New structures.
20700 (accessible_keymaps_1, where_is_internal_1): Use them to change
20701 interface to adhere to the one used by map_keymap.
20702 (Faccessible_keymaps, where_is_internal): Use map_keymap.
20703 (accessible_keymaps_char_table, where_is_internal_2): Remove.
20704
20705 * keymap.h (map_keymap_function_t): More informative prototype.
20706
20707 2007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
20708
20709 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
20710 (looking_at_1): Don't change search_regs and last_thing_searched
20711 if `inhibit-changing-match-data' is non-nil.
20712 (string_match_1, search_buffer, set_search_regs): Likewise.
20713 (syms_of_search): Add Lisp level definition for
20714 `inhibit-changing-match-data' and set it to nil.
20715 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
20716 start and end of the match, instead of using values in search_regs.
20717
20718 2007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
20719
20720 * minibuf.c (Fcompleting_read): New value `confirm-only'
20721 for `require-match'.
20722
20723 2007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
20724
20725 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
20726 part of the 2007-06-27 change to syms_of_fileio.
20727
20728 2007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20729
20730 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
20731 Check WINDOWP before using XWINDOW. Consolidate return statements.
20732
20733 2007-06-27 Richard Stallman <rms@gnu.org>
20734
20735 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
20736
20737 2007-06-27 Juanma Barranquero <lekktu@gmail.com>
20738
20739 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
20740
20741 2007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20742
20743 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
20744 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
20745 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
20746 (_free_internal, memalign): Use them.
20747 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
20748 Initialize to PTHREAD_MUTEX_INITIALIZER.
20749 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
20750 (morecore_nolock): Rename from morecore. All uses changed.
20751 Use only nolock versions of internal allocation functions.
20752 (_malloc_internal_nolock, _realloc_internal_nolock)
20753 (_free_internal_nolock): New functions created from
20754 _malloc_internal, _realloc_internal, and _free_internal.
20755 (_malloc_internal, _realloc_internal, _free_internal): Use them.
20756 Copy hook value to automatic variable before its use.
20757 (memalign): Copy hook value to automatic variable before its use.
20758
20759 2007-06-26 Kenichi Handa <handa@m17n.org>
20760
20761 * coding.c (Ffind_operation_coding_system): Docstring improved.
20762 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
20763
20764 2007-06-25 David Kastrup <dak@gnu.org>
20765
20766 * keymap.c (Fcurrent_active_maps): Add `position' argument.
20767 (Fwhere_is_internal): Adjust call to `current-active-maps' to
20768 cater for additional parameter.
20769
20770 * keymap.h: Adjust number of parameters to `current-active-maps'.
20771
20772 * doc.c (Fsubstitute_command_keys): Adjust call of
20773 `current-active-maps'.
20774
20775 2007-06-25 David Kastrup <dak@gnu.org>
20776
20777 * callint.c (Fcall_interactively): Make the parsing of interactive
20778 specs somewhat more readable.
20779
20780 2007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20781
20782 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
20783 to scroll bar gap also when bitmap fills fringe. Draw only foreground
20784 if extended background has already been filled.
20785
20786 2007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20787
20788 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
20789 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
20790
20791 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
20792 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
20793 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
20794 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
20795 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
20796 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
20797 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
20798 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
20799 Run timers during dialog popup.
20800 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
20801
20802 2007-06-21 Jason Rumney <jasonr@gnu.org>
20803
20804 * image.c (convert_mono_to_color_image): Swap fore and background.
20805
20806 2007-06-20 Jason Rumney <jasonr@gnu.org>
20807
20808 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
20809 (w32_free_bdf_font): Unmap memory not handle.
20810
20811 2007-06-20 Sam Steingold <sds@gnu.org>
20812
20813 * gmalloc.c (__morecore): Fix the declaration to comply with the
20814 definition.
20815
20816 2007-06-20 Juanma Barranquero <lekktu@gmail.com>
20817
20818 * w32term.c (w32_delete_display): Remove leftover declaration.
20819 (w32_define_cursor, w32_initialize): Make static.
20820
20821 * w32.c (_wsa_errlist): Fix typo in error message.
20822 (init_environment): Ignore any environment variable from the
20823 registry having a null value.
20824
20825 2007-06-20 Glenn Morris <rgm@gnu.org>
20826
20827 * Makefile.in (LIBGIF): Default to -lgif.
20828
20829 2007-06-17 Jason Rumney <jasonr@gnu.org>
20830
20831 * w32menu.c (add_menu_item): Don't use multibyte string functions on
20832 unicode strings.
20833
20834 2007-06-16 Juanma Barranquero <lekktu@gmail.com>
20835
20836 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
20837 Fix typo in docstring.
20838
20839 2007-06-16 Eli Zaretskii <eliz@gnu.org>
20840
20841 * w32menu.c (add_menu_item): Escape `&' characters in menu items
20842 and their keybindings.
20843
20844 2007-06-15 Chong Yidong <cyd@stupidchicken.com>
20845
20846 * composite.c (update_compositions): Fix last fix.
20847
20848 2007-06-14 Jason Rumney <jasonr@gnu.org>
20849
20850 * w32.c (get_process_times_fn): New function pointer.
20851 (globals_of_w32): Intialize it if present in kernel32.dll.
20852 (w32_get_internal_run_time): New function.
20853
20854 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
20855
20856 2007-06-14 Kenichi Handa <handa@etlken.m17n.org>
20857
20858 * composite.c (update_compositions): Check the validness of
20859 compositions.
20860
20861 2007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20862
20863 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
20864 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
20865
20866 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
20867 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
20868
20869 * macgui.h (USE_MAC_TOOLBAR): New define.
20870
20871 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20872 Return immediately unless popup is activated.
20873
20874 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
20875 background to scroll bar gap.
20876 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
20877 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
20878 scroll bars on frame edge. Check fringe background extension.
20879 Don't clear extended fringe background area.
20880 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
20881 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
20882 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
20883 [USE_MAC_TOOLBAR]: New macros.
20884 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
20885 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
20886 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
20887 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
20888 [USE_MAC_TOOLBAR]: New functions.
20889 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
20890 manually if previous repositioning has failed.
20891 (mac_handle_keyboard_event): Use precomputed event kind.
20892 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
20893 as tool bar item click. Handle mouse movement over tool bar items.
20894
20895 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
20896 toolbar_win_gravity.
20897 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
20898 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
20899 Add externs.
20900
20901 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
20902 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
20903
20904 2007-06-14 Chong Yidong <cyd@stupidchicken.com>
20905
20906 * image.c (search_image_cache): Remove unused variable.
20907
20908 2007-06-13 Chong Yidong <cyd@stupidchicken.com>
20909
20910 * xfns.c, xmenu.c: Link to xaw3d if available.
20911
20912 2007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20913
20914 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
20915 frame_foreground and frame_background.
20916
20917 * image.c (lookup_image): Save frame foreground and background colors.
20918 (search_image_cache): Check if saved and current frame colors match.
20919
20920 2007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
20921
20922 * regex.c (regex_compile): Remove the `regnum' counter.
20923 Use bufp->re_nsub instead. Add support for \(?N:RE\).
20924
20925 2007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
20926
20927 * term.c: Include intervals.h to declare Fget_text_property.
20928
20929 2007-06-10 Jason Rumney <jasonr@gnu.org>
20930
20931 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
20932
20933 2007-06-08 Juanma Barranquero <lekktu@gmail.com>
20934
20935 * callint.c (Fcall_interactively):
20936 * editfns.c (Fdelete_and_extract_region):
20937 * fileio.c (Fread_file_name):
20938 * fns.c (Fmapconcat):
20939 * keyboard.c (cmd_error_internal):
20940 * keymap.c (Fkey_description):
20941 * lread.c (openp):
20942 * minibuf.c (read_minibuf):
20943 * search.c (wordify):
20944 * sunfns.c (sel_read):
20945 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
20946 * xfns.c (x_default_scroll_bar_color_parameter):
20947 * xmenu.c (menu_help_callback):
20948 * xselect.c (Fx_get_atom_name):
20949 * xterm.c (x_term_init): Use empty_unibyte_string.
20950
20951 2007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
20952
20953 * alloc.c (init_strings): Initialize canonical empty strings.
20954 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
20955 canonical empty string when the requested size is 0.
20956
20957 * emacs.c (empty_unibyte_string): Rename from empty_string.
20958 (empty_multibyte_string): New canonical empty string.
20959 (syms_of_emacs): Don't initialize empty_string.
20960
20961 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
20962 string, if appropriate.
20963 (empty_unibyte_string, empty_multibyte_string): New externs.
20964 (empty_string): Remove extern.
20965
20966 * lread.c (syms_of_lread): Use empty_unibyte_string.
20967
20968 2007-06-07 Jason Rumney <jasonr@gnu.org>
20969
20970 * s/ms-w32.h: Don't define HAVE_TZNAME.
20971
20972 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
20973
20974 2007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20975
20976 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
20977
20978 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
20979 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
20980
20981 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20982 Don't call next handler.
20983 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
20984 Remove argument. Install handler to application.
20985 (set_frame_menubar): Don't change deep_p.
20986 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
20987 FRAME_OUTER_TO_INNER_DIFF_Y.
20988 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
20989 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
20990 [HAVE_DIALOGS]: New macros.
20991 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
20992 Use them.
20993 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
20994
20995 * macselect.c [MAC_OSX] (install_service_handler): Rename from
20996 init_service_handler. All callers changed. Return OSStatus value.
20997
20998 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
20999 All callers changed so as not to call SetPortWindowPort.
21000 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
21001 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
21002 mac_draw_string_common.
21003 (mac_draw_image_string_qd): Likewise.
21004 (mac_draw_string_common): Use them. Add INLINE.
21005 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
21006 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
21007 GetGlobalMouse.
21008 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
21009 and FRAME_OUTER_TO_INNER_DIFF_Y.
21010 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
21011 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
21012 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
21013 repositioning window to mac_handle_window_event.
21014 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
21015 saving window location to mac_handle_window_event
21016 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
21017 (install_menu_target_item_handler): Remove argument in extern.
21018 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
21019 Also accept command events.
21020 (do_keystroke): New function created from XTread_socket.
21021 (init_command_handler): Remove functions.
21022 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
21023 and save window location by kEventWindowShowing and kEventWindowHiding
21024 handlers here. Don't call next handler for window state change and
21025 focus events.
21026 (mac_handle_application_event, mac_handle_keyboard_event)
21027 [TARGET_API_MAC_CARBON]: New functions.
21028 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
21029 kEventWindowShowing and kEventWindowHiding events. Move installation
21030 of mouse, font, text input and menu target item handlers to
21031 install_application_handler.
21032 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
21033 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
21034 New function.
21035 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
21036 Register it.
21037 (XTread_socket) [TARGET_API_MAC_CARBON]:
21038 Consolidate SendEventToEventTarget calls.
21039 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
21040 Move application activation handler to mac_handle_application_event.
21041 Move keyboard handler to mac_handle_keyboard_event.
21042 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
21043 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
21044 init_command_handler. Call install_application_handler.
21045
21046 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
21047 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
21048
21049 2007-06-07 Glenn Morris <rgm@gnu.org>
21050
21051 * emacs.c (main): Use `emacs-copyright' in --version output.
21052
21053 2007-06-06 Chong Yidong <cyd@stupidchicken.com>
21054
21055 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
21056
21057 2007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21058
21059 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
21060
21061 * macgui.h: Replace WindowPtr with WindowRef.
21062
21063 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
21064 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
21065 Replace ControlHandle with ControlRef.
21066 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
21067
21068 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
21069 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
21070 Replace ControlHandle with ControlRef.
21071 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
21072 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
21073
21074 * macterm.h (struct scroll_bar): Rename member control_handle_low
21075 and control_handle_high to control_ref_low and control_ref_high.
21076 All uses changed.
21077 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
21078 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
21079 respectively. All uses changed.
21080 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
21081 (install_window_handler, remove_window_handler): Replace WindowPtr
21082 with WindowRef in externs.
21083
21084 2007-06-05 Juanma Barranquero <lekktu@gmail.com>
21085
21086 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
21087
21088 2007-06-03 Nick Roberts <nickrob@snap.net.nz>
21089
21090 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
21091
21092 * frame.c (Fmouse_position, Fmouse_pixel_position):
21093 Condition on HAVE_GPM too.
21094
21095 * term.c (term_mouse_highlight): Remove unused variables.
21096 (Fterm_open_connection): Set gpm_zerobased to 1.
21097 (term_mouse_movement, term_mouse_click, handle_one_term_event):
21098 Use zero based co-ordinates.
21099 (handle_one_term_event): Report a drag as mouse movement too.
21100
21101 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
21102
21103 2007-06-03 Chong Yidong <cyd@stupidchicken.com>
21104
21105 * image.c (search_image_cache): New function. Require background
21106 color match if background color is unspecified in the image spec.
21107 (uncache_image, lookup_image): Use it.
21108
21109 2007-06-01 Juanma Barranquero <lekktu@gmail.com>
21110
21111 * window.c (Fshrink_window): Reflow docstring.
21112
21113 2007-06-02 Chong Yidong <cyd@stupidchicken.com>
21114
21115 * Version 22.1 released.
21116
21117 2007-06-01 Richard Stallman <rms@gnu.org>
21118
21119 * xfns.c (x_encode_text): Add GCPRO.
21120
21121 2007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21122
21123 * xfns.c (x_set_name_internal): Save encoded name before
21124 x_encode_text in case string data is relocated.
21125
21126 2007-05-31 Richard Stallman <rms@gnu.org>
21127
21128 * buffer.c (syms_of_buffer): Doc fix.
21129
21130 2007-05-30 Nick Roberts <nickrob@snap.net.nz>
21131
21132 * sysdep.c (init_sys_modes): Add rather than replace with
21133 O_NONBLOCK.
21134
21135 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
21136 term_mouse_moveto.
21137
21138 * termhooks.h (term_mouse_moveto): New extern.
21139
21140 * term.c (mouse_face_window): Rename...
21141 (Qmouse_face_window): ...to this.
21142 (term_show_mouse_face, term_clear_mouse_face)
21143 (term_mouse_highlight): Use Qmouse_face_window.
21144 (term_mouse_moveto): New function.
21145 (term_mouse_position): Make it work.
21146 (syms_of_term): Uncomment assignment to mouse_position_hook.
21147 Staticpro Qmouse_face_window.
21148
21149 2007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21150
21151 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
21152 around current_column call.
21153
21154 2007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
21155
21156 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
21157 * xdisp.c (next_element_from_buffer):
21158 * window.c (delete_window):
21159 * term.c (term_mouse_highlight):
21160 * msdos.c (getdefdir):
21161 * macterm.c (mac_create_bitmap_from_bitmap_data)
21162 (init_font_name_table):
21163 * fns.c (Fsxhash):
21164 * data.c (Fmake_local_variable):
21165 * ccl.c (ccl_driver): Likewise.
21166
21167 2007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21168
21169 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
21170 Call mac_wakeup_from_rne on window size change.
21171
21172 2007-05-25 Chong Yidong <cyd@stupidchicken.com>
21173
21174 * image.c (uncache_image): Fix typo.
21175
21176 2007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
21177
21178 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
21179
21180 2007-05-22 Richard Stallman <rms@gnu.org>
21181
21182 * xterm.c (x_connection_closed): Remove NO_RETURN.
21183
21184 2007-05-22 Martin Rudalics <rudalics@gmx.at>
21185
21186 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
21187
21188 2007-05-21 Chong Yidong <cyd@stupidchicken.com>
21189
21190 * image.c (uncache_image): New function.
21191 (Fimage_refresh): New function.
21192
21193 2007-05-20 Jan Djärv <jan.h.d@swipnet.se>
21194
21195 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
21196
21197 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
21198
21199 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
21200 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
21201
21202 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
21203
21204 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
21205 conditional on [HAVE_GPM_H].
21206
21207 2007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
21208
21209 * syntax.c (skip_chars): Update syntax-table only after we checked that
21210 the new location is valid.
21211
21212 2007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21213
21214 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
21215 mac_get_window_bounds.
21216
21217 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
21218
21219 * Makefile.in (LIBGPM): Allow it to be set from configure.
21220 If set then link Emacs with it.
21221
21222 * config.in: Regenerate.
21223
21224 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
21225 New externs.
21226
21227 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
21228 Include gpm.h.
21229 (handle_one_term_event, term_gpm): New externs.
21230
21231 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
21232 and allow it to be interrupted by SIGIO.
21233
21234 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
21235 (wait_reading_process_output): Wait on gpm_fd too.
21236 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
21237 (add_gpm_wait_descriptor_called_flag): New variable.
21238 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
21239
21240 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
21241 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
21242 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
21243 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
21244 (make_lispy_event): Add case GPM_CLICK_EVENT.
21245 (read_avail_input): Handle mouse input.
21246
21247 * term.c (write_glyphs_with_face): New function.
21248 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
21249 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
21250 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
21251 (mouse_face_face_id, term_gpm, pos_x, pos_y)
21252 (last_mouse_x, last_mouse_y): New variables.
21253 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
21254 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
21255 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
21256 (Fterm_close_connection): New functions.
21257 (term_init): Initialise mouse_face_window.
21258
21259 2007-05-19 Chong Yidong <cyd@stupidchicken.com>
21260
21261 * xdisp.c (redisplay_window): If first window line is a
21262 continuation line, recompute the new window start instead of
21263 recentering.
21264
21265 2007-05-18 Glenn Morris <rgm@gnu.org>
21266
21267 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
21268 Suggested by Alfred M. Szmidt <ams@gnu.org>.
21269
21270 2007-05-17 Glenn Morris <rgm@gnu.org>
21271
21272 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
21273
21274 2007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21275
21276 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
21277 dead key repeat and up events.
21278
21279 2007-05-14 Chong Yidong <cyd@stupidchicken.com>
21280
21281 * image.c (pbm_load): Check image size for monochrome pbm.
21282
21283 2007-05-13 Chong Yidong <cyd@stupidchicken.com>
21284
21285 * xterm.c (XTread_socket): Revert last change.
21286
21287 2007-05-12 Chong Yidong <cyd@stupidchicken.com>
21288
21289 * image.c (pbm_load): Correctly check image size for greyscale pbm.
21290
21291 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
21292
21293 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21294
21295 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
21296 mixup (YAILOM).
21297
21298 2007-05-07 Andreas Schwab <schwab@suse.de>
21299
21300 * keymap.c (Flookup_key): Fix typo in last change.
21301
21302 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21303
21304 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
21305 mapping for unibyte strings.
21306
21307 2007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21308
21309 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
21310 (Fx_popup_dialog) [MAC_OSX]: Likewise.
21311
21312 2007-04-29 Richard Stallman <rms@gnu.org>
21313
21314 * insdel.c (replace_range): For undo, record insertion first.
21315
21316 2007-04-29 Andreas Schwab <schwab@suse.de>
21317
21318 * lisp.h (VECSIZE): Use OFFSETOF.
21319
21320 2007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21321
21322 * xdisp.c (try_window_reusing_current_matrix): Fix number of
21323 disabled lines.
21324
21325 2007-04-28 Richard Stallman <rms@gnu.org>
21326
21327 * lread.c (read_escape): In a string, \s is always space.
21328
21329 2007-04-27 Jan Djärv <jan.h.d@swipnet.se>
21330
21331 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
21332
21333 * gtkutil.c (xg_update_menubar, create_menus): Create empty
21334 submenu for menu bar items.
21335
21336 See ChangeLog.10 for earlier changes.
21337
21338 ;; Local Variables:
21339 ;; coding: utf-8
21340 ;; add-log-time-zone-rule: t
21341 ;; End:
21342
21343 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
21344
21345 This file is part of GNU Emacs.
21346
21347 GNU Emacs is free software: you can redistribute it and/or modify
21348 it under the terms of the GNU General Public License as published by
21349 the Free Software Foundation, either version 3 of the License, or
21350 (at your option) any later version.
21351
21352 GNU Emacs is distributed in the hope that it will be useful,
21353 but WITHOUT ANY WARRANTY; without even the implied warranty of
21354 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21355 GNU General Public License for more details.
21356
21357 You should have received a copy of the GNU General Public License
21358 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
21359
21360 ;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40