* font.c (syms_of_font): Make the style table vars read-only.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
b4bf28b7
SM
12010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
2
933ac235
SM
3 * font.c (syms_of_font): Make the style table vars read-only.
4
b4bf28b7
SM
5 * buffer.h (struct buffer): Remove unused var `direction_reversed'.
6 * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
7
8 * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
9
93d68d0c
EZ
102010-04-20 Eli Zaretskii <eliz@gnu.org>
11
12 Fix R2L paragraph display on TTY.
13
14 * xdisp.c (unproduce_glyphs): New function.
15 (display_line): Use it when produced glyphs are discarded from R2L
16 glyph rows.
17 (append_composite_glyph): In R2L rows, prepend the glyph rather
18 than appending it.
19
20 * term.c (append_composite_glyph): In R2L rows, prepend the glyph
21 rather than append it. Set up the resolved_level and bidi_type
22 attributes of the appended glyph.
283ccc18
EZ
23 (produce_special_glyphs): Mirror the backslash continuation
24 character in R2L lines.
93d68d0c 25
283ccc18 26 Implement display of R2L paragraphs in GUI sessions.
26cdf528 27
283ccc18
EZ
28 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
29 append_stretch_glyph.
30 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix
31 off-by-one error in computing x at end of text in the row.
32 (append_stretch_glyph): In reversed row, prepend the glyph rather
33 than append it. Set resolved_level and bidi_type of the glyph.
34 (extend_face_to_end_of_line): If the row is reversed, prepend a
35 stretch glyph whose width is such that the rightmost glyph will be
36 drawn at the right margin of the window. Fix off-by-one error on
37 TTY frames in testing whether a line needs face extension. Fix
38 face extension at ZV. If this is the last glyph row, use
39 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
40 region face.
41 (set_cursor_from_row, display_line): Use
26cdf528
EZ
42 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
43 row->continuation_lines_width.
283ccc18
EZ
44 (next_element_from_buffer): Don't call bidi_paragraph_init if we
45 are at ZV. Fixes a crash when reseated to ZV by
46 try_window_reusing_current_matrix.
45903529
EZ
47 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
48 which happens with R2L glyph rows. Fixes a crash when inserting a
49 character at end of an R2L line.
283ccc18
EZ
50 (set_cursor_from_row): Don't be fooled by truncated rows: don't
51 treat them as having zero-width characters. Improve comments.
52 Don't reverse pos_before and pos_after for reversed glyph rows.
53 Set cursor.x to negative value when the cursor might be on the
54 left fringe.
55 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
56 left fringe, not the right one.
f951a506
EZ
57 (notice_overwritten_cursor, draw_phys_cursor_glyph)
58 (erase_phys_cursor): For reversed cursor_row, support cursor on
59 the left fringe.
60
283ccc18
EZ
61 * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
62 of continuation indicators on the fringes.
63 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
64 left fringe.
65
f951a506
EZ
66 * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
67 draw cursor on the left fringe.
68
69 * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
70 cursor on the left fringe.
71
f951a506
EZ
72 * dispnew.c (update_text_area): Handle reversed desired rows when
73 the cursor is on the left fringe.
74 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
75 below, not by 0, for when the cursor is on the left fringe.
76
3bb49aaf
JD
772010-04-20 Jan Djärv <jan.h.d@swipnet.se>
78
79 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed
80 widget is a scrollbar.
81
c0be27fd
KH
822010-04-20 Kenichi Handa <handa@m17n.org>
83
84 * charset.c (char_charset): Consider Vcharset_non_preferred_head
85 only when the arg CHARSET_LIST is nil.
86
ce5b453a
SM
872010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
88
89 Make variable forwarding explicit rather the using special values.
90 Basically, this makes the structure of buffer-local values and object
91 forwarding explicit in the type of Lisp_Symbols rather than use
92 special Lisp_Objects for that. This tends to lead to slightly more
93 verbose code, but is more C-like, simpler, and makes it easier to make
94 sure we handled all cases, among other things by letting the compiler
95 help us check it.
96 * lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
97 Removing forwarding objects.
98 (enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
99 (struct Lisp_Symbol): Make the various forms of variable-forwarding
100 explicit rather than hiding them inside Lisp_Object "values".
101 (XFWDTYPE): New macro.
102 (XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
103 (XBUFFER_LOCAL_VALUE): Remove.
104 (SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
105 (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
106 (SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
107 (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
108 (struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
109 Remove the Lisp_Misc_* header.
110 (struct Lisp_Buffer_Local_Value): Redefine.
111 (BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
112 (struct Lisp_Misc_Any): Add filler to get the right size.
113 (struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
114 Lisp_Intfwd.
115 (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
116 (DEFVAR_KBOARD): Allocate a forwarding object.
117 * data.c (do_blv_forwarding, store_blv_forwarding): New macros.
118 (let_shadows_global_binding_p): New function.
119 (union Lisp_Val_Fwd): New type.
120 (make_blv): New function.
121 (swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
122 (store_symval_forwarding, swap_in_global_binding, Fboundp)
123 (swap_in_symval_forwarding, find_symbol_value, Fset)
124 (let_shadows_buffer_binding_p, set_internal, default_value)
125 (Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
126 (Fkill_local_variable, Fmake_variable_frame_local)
127 (Flocal_variable_p, Flocal_variable_if_set_p)
128 (Fvariable_binding_locus):
129 * xdisp.c (select_frame_for_redisplay):
130 * lread.c (Fintern, Funintern, init_obarray, defvar_int)
131 (defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
132 * frame.c (store_frame_param):
133 * eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
134 * bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
135 value structure.
136 * buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
137 (clone_per_buffer_values): Only adjust markers into the current buffer.
138 (reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
139 (Fbuffer_local_value, set_buffer_internal_1)
140 (swap_out_buffer_local_variables):
141 Adapt to the new symbol value structure.
142 (DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
143 (defvar_per_buffer): Take a new arg for the fwd object.
144 (buffer_lisp_local_variables): Return a proper alist (different fix
145 for bug#4138).
146 * alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
147 (Fgarbage_collect): Don't handle buffer_defaults specially.
148 (mark_object): Handle new symbol value structure rather than the old
149 special Lisp_Misc_* objects.
150 (gc_sweep) <symbols>: Free also the buffer-local-value objects.
151 * term.c (set_tty_color_mode):
152 * bidi.c (bidi_initialize): Don't access the ->value field directly.
153 * buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
154 a buffer_local_flags.
155 * print.c (print_object): Get rid of impossible forwarding objects.
156
fd3998ff
EZ
1572010-04-19 Eli Zaretskii <eliz@gnu.org>
158
159 * bidi.c (bidi_get_type, bidi_get_category)
160 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
ce5b453a
SM
161 (bidi_type_of_next_char, bidi_level_of_next_char):
162 Declare static. Use `INLINE' rather than `inline'.
fd3998ff 163
e42cd1a7
JB
1642010-04-19 Juanma Barranquero <lekktu@gmail.com>
165
166 * dired.c (Ffile_attributes): Fix typo in docstring.
167
6e104790 1682010-04-19 Adrian Robert <Adrian.B.Robert@gmail.com>
79353a53
AR
169
170 * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
171 NSInteger (Bug#5811).
172
6e104790 1732010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
658b9b93
YM
174
175 * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
176 (PTY_OPEN): New defines. Use openpty (Bug#726, Bug#5819).
177
6e104790 1782010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16009a0e
YM
179
180 * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
181
6e104790
SM
1822010-04-19 Jan Djärv <jan.h.d@swipnet.se>
183
184 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
185 FRAME_LINE_TO_PIXEL_Y.
186
187 * xterm.c (x_set_window_size_1): Don't add border_width/height to
188 pixelwidth/height.
189
1902010-04-19 Chong Yidong <cyd@stupidchicken.com>
191
192 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
193 terminal frames (Bug#5837).
194
37dcfea0
EZ
1952010-04-19 Eli Zaretskii <eliz@gnu.org>
196
d1da276f
EZ
197 * .gdbinit (xsubchartable): New command.
198
37dcfea0
EZ
1992010-04-19 Eli Zaretskii <eliz@gnu.org>
200
201 * xdisp.c (display_line): Don't write beyond the last glyph row in
9166b0f3 202 the desired matrix. Fixes a crash in "emacs -nw" (bug#5972), see
37dcfea0
EZ
203 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
204 and
205 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
206
e9515805
SM
2072010-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
208
209 * alloc.c (Fpurecopy): Hash-cons if requested.
210 (syms_of_alloc): Update purify-flag docstring.
211
22aa44a8
JD
2122010-04-18 Jan Djärv <jan.h.d@swipnet.se>
213
214 * gtkutil.c (xg_set_geometry): Set size in geometry string also.
215 (x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
216
ebb5722e
EZ
2172010-04-17 Eli Zaretskii <eliz@gnu.org>
218
219 Fix a crash when an NSM character is inserted at BEGV.
220
221 * bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
222 (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
223 NEUTRAL_B or UNKNOWN_BT.
224
0f4442ef
EZ
2252010-04-16 Eli Zaretskii <eliz@gnu.org>
226
227 * xdisp.c (set_cursor_from_row): Don't consider possibility of
228 other rows with cursor unless they are different from this row and
229 this row is part of a continued line. (Bug#5943)
230
7d4e45f8
DN
2312010-04-16 Dan Nicolaescu <dann@ics.uci.edu>
232
233 * s/freebsd.h: Restore osreldate.h include.
234 Suggested by Naohiro Aota.
235
5ba5ec85
J
2362010-04-16 Jan Djärv <jan.h.d@swipnet.se>
237
238 * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used.
239
20af301d
CY
2402010-04-16 Ken Brown <kbrown@cornell.edu> (tiny change)
241
242 * s/cygwin.h: Avoid linking against static libgcc.
243
a4b000fb
JL
2442010-04-15 Juri Linkov <juri@jurta.org>
245
246 * window.c: Add Qscroll_command.
247 Remove Vscroll_preserve_screen_position_commands.
248 (window_scroll_pixel_based, window_scroll_line_based): Check the
249 `scroll-command' property on the last command instead of searching
250 the last command in Vscroll_preserve_screen_position_commands.
251 (syms_of_window): Initialize and staticpro `Qscroll_command'.
252 Put Qscroll_command property on Qscroll_up and Qscroll_down.
253 (scroll-preserve-screen-position): Doc fix.
254 (Vscroll_preserve_screen_position_commands): Remove variable.
255
bc319ba4
DN
2562010-04-15 Dan Nicolaescu <dann@ics.uci.edu>
257
6bb24457
DN
258 * xdisp.c (message): Do not use NO_ARG_ARRAY.
259
19d4c244
DN
2602010-04-14 Dan Nicolaescu <dann@ics.uci.edu>
261
262 Reduce cpp use in Makefile.in.
263 * Makefile.in (DBUS_CFLAGS, DBUS_LIBS, GCONF_CFLAGS, GCONF_LIBS)
264 (LIBSOUND, CFLAGS_SOUND, RSVG_LIBS, RSVG_CFLAGS, INTERVALS_H)
265 (GETLOADAVG_LIBS, RUN_TEMACS): Move to the autoconf section.
266 (ORDINARY_LINK): Remove, defined in src/s/gnu.h.
267 (CRT0_COMPILE): Remove, inline it in the only user.
268
32129746
JL
2692010-04-14 Juri Linkov <juri@jurta.org>
270
271 * window.c (keys_of_window): Rebind `C-v' from `scroll-up' to
272 `scroll-up-command' and `M-v' from `scroll-down' to
273 `scroll-down-command'.
274
9013a7f8
JL
2752010-04-14 Juri Linkov <juri@jurta.org>
276
277 * window.c (Vscroll_preserve_screen_position_commands): New variable
278 with the default value as the list of Qscroll_down and Qscroll_up.
279 (window_scroll_pixel_based, window_scroll_line_based): Search the
280 last command in the list Vscroll_preserve_screen_position_commands
281 instead of comparing with Qscroll_up and Qscroll_down.
282
4bef8d26
JD
2832010-04-13 Jan Djärv <jan.h.d@swipnet.se>
284
92848133
JD
285 * gtkutil.c (xg_set_geometry): Set geometry for PPosition also.
286 (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry
287 does that.
288
4bef8d26
JD
289 * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width
290 to zero.
291
58b963f7
SM
2922010-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
293
84164a0d
SM
294 * term.c (init_tty): Move common text outside of #ifdef TERMINFO.
295
2b0a91e7
SM
296 Try to solve the problem of spurious EOF chars in long lines of text
297 sent to interactive subprocesses.
298 * sysdep.c (child_setup_tty): Do not enable ICANON any more.
299 (system_process_attributes): Remove unused var `ttotal'.
300 * process.c (send_process): Don't bother breaking long line with EOF
301 chars when talking to ttys any more.
302 (wait_reading_process_output): Output a warning when called in such
303 a way that it could block without being interruptible.
304
58b963f7
SM
305 Try to detect file modification within the same second.
306 * buffer.h (struct buffer): New field modtime_size.
307 * buffer.c (reset_buffer): Initialize it.
308 * fileio.c (Finsert_file_contents, Fwrite_region): Set it.
309 (Fverify_visited_file_modtime): Check it.
310 (Fclear_visited_file_modtime, Fset_visited_file_modtime): Clear it.
311 (Fset_visited_file_modtime): Set (or clear) it.
312
01f5787b
SM
3132010-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
314
315 * process.c (status_notify): Remove unused var `ro'.
316
83725342
JD
3172010-04-12 Jan Djärv <jan.h.d@swipnet.se>
318
319 * xfns.c (select_visual): Don't call error if XGetVisualInfo returns
320 more than one visual (Bug#5938).
321
b9465836
DN
3222010-04-12 Dan Nicolaescu <dann@ics.uci.edu>
323
324 * Makefile.in (C_SWITCH_SYSTEM,C_SWITCH_MACHINE,C_SWITCH_X_SITE): Undefine.
325
8d9c8ece
DN
3262010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
327
b1f52161
DN
328 Remove C_SWITCH_SYSTEM_TEMACS.
329 * s/darwin.h (C_SWITCH_SYSTEM_TEMACS): Remove.
330 (malloc, realloc, free): Use emacs, not temacs for conditional
331 definition.
332
333 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Remove.
334 (ALL_CFLAGS): Do not use C_SWITCH_SYSTEM_TEMACS.
335
8d9c8ece
DN
336 Use autoconf, not cpp for some variables.
337 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
338 (C_SWITCH_X_SITE): Define using autoconf, not cpp.
339 (ALL_CFLAGS): Use them as make variables.
340 (really-lwlib, really-oldXMenu): Do not pass them.
341
1ecb2d3f
JD
3422010-04-11 Jan Djärv <jan.h.d@swipnet.se>
343
344 * xmenu.c (apply_systemfont_to_dialog): New.
345 (create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.
346
3a4fa2f2
SM
3472010-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
348
97e53006
SM
349 * process.c (exec_sentinel): Preserve current-buffer.
350
3a4fa2f2
SM
351 * process.c (read_process_output): Move the save-current-buffer to
352 apply to both the filter and the non-filter branches.
353
88df7221
DN
3542010-04-10 Dan Nicolaescu <dann@ics.uci.edu>
355
356 * s/msdos.h (UNEXEC): New definition.
357
5634ff85
YM
3582010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
359
6eff5c3d
YM
360 * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
361 (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
362
363 * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
364 Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
365 set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
366 TRY_WINDOW_CHECK_MARGINS.
367
368 * xfns.c (Fx_show_tip): Undo last change. Call try_window with
5b253e9c
YM
369 TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423). Subtract last glyph's
370 width only when it is for padding.
5634ff85 371
b13aef54
J
3722010-04-09 Jan Djärv <jan.h.d@swipnet.se>
373
374 * xfns.c (Fx_show_tip): Call try_window in a loop until
375 fonts_changed_p is zero (Bug#2423).
376
21d28484
EZ
3772010-04-08 Eli Zaretskii <eliz@gnu.org>
378
379 * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
380 the end of TEXT_AREA. (Bug#5856)
381
0269ef77
JD
3822010-04-08 Jan Djärv <jan.h.d@swipnet.se>
383
384 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
385 HAVE_GCONF.
386
5930fe97
EZ
3872010-04-08 Eli Zaretskii <eliz@gnu.org>
388
389 * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
390 prev.orig_type, for resolving type of NSM. (Bug#5858)
391
99852628
JD
3922010-04-08 Jan Djärv <jan.h.d@swipnet.se>
393
394 * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
395 (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
396 in current_font.
397 (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
398 (Ffont_get_system_normal_font, xsettings_get_system_normal_font): New
399 functions.
400 (syms_of_xsettings): Initialize current_font. defsubr
401 Sfont_get_system_normal_font.
402
403 * xsettings.h (Ffont_get_system_normal_font,
404 xsettings_get_system_normal_font): Declare.
405
406 * xfns.c (extern xlwmenu_default_font): Remove.
407 (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
408 to xlwmenu.c.
409
410 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
411 menu items in UTF-8.
412
413 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
414 (apply_systemfont_to_menu): New function.
415 (set_frame_menubar, create_and_show_popup_menu): Call
416 apply_systemfont_to_menu.
417
7fc874c4
J
4182010-04-07 Jan Djärv <jan.h.d@swipnet.se>
419
420 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
421 FRAME_LINE_TO_PIXEL_Y.
422
423 * xterm.c (x_set_window_size_1): Don't add border_width/height to
424 pixelwidth/height.
425
863bf481
DN
4262010-04-07 Dan Nicolaescu <dann@ics.uci.edu>
427
5e5a3b92
DN
428 Simplify code for HP machines.
429 * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
430 for GNU_LINUX, not needed.
431 (UNEXEC, NEED_BSDTTY): Move definitions...
432 * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
433
863bf481
DN
434 * m/iris4d.h (UNEXEC): Move definition ...
435 * s/irix6-5.h (UNEXEC): ... here.
436
3e6bec3b
JD
4372010-04-04 Jan Djärv <jan.h.d@swipnet.se>
438
439 * xfns.c (set_machine_and_pid_properties): New function.
440 (Fx_create_frame): Call set_machine_and_pid_properties.
441
2912322b
SM
4422010-04-03 Eli Zaretskii <eliz@gnu.org>
443
1502b819
EZ
444 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
445 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
446 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
447
2912322b
SM
448 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
449 in this function. (Bug#5703)
450
4512010-04-03 Chong Yidong <cyd@stupidchicken.com>
452
453 * nsterm.h: Fix last change.
454
c435b432
DN
4552010-04-03 Dan Nicolaescu <dann@ics.uci.edu>
456
a568f507
DN
457 * m/intel386.h (NO_REMAP): Move definition ...
458 * s/msdos.h (NO_REMAP): ... here.
459
4cd9f6c2
DN
460 * m/vax.h (CRT0_DUMMIES): Remove, unused.
461
c435b432
DN
462 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
463 used on those platforms.
464
42a2c622
DN
4652010-04-02 Dan Nicolaescu <dann@ics.uci.edu>
466
467 Remove extern errno declarations.
468 * xterm.c:
469 * xrdb.c:
470 * w32term.c:
471 * unexec.c:
472 * unexaix.c:
473 * sysdep.c:
474 * process.c:
475 * lread.c:
476 * keyboard.c:
477 * floatfns.c:
478 * filelock.c:
479 * fileio.c:
480 * emacs.c (main):
481 * ecrt0.c:
482 * dispnew.c:
483 * callproc.c:
484 * buffer.c: Remove errno extern declarations.
485 * s/netbsd.h (NEED_ERRNO): Remove.
486
8224f93d
DN
4872010-04-01 Dan Nicolaescu <dann@ics.uci.edu>
488
489 Remove all uses of LIBX11_SYSTEM.
490 * Makefile.in (LIBX11_SYSTEM): Remove.
491 * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
492 instead.
493
814062c7
EZ
4942010-04-01 Eli Zaretskii <eliz@gnu.org>
495
ed68db4d
EZ
496 Remove support for DJGPP v1.x (bug#5813).
497
498 * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
8224f93d
DN
499 * s/msdos.h:
500 * unexec.c (make_hdr, copy_text_and_data):
501 * sysdep.c (wait_for_termination, sys_subshell):
ed68db4d 502 * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
52f4d8d5
EZ
503 (IT_set_terminal_modes, __write, _rename, gethostname)
504 (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
505 (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
506 the value of __DJGPP__.
ed68db4d
EZ
507 (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
508 compatibility code.
8224f93d
DN
509 * lread.c:
510 * gmalloc.c (memalign):
511 * fileio.c (Fcopy_file, check_executable, Ffile_modes):
512 * emacs.c (main):
513 * dosfns.c (init_dosfns):
ed68db4d
EZ
514 * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
515
52f4d8d5
EZ
5162010-04-01 Eli Zaretskii <eliz@gnu.org>
517
814062c7
EZ
518 * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
519 string with `cursor' property comes from an `after-string'
520 overlay. (Bug#5816)
521
0dc2e11d
GM
5222010-04-01 Glenn Morris <rgm@gnu.org>
523
524 * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
525 Define as Makefile variables.
526 (LIBX): Use above variables rather than directly using autoconf.
527
1d29df59
DN
5282010-03-31 Dan Nicolaescu <dann@ics.uci.edu>
529
530 Clean up BSD_SYSTEM use.
531 * xterm.c:
532 * process.c:
533 * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
534 for including <sys/ioctl.h>.
535 * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
536 code is only used for MSDOS.
537
1546c559
JL
5382010-03-31 Juri Linkov <juri@jurta.org>
539
540 * image.c: Add `Qextension_data'.
541 (syms_of_image): Initialize and staticpro `Qextension_data'.
542 (Fimage_metadata): Rename from `Fimage_extension_data'.
543 (gif_load): Put GIF extension data to the property
544 `Qextension_data'.
545
b8a1d5a1
CY
5462010-04-05 Chong Yidong <cyd@stupidchicken.com>
547
548 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
549 terminal frames (Bug#5837).
550
6521c534
CY
5512010-03-31 Chong Yidong <cyd@stupidchicken.com>
552
553 * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
554 * nsterm.h: Fix prototype.
555
52c30783
EZ
5562010-03-31 Eli Zaretskii <eliz@gnu.org>
557
558 * xdisp.c (highlight_trailing_whitespace): Support highlight of
559 trailing whitespace in right-to-left rows.
560
855a0da7
SM
5612010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
562
563 Get rid of the direct_output optimizations.
564 * keyboard.c (nonundocount): Remove extern declaration.
565 (command_loop_1): Remove brittle optimisation for cheap and
566 common operations.
567 * xdisp.c (redisplay_internal): Don't bother checking
568 redisplay_performed_directly_p any more.
569 * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
570 any more.
571 * dispnew.c (redisplay_performed_directly_p)
572 (direct_output_for_insert, direct_output_forward_char):
573 * dispextern.h (redisplay_performed_directly_p)
574 (direct_output_for_insert, direct_output_forward_char): Remove.
575 * cmds.c (nonundocount): Make it static.
576
85738751 5772010-03-31 Bernhard Herzog <bh@intevation.de> (tiny change)
a6d676d9
CY
578
579 * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
580
85738751 5812010-03-31 Jan Djärv <jan.h.d@swipnet.se>
67fee863
JD
582
583 * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
584 invisible (Bug#5766).
585
85738751 5862010-03-31 Adrian Robert <adrian.b.robert@gmail.com>
9ae6e189 587
855a0da7
SM
588 * xdisp.c (x_consider_frame_title, update_window_cursor):
589 Remove HAVE_NS conditionals.
194d44e7 590 (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
9ae6e189
CY
591
592 * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
593 filename for the title.
594 (ns_set_doc_edited): Do nothing if the selected window is a
595 minibuffer window.
596
597 * nsterm.h: Add prototypes for ns_set_name_as_filename and
598 ns_set_doc_edited.
599
600 * nsterm.m: Remove unneeded prototype.
601
85738751 6022010-03-31 Glenn Morris <rgm@gnu.org>
25c72475
GM
603
604 * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
605 in the DOC file. (Bug#5336)
606
85738751 6072010-03-31 Chong Yidong <cyd@stupidchicken.com>
f79a01db
CY
608
609 * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
610
75d1428c
SM
6112010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
612
613 * window.c (keys_of_window): Remove redundant/overridden bindings.
614
82043cfb
EZ
6152010-03-30 Eli Zaretskii <eliz@gnu.org>
616
617 * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
618 Restore original behavior when the iterator is not bidi_p.
619
b5dd0ae7
DN
6202010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
621
622 * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
623
bd924a5d
EZ
6242010-03-30 Eli Zaretskii <eliz@gnu.org>
625
626 * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
627 are outside the range of cached character positions.
628
3580374b
JB
6292010-03-30 Juanma Barranquero <lekktu@gmail.com>
630
631 * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
632
a7b02820
EZ
6332010-03-30 Eli Zaretskii <eliz@gnu.org>
634
635 Initial support for bidirectional editing.
636
637 * Makefile.in (obj): Include bidi.o.
638 (bidi.o): New target.
639
640 * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
641 ($(BLD)/bidi.$(O)): New target.
642
643 * bidi.c: New file.
644
645 * buffer.h (struct buffer): New members bidi_display_reordering
646 and bidi_paragraph_direction.
647
648 * buffer.c (init_buffer_once): Initialize bidi_display_reordering
649 and bidi_paragraph_direction.
650 (syms_of_buffer): Declare Lisp variables bidi-display-reordering
651 and bidi-paragraph-direction.
652 (Fbuffer_swap_text): Swap the values of
653 bidi_display_reordering and bidi_paragraph_direction.
654
655 * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
656 (bidi_type_t, bidi_dir_t): New types.
657 (bidi_saved_info, bidi_stack, bidi_it): New structures.
658 (struct it): New members bidi_p, bidi_it, paragraph_embedding,
659 prev_stop, base_level_stop, and eol_pos.
660 (bidi_init_it, bidi_get_next_char_visually): New prototypes.
661 (IT_STACK_SIZE): Enlarge to 5.
662 (struct glyph_row): New member reversed_p.
663 <string_buffer_position>: Update prototype.
664 (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
665 glyph_row if bidi_it.paragraph_dir == R2L.
666 (struct glyph): New members resolved_level and bidi_type.
667
668 * dispnew.c (direct_output_forward_char): Give up if we need bidi
669 processing or buffer's direction is right-to-left.
670 (prepare_desired_row): Preserve the reversed_p flag.
671 (row_equal_p): Compare the reversed_p attributes as well.
672
673 * xdisp.c (init_iterator): Initialize it->bidi_p. Call
674 bidi_init_it and set it->paragraph_embedding from the current
675 buffer's value of bidi_paragraph_direction.
676 (reseat_1): Initialize bidi_it.first_elt.
677 (set_iterator_to_next, next_element_from_buffer): Use the value of
678 paragraph_embedding to determine the paragraph direction.
679 (set_iterator_to_next): Under bidi reordering, call
680 bidi_get_next_char_visually. Call bidi_paragraph_init if the
681 new_paragraph flag is set in the bidi iterator.
682 (next_element_from_buffer): If bidi_it.first_elt is set,
683 initialize paragraph direction and find the first character to
684 display in the visual order. If reseated to a middle of a line,
685 prime the bidi iterator starting at the line's beginning. Handle
686 the situation where we overstepped stop_charpos due to
687 non-linearity of the bidi iteration. Likewise for when we back up
688 beyond the previous stop_charpos. When moving across stop_charpos,
689 record it in prev_stop.
690 (display_line): Set row->end and it->start for the next row to the
691 next character in logical order. Always extend reversed_p rows to
692 the end of line, even if they end at ZV. Copy the reversed_p flag
693 to the next glyph row. Keep calling set_cursor_from_row for
694 bidi-reordered rows even if we already have a possible candidate
695 for cursor position. Set row_end after all the row's glyphs have
696 been produced, by looping over the glyphs. Record the position
697 after EOL in it->eol_pos, and use it to set end_pos of the last
698 row produced for a continued line.
699 <Qright_to_left, Qleft_to_right>: New variables.
700 (syms_of_xdisp): Initialize and staticpro them.
701 (string_buffer_position_lim): New function.
702 (string_buffer_position): Most of code moved to
703 string_buffer_position_lim. Last argument and return value are
704 now EMACS_INT; all callers changed.
705 (set_cursor_from_row): Rewritten to support bidirectional text and
706 reversed glyph rows.
707 (text_outside_line_unchanged_p, try_window_id): Disable
708 optimizations if we are reordering bidirectional text and the
709 paragraph direction can be affected by the change.
710 (append_glyph, append_composite_glyph)
711 (produce_image_glyph, append_stretch_glyph): Set the
712 resolved_level and bidi_type members of each glyph.
713 (append_glyph): If the glyph row is reversed, prepend the glyph
714 rather than appending it.
715 (handle_stop_backwards): New function.
716 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
717 (reseat): call handle_stop_backwards to recompute prev_stop and
718 base_level_stop for the new position.
719 (handle_invisible_prop): Under bidi iteration, skip invisible text
720 using bidi_get_next_char_visually. If we are `reseat'ed, init the
721 paragraph direction. Update IT->prev_stop after skipping
722 invisible text.
723 (move_it_in_display_line_to): New variables prev_method
724 and prev_pos. Compare for strict equality in
725 BUFFER_POS_REACHED_P.
726 (try_cursor_movement): Examine all the candidate rows that occlude
727 point, to return the best match. If rows are bidi-reordered
728 and point moved backwards, back up to the row that is not a
729 continuation line, and start looking for a suitable row from
730 there.
731
732 * term.c (append_glyph): Reverse glyphs by pre-pending them,
733 rather than appending, if the glyph_row's reversed_p flag is set.
734 Set the resolved_level and bidi_type members of each glyph.
735
736 * .gdbinit (pbiditype): New command.
737 (pgx): Use it to display bidi level and type of the glyph.
738 (pitx): Display some bidi information about the iterator.
739 (prowlims, pmtxrows): New commands.
740
32a8894e
DN
7412010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
742
743 Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
744 * s/usg5-4.h (LIBS_DEBUG):
745 * s/irix6-5.h (C_DEBUG_SWITCH):
746 * s/gnu-linux.h (LIBS_DEBUG):
747 * s/darwin.h (LIBS_DEBUG):
748 * s/bsd-common.h (LIBS_DEBUG):
749 * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
750 * m/iris4d.h (LIBS_DEBUG):
751 * m/hp800.h (LIBS_DEBUG): Remove definitions.
752
753 * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
754 (LIBS_DEBUG): Remove definition.
755
649dbf36
CY
7562010-03-27 Chong Yidong <cyd@stupidchicken.com>
757
758 * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
759 Windows.
760
cad4261f
YM
7612010-03-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
762
763 * process.c (Fmake_network_process): Don't call turn_on_atimers around
764 `connect' (Bug#5723).
765
cd591dbc
HE
7662010-03-25 Helmut Eller <eller.helmut@gmail.com>
767
768 * process.c (Fmake_network_process): Call `select' for interrupted
769 `connect' rather than creating new socket (Bug#5173).
770
e867cb5d 7712010-03-24 Jan Djärv <jan.h.d@swipnet.se>
93318cbd
JD
772
773 * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
774
775 * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
776
777 * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
778
e867cb5d 7792010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ad13a3ee
YM
780
781 * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
782 XLoadQueryFont.
783
e867cb5d 7842010-03-24 Kenichi Handa <handa@m17n.org>
fbdc1721
KH
785
786 * coding.c (decode_coding_ccl): Fix previous change for the
787 multibyte case.
fb608df3
KH
788 (encode_coding_ccl): Don't setup ccl program here. Fix for the
789 case that the output buffer is fullfilled.
790 (encode_coding): Setup ccl program here.
fbdc1721 791
e867cb5d 7922010-03-24 Andreas Politz <politza@fh-trier.de> (tiny change)
35cd7cd6
CY
793
794 * editfns.c (Fformat): Account for string precision when computing
795 field width (Bug#5710).
796
5845f0ed
DN
7972010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
798
814fb708
DN
799 * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
800
5845f0ed
DN
801 Simplify LIBS_MACHINE definitions.
802 * m/hp800.h (LIBS_MACHINE): Remove, same as default.
803 * m/iris4d.h (LIBS_MACHINE): Likewise.
804 * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
805 * s/aix4-2.h (LIBS_SYSTEM): ... here.
38e3487c 806 * s/netbsd.h: Remove commented out code.
5845f0ed 807
b7064064
DN
8082010-03-22 Dan Nicolaescu <dann@ics.uci.edu>
809
df7734b2
DN
810 Remove dead code dealing with POSIX_SIGNALS.
811 * atimer.c (set_alarm): Remove dead code, all USG systems define
812 POSIX_SIGNALS.
813 * data.c (arith_error): Likewise.
814 * keyboard.c (input_available_signal, handle_user_signal)
815 (interrupt_signal): Likewise.
816 * process.c (sigchld_handler): Likewise.
817 (create_process): Remove if 0 code. Remove HPUX conditional when
818 !defined (POSIX_SIGNALS), it cannot be true.
819 * syssignal.h: Remove USG5_4 and USG conditionals when
820 !POSIX_SIGNALS, they cannot be true.
821
b7064064
DN
822 * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
823 NO_SOCK_SIGIO, not used anymore.
824
55da5ee3
DN
8252010-03-21 Dan Nicolaescu <dann@ics.uci.edu>
826
0be96e3a
DN
827 * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
828 support vax on BSDs.
829
55da5ee3
DN
830 * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
831 * s/aix4-2.h (ORDINARY_LINK): ... here.
832
c0282183
AS
8332010-03-21 Andreas Schwab <schwab@linux-m68k.org>
834
82c3d67a
AS
835 * Makefile.in (abs_builddir): Define.
836 (bootstrap_exe): Use it.
837 (VPATH): Use $(srcdir) instead of @srcdir@.
c0282183 838
3613edce
SM
8392010-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
840
841 * Makefile.in (bootstrap_exe): Use an absolute name.
842
7f110ddc
DN
8432010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
844
22e87574
DN
845 Remove support for old GNU/Linux using libc version 5.
846 * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
847 * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
848
05a670e6
DN
849 Consolidate redundant definitions in s/bsd-common.h.
850 * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
851 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
852 (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
853 doing it in all files that include this one.
854 * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
855 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
856 (LDAV_SYMBOL, KERNEL_FILE): Remove.
857 * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
858 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
859 (LDAV_SYMBOL, KERNEL_FILE): Remove.
860 * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
861 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
862 (LDAV_SYMBOL, KERNEL_FILE): Remove.
863
2968f561
DN
864 Consolidate redundant definitions.
865 * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
866 it's undefined in all files that include this one.
867 (POSIX_SIGNALS): Define here instead of doing it in all files that
868 include this one.
869 * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
870 (POSIX_SIGNALS): Do not define.
871 * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
872 (POSIX_SIGNALS): Do not define.
873 * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
874 (POSIX_SIGNALS): Do not define.
875
15d25dc0
DN
876 Remove support for old UNIX System V systems.
877 * s/unixware.h: Add the contents of s/usg-5-4-2.h.
878 * s/usg-5-4-2.h: Remove.
879
07e339e4
DN
880 Remove support for Solaris on PPC and for old versions.
881 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
882 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
883 that cancel each other.
884 * s/sol2-3.h:
885 * s/sol2-4.h:
886 * s/sol2-5.h: Remove.
887 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
888 (NO_REMAP): Remove, unused.
889 (UNEXEC): Move definition ...
890 * s/aix4-2.h (UNEXEC): ... here.
891
7f110ddc
DN
892 * s/openbsd.h: Remove support for non-ELF and for systems that do
893 not support shared libraries.
894 * s/netbsd.h:
895 * s/freebsd.h: Likewise.
896
605f35cd
DN
8972010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
898
899 Remove non-working support for lynxos 3.0.
900 * s/lynxos.h: Remove file.
901
902 * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
903 COFF_BSD_SYMBOLS, nothing defines it anymore.
904
aed71cf4
DN
9052010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
906
907 Remove obsolete uses of HAVE_SHM.
908 * emacs.c (standard_args):
909 (Fdump_emacs):
910 (syms_of_emacs): Remove code depending on HAVE_SHM.
911
912 * alloc.c: Remove HAVE_SHM dependent definition.
913
914 * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
915
aded53ff
GM
9162010-03-18 Glenn Morris <rgm@gnu.org>
917
17284745
GM
918 * emacs.c (USAGE4): Hard-code bug address.
919 (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
920 (bug_reporting_address): Remove.
921 (main): Don't call bug_reporting_address.
922
aded53ff
GM
923 * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
924 (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
925
303500aa
CY
9262010-03-15 Chong Yidong <cyd@stupidchicken.com>
927
928 * xfns.c (Fx_create_frame):
929 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
930 on left.
931
cef3058f
CY
9322010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change)
933
934 * editfns.c (Fformat): Account for string precision when computing
935 field width (Bug#5710).
936
a647d59d
CY
9372010-03-12 Chong Yidong <cyd@stupidchicken.com>
938
4fa42018
CY
939 * xfns.c (Fx_create_frame): Set default to Qright.
940
a647d59d
CY
941 * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
942 all window systems.
943
6da23aaa
EZ
9442010-03-12 Eli Zaretskii <eliz@gnu.org>
945
a96f6398 946 These changes remove termcap.c from the build on Posix platforms.
83d02def 947 * Makefile.in (termcapobj): Move termcap.o from here...
6da23aaa
EZ
948 (MSDOS_OBJ): ...to here.
949 (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
950 now identical to when LIBS_TERMCAP is defined.
951
952 * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
953
954 * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
955
a96f6398 956 * config.in: Regenerated. (See top-level ChangeLog.)
6da23aaa 957
288f9fc0
CY
9582010-03-10 Chong Yidong <cyd@stupidchicken.com>
959
960 * Branch for 23.2.
961
d48cd3f4
SM
9622010-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
963
964 Cleanup setup of gl_state in various parts of the code.
965 * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
966 (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
967 * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
968 (skip_chars):
969 * regex.c (regex_compile): Use it.
970 (re_compile_pattern): Don't set gl_state.current_syntax_table since
971 it's now set in regex_compile when/if we need it.
972
618db430
SM
9732010-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
974
c0335e02
SM
975 Make it possible to C-g in a tight bytecode loop again (bug#5680).
976 * lisp.h (ELSE_PENDING_SIGNALS): New macro.
977 (QUIT): Use it to consolidate code and remove redundancy.
978 * bytecode.c (BYTE_CODE_QUIT): Use it as well.
979
254c06a8
SM
980 * regex.c (regex_compile): Setup gl_state as well.
981
618db430
SM
982 * syntax.c (skip_chars): Setup gl_state (bug#3823).
983 (in_classes): Use CONSP before XCAR/XCDR.
984
233f0c9f
CY
9852010-03-03 Chong Yidong <cyd@stupidchicken.com>
986
987 * keymap.c (Fwhere_is_internal): Use Fequal to compare
988 definitions, so that keyboard macros are correctly handled
989 (Bug#5481).
990
75f80e63
EZ
9912010-03-02 Eli Zaretskii <eliz@gnu.org>
992
993 * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
994 text that could be relocated inside the call to emacs_mule_char.
995 (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
996 (CODING_DECODE_CHAR): Add a comment describing its purpose.
997
dcfb9bc4
KH
9982010-03-02 Kenichi Handa <handa@m17n.org>
999
fc9a17bc
KH
1000 * character.c (parse_str_as_multibyte): Fix handling of the
1001 multibyte form of raw-bytes.
1002 (str_as_multibyte): Likewise.
1003
dcfb9bc4
KH
1004 * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
1005 form of raw-bytes.
1006
412c01b6
CY
10072010-02-28 Chong Yidong <cyd@stupidchicken.com>
1008
1009 * charset.c (load_charset_map_from_file)
1010 (load_charset_map_from_vector): Zero out allocated
1011 charset_map_entries before using them.
1012
df7e1ea0
AS
10132010-02-27 Andreas Schwab <schwab@linux-m68k.org>
1014
1015 * w32uniscribe.c (uniscribe_check_otf): Fix length check.
1016
fe69a722
CY
10172010-02-27 Chong Yidong <cyd@stupidchicken.com>
1018
4ed28cf4
CY
1019 * font.c (font_parse_fcname): Recognize "Book", "Condensed",
1020 "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
fe69a722 1021
7379cfce
KH
10222010-02-26 Kenichi Handa <handa@m17n.org>
1023
f88cc4d6
KH
1024 * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
1025
7379cfce
KH
1026 * xdisp.c (reseat_to_string): Fix previous change.
1027
cf2fdcfb
CY
10282010-02-26 David Reitter <david.reitter@gmail.com>
1029
1030 * nsfont.m (nsfont_draw): ns_antialias_text should be a
1031 Lisp_Object (Bug#4736).
1032
cc6c7c75
KH
10332010-02-25 Kenichi Handa <handa@m17n.org>
1034
1035 * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
1036
32e737d7
JD
10372010-02-24 Jan Djärv <jan.h.d@swipnet.se>
1038
1039 * xterm.c (XTflash): Move declarations before statements.
1040
1041 * gtkutil.c (xg_get_gdk_display): Remove (unused).
1042 (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
1043 (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
1044 (xg_create_tool_bar): Remove unused variables.
1045 (x_wm_set_size_hint): Move declarations before statements.
1046 (xg_create_frame_widgets): Remove variable grav,
1047
676cae9f
CY
10482010-02-21 Chong Yidong <cyd@stupidchicken.com>
1049
1050 * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
1051
886cc2b8
SM
10522010-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
1053
1054 * term.c (fatal): Add a final \n if needed (bug#5596).
1055
ddb2d8e2
CY
10562010-02-18 Chong Yidong <cyd@stupidchicken.com>
1057
1058 * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
1059
2a4f8d3d
GM
10602010-02-18 Glenn Morris <rgm@gnu.org>
1061
1062 * callint.c (Finteractive): Doc fix.
1063
ebaf11b6
KH
10642010-02-18 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change)
1065
886cc2b8
SM
1066 * coding.c (record_conversion_result):
1067 Handle CODING_RESULT_INSUFFICIENT_DST.
ebaf11b6
KH
1068 (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
1069 memory allocation error.
1070
d0396581
KH
10712010-02-17 Kenichi Handa <handa@m17n.org>
1072
886cc2b8
SM
1073 * coding.c (decode_coding_ccl): Don't setup ccl program here.
1074 Fix for the case that the output buffer is fullfilled.
d0396581
KH
1075 (decode_coding): Setup ccl program here. Keep looping when the
1076 decoder stopped because the output buffer is
1077 fullfilled (bug#5534).
1078
1079 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
1080
98599f74
JD
10812010-02-13 Jan Djärv <jan.h.d@swipnet.se>
1082
471e4f04 1083 * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
98599f74 1084 bug #5571.
886cc2b8 1085 (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
471e4f04 1086 overdrawn.
98599f74 1087
182659ae
JD
10882010-02-10 Jan Djärv <jan.h.d@swipnet.se>
1089
1090 * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
1091 doing_interact here.
1092 (ice_connection_closed): New function.
1093 (x_session_check_input, smc_die_CB, ice_io_error_handler)
1094 (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
1095 (x_session_check_input): Call IceCloseConnection if IceProcessMessages
1096 returns I/O error.
1097 (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
1098 bug #5512.
1099
9be32c4e 11002010-02-08 Francis Devereux <francis@devrx.org> (tiny change)
14a225f9
CY
1101
1102 * nsfont.m (nsfont_open): The system's value for the font descent
1103 is negative, so round it down to avoid clipping.
1104
a2f3eb19
CY
11052010-02-06 Chong Yidong <cyd@stupidchicken.com>
1106
1107 * charset.c (load_charset_map_from_file)
1108 (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
953d248c 1109 instead of xmalloc (Bug#5526). Suggested by Vivek Dasmohapatra.
a2f3eb19 1110
3088147c
CY
11112010-02-05 Chong Yidong <cyd@stupidchicken.com>
1112
1113 * charset.c (load_charset_map_from_file): Allocate large
1114 charset_map_entries structure on the heap rather than the stack.
1115 (Bug#5526).
1116
b57d9029
KH
11172010-01-31 Kenichi Handa <handa@m17n.org>
1118
1119 * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
115e4fd3 1120 size in NAME is invalid, return -1 (Bug#5396).
b57d9029 1121
c67d885b
CY
11222010-01-31 Chong Yidong <cyd@stupidchicken.com>
1123
1124 * nsterm.m (ns_defined_color): Block input. Suggested by Mike
1125 <deactivated@gmail.com> (Bug#3605).
1126
8fab2362
CY
11272010-01-31 David De La Harpe Golden <david@harpegolden.net>
1128
1129 * fileio.c (Frename_file): Correctly rename symlinks to
1130 directories (Bug#5496).
1131
cb2a62f2
CY
11322010-01-31 Filipe Cabecinhas <filcab@gmail.com> (tiny change)
1133
1134 * nsterm.m (ns_ring_bell): Handle visible bell like X.
1135
944c7a26
AS
11362010-01-30 Andreas Schwab <schwab@linux-m68k.org>
1137
1138 * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
1139
c024ac08
CY
11402010-01-29 Chong Yidong <cyd@stupidchicken.com>
1141
1142 * frame.c (DEFAULT_ROWS): Change default to 35.
1143
1144 * xfns.c (x_default_font_parameter): Change default XFT font to
1145 monospace-10 (Bug#3643).
1146
af93af83
EZ
11472010-01-29 Eli Zaretskii <eliz@gnu.org>
1148
1149 * w32inevt.c (key_event): Remove unnecessary comparison of
1150 event->uChar.AsciiChar with 128.
1151
ca0eb708
CY
11522010-01-28 Chong Yidong <cyd@stupidchicken.com>
1153
b242dbfc
CY
1154 * fileio.c (Frename_file): Fix last change (Bug#5487).
1155
ca0eb708
CY
1156 * m/mips.h: Remove DATA_START. Suggested by Dan Nicolaescu.
1157
1158 * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
1159
45d45af5
JD
11602010-01-28 Jan Djärv <jan.h.d@swipnet.se>
1161
1162 * xfns.c (Fx_create_frame): Remove window size matching code from
1163 2010-01-15.
1164 (x_get_current_desktop, x_get_desktop_workarea): Remove
1165
7e233730
JR
11662010-01-27 Jason Rumney <jasonr@gnu.org>
1167
1168 * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
a292592c 1169 (key_event): Use unicode for characters 128 and higher (Bug#4567).
7e233730 1170
86e893e3
KH
11712010-01-27 Kenichi Handa <handa@m17n.org>
1172
1173 * regex.c (analyse_first): Fix setting of fastmap for unibyte
c8b96b2a 1174 pattern string (Bug#4209).
86e893e3 1175
8719abec
CY
11762010-01-27 David De La Harpe Golden <david@harpegolden.net>
1177
1178 * fileio.c (Frename_file): Call copy-directory and
1179 delete-directory for directories, in order to handle cross-device
1180 renaming (Bug#3353).
1181
844794c8
JD
11822010-01-25 Jan Djärv <jan.h.d@swipnet.se>
1183
aa3e13b5 1184 * xfns.c (Fx_create_frame): If frame height is too big, try
ac146f82 1185 sizes 24 and 10. Bug #3643.
844794c8 1186
bd4b5750
SM
11872010-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
1188
8dc1adf6 1189 Try and fix bug#788, hopefully for real this time.
bd4b5750
SM
1190 * keymap.c (shadow_lookup): Add `remap' arg.
1191 (describe_map, describe_vector): Update calls to shadow_lookup.
1192 (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
1193 `remapped' so this flag is applicable to `sequence'. Be careful to
8dc1adf6
SM
1194 perform remapping during shadow_lookup check of remapped_sequences.
1195
285d07e2
CY
11962010-01-24 Eric Bélanger <snowmaniscool@gmail.com> (tiny change)
1197
1198 * image.c (png_load): Use png_sig_cmp instead of the obsolete
1199 png_check_sig, which has been removed in libpng 1.4.
1200
c6d09b8d
CY
12012010-01-23 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
1202
1203 * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
1204 lacks this header file).
1205
3d782998
YM
12062010-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1207
1208 * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
1209 as in Emacs 22.
1210
2aff7c53
YM
12112010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1212
1213 * lisp.h (make_pure_string): String pointer arg now points to const.
1214
1215 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
1216 args now point to const.
1217
74327f7a
EZ
12182010-01-22 Eli Zaretskii <eliz@gnu.org>
1219
1220 * lread.c (Fload): Don't treat files without .elc extension as
1221 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
1222 them. (bug#5303)
1223
4d1e6632
KH
12242010-01-20 Kenichi Handa <handa@m17n.org>
1225
1226 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
1227 treat the source as actual byte sequence.
1228
1fdede8f
AM
12292010-01-19 Alan Mackenzie <acm@muc.de>
1230
1231 Fix spurious before-change-functions invocation from (insert ?\n).
194d44e7 1232 * textprop.c (set_text_properties): Rename parameter
1fdede8f
AM
1233 `signal_after_change_p' to `coherent_change_p', and make the
1234 invocation of `modify_region' conditional on it.
1235
67477f30
JD
12362010-01-19 Jan Djärv <jan.h.d@swipnet.se>
1237
1238 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
1239 for debug purpose.
1240 (syms_of_xsettings): Declare xft-settings.
1241
244b023e
CY
12422010-01-18 Chong Yidong <cyd@stupidchicken.com>
1243
1244 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
1245
617364fe
CY
12462010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
1247
1248 * xterm.c (event_handler_gdk): Block input (Bug#5037).
1249
4fe22cdf
CY
12502010-01-16 Chong Yidong <cyd@stupidchicken.com>
1251
1252 * emacs.c (standard_args): Adjust arg priorities to reflect how
1253 they are processed in startup.el.
1254
e118d2be
AS
12552010-01-16 Andreas Schwab <schwab@linux-m68k.org>
1256
1257 * Makefile.in (lisp, shortlisp): Update.
1258
523ae620
SM
12592010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
1260
1261 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
1262 code, link the new kboard into all_kboard before running Lisp code,
1263 and protect the new terminal with GCPRO (Bug#5365).
1264 (x_term_init): Remove unused var `atom'.
1265 (x_delete_display, x_delete_terminal): Remove unused var `i'.
1266
f0d13888
JD
12672010-01-15 Jan Djärv <jan.h.d@swipnet.se>
1268
1269 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
1270 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
1271 to find out usable size of the desktop. Don't make frames larger than
ac146f82 1272 this. Bug #3643.
f0d13888 1273
cc320f07
KH
12742010-01-15 Kenichi Handa <handa@m17n.org>
1275
1276 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
1277
7ffdf101
CY
12782010-01-15 Chong Yidong <cyd@stupidchicken.com>
1279
1280 * nsterm.m (Qnone): Define.
1281
1282 * nsfns.m (Qnone): Move definition to nsterm.m.
1283
d12bd917
KH
12842010-01-14 Kenichi Handa <handa@m17n.org>
1285
1286 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
1287 systems.
1288
d9a7c140
KH
12892010-01-14 Kenichi Handa <handa@m17n.org>
1290
1291 Make auto-composition work on all buffers even if they are
1292 fundamental mode.
1293
1294 * composite.c (Vauto_composition_mode): New variable.
1295 (composition_compute_stop_pos): Check Vauto_composition_mode
1296 instead of Vauto_composition_function.
1297 (composition_adjust_point, Ffind_composition_internal): Likewise.
1298 (syms_of_composite): Declare Lisp variable
1299 "auto-composition-mode" here.
1300
63286bb2
CY
13012010-01-13 Chong Yidong <cyd@stupidchicken.com>
1302
1303 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
1304 during call to vendor-specific-keysyms (Bug#5365).
1305
c2623ee7
YM
13062010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1307
1308 * keyboard.c (input_available_signal) [SYNC_INPUT]:
1309 Call SIGNAL_THREAD_CHECK (Bug#5333).
1310
1311 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
1312 Call SIGNAL_THREAD_CHECK.
1313
0b5397c2
SM
13142010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
1315
1316 Try to fix bug#5314. This is probably not the final word, tho.
1317 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
1318 recent-auto-save-p as a side-effect.
1319 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
1320 * buffer.c (Fkill_buffer, reset_buffer):
1321 * editfns.c (Fsubst_char_in_region):
1322 * fileio.c (Finsert_file_contents, Fdo_auto_save)
1323 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
1324
dc954cb2
KH
13252010-01-13 Kenichi Handa <handa@m17n.org>
1326
1327 Display buffer name, etc. in mode line by composing correctly.
1328
1329 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
1330 STRING is not nil.
0b5397c2 1331 (display_mode_element): Adjust for the change of
dc954cb2
KH
1332 decode_mode_spec and display_line.
1333 (decode_mode_spec): Change arg MULTIBYTE to STRING.
1334 (display_string): Handle the case that STRING is non-null and
1335 LISP_STRING is not nil.
1336
0b5397c2
SM
1337 * xterm.c (x_draw_composite_glyph_string_foreground):
1338 Pay attention to s->face->overstrike.
dc954cb2
KH
1339
1340 * composite.c (composition_reseat_it): Don't check PT if STRING is
1341 non nil.
1342
4a00eaca
YM
13432010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1344
1345 * keyboard.c (read_char): Don't apply previous change when current
1346 buffer is unchanged by command execution.
1347
60abb287
JD
13482010-01-12 Jan Djärv <jan.h.d@swipnet.se>
1349
1350 * keyboard.c (read_char): Return after executing from special map.
1351
893db5bc
GM
13522010-01-12 Glenn Morris <rgm@gnu.org>
1353
1354 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
1355 bug-gnu-emacs rather than emacs-pretest-bug.
1356
4d03ece0
CY
13572010-01-11 Chong Yidong <cyd@stupidchicken.com>
1358
1359 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
1360 initializing the Lisp variables that depend on them.
1361
1df47e38
YM
13622010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1363
1364 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
1365 Clear areas that will not be updated after change of menu bar lines.
1366 Clear the menu bar window's current matrix when the window gets empty.
1367
2f1c6384
CY
13682010-01-09 Chong Yidong <cyd@stupidchicken.com>
1369
e398c61c
CY
1370 * intervals.h, textprop.c (extend_property_ranges): Return value
1371 and args changed. Discard properties that begin at or after the
1372 new end (Bug#5306).
1373
1374 * editfns.c (Fformat): Caller changed.
1375
e5a29a10
CY
1376 * nsterm.m (ns_set_default_prefs): Delete function.
1377 (syms_of_nsterm): Initialize ns_command_modifier,
1378 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
1379 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
1380
2f1c6384
CY
1381 * xdisp.c (pos_visible_p): Check for invisible text at the correct
1382 position (Bug#4040).
1383
d427a9fa
EZ
13842010-01-09 Eli Zaretskii <eliz@gnu.org>
1385
1386 * editfns.c (Ffloat_time): Doc fix.
1387
21b9df2f
JD
13882010-01-09 Jan Djärv <jan.h.d@swipnet.se>
1389
1390 * xfns.c (Fx_create_frame): Don't create frame larger than display
1391 by default bug#3643.
1392
4b00d3b1
YM
13932010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1394
1395 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
1396 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
1397 windows above internal border.
1398
1399 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
1400 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
1401 windows above internal border.
1402
1403 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
1404 tool bar windows specially.
1405
1406 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
1407
1408 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
1409 specially.
1410 (XTflash): Take account of menu bar height.
1411
1412 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
1413 specially.
1414
5075d853
JD
14152010-01-08 Jan Djärv <jan.h.d@swipnet.se>
1416
ac146f82 1417 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
5075d853
JD
1418 also be true before we can return early (bug #5339).
1419
474217c8
CY
14202010-01-06 David Reitter <david.reitter@gmail.com>
1421
1422 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
1423 (Fns_display_usable_bounds): Rewrite, computing bounds properly
1424 (Bug#3233).
1425
c0e6d47d
JD
14262010-01-06 Jan Djärv <jan.h.d@swipnet.se>
1427
d0cf45b7
JD
1428 * font.c (font_open_entity): Enable chache and call cached_font_ok
1429 for the driver if defined.
1430 (QCuser_spec): New symbol.
1431 (font_spec_from_name): Save name as user-spec.
1432 (font_load_for_lface): Keep user-spec instead of name.
1433 (font_open_by_name): Save name as user-spec.
1434 (syms_of_font): Initialize QCuser_spec.
b7f8e4f5 1435 (font_clear_prop): Clear name if it exists in font (bug#5157).
d0cf45b7
JD
1436
1437 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
1438 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
1439 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
1440
1441 * font.h (struct font_driver): Add cached_font_ok.
1442
c0e6d47d
JD
1443 * xterm.c (x_clear_frame): Queue draw for scroll bars.
1444
7c583cd8
JD
14452010-01-05 Jan Djärv <jan.h.d@swipnet.se>
1446
1447 * xterm.c (x_new_font): Move code for setting rows/cols before
1448 resizing ...
ac146f82 1449 (x_set_window_size): ... to here. Bug #2568.
7c583cd8
JD
1450
1451 * gtkutil.c (xg_clear_under_internal_border): New function.
0b5397c2
SM
1452 (xg_frame_resized, xg_frame_set_char_size):
1453 Call xg_clear_under_internal_border.
7c583cd8 1454 (xg_update_scrollbar_pos): Clear under old scroll bar position.
69e2f185 1455
03f77f0a
CY
14562010-01-05 Chong Yidong <cyd@stupidchicken.com>
1457
1458 * keyboard.c (read_key_sequence): Catch keyboard switch after
1459 making a new tty frame (Bug#5095).
1460
2a1ef5be
KH
14612010-01-05 Kenichi Handa <handa@m17n.org>
1462
1463 * fontset.c (fontset_find_font): Fix getting the frame pointer.
1464
e3eb1dae
SM
14652010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
1466
1467 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
1468 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
1469 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
1470
777013f2
MA
14712010-01-03 Michael Albinus <michael.albinus@gmx.de>
1472
1473 * dbusbind.c (xd_add_watch): Improve debug message.
1474 (xd_remove_watch): Improve debug message. If DATA is the session
1475 bus, unset D-Bus session environment.
1476 (Fdbus_init_bus): Pass the bus as argument to
1477 dbus_connection_set_watch_functions. (Bug#5283)
7c583cd8 1478
8932b1c2
CY
14792010-01-01 Chong Yidong <cyd@stupidchicken.com>
1480
87231e2c
CY
1481 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
1482
4801c5fa
CY
1483 * lread.c (syms_of_lread): Make it clearer that these are the
1484 names of loaded files (Bug#5068).
1485
8932b1c2
CY
1486 * eval.c (run_hook_with_args): Handle the case where the global
1487 value has the obsolete single-function form (Bug#5026).
1488
11e3c684
CY
14892009-12-27 Chong Yidong <cyd@stupidchicken.com>
1490
1491 * minibuf.c (Fall_completions): Minor optimization.
1492
5b28ce35
EZ
14932009-12-26 Eli Zaretskii <eliz@gnu.org>
1494
5ce6e4f4
JB
1495 * .gdbinit (pgx): Fix display of composite glyphs.
1496 Display cmp.from and cmp.to as well.
1497 (pitx): Fix last change.
5b28ce35 1498
bcffff46
KH
14992009-12-25 Kenichi Handa <handa@m17n.org>
1500
1501 * composite.h (composition_adjust_point): Update prototype.
1502
1503 * composite.c (composition_reseat_it): Don't make a composition
1504 spanning over point.
1505 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
1506 composable characters.
1507 (composition_adjust_point): New arg NEW_PT. Callers changed.
1508
1509 * keyboard.c (command_loop_1): Force redisplay if the last point
1510 was within a composition.
1511 (adjust_point_for_property): Don't adjust point for automatic
1512 composition when called after buffer modification.
1513
3f670e9a
EZ
15142009-12-19 Eli Zaretskii <eliz@gnu.org>
1515
5ce6e4f4
JB
1516 * .gdbinit (pitx): Don't use enum names, use their values.
1517 Remove reference to non-existing value GET_FROM_COMPOSITION.
be996d82
EZ
1518 (pgx): Don't use enum names, use their values.
1519 (pitmethod): New helper command.
1520 (pitx): Use it to display iteration method.
1521 (pgrowit): New command.
1522
ad903955
EZ
1523 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
1524
3f670e9a
EZ
1525 Update dependencies in Makefile.in.
1526
1527 * Makefile.in (alloc.o): Depend on termhooks.h.
1528 (atimer.o): Depend on blockinput.h.
1529 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
1530 and frame.h.
1531 (callint.o): Depend on systime.h, coding.h, and composite.h.
1532 (callproc.o): Depend on buffer.h.
1533 (casefiddle.o): Don't depend on charset.h.
1534 (casetab.o): Depend on character.h.
1535 (ccl.o): Depend on composite.h.
1536 (chartab.o): Depend on ccl.h.
1537 (cm.o): Depend on dispextern.h.
1538 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
1539 (coding.o): Don't depend on $(INTERVALS_H).
1540 (composite.o): Don't depend on dispextern.h explicitly (it's in
1541 $(INTERVALS_H)). Depend on ccl.h.
1542 (data.o): Depend on systime.h, coding.h, composite.h,
1543 dispextern.h, font.h, and ccl.h.
1544 (dired.o): Depend on composite.h.
1545 (dispnew.o): Depend on coding.h. Don't depend explicitly on
1546 composite.h (it's in $(INTERVALS_H)).
1547 (doc.o): Depend on systime.h, coding.h, and composite.h.
1548 (editfns.o): Don't depend explicitly on dispextern.h.
1549 (emacs.o): Depend on frame.h and coding.h.
1550 (eval.o): Depend on coding.h, composite.h, and xterm.h.
1551 (fileio.o): Depend on frame.h and commands.h. Don't depend
1552 explicitly on dispextern.h.
1553 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
1554 composite.h.
1555 (fns.o): Don't depend on termhooks.h.
1556 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
1557 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
1558 coding.h, $(INTERVALS_H), window.h, xterm.h.
1559 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
1560 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
1561 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
1562 fontset.h, ccl.h, and ftfont.h.
1563 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
1564 (gtkutil.o): Depend on dispextern.h and composite.h.
1565 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
1566 termhooks.h, and ccl.h.
1567 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
1568 (intervals.o): Depend on systime.h and coding.h.
1569 (keyboard.o): Depend on composite.h and coding.h.
1570 (keymap.o): Depend on coding.h and frame.h.
1571 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
1572 (macros.o): Depend on systime.h, coding.h, and composite.h.
1573 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
1574 and atimer.h.
1575 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
1576 dispextern.h explicitly.
0b5397c2
SM
1577 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
1578 Don't depend explicitly on dispextern.h and composite.h.
3f670e9a
EZ
1579 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
1580 (regex.o): Don't depend on charset.h.
1581 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
1582 (search.o): Don't depend explicitly on composite.h.
1583 (sound.o): Depend on atimer.h and systime.h.
1584 (syntax.o): Don't depend explicitly on composite.h.
1585 (sysdep.o): Depend on coding.h and composite.h.
1586 (term.o): Depend on xterm.h and buffer.h.
1587 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
1588 (textprop.o): Don't depend on dispextern.h explicitly.
1589 (undo.o): Depend on dispextern.h.
1590 (window.o): Depend on coding.h and termhooks.h. Don't depend on
1591 dispextern.h and composite.h explicitly.
1592 (xdisp.o): Depend on ccl.h.
1593 (xfaces.o): Depend on coding.h and ccl.h.
1594 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
1595 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
1596 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
1597 ftfont.h.
1598 (xgselect.o): New dependency.
1599 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
1600 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
1601 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
1602 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
1603 (xsmfns.o): Depend on frame.h and dispextern.h.
1604 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
1605 sysselect.h.
1606
7a6f7fea
AS
16072009-12-19 Andreas Schwab <schwab@linux-m68k.org>
1608
1609 * font.c (Fclear_font_cache): Pass correct cache argument to
1610 font_clear_cache.
1611
f4c21026
AS
16122009-12-16 Andreas Schwab <schwab@linux-m68k.org>
1613
1614 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
1615 twice.
1616
f7ab0997
CY
16172009-12-15 Chong Yidong <cyd@stupidchicken.com>
1618
1619 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
1620 calling file-remote-p. Reported by Jim Meyering.
1621
fa8e045a
MA
16222009-12-15 Michael Albinus <michael.albinus@gmx.de>
1623
1624 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
777013f2 1625 avoid compiler warnings. (Bug #5217)
fa8e045a 1626
a63dba42
KH
16272009-12-14 Kenichi Handa <handa@m17n.org>
1628
1629 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
1630 in 8-bit encoding.
1631
5ce6e4f4 16322009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
36acb2a7
JD
1633
1634 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
1635 tooltip windows.
1636
223e5fc6
JD
16372009-12-13 Jan Djärv <jan.h.d@swipnet.se>
1638
36acb2a7
JD
1639 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
1640 Xatom_net_window_type.
1641
1642 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
1643 Xatom_net_window_type.
1644
b8f00677
JD
1645 * xterm.c (my_log_handler): New function.
1646 (x_term_init): Set my_log_handler as log handler during gtk_init
5ce6e4f4 1647 so we can filter out buggy messages. (Bug #5120).
b8f00677 1648
e5f0bc9a
JD
1649 * xterm.c (xg_scroll_callback): Parameter list changed,
1650 use parameter GtkScrollType to determine scroll/line/page.
1651 Only allow dragging if a button < 4 is grabbed (bug #5177).
1652 (xg_end_scroll_callback): New function.
1653 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
1654 xg_create_scroll_bar.
1655
1656 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
1657 (scroll_end_callback): Remove.
1658 (xg_create_scroll_bar): Add parameter end_callback, bind it to
1659 button-release-event. Replace value-changed event with change-value,
1660 bug #5177,
1661 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
1662 bug #5177.
1663
1664 * gtkutil.h (XG_LAST_SB_DATA): Remove.
1665 (xg_create_scroll_bar): Add GCallback end_callback.
1666
223e5fc6
JD
1667 * xftfont.c (QClcdfilter): New variable.
1668 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
1669 (syms_of_xftfont): Initialize QClcdfilter.
1670
3c055b77
JD
16712009-12-12 Jan Djärv <jan.h.d@swipnet.se>
1672
1673 * xsettings.c (struct xsettings): Add member seen.
1674 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 1675 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
1676 (apply_xft_settings): Only update Xft settings with what member seen
1677 indicates as new.
1678
05fe33ff
EZ
16792009-12-12 Eli Zaretskii <eliz@gnu.org>
1680
1681 * dispextern.h (struct text_pos): Use EMACS_INT;
1682 (struct glyph): Use EMACS_INT for charpos.
1683 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
1684 region_beg_charpos, region_end_charpos,
1685 redisplay_end_trigger_charpos, and also for
1686 iterator_stack_entry.end_charpos and
1687 iterator_stack_entry.stop_charpos.
1688
e8d7886a
JD
16892009-12-12 Jan Djärv <jan.h.d@swipnet.se>
1690
5ce6e4f4 1691 * gtkutil.c (scroll_end_callback): New function (bug #5177).
e8d7886a
JD
1692 (xg_create_scroll_bar): Call scroll_end_callback on button release
1693 event (bug #5177).
1694 (xg_event_is_for_scrollbar): != replaced with ==.
1695
d0db2ec8
KH
16962009-12-12 Kenichi Handa <handa@m17n.org>
1697
1698 * ftfont.c (struct ftfont_info): New member matrix.
1699 (ftfont_open): Setup xftfont_info->matrix.
1700 (MFLTFontFT): New member matrix.
1701 (FLOOR, CEIL, ROUND): New macros.
1702 (ftfont_get_metrics): Handle matrix transformation.
1703 (ftfont_shape_by_flt): New arg matrix. Callers changed.
1704
1705 * xftfont.c (struct xftfont_info): New member matrix.
1706 (xftfont_open): Setup xftfont_info->matrix.
1707
17082009-12-10 Kenichi Handa <handa@m17n.org>
1709
1710 * xdisp.c (append_space_for_newline): Consider face-remapping.
1711
2cc7b62f
AS
17122009-12-09 Andreas Schwab <schwab@linux-m68k.org>
1713
b87dd913
AS
1714 * xsettings.c: Include "keyboard.h".
1715
eba5eb94
AS
1716 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
1717
2cc7b62f
AS
1718 Fix implicit function declarations.
1719 * cmds.c: Include "frame.h".
1720 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
1721 * frame.h: Move declaration of delete_frame outside of
1722 HAVE_WINDOW_SYSTEM.
1723
a4ef73c8
CY
17242009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
1725
1726 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
1727
1728 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
1729 GTK builds.
1730
944a300c
AS
17312009-12-07 Andreas Schwab <schwab@linux-m68k.org>
1732
1733 * unexelf.c (unexec): Don't search for .data twice.
1734
022eef62
CY
17352009-12-05 Chong Yidong <cyd@stupidchicken.com>
1736
426ac949
CY
1737 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
1738 if push failed.
1739 (handle_line_prefix): Set avoid_cursor_p here. Check return value
1740 of push_display_prop (Bug#5000).
1741
022eef62
CY
1742 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
1743 value of font_list_entities (Bug#5085).
1744
be95bee9
JB
17452009-12-04 Juanma Barranquero <lekktu@gmail.com>
1746
1747 Fix `string-to-number' to deal consistently with integers and floats.
1748 * lread.c (isfloat_string): New argument ignore_trailing to accept all
1749 trailing characters, not just whitespace.
1750 (read1): Pass new arg 0 to keep old behavior.
1751 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
1752 trailing chars, as it is already done for integers. Doc fixes.
1753 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
1754
24c2d7ce
EZ
17552009-12-04 Eli Zaretskii <eliz@gnu.org>
1756
0b5397c2
SM
1757 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
1758 Delete unused enumeration value.
24c2d7ce 1759
7e694795
EZ
17602009-12-03 Eli Zaretskii <eliz@gnu.org>
1761
1762 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
1763
84b31826
SM
17642009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
1765
1766 * process.c (Fmake_network_process): Fix up the tests for
1767 "connectionless socket", so they DTRT for seqpacket sockets as well.
1768
f00c449b
SM
17692009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
1770
1771 * process.c (Qseqpacket): New symbol.
1772 (HAVE_SEQPACKET): New macro.
1773 (Fmake_network_process): Accept new :type `seqpacket'.
1774 (init_process): Add `seqpacket' feature when applicable.
1775 (syms_of_process): Initialize Qseqpacket.
1776
8096a0ff
YM
17772009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1778
1779 * font.c (font_load_for_lface, font_open_by_name): Don't store name
1780 if entity is Qnil.
1781
3e0de07f
SM
17822009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
1783
1784 * print.c (print_preprocess): Preprocess the key_and_value table of
1785 hashtables, even tho they're "hidden" (bug#5082).
1786
abeafb2a
JD
17872009-11-29 Jan Djärv <jan.h.d@swipnet.se>
1788
1789 * frame.c (frame_make_pointer_invisible)
1790 (frame_make_pointer_visible): Declare f before statements.
1791
4bf47195
EZ
17922009-11-28 Eli Zaretskii <eliz@gnu.org>
1793
1794 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
1795 omitted dependencies on lisp.h.
1796
c525b3f2
JD
17972009-11-27 Jan Djärv <jan.h.d@swipnet.se>
1798
ece2d4ed
JD
1799 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
1800 is NULL.
1801
1802 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
1803
1804 * frame.c (frame_make_pointer_invisible)
3e0de07f 1805 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
1806 frame.
1807
c525b3f2
JD
1808 * search.c (simple_search): Remove warning by making *p const.
1809
2f00e299
DN
18102009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
1811
1812 * xdisp.c (power_letter): Remove duplicate const.
1813
084b049b
JD
18142009-11-25 Jan Djärv <jan.h.d@swipnet.se>
1815
a1fadc6f
JD
1816 * term.c (delete_tty): Remove check for last terminal (bug#4970).
1817
5ce6e4f4 1818 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
084b049b
JD
1819 defaults (bug #5025).
1820
28259cac
SM
18212009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
1822
1823 * insdel.c (adjust_markers_for_delete): Move it in the
1824 right direction! (bug#4803)
1825
e8e14166
YM
18262009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1827
1828 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
1829
1830 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
1831
86677b58
GM
18322009-11-24 Glenn Morris <rgm@gnu.org>
1833
1834 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
1835
581e51e8
JD
18362009-11-23 Jan Djärv <jan.h.d@swipnet.se>
1837
cfc86c7a
JD
1838 * Makefile.in: Must create deps for ecrt0.o in its rule.
1839
581e51e8
JD
1840 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
1841 because that is what Gtk+ font dialog understands.
1842
1843 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
1844 of Fcopy_sequence.
1845 (font_open_by_name): Put name given into QCname for font-object returned.
1846
1847 * frame.c (x_set_font): Save original font name as frame parameter
1848 font-parameter.
1849
1850 * xsettings.c (set_default_xft_settings): New function.
1851 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
1852 is found.
1853
8b264ecb
AS
18542009-11-22 Andreas Schwab <schwab@linux-m68k.org>
1855
1856 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
1857 searching backwards through multibyte buffer.
1858
872870b2
JD
18592009-11-21 Jan Djärv <jan.h.d@swipnet.se>
1860
1861 * xterm.c: #include xgselect.h.
1862 (x_initialize): Call xgselect_initialize.
1863
1864 * xsettings.c (something_changedCB): C++ comments => C comments.
1865 (init_gconf): Do not deal with any GLib file descriptors, xg_select
1866 does that now.
1867
1868 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
1869 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
1870 (scroll_bar_button_cb): Remove.
5ce6e4f4 1871 (create_menus): C++ comments => C comments. Don't bind grab-notify
872870b2
JD
1872 event.
1873 (xg_create_scroll_bar): Don't bind button-press-event and
1874 button-release-event.
1875
1876 * process.c: Include xgselect.h if defined (USE_GTK) ||
1877 defined (HAVE_GCONF).
1878 (wait_reading_process_output): Call xg_select for the same condition.
1879
1880 * xgselect.c (xg_select): New function to better integrate with
1881 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
1882
1883 * xgselect.h: New file, declare xg_select, xgselect_initialize.
1884
1885 * Makefile.in (XOBJ): Add xgselect.o.
1886
62a6e103
AS
18872009-11-21 Andreas Schwab <schwab@linux-m68k.org>
1888
0b5397c2
SM
1889 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
1890 Remove ignored second argument. All callers changed.
62a6e103
AS
1891 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
1892 (RE_STRING_CHAR_AND_LENGTH): Likewise.
1893 * xdisp.c (string_char_and_length): Likewise.
1894
b0ca0f33
DN
18952009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
1896
1897 * xterm.c (x_new_font):
1898 * print.c (print_object):
1899 * cmds.c (Fself_insert_command): Move declarations before statements.
1900
dd5a6279
CY
19012009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
1902
1903 * s/cygwin.h: Remove unneeded linker flags.
1904
4a8e097d
JD
19052009-11-20 Jan Djärv <jan.h.d@swipnet.se>
1906
0d1d0d26
JD
1907 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
1908
1909 * xsettings.h: Declare xsettings_get_system_font.
1910
1911 * xsettings.c (xsettings_get_system_font): New function.
1912 (init_gconf): No use initiating gconf unless we have Xft also.
1913 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
1914 HAVE_GCONF.
1915
4a8e097d
JD
1916 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
1917 add a blank entry so it doesn't collapse into nothing.
1918
8ab1650e
SM
19192009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
1920
1921 * lread.c (Funintern): Comment out last change.
1922
82c602f0
RS
19232009-11-19 Richard Stallman <rms@gnu.org>
1924
1925 * lread.c (Funintern): Error if symbol is t or nil.
1926
87e32266
SM
19272009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
1928
1929 * insdel.c (make_gap_larger): Don't make as many assumptions about the
1930 representation of Lisp integers.
1931 Reported by MJ Chan <mjchan.inbox@gmail.com>.
1932
1b9ac145
AS
19332009-11-17 Andreas Schwab <schwab@linux-m68k.org>
1934
1935 * lisp.h: Remove declaration of Ffont_get_system_font.
1936 * xfns.c: Move include of "xsettings.h".
1937 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
1938
dfb3c4c6
JD
19392009-11-17 Jan Djärv <jan.h.d@swipnet.se>
1940
87e32266
SM
1941 * xsettings.c (something_changedCB, Ffont_get_system_font):
1942 Check use_system_font.
dfb3c4c6
JD
1943 (syms_of_xsettings): DEFVAR font-use-system-font.
1944
9370c1d8
AS
19452009-11-17 Andreas Schwab <schwab@linux-m68k.org>
1946
25fe851a
AS
1947 * xfns.c (x_default_font_parameter): Remove dead assignment.
1948
9370c1d8
AS
1949 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
1950
637fa988
JD
19512009-11-17 Jan Djärv <jan.h.d@swipnet.se>
1952
87e32266 1953 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 1954 not have FC_LCD_*. #define them if not there.
a6eb20d8 1955
87e32266 1956 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 1957
637fa988
JD
1958 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
1959
1960 * xterm.c (handle_one_xevent): Call xft_settings_event for
1961 ClientMessage, PropertyNotify and DestroyNotify.
1962 (x_term_init): If we have XFT, get DPI from Xft.dpi.
1963 Call xsettings_initialize.
1964
1965 * xftfont.c (xftfont_fix_match): New function.
1966 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
1967 Call xftfont_fix_match after XftFontMatch.
1968
1969 * xfont.c (xfont_driver): Initialize all members.
1970
87e32266
SM
1971 * xfns.c (x_default_font_parameter):
1972 Try font from Ffont_get_system_font.
637fa988
JD
1973 Do not get font from x_default_parameter if we got one from
1974 Ffont_get_system_font.
87e32266 1975 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
1976
1977 * w32font.c (w32font_driver): Initialize all members.
1978
1979 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
1980
1981 * lisp.h: Declare syms_of_xsettings.
1982
87e32266
SM
1983 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
1984 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
1985
1986 * ftfont.c (ftfont_filter_properties): New function.
1987
1988 * frame.c (x_set_font): Remove unused variable lval.
1989
87e32266 1990 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
1991
1992 * font.c (font_put_extra): Don't return if val is nil, it means
1993 boolean option is off.
1994 (font_parse_fcname): Collect all extra properties in extra_props
1995 and call filter_properties for all drivers with extra_props and
1996 font as parameter.
87e32266
SM
1997 (font_open_entity): Do not use cache, it does not pick up new
1998 fontconfig settings like hinting.
637fa988
JD
1999 (font_load_for_lface): If spec had a name in it, store it in entity.
2000
2001 * emacs.c (main): Call syms_of_xsettings
2002
2003 * config.in: HAVE_GCONF is new.
2004
2005 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
2006 xsettings.o is new.
2007
5a942932
KH
20082009-11-17 Kenichi Handa <handa@m17n.org>
2009
2010 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
2011 back to the default font in case that no suitable font is found.
2012
b7c7a4d1
SM
20132009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
2014
2015 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
2016 Suggested by Chad Brown <yandros@mit.edu>.
2017 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
2018
072f1e39
JD
20192009-11-16 Jan Djärv <jan.h.d@swipnet.se>
2020
2021 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
2022
5d1e70a2
AS
20232009-11-14 Andreas Schwab <schwab@linux-m68k.org>
2024
87e32266 2025 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 2026
a53cfbe5
JD
20272009-11-14 Jan Djärv <jan.h.d@swipnet.se>
2028
473a99b7
JD
2029 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
2030 has a parent.
2031
a53cfbe5 2032 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
5ce6e4f4 2033 dependency files in deps/. Include those files into Makefile.
a53cfbe5
JD
2034
2035 * config.in: Generated (AUTO_DEPEND).
2036
f04bb9b2
MA
20372009-11-13 Michael Albinus <michael.albinus@gmx.de>
2038
b7c7a4d1 2039 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
2040 Vdbus_registered_functions_table, because it contains also
2041 properties. Fix docstring.
b7c7a4d1 2042 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 2043
8f11f7ec
SM
20442009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
2045
2046 * alloc.c (mark_object): Don't reprocess marked strings.
2047 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
2048 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
2049
8a605fe8
KH
20502009-11-13 Kenichi Handa <handa@m17n.org>
2051
8f11f7ec 2052 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
2053 semantics of Vword_combining_categories.
2054 (Vword_combining_categories): Describe the slight change of the
2055 semantics.
2056
241c4680
EZ
20572009-11-13 Eli Zaretskii <eliz@gnu.org>
2058
2059 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
2060
2061 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
2062
5d58e44c
SM
20632009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
2064
2065 * xdisp.c (syms_of_xdisp): Fix typo in last change.
2066
5e13f9d3
JB
20672009-11-12 Juanma Barranquero <lekktu@gmail.com>
2068
2069 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
2070
cf54c754
DR
20712009-11-11 David Reitter <david.reitter@gmail.com>
2072
2073 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
2074 variables to fix 2009-11-09 change.
2075
a4ada374
DN
20762009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
2077
91433552
DN
2078 * process.c (ifflag_def): Make flag_sym constant.
2079 (Fnetwork_interface_info): Use a constant pointer.
2080 (ifflag_table):
2081 * xfns.c (cursor_bits):
2082 * xdisp.c (power_letter):
2083 * termcap.c (speeds, esctab):
2084 * sysdep.c (baud_convert):
2085 * keyboard.c (lispy_accent_codes, modifier_names):
2086 * image.c (xbm_format, xpm_format, pbm_format, png_format)
2087 (jpeg_format, tiff_format, gif_format, svg_format)
2088 (interlace_start, interlace_increment, gs_format):
2089 * gtkutil.c (separator_names):
2090 * fringe.c (swap_nibble):
2091 * fns.c (base64_value_to_char, base64_char_to_value):
2092 * fileio.c (make_temp_name_tbl):
2093 * coding.c (suffixes): Make constant.
2094
f4265f6c
DN
2095 * frame.c (make_initial_frame):
2096 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
2097 build_string.
2098 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
2099
04420943
DN
2100 * s/freebsd.h:
2101 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
2102
0a5d24ae
DN
2103 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
2104 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
2105
a4ada374
DN
2106 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
2107 * xterm.c (syms_of_xterm):
2108 * xfaces.c (syms_of_xfaces):
2109 * xdisp.c (syms_of_xdisp):
2110 * lread.c (syms_of_lread):
2111 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
2112 build_string.
91433552 2113
a4ada374
DN
2114 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
2115
af98fc7f
SM
21162009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2117
8ab1650e 2118 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 2119
e90292a9
JD
21202009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2121
2122 * keyboard.h: Declare timer_check.
2123
2124 * keyboard.c (timer_check_2): New function that does what the old
2125 timer_check did.
2126 (timer_check): Call timer_check_2 until -1 or a non-zero time is
2127 returned, i.e. don't return -1 with timers pending.
2128
2129 * process.c: Remove extern declaration of timer_check.
2130
2131 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
2132 even if timer_check returned -1.
2133
af98fc7f
SM
2134 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
2135 xg_dialog_data.
e90292a9
JD
2136 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
2137 the event loop.
2138 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
2139 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
2140 Destroy the dialog after xg_dialog_run.
2141
045b83c0
SM
21422009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2143
2144 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
2145
1fb99a3a
JD
21462009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2147
2148 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
2149
04e452cb
JB
21502009-11-09 Juanma Barranquero <lekktu@gmail.com>
2151
2152 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
2153
ef7417fd
SM
21542009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
2155
2156 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
2157 w32menu.c, and nsmenu.m.
2158 Simplify the obsolete case where position is nil.
2159 (cleanup_popup_menu): New function, moved from nsmenu.m.
2160 (struct skp): Remove slot `notreal'.
2161 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
2162 adjust callers.
2163 (single_menu_item): Adjust call to parse_menu_item.
2164 (syms_of_menu): Defsubr x-popup-menu.
2165 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
2166 (keymap_panes): Don't export any more.
2167 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
2168 (xmenu_show): Declare.
2169 * keyboard.c (parse_menu_item): Remove arg `notreal'.
2170 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
2171 * keyboard.h (parse_menu_item): Update declaration.
2172 * xmenu.c (Fx_popup_menu): Remove.
2173 (syms_of_xmenu): Don't defsubr x-popup-menu.
2174 * w32menu.c (Fx_popup_menu): Remove.
2175 (syms_of_w32menu): Don't defsubr x-popup-menu.
2176 * nsmenu.m (cleanup_popup_menu): Remove.
2177 (ns_menu_show): Rename from ns_popup_menu and remove all the code
2178 moved to menu.c's Fx_popup_menu.
2179 (Fx_popup_menu): Remove.
2180 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
2181 menu_items (it's done in menu.c already).
2182
424d6179
SM
21832009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
2184
2185 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
2186 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
2187
c0df13a6 21882009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
2189
2190 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 2191 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
2192 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
2193 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
2194
2de9f71c
SM
21952009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
2196
2197 Let integers use up 2 tags to give them one extra bit and thus double
2198 their range.
2199 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
2200 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
2201 New macros.
2202 (enum Lisp_Type): Use them. Give explicit values.
2203 (Lisp_Type_Limit): Remove.
2204 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
2205 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
2206 Pay attention to USE_2_TAGS_FOR_INTS.
2207 (INTEGERP): Use LISP_INT_TAG_P.
2208 * fns.c (internal_equal): Simplify the default case.
2209 (sxhash): Use case_Lisp_Int.
2210 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
2211 any more.
2212 (Ftype_of): Use case_Lisp_Int.
2213 (store_symval_forwarding): Take into account the fact that Ints can
2214 now have more than one tag.
2215 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
2216 buffer_slot_type_mismatch):
2217 * xfaces.c (face_attr_equal_p):
2218 * print.c (print_object):
2219 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
2220 Use case_Lisp_Int.
2221
323637a2
EZ
22222009-11-06 Eli Zaretskii <eliz@gnu.org>
2223
7ac65b38
EZ
2224 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
2225
323637a2
EZ
2226 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
2227 warning.
2228
e511451f
JD
22292009-11-06 Jan Djärv <jan.h.d@swipnet.se>
2230
2231 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
2232
2233 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
2234
2235 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
2236 ButtonPressRelease and MotionNotify (bug#4870).
2237
5e2327cf
DN
22382009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
2239
5adc433e
DN
2240 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
2241
d67b4f80
DN
2242 * xterm.c (syms_of_xterm):
2243 * xselect.c (syms_of_xselect):
2244 * xmenu.c (syms_of_xmenu):
2245 * xfns.c (syms_of_xfns):
2246 * xfaces.c (syms_of_xfaces):
2247 * xdisp.c (syms_of_xdisp):
2248 * window.c (syms_of_window):
2249 * w32fns.c (syms_of_w32fns):
2250 * undo.c (syms_of_undo):
2251 * textprop.c (syms_of_textprop):
2252 * terminal.c (syms_of_terminal):
2253 * syntax.c (syms_of_syntax):
2254 * sound.c (syms_of_sound):
2255 * search.c (syms_of_search):
2256 * print.c (syms_of_print):
2257 * minibuf.c (syms_of_minibuf):
2258 * macros.c (syms_of_macros):
2259 * keymap.c (syms_of_keymap, initial_define_key)
2260 (initial_define_lispy_key):
2261 * keyboard.c (syms_of_keyboard):
2262 * insdel.c (syms_of_insdel):
2263 * image.c (syms_of_image):
2264 * fringe.c (syms_of_fringe):
2265 * frame.c (syms_of_frame):
2266 * fontset.c (syms_of_fontset):
2267 * fns.c (syms_of_fns):
2268 * fns.c (syms_of_fns):
2269 * fileio.c (syms_of_fileio):
2270 * fileio.c (syms_of_fileio):
2271 * eval.c (syms_of_eval):
2272 * doc.c (syms_of_doc):
2273 * dispnew.c (syms_of_display):
2274 * dired.c (syms_of_dired):
2275 * dbusbind.c (syms_of_dbusbind):
2276 * data.c (syms_of_data):
2277 * composite.c (syms_of_composite):
2278 * coding.c (syms_of_coding):
2279 * cmds.c (syms_of_cmds):
2280 * charset.c (define_charset_internal, syms_of_character):
2281 * ccl.c (syms_of_ccl):
2282 * category.c (syms_of_category, init_category_once):
2283 * casetab.c (syms_of_casetab):
2284 * casefiddle.c (syms_of_casefiddle):
2285 * callint.c (syms_of_callint):
2286 * bytecode.c (syms_of_bytecode):
2287 * buffer.c (keys_of_buffer, syms_of_buffer):
2288 * alloc.c (syms_of_alloc):
2289 * process.c (syms_of_process, init_process):
2290 * lread.c (syms_of_lread, init_obarray):
2291 * font.c (build_style_table):
2292 * emacs.c (syms_of_emacs, main): Replace calls to intern with
2293 intern_c_string, calls to make_pure_string with
2294 make_pure_c_string. Use pure_cons instead of Fcons.
2295
5e2327cf
DN
2296 * process.c (socket_options): Make it const.
2297 (set_socket_option, init_process): Use a const pointer.
2298
2299 * lread.c (intern_c_string): New function.
2300 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
2301 (defvar_int): Uset it. Make the name const char*.
2302
2303 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
2304 (defvar_int): Update prototypes.
2305 (DEFUN, EXFUN): Support for prototypes is now required.
2306 (intern_c_string): New prototype.
2307 (struct Lisp_Subr): Make symbol_name constant.
2308
2309 * font.c (struct table_entry): Remove unused member. Make NAMES
2310 constant.
2311 (weight_table, slant_table, width_table): Make constant.
2312
2313 * emacs.c (struct standard_args): Make name and longname constant.
2314
2315 * character.h (DEFSYM): Use intern_c_string.
2316
a56eaaef
DN
23172009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
2318
2319 * alloc.c (make_pure_c_string): New function.
2320
2321 * eval.c (Fautoload): Purecopy all arguments.
2322
f6a07420
KH
23232009-11-05 Kenichi Handa <handa@m17n.org>
2324
2325 * fileio.c (Finsert_file_contents): Be sure set coding-system of
2326 the buffer in case of replace.
2327
5d28d4b1
DN
23282009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
2329
2330 * puresize.h (BASE_PURESIZE): Increase to 1620000.
2331
b349d111
SM
23322009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
2333
d528b1ce
SM
2334 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
2335 when applicable (bug#4851).
2336
b349d111
SM
2337 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
2338 (P_): Support for prototypes is now required.
2339
c38eb027
CY
23402009-10-31 Chong Yidong <cyd@stupidchicken.com>
2341
2342 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
2343 (Bug#4827).
2344
0405f8d9
EZ
23452009-10-30 Eli Zaretskii <eliz@gnu.org>
2346
d528b1ce 2347 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 2348
ca0a881a
DN
23492009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
2350
2351 * puresize.h (BASE_PURESIZE): Increase to 1470000.
2352
d528b1ce
SM
2353 * lread.c (Fload): Purecopy the file name when building
2354 Vpreloaded_file_list.
ca0a881a 2355
47e0e0e4
JR
23562009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
2357
2358 * w32fns.c (syms_of_w32fns): Change default value of
2359 w32-scroll-lock-modifier to nil. (Bug#2827)
2360
057bce6f
JB
23612009-10-26 Juanma Barranquero <lekktu@gmail.com>
2362
782a943e 2363 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 2364
242bc74c
AS
23652009-10-26 Andreas Schwab <schwab@redhat.com>
2366
2367 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
2368
522d013a
JB
23692009-10-26 Juanma Barranquero <lekktu@gmail.com>
2370
2371 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
2372 For delta < 0, skip check that only makes sense when the mini-window
2373 is going to be enlarged. (Bug#4534)
2374
18060980
CY
23752009-10-25 Chong Yidong <cyd@stupidchicken.com>
2376
2377 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
2378 string in menu maps (Bug#4471).
2379
fec8f0fe
CY
23802009-10-24 Chong Yidong <cyd@stupidchicken.com>
2381
2382 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
2383 FRAME_NS_VIEW on terminal frames (Bug#4765).
2384
10d66ec0
AS
23852009-10-24 Andreas Schwab <schwab@linux-m68k.org>
2386
1cae01f7
AS
2387 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
2388 DBUS_TYPE_UINTnn separately to get proper sign extension.
2389
58a12889
AS
2390 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
2391 can properly handle unsigned types.
d528b1ce 2392 (make_uid, make_gid): Remove.
58a12889 2393
987c9327
AS
2394 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
2395 types again.
2396
522d013a 2397 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
2398 (system_process_attributes): Likewise.
2399
905a9ed3
DN
24002009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
2401
2402 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
2403
2404 * eval.c (Fautoload): Purecopy the filename. Simplify.
2405
2406 * category.c (Fdefine_category): Purecopy docstring.
2407
a599b3e8
AS
24082009-10-23 Andreas Schwab <schwab@linux-m68k.org>
2409
7b792fc9
AS
2410 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
2411
a599b3e8
AS
2412 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
2413
b35ac83e
CY
24142009-10-23 Chong Yidong <cyd@stupidchicken.com>
2415
2416 * window.c (Fwindow_edges, Fwindow_pixel_edges)
2417 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
2418 (Bug#4775).
2419
e8903e00
SM
24202009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
2421
2422 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
2423 (init_fileio_once):
2424 * lisp.h (init_fileio_once): Remove.
2425 * emacs.c (main): Don't call init_fileio_once.
2426
8f43cbf3
DN
24272009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
2428
2429 * puresize.h (BASE_PURESIZE): Increase to 1430000.
2430
26898943
AS
24312009-10-21 Andreas Schwab <schwab@linux-m68k.org>
2432
2433 * doprnt.c (doprnt): Fix overflow check.
2434
5c646d5a
JD
24352009-10-21 Jan Djärv <jan.h.d@swipnet.se>
2436
3132a7ea
JD
2437 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
2438
5c646d5a
JD
2439 * xterm.h (x_wait_for_event): Declare it.
2440
2441 * xterm.c (pending_event_wait): New variable.
2442 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
2443 see pending_event_wait.eventtype.
2444 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
2445 (x_new_font): Call change_frame_size with new rows/columns before we
2446 try to resize the frame.
5c646d5a 2447 (x_wait_for_event): New function.
d528b1ce
SM
2448 (x_set_window_size_1): Don't change gravity unless change_gravity
2449 is set.
5c646d5a
JD
2450 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
2451 don't change frame size, instead wait for the ConfigureNotify.
2452 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
2453 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
2454 (x_initialize): Initialize pending_event_wait.
2455
2456 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
2457 size.
2458
2459 * widget.c (EmacsFrameSetValues): Add comment.
2460 (EmacsFrameSetCharSize): Just call x_set_window_size.
2461
2462 * gtkutil.c (xg_frame_set_char_size): Flush events and call
2463 x_wait_for_event.
d528b1ce 2464 (flush_and_sync): Remove again.
5c646d5a
JD
2465 (xg_get_font_name): Suggest monospace if no previous font is known.
2466
e9c1637d
SM
24672009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
2468
2469 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 2470 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 2471
5a72cccb
YM
24722009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2473
2474 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
2475 processing pending events when event is filtered for input method.
ab04798f 2476 (Bug#3681)
5a72cccb 2477
2629aa37
JB
24782009-10-20 Juanma Barranquero <lekktu@gmail.com>
2479
2480 * fns.c: Add #endif accidentally removed in previous change.
2481
c3417a74
DN
24822009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
2483
2484 * fns.c: Remove code for unsupported system: MAC_OS.
2485 * image.c: Likewise. Include setjmp.h.
2486
9685cef2
JD
24872009-10-19 Jan Djärv <jan.h.d@swipnet.se>
2488
2489 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
2490 pixel -1 (bug #4742).
2491
d7306fe6
DN
24922009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
2493
019d2c4c
DN
2494 * process.c (create_pty): Remove conditionals for no longer
2495 supported systems: UNIPLUS and RTU.
2496
ee6bacd4
DN
2497 * xterm.c:
2498 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
2499
d7306fe6
DN
2500 * alloc.c: Do not define struct catchtag.
2501 * eval.c: Move struct catchtag definition ...
2502 * lisp.h: ... here.
2503
2504 * image.c: Move png.h #include earlier to avoid warnings.
2505
2506 * xterm.c:
2507 * xsmfns.c:
2508 * xselect.c:
2509 * xrdb.c:
2510 * xmenu.c:
2511 * xftfont.c:
2512 * xfont.c:
2513 * xfns.c:
2514 * xfaces.c:
2515 * xdisp.c:
2516 * window.c:
2517 * widget.c:
2518 * w32xfns.c:
2519 * w32uniscribe.c:
2520 * w32term.c:
2521 * w32select.c:
2522 * w32reg.c:
2523 * w32proc.c:
2524 * w32menu.c:
2525 * w32inevt.c:
2526 * w32heap.c:
2527 * w32font.c:
2528 * w32fns.c:
2529 * w32console.c:
2530 * w32.c:
2531 * w16select.c:
2532 * vm-limit.c:
2533 * unexsol.c:
2534 * unexec.c:
2535 * unexcw.c:
2536 * unexaix.c:
2537 * undo.c:
2538 * tparam.c:
2539 * textprop.c:
2540 * terminfo.c:
2541 * terminal.c:
2542 * termcap.c:
2543 * term.c:
2544 * syntax.c:
2545 * sound.c:
2546 * sheap.c:
2547 * search.c:
2548 * scroll.c:
2549 * region-cache.c:
2550 * regex.c:
2551 * ralloc.c:
2552 * process.c:
2553 * print.c:
b024548b
DN
2554 * nsterm.m:
2555 * nsselect.m:
2556 * nsmenu.m:
2557 * nsimage.m:
2558 * nsfont.m:
2559 * nsfns.m:
d7306fe6
DN
2560 * msdos.c:
2561 * minibuf.c:
2562 * menu.c:
2563 * marker.c:
2564 * macros.c:
2565 * keymap.c:
2566 * keyboard.c:
2567 * intervals.c:
2568 * insdel.c:
2569 * indent.c:
2570 * gtkutil.c:
2571 * ftxfont.c:
2572 * ftfont.c:
2573 * fringe.c:
2574 * frame.c:
2575 * fontset.c:
2576 * font.c:
2577 * fns.c:
2578 * floatfns.c:
2579 * filelock.c:
2580 * fileio.c:
2581 * emacs.c:
2582 * editfns.c:
2583 * dosfns.c:
2584 * doprnt.c:
2585 * doc.c:
2586 * dispnew.c:
2587 * dired.c:
2588 * dbusbind.c:
2589 * data.c:
2590 * composite.c:
2591 * coding.c:
2592 * cmds.c:
2593 * cm.c:
2594 * chartab.c:
2595 * charset.c:
2596 * character.c:
2597 * ccl.c:
2598 * category.c:
2599 * casetab.c:
2600 * casefiddle.c:
2601 * callproc.c:
2602 * callint.c:
2603 * bytecode.c:
2604 * buffer.c:
2605 * atimer.c: Include setjmp.h. (Bug#4643)
2606
fd5f21e6
SM
26072009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
2608
4c0354d7
SM
2609 Remove leftover table unibyte_to_multibyte_table.
2610 * character.c (unibyte_to_multibyte_table): Remove.
2611 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
2612 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
2613 * character.h (UNIBYTE_TO_CHAR): New macro.
2614 (MAKE_CHAR_MULTIBYTE): Use it.
2615 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
2616 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
2617 (message_dolog, set_message_1):
2618 * search.c (Freplace_match):
2619 * editfns.c (Fcompare_buffer_substrings):
2620 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
2621 (concat):
2622 * insdel.c (copy_text, count_size_as_multibyte):
2623 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
2624 * term.c (produce_glyphs):
2625 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
2626 * regex.c (RE_CHAR_TO_MULTIBYTE):
2627 * cmds.c (internal_self_insert):
2628 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
2629
fd5f21e6
SM
2630 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
2631
4418646e
DN
26322009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
2633
2634 * puresize.h (BASE_PURESIZE): Increase to 1310000.
2635
35f5c1d2
JB
26362009-10-16 Juanma Barranquero <lekktu@gmail.com>
2637
2638 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
2639
a0cd8f6b
AR
26402009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
2641
2642 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
2643 still needed under Tiger.
2644
2645 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
2646
2647 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
2648 __Apple__.
2649
2650 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
2651
01a8d3fa
KH
26522009-10-15 Kenichi Handa <handa@m17n.org>
2653
2654 * print.c (print_object): Escape a symbol like "2E10" too.
2655
bf6c75c9 26562009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
2657
2658 Cleanups and changes for 64-bit compile under Snow Leopard.
2659 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
2660
2661 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
2662
c5959062 2663 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
2664 (ns_findfonts, nsfont_list_family): Use long format in printf, and
2665 cast argument.
2666 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 2667 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
2668
2669 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
2670
2671 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
2672 where appropriate.
2673
2674 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
2675 where appropriate.
6e4780c5
JB
2676 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
2677 Use stringWithUTF8String.
bf6c75c9
AR
2678 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
2679
6e4780c5
JB
2680 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
2681 Add formal protocol mention to inheritance.
bf6c75c9
AR
2682 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
2683
6e4780c5
JB
2684 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
2685 Fix printf format.
bf6c75c9
AR
2686 (ns_query_color): Use CGFloat where appropriate.
2687 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
ac146f82 2688 (EmacsScroller-mouseDown:): Use long format in printf, and cast
bf6c75c9
AR
2689 argument.
2690
3d87f118
AR
2691 * config.in (NS_HAVE_NSINTEGER): Drop.
2692
a95c8102
AR
2693 * dbusbind.c (dbus-method-return-internal)
2694 (dbus-method-error-internal): Use long format in printf, and cast
2695 argument.
2696
2697 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
2698 in printf, and cast argument.
2699
6873acca 2700 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
2701 cast argument.
2702
9ec6f100
GM
27032009-10-11 Glenn Morris <rgm@gnu.org>
2704
2705 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
2706
5be883cd
JD
27072009-10-08 Jan Djärv <jan.h.d@swipnet.se>
2708
2709 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
2710 menu bar with a small width so it doesn't enlarge the frame.
2711
d7a39b51
JB
27122009-10-08 Juanma Barranquero <lekktu@gmail.com>
2713
2714 * fontset.c (Fset_fontset_font): Fix typos in error messages.
2715
0c2b6f8e
GM
27162009-10-06 Glenn Morris <rgm@gnu.org>
2717
2718 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
2719 SOME_MACHINE_LISP (this enters indirectly via DOC).
2720
e02131a2
EZ
27212009-10-05 Eli Zaretskii <eliz@gnu.org>
2722
2723 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
2724
b4744254
EZ
27252009-10-04 Eli Zaretskii <eliz@gnu.org>
2726
2727 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
2728 Doc fix.
2729
dbf64827
JB
27302009-10-03 Martin Rudalics <rudalics@gmx.at>
2731
2732 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
2733
e9a0aef8
MA
27342009-10-02 Michael Albinus <michael.albinus@gmx.de>
2735
d528b1ce 2736 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
2737 used anymore outside fileio.c.
2738
2739 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
2740
64eb2b56
JB
27412009-10-01 Juanma Barranquero <lekktu@gmail.com>
2742
2743 * lisp.h (Qdelete_directory_internal):
2744 Declare, instead of Qdelete_directory.
2745
2746 * w32fns.c (Fsystem_move_file_to_trash): Use it.
2747
9d28c33e
SM
27482009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
2749
2750 * eval.c (Fcalled_interactively_p): Add `kind' argument.
2751
9d8f3bd9
MA
27522009-10-01 Michael Albinus <michael.albinus@gmx.de>
2753
9d28c33e 2754 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
2755 Fdelete_directory. It is not a command anymore. It has no file
2756 name handler.
2757
9694740b
SM
27582009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
2759
2760 * xdisp.c (get_next_display_element): Use an enum in last change.
2761
748e162f
KH
27622009-09-28 Kenichi Handa <handa@m17n.org>
2763
9694740b 2764 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
2765 unibyte_display_via_language_environment in handling
2766 Vnobreak_char_display.
2767
17efd58d
AR
27682009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
2769
2770 * nsterm.h (ns_app_name): New extern variable.
2771
2772 * nsterm.m (ns_app_name): New variable.
2773 (ns_term_init): Set and use it.
2774 (ns_term_shutdown): Use it.
2775
2776 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
2777 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
2778
2779 * nsfns.m (ns_set_name_iconic, ns_set_name)
2780 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
2781 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
2782
9694740b
SM
2783 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
2784 Remove double-casting in client_data comparison.
31c2d412 2785
3208cb35
YM
27862009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2787
2788 * keyboard.c (make_lispy_event): Remember last wheel direction.
2789 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
2790
b7d552d6
GM
27912009-09-26 Glenn Morris <rgm@gnu.org>
2792
2793 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
2794 internal.elc. Add term/pc-win.elc.
2795 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
2796 term/x-win.elc.
2797 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
2798 term/w32-win.elc.
2799 (NS_SUPPORT): New.
2800 (lisp): Add NS_SUPPORT.
2801 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
2802
4ff670a8
DR
28032009-09-25 David Reitter <david.reitter@gmail.com>
2804
2805 * nsmenu.m (EmacsMenu-clear): Recognize application menu
2806 on Mac OS X 10.6+ (bug#4513).
2807
feabfb6c
JB
28082009-09-24 Juanma Barranquero <lekktu@gmail.com>
2809
2810 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
2811 some parts of Emacs code (like font selection) don't grok them.
2812 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 2813
de59072a
AS
28142009-09-24 Andreas Schwab <schwab@redhat.com>
2815
2816 * coding.c (decode_coding_iso_2022): Fix operator precedence.
2817
a489517b
JB
28182009-09-24 Juanma Barranquero <lekktu@gmail.com>
2819
2820 * dired.c (Fdirectory_files): Fix typo in docstring.
2821
0592970c
AR
28222009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2823
2824 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
2825 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
2826 (EmacsScroller-setPosition:portion:whole:): Remove -display call
2827 under GNUstep.
2828 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
2829
2830 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
2831 glyph advancement.
2832
48e8a88b
AR
28332009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2834
2835 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 2836 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
2837
2838 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
2839 deleted (bug #4492).
2840
e14f0a78
AR
2841 * nsfont.m (Vns_reg_to_script): New lisp variable.
2842 (syms_of_nsfont): Declare it.
2843 (ns_registry_to_script): New function.
2844 (ns_get_req_script): Call it.
2845 (ns_findfonts): Don't give up on non-unicode registry.
2846
2847 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
2848
5b650faa
SM
28492009-09-20 Tom Tromey <tromey@redhat.com>
2850
2851 * eval.c (find_handler_clause): Make stack-trace-on-error work in
2852 batch mode (bug#4228).
2853
a489517b 28542009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
2855
2856 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 2857 carefully. (Bug #4339)
0bae4e09 2858
fcfe06f3
CY
28592009-09-18 Chong Yidong <cyd@stupidchicken.com>
2860
d798ba87 2861 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 2862
31642728
AR
28632009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2864
2865 * emacs.c (inhibit_x_resources): Update doc string for NS.
2866 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 2867 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
2868
2869 * nsterm.h (ns_no_defaults): Remove.
2870
2871 * nsterm.m (ns_no_defaults): Remove.
2872 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
2873 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
2874 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
2875 don't update the NSWindow itself.
2876 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 2877 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
2878
2879 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
2880 ns_use_qd_smoothing.
2881
2882 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
2883 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 2884 (x-close-connection): Drop PSFlush() under OS X.
a489517b 2885 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 2886
8686ac71
JB
28872009-09-17 Juanma Barranquero <lekktu@gmail.com>
2888
2889 * emacs.c (inhibit_x_resources): New variable.
2890 (main) [HAVE_NS]: Don't process --quick command line option.
2891 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
2892
2893 * lisp.h (inhibit_x_resources): Declare it extern.
2894
2895 * w32reg.c (x_get_string_resource):
2896 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
2897
e227ba05
EZ
28982009-09-17 Eli Zaretskii <eliz@gnu.org>
2899
362654a6
JB
2900 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
2901 Add lisp/term/internal.elc.
e227ba05 2902
742d40e8
SM
29032009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
2904
2905 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
2906 (bug#4461).
2907
005bd5a2
DN
29082009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
2909
2910 * puresize.h (BASE_PURESIZE): Increase to 1290000.
2911
2912 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
2913 (OBJECTS_MACHINE): Remove, unused.
2914
f9af9719
SM
29152009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
2916
2917 * frame.c (x_get_resource_string): Remove unused.
2918
0307c7d2
JD
29192009-09-15 Jan Djärv <jan.h.d@swipnet.se>
2920
2921 * xterm.c (x_new_font): Call change_frame_size before calling
2922 x_set_window_size, in case frame size won't change.
2923
2924 * frame.c (x_set_font): Remove dead code.
2925
428b13d6
SM
29262009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
2927
2928 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
2929
5766c380
SM
29302009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2931
2932 * lread.c (Fload): Don't output a message after loading an obsolete
2933 package any more (done in Lisp now).
2934
2fd0161b
CY
29352009-09-12 Chong Yidong <cyd@stupidchicken.com>
2936
2937 * fns.c (syms_of_fns): Doc fix (Bug#4227).
2938
bc5e75b6
SM
29392009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2940
2941 * keymap.c (Fwhere_is_internal): Use nconc2.
2942
c31c985e
AM
29432009-09-11 Alan Mackenzie <acm@muc.de>
2944
2945 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
2946 batch mode.
2947
78012bd2
AS
29482009-09-11 Andreas Schwab <schwab@linux-m68k.org>
2949
2950 * xdisp.c (display_mode_element): Detect cycles.
2951
9d889332
SM
29522009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
2953
2954 * keymap.c (where_is_internal): Don't erroneously return nil right after
2955 filling the cache.
2956 (where_is_internal_1): Fix up typo.
2957
7ab5d780
GM
29582009-09-11 Glenn Morris <rgm@gnu.org>
2959
2960 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
2961 share a common doc-string.
2962
5238a749
SM
29632009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
2964
66d77eda
SM
2965 * keymap.c (get_keymap): Return the actual keymap symbol rather than
2966 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
2967
5238a749
SM
2968 * keymap.c (QCadvertised_binding): New constant.
2969 (syms_of_keymap): Initialize it.
2970 (Fwhere_is_internal): Try and use bindings from :advertised-binding
2971 if applicable.
2972
19f48442
SM
29732009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
2974
50d4ba39
SM
2975 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
2976 (parse_menu_item): Streamline since bindings are recomputed all the
2977 time anyway. Don't bother checking Vdefine_key_rebound_commands any
2978 more and don't support lmenu's menu-alias any more either.
2979
a88a5372
SM
2980 * keymap.c (where_is_internal_data): Make noindirect a boolean.
2981 (where_is_internal): Strip it down to only traverse the keymaps.
2982 Move the cache handling from Fwhere_is_internal to here.
2983 (Fwhere_is_internal): Move the handling of remapping and the choice of
2984 the best binding from where_is_internal to here.
2985 Unify the cached/noncached paths, so remapping is also handled
2986 correctly when the cache is used, and so the cache can be used to
2987 speed up remap-handling when applicable.
2988 Give preference to non-remapped bindings.
2989 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
2990 non-remapped bindings.
2991 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
2992 command remapping.
2993
19f48442
SM
2994 * xdisp.c (display_mode_element): Move list length limit from 50 to
2995 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
2996
599498c3 29972009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
2998
2999 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
3000
f9b7b5ac
SM
30012009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
3002
a53af587
JB
3003 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
3004 (Bug#4334)
3005
f9b7b5ac
SM
3006 * keymap.c (where_is_internal): Filter out shadowed remappings.
3007 Assume that where_is_internal returns unshadowed bindings to simplify
3008 the code and get rid of the gotos. Use ASIZE.
3009
04f4b72d
JD
30102009-09-04 Jan Djärv <jan.h.d@swipnet.se>
3011
4da146f2
JD
3012 * xterm.c (x_focus_changed): If we get a focusout and pointer
3013 is invisible, make it visible.
3014
04f4b72d
JD
3015 * xterm.h: Remove condition for declaration of
3016 x_*_window_to_frame.
3017
7cef7ce3
SM
30182009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
3019
3020 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
3021 initial terminal as well.
3022
a54fa5b7
JD
30232009-09-02 Jan Djärv <jan.h.d@swipnet.se>
3024
3025 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 3026 x_menubar_window_to_frame.
a54fa5b7
JD
3027
3028 * xterm.c: Remove declarations also in xterm.h
3029 (XTmouse_position): Do not return valid positions
3030 for clicks in the menubar and the toolbar for Gtk+.
3031
3032 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
3033 if the widget for the event has the same top level as a frame,
3034 return the frame.
3035 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
3036 internal windows, bug #4122.
3037 (x_non_menubar_window_to_frame): Remove.
3038
5a021dd0
GM
30392009-09-02 Glenn Morris <rgm@gnu.org>
3040
3041 * buffer.c (default-major-mode): Move most of the doc from here...
3042 (major-mode): ... to here.
3043
548fe2f3
NR
30442009-08-30 Nick Roberts <nickrob@snap.net.nz>
3045
3046 * process.c (wait_reading_process_output): Keep the descriptor
3047 when pty is used by a non-child process, e.g., in I/O buffer of
3048 GDB this allows inferior to be restarted.
3049
e0840eef
EZ
30502009-08-29 Eli Zaretskii <eliz@gnu.org>
3051
3052 * xdisp.c (redisplay_internal): Remove redundant test and collapse
3053 both branches into one.
3054
82e98df4
SM
30552009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
3056
3057 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
3058 (main): Use enable-multibyte-characters rather than
3059 default-enable-multibyte-characters. Output a warning message when
3060 running a unibyte session.
3061
890617cb
YM
30622009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3063
3064 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
3065 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
3066 (copy_data_segment): Also copy __program_vars section.
3067 (copy_dyld_info) [LC_DYLD_INFO]: New function.
3068 (dump_it) [LC_DYLD_INFO]: Use it.
3069
3070 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
3071
e7adeadc
EZ
30722009-08-28 Eli Zaretskii <eliz@gnu.org>
3073
3074 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
3075 $(SRC)/buildobj.h.
3076 (buildobj.h): Renamed from $(SRC)/buildobj.h.
3077 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
3078 $(SRC)/buildobj.h.
3079 (clean): Add buildobj.h.
3080
3ed8bbdc
TZ
30812009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
3082
3083 * print.c (print_object): Set escapeflag to 1 when printing
3084 hashtable keys and values.
3085
155a6764
SM
30862009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
3087
3088 * lread.c (read_integer): Use doubles (and potentially return a float
3089 number) as we do in string-to-number.
3090 (read1): Use strtol to read integers, signal errors on strtol's
3091 overflow and use floats if strtol's output is too large for
3092 Elisp integers.
3093
877610de
EZ
30942009-08-27 Eli Zaretskii <eliz@gnu.org>
3095
3096 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
3097 (make-buildobj-SH): Fix last change.
3098 (SRC): Move to before where it's first used.
3099
ef73e7be
KH
31002009-08-27 Kenichi Handa <handa@m17n.org>
3101
550c8289
KH
3102 * process.c (send_process): Use encode_coding_object instead of
3103 encode_coding_string to perform eol-conversion even if the string
3104 is unibyte.
3105
60afa08d
KH
3106 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
3107 character.
3108
ef73e7be 3109 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 3110 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 3111
7b3a82d7
DN
31122009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
3113
5654bf63
DN
3114 * callproc.c (Fcall_process): Remove always true #if.
3115
7b3a82d7
DN
3116 * lisp.h: Replace #if 0 code for checking with text pointing to
3117 the --enable-checking configure flag.
3118
3119 * emacs.c (main): Mention the --enable-profiling configure flag
3120 instead of using CFLAGS.
3121
878bde49
KR
31222009-08-26 Ken Raeburn <raeburn@raeburn.org>
3123
3124 * Makefile.in (buildobj.h): New target.
3125 (doc.o): Depend on it.
3126 (temacs${EXEEXT}): Don't generate buildobj.lst.
3127 (mostlyclean): Delete buildobj.h, not buildobj.lst.
3128 * makefile.w32-in ($(SRC)/buildobj.h): New target.
3129 ($(BLD)/doc.$(O)): Depend on it.
3130 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
3131 provided by Eli Zaretskii.)
3132 ($(TEMACS)): Don't generate buildobj.lst.
3133 * doc.c: Include buildobj.h.
3134 (buildobj): New static variable.
3135 (Fsnarf_documentation): Use it, instead of opening and reading
3136 buildobj.lst.
3137
1574224c
MA
31382009-08-25 Michael Albinus <michael.albinus@gmx.de>
3139
3140 * dbusbind.c (Fdbus_call_method)
3141 (Fdbus_call_method_asynchronously): Use English numeric format for
3142 timeout values in doc string.
3143
d9da2f45
KH
31442009-08-25 Kenichi Handa <handa@m17n.org>
3145
ef73e7be
KH
3146 * alloc.c (mark_char_table): New function.
3147 (mark_object): Use mark_char_table for a char-table.
3148
d9da2f45
KH
3149 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
3150 (CHAR_TABLE_REF): Use it.
3151
c8edcc01
KR
31522009-08-23 Ken Raeburn <raeburn@raeburn.org>
3153
3154 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
3155 before invoking the newly build emacs to check for load-path
3156 shadowing.
3157
7763401b
GM
31582009-08-22 Glenn Morris <rgm@gnu.org>
3159
3160 * Makefile.in (bootstrap_exe): New variable.
3161 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
3162 Use ${bootstrap_exe}.
3163
729eadda
EZ
31642009-08-22 Eli Zaretskii <eliz@gnu.org>
3165
3166 * coding.h (encode_coding_string): Don't encode unibyte strings.
3167 (Bug#4047)
3168
eb4c6ace
MA
31692009-08-22 Michael Albinus <michael.albinus@gmx.de>
3170
3171 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
3172
3173 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
3174 intended as hotfix only.
3175 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
3176
36e34d1b
AR
31772009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3178
3179 * nsterm.m (ns_get_color): Update documentation properly for last
3180 change, and clean up loose ends in the code left by it. Fix
3181 longstanding bug with 16-bit hex parsing, and add support for
3182 yet another X11 format (rgb:r/g/b) for compatibility.
3183 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
3184 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
3185
f983eb8a
SM
31862009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
3187
3188 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
3189
3f56d3c6
MA
31902009-08-20 Michael Albinus <michael.albinus@gmx.de>
3191
3192 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
3193 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
3194 (xd_initialize, xd_pending_messages): Check, whether
3195 $DBUS_SESSION_BUS_ADDRESS is set.
3196
fb641d68
YM
31972009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3198
3199 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
3200
3201 * nsterm.m (ns_get_color): Remove incompatible color formats again.
3202
cf59a374
GM
32032009-08-20 Glenn Morris <rgm@gnu.org>
3204
3205 * emacs.c (system-type): Doc fix.
3206
1373f3be
SM
32072009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
3208
3209 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
3210 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
3211
058ed861
MA
32122009-08-18 Michael Albinus <michael.albinus@gmx.de>
3213
1373f3be
SM
3214 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
3215 New functions.
058ed861
MA
3216 (xd_initialize): Revert change from 2009-08-16.
3217
563a866e 32182009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
3219
3220 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 3221 font-group vector, return nil.
5fc05db0 3222
e42bdf01
CY
32232009-08-17 Chong Yidong <cyd@stupidchicken.com>
3224
3225 * process.c (status_notify): Don't perform redisplay.
3226 (Fdelete_process, list_processes_1, process_send_signal):
3227 Expliticly perform redisplay.
3228 (wait_reading_process_output): Always check process status, but
3229 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
3230
4230ab74
KR
32312009-08-17 Ken Raeburn <raeburn@raeburn.org>
3232
1373f3be 3233 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
3234 (XFLOAT_INIT): New macro for storing a float value.
3235 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
3236 * fns.c (sxhash): Copy out the value of a float in order to
3237 examine its bytes.
3238 * dbusbind.c (xd_append_arg): Likewise.
3239
4230ab74
KR
3240 * emacs.c (main): Don't call syms_of_data twice.
3241
a0645cdd
MA
32422009-08-16 Michael Albinus <michael.albinus@gmx.de>
3243
3244 * dbusbind.c (xd_initialize): Add connection file descriptor to
3245 input_wait_mask, in order to let select() detect, whether a new
3246 message has been arrived.
ca4f31ea 3247 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 3248
485db0ba
MA
32492009-08-15 Michael Albinus <michael.albinus@gmx.de>
3250
1373f3be
SM
3251 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
3252 New functions.
485db0ba
MA
3253
3254 * lisp.h (xd_pending_messages): Declare.
3255
3256 * keyboard.c (readable_events): Call xd_pending_messages.
3257
b5b98ff4
CY
32582009-08-15 Chong Yidong <cyd@stupidchicken.com>
3259
1373f3be 3260 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 3261
f8354c6e
CY
3262 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
3263
b5b98ff4
CY
3264 * buffer.c (set_buffer_internal_1)
3265 (swap_out_buffer_local_variables): Check for unbound local
3266 variables (Bug#4138).
3267
8b9fc636
EZ
32682009-08-14 Eli Zaretskii <eliz@gnu.org>
3269
3270 * process.c (create_pty): Fix last change.
3271
ce959360
CY
32722009-08-13 Chong Yidong <cyd@stupidchicken.com>
3273
3274 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
3275 (xbm_load_image): Caller changed.
64b807c9 3276 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 3277
c7baf7e9
NR
32782009-08-13 Nick Roberts <nickrob@snap.net.nz>
3279
3280 * process.c (create_pty): New function.
3281 (Fstart_process): Use it to allow Emacs to just associate a pty
3282 with the buffer. See associated change in gdb-mi.el.
3283 (list_processes_1): Deal with no program name.
3284 (start_process_unwind): Use pid == -2 to mean no process.
3285
1ac9108a
SM
32862009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
3287
3288 * cmds.c (nonundocount): New global variable.
3289 (keys_of_cmds): Initialize it.
3290 (Fself_insert_command): Use it to combine upto 20 sequential chars
3291 into a single undo entry, just like the Qself_insert_command code in
3292 keyboard.c does.
3293 Call frame_make_pointer_invisible, also like the Qself_insert_command
3294 code in keyboard.c does.
3295 * keyboard.c (command_loop_1): Use the new global nonundocount rather
3296 than its own local replacement for it.
3297
e267324c
KR
32982009-08-10 Ken Raeburn <raeburn@raeburn.org>
3299
1ac9108a 3300 * fns.c (concat): Don't re-set string length to its current value.
77437343 3301
1ac9108a
SM
3302 * coding.h (decode_coding_string, encode_coding_string):
3303 Use SBYTES macro.
f0bed503 3304
1ac9108a 3305 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
3306 (doprnt): Merge with doprnt1, discarding lispstrings code.
3307 * lisp.h (doprnt_lisp): Don't declare.
3308
416e006d
JL
33092009-08-07 Juri Linkov <juri@jurta.org>
3310
3311 * puresize.h (BASE_PURESIZE): Increase to 1270000.
3312
6f7d5780
DN
33132009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
3314
3315 * print.c (syms_of_print): Undo previous change.
3316
f19a0f5b
TZ
33172009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
3318
3319 * lread.c (read1, syms_of_lread): Read hashtables back from the
3320 readable format.
3321
3322 * print.c (print_preprocess, print_object): Print hashtables fully
3323 and readably.
3324 (syms_of_print): Provide 'hashtable-print-readable.
3325
b9173dc2
AR
33262009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
3327
3328 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
3329 no family set.
3330 (nsfont_open): Handle case when entity has no family.
3331
1586503c
AR
33322009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3333
3334 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
3335 element, not a list, for match case.
3336
087048cd
KH
33372009-07-28 Kenichi Handa <handa@m17n.org>
3338
3339 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
3340 rigidly.
3341
3342 * xfont.c (xfont_list_pattern): Don't ignore the return value of
3343 font_parse_xlfd. Check font properties more rigidly.
3344
780c2506
DN
33452009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
3346
31fd7c5c
JB
3347 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
3348 bsd-common.h.
780c2506 3349
a8c0cc18
KH
33502009-07-27 Kenichi Handa <handa@m17n.org>
3351
3352 * xfaces.c (face_with_height): Call font_clear_prop.
3353
4fbe2306
CY
33542009-07-26 Chong Yidong <cyd@stupidchicken.com>
3355
111d9af3
CY
3356 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
3357
3358 * xterm.c (x_term_init): Use Qx.
3359
4fbe2306
CY
3360 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
3361
1ac9108a 3362 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
3363 (ns_get_color): Revert 2009-07-16 change.
3364
beb0b7f9
EZ
33652009-07-25 Eli Zaretskii <eliz@gnu.org>
3366
3367 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 3368 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 3369
2baf5e76
KR
33702009-07-25 Ken Raeburn <raeburn@raeburn.org>
3371
1ac9108a
SM
3372 * coding.h (decode_coding_string, encode_coding_string):
3373 Use SCHARS macro.
8890e5f5 3374
2baf5e76 3375 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 3376 (load_depth): Delete.
2baf5e76
KR
3377 (Qload_in_progress): New variable.
3378 (load_unwind): Don't reference load_depth or load_in_progress.
3379 (Fload): Likewise; specbind Qload_in_progress instead.
3380 (init_lread): Don't initialize load_depth.
3381 (syms_of_lread): Initialize and protect Qload_in_progress.
3382
1395c6f5
AR
33832009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3384
3385 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
3386
4e2f36cf
AR
33872009-07-23 Yavor Doganov <yavor@gnu.org>
3388
3389 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
3390
5dd9a6f7
AR
33912009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3392
3393 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
3394 Bugs 3792, 3720, 2402.
3395 (ns_lookup_indexed_color): Check for bad index.
3396 (ns_index_color): Init unused slot to 0.
3397 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
3398 Bug 3714, possibly 3082.
5dd9a6f7 3399
c902b920
JR
34002009-07-22 Jason Rumney <jasonr@gnu.org>
3401
1ac9108a
SM
3402 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
3403 Position IME window at cursor (Bug#2570).
c902b920
JR
3404 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
3405 (globals_of_w32fns): Dynamically load functions required above.
3406
3407 * w32term.c (w32_draw_window_cursor): Send message to reposition
3408 any IME window.
3409
090101cf
CY
34102009-07-21 Chong Yidong <cyd@stupidchicken.com>
3411
3412 * fileio.c: Revert 2009-07-16 changes.
3413 (Vauto_save_include_big_deletions): New variable.
3414 (Fdo_auto_save): Disable auto-save only if
3415 auto-save-include-big-deletions is nil.
3416
e6583e3d
CY
34172009-07-21 Chong Yidong <cyd@stupidchicken.com>
3418
3419 * xdisp.c (move_it_to): For continued lines ending in a tab, take
3420 the overflowed pixels into account (Bug#3879).
3421
ece435a5
KR
34222009-07-21 Ken Raeburn <raeburn@raeburn.org>
3423
3424 * lread.c (load_depth): New variable.
3425 (Fload, load_unwind, init_lread): Set it to the load recursion
3426 depth; set load_in_progress as a simple boolean based on the
3427 current load_depth. (Bug#3892)
3428
40b2d973
AR
34292009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3430
3431 * nsfont.m (ns_has_attribute): Remove.
3432 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
3433
10be7e0d
JL
34342009-07-18 Juri Linkov <juri@jurta.org>
3435
3436 * process.c (Fset_process_query_on_exit_flag): Mention killing
3437 a buffer in docstring.
3438
fa055055
KH
34392009-07-17 Kenichi Handa <handa@m17n.org>
3440
3441 * casetab.c (shuffle): Fix the logic of setting up the cycle.
3442
042f7b69
YM
34432009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3444
3445 * nsfns.m (Fns_set_alpha): Remove function.
3446 (syms_of_nsfns): Don't defsubr it.
3447
3448 * nsterm.m (ns_get_color): Remove incompatible color formats.
3449 (ns_color_to_lisp): Generate #rrggbb color format string.
3450
4be941e3
RS
34512009-07-16 Richard Stallman <rms@gnu.org>
3452
3453 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
3454 (Fset_buffer_auto_saved): Handle save_length = -2.
3455
4e6b227d
CY
34562009-07-16 Chong Yidong <cyd@stupidchicken.com>
3457
3458 * xterm.c (Qx_gtk_map_stock): New var.
3459
3460 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
3461 of calling intern each time.
3462
a1856973
YM
34632009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3464
3465 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
3466 does tiling.
3467
3468 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
3469
497e54d8
KH
34702009-07-14 Kenichi Handa <handa@m17n.org>
3471
72d36834
KH
3472 * font.c (font_vconcat_entity_vectors): New function.
3473 (struct font_sort_data): New member font_driver_preference.
3474 (font_compare): Check font_driver_preference.
3475 (font_sort_entities): The format of the first argument changed.
3476 (font_delete_unmatched): Likewise.
3477 (font_list_entities): The return type changed.
3478 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
3479 (font_find_for_lface): Adjuste for the above changes.
3480 Don't suppress the checking of C even if the repertory supports it.
3481 (Flist_fonts): Adjust for the above changes.
72d36834 3482
1ac9108a
SM
3483 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
3484 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
3485 Reject a font who has adstyle property that is different from a
3486 langname derived from registry property.
1ac9108a 3487 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 3488
b6046155
EZ
34892009-07-13 Eli Zaretskii <eliz@gnu.org>
3490
3491 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
3492 local copy of dirfilename.
3493
fb6b6049
KH
34942009-07-13 Kenichi Handa <handa@m17n.org>
3495
e2402a5e
KH
3496 * chartab.c (sub_char_table_ref_and_range): Fix the range check
3497 against max_char.
3498
fb6b6049
KH
3499 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
3500 calling XSYMBOL (sym).
3501
65156807
EZ
35022009-07-11 Eli Zaretskii <eliz@gnu.org>
3503
1ac9108a
SM
3504 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
3505 New function.
3506 (directory_files_internal) [WINDOWSNT]:
3507 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
3508 the filesystem of the directory is fast or slow.
3509
3510 * w32.c (logon_network_drive): Don't assume PATH is an absolute
3511 file name.
3512 (is_slow_fs): New function.
3513 (stat): Use it to determine whether to issue more system calls to
3514 get accurate file attributes, when w32-get-true-file-attributes is
3515 `local'.
3516
e0ab5fcf
JD
35172009-07-10 Jan Djärv <jan.h.d@swipnet.se>
3518
3519 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 3520 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
3521 parameter font-parameter as default to the font dialog.
3522
784ceded
KH
35232009-07-10 Kenichi Handa <handa@m17n.org>
3524
3525 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
3526
fb8edc0b
EZ
35272009-07-09 Eli Zaretskii <eliz@gnu.org>
3528
1ac9108a 3529 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 3530
fb8edc0b
EZ
3531 * w32.c (stat): Treat UNC file names as residing on remote
3532 drives. (Bug#3542)
3533
635c75b1
KH
35342009-07-09 Kenichi Handa <handa@m17n.org>
3535
3536 * fontset.c (fontset_find_font): Fix previous change.
3537
c1d5ce94
MA
35382009-07-08 Michael Albinus <michael.albinus@gmx.de>
3539
3540 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
3541 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
3542 error flag.
3543
edb61b39
KH
35442009-07-08 Kenichi Handa <handa@m17n.org>
3545
374bf7e4
KH
3546 * fontset.c (fontset_find_font): Fix the logic of handling
3547 charset_matched.
3548 (font_for_char): Delete unused var.
3549 (generate_ascii_font_name): Delete it.
3550
edb61b39
KH
3551 * coding.h (JIS_TO_SJIS2): Fix the code range check.
3552
3553 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
3554 (encode_coding_sjis): Fix the code range check.
3555
0f3f018c
CY
35562009-07-07 Chong Yidong <cyd@stupidchicken.com>
3557
3558 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
3559 (Fexpand_file_name): Copy string data properly (Bug#3772).
3560
fcaf6f3a
JD
35612009-07-07 Jan Djärv <jan.h.d@swipnet.se>
3562
3563 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
3564 first MapNotify.
3565
6809ca75
KH
35662009-07-07 Kenichi Handa <handa@m17n.org>
3567
3568 * character.h (unibyte_has_multibyte_table): Delete extern.
3569 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
3570
3571 * charset.c (Fset_charset_priority): Update charset_unibyte.
3572 (syms_of_charset): Initialize charset_unibyte.
3573
3574 * character.c (unibyte_has_multibyte_table): Delete it.
3575 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
3576 charset_unibyte.
3577 (multibyte_char_to_unibyte_safe): Likewise.
3578 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
3579
1ac9108a 3580 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
3581 (x_produce_glyphs): Likewise.
3582
3583 * .gdbinit (xcharset): Fix the treating $arg0.
3584
ad9e2d54
EZ
35852009-07-04 Eli Zaretskii <eliz@gnu.org>
3586
3587 Emulation of `getloadavg' on MS-Windows.
3588 * w32.c: Include float.h
3589 (g_b_init_get_native_system_info, g_b_init_get_system_times)
3590 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
3591 (get_native_system_info, get_system_times): New functions.
3592 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
3593 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
3594 (globals_of_w32): Initialize g_b_init_get_native_system_info,
3595 g_b_init_get_system_times, and num_of_processors.
3596
0a3472c7
JR
35972009-07-03 Jason Rumney <jasonr@gnu.org>
3598
3599 * w32term.c (w32_initialize): Use standard types.
3600
80904120
EZ
36012009-07-03 Eli Zaretskii <eliz@gnu.org>
3602
3603 * dired.c (Ffile_attributes): Decode user and group names by the
3604 locale's encoding. (Bug#3443)
3605
6978862d
DN
36062009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
3607
f8d23104
DN
3608 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
3609 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
3610
3611 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
3612
3613 * term.c (init_tty): Remove spurious #ifdef.
3614
6978862d
DN
3615 * m/mips.h: Mention this file is also used for netbsd.
3616 * m/pmax.h: Remove file.
3617
e044e4fc
JD
36182009-07-03 Jan Djärv <jan.h.d@swipnet.se>
3619
3620 * xterm.h (struct x_display_info): Add invisible_cursor.
3621 (struct x_output): Add current_cursor.
3622
3623 * xterm.c (XTtoggle_invisible_pointer): New function.
3624 (x_define_frame_cursor): Don't define cursor if invisible or the
3625 same as before. Set current_cursor.
3626 (x_create_terminal): Set toggle_invisible_pointer_hook.
3627
3628 * xfns.c (make_invisible_cursor): New function.
3629 (x_set_mouse_color): Call make_invisible_cursor.
3630 Set current_cursor.
3631 (x_window): Set current_cursor.
3632
3633 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
3634
3635 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
3636 inserting a character.
3637 (read_avail_input): Call frame_make_pointer_visible.
3638
3639 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
3640 (frame_make_pointer_invisible, frame_make_pointer_visible):
3641 New functions.
e044e4fc
JD
3642 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
3643
3644 * frame.h: Declare frame_make_pointer_invisible and
3645 frame_make_pointer_visible.
3646 (struct frame): Add pointer_invisible.
3647
574c8efa
JD
36482009-07-02 Jan Djärv <jan.h.d@swipnet.se>
3649
7b507248
JD
3650 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
3651 frame isn't visible.
3652 (xg_frame_resized): If width/height is -1, get size of window
3653 from X server.
3654
3655 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
3656 for MapNotify.
3657
835bdaa7 3658 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 3659 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 3660 (flush_and_sync): Reintroduce.
574c8efa 3661
3f1c6666 36622009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 3663
31fd7c5c 3664 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
3665
3666 * xterm.c (x_handle_net_wm_state): Also look for sticky.
3667 (x_term_init): Initialize Xatom_net_wm_state_sticky.
3668
3669 * frame.h: Declare Qsticky.
3670
cad9ef74
JD
3671 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
3672
3673 * nsfns.m (ns_frame_parm_handlers): Ditto.
3674
3675 * frame.c: Declare Qsticky.
3676 (frame_parms): Add sticky.
3677
3678 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
3679
3680 * xterm.h: Declare x_set_sticky.
3681
3682 * xterm.c (x_set_sticky): New function.
3683
69b16610
JD
3684 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
3685 (xg_tool_bar_menu_proxy): Attach enter/leave events to
3686 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
3687
3688 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
3689
3690 * frame.c: Qmaximized is new.
3691 (x_set_frame_parameters): Do not handle fullscreen specially.
3692 Only set width and height if explicitly set.
3693 (x_set_fullscreen): Handle Qmaximized.
3694 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
3695 (syms_of_frame): Initialize Qmaximized.
3696
1ac9108a
SM
3697 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
3698 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
3699
3700 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
3701 for Expose event. Add call to x_check_fullscreen for MapNotify event.
3702 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
3703 set gravity to NorthWestGravity when USE_GTK.
3704 (set_wm_state): New function.
31fd7c5c 3705 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
3706 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
3707 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 3708 or the case when no window manager is running. That means remove calls
3f1c6666
JD
3709 to x_real_positions and x_fullscreen_adjust.
3710
3711 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
3712 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
3713 flush_and_sync.
3714 (xg_height_changed): New function.
3715 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
3716 and gtk_window_set_policy. Set frame gravity after parsing the
3717 geometry string.
3f1c6666
JD
3718 (xg_update_frame_menubar, free_frame_menubar)
3719 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
3720 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
3721 Remove calls to xg_frame_set_char_size.
3722
fd503d99
KH
37232009-07-01 Kenichi Handa <handa@m17n.org>
3724
3725 * keyboard.c (decode_keyboard_code): New function.
3726 (tty_read_avail_input): Decode the input bytes if necessary.
3727
1ac9108a
SM
3728 * coding.c (setup_coding_system):
3729 Initialize coding->carryover_bytes to 0.
fd503d99
KH
3730 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
3731 use Qno_conversion.
3732
24ed93fb
YM
37332009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3734
3735 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
3736
99061dfc
CY
37372009-06-30 Chong Yidong <cyd@stupidchicken.com>
3738
1ac9108a 3739 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 3740
ff90fbde
JR
37412009-06-30 Jason Rumney <jasonr@gnu.org>
3742
3743 * w32term.c (w32_initialize): Use GetModuleHandle for library that
3744 is already loaded.
3745 Set user model ID if supported (bug#1849).
3746
5f445726
JM
37472009-06-29 Jim Meyering <meyering@redhat.com>
3748
3749 Remove useless if-before-xfree test.
3750 * nsfont.m (nsfont_close): Remove useless test.
3751 * term.c (delete_tty): Likewise.
3752 * w32.c (system_process_attributes): Likewise.
3753 * w32font.c (w32font_close): Likewise.
3754 * xfaces.c (x_free_gc): Likewise.
3755 * xselect.c (buffer): Likewise.
3756
b9607587
AS
37572009-06-28 Andreas Schwab <schwab@linux-m68k.org>
3758
3759 * process.c (send_process): Keep decoded string in a local
3760 variable and protect it from GC. (Bug#3521)
3761
89ba96f4
EZ
37622009-06-28 Eli Zaretskii <eliz@gnu.org>
3763
3764 * term.c (create_tty_output) [MSDOS]: #ifdef away.
3765 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
3766
098a1589
CY
37672009-06-28 Chong Yidong <cyd@stupidchicken.com>
3768
485422be
CY
3769 * xdisp.c (start_display, handle_face_prop)
3770 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
3771 (redisplay_window, try_window_id, produce_image_glyph):
3772 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 3773
098a1589
CY
3774 * xterm.c (x_update_window_begin, x_new_focus_frame)
3775 (x_scroll_bar_handle_click, handle_one_xevent)
3776 (handle_one_xevent, XTread_socket, x_focus_on_frame)
3777 (x_make_frame_visible, x_make_frame_invisible)
3778 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
3779 code chunks that are now obsolete.
3780
78c38319
MA
37812009-06-28 Michael Albinus <michael.albinus@gmx.de>
3782
3783 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
3784 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
3785 for hours, when optimzation is enabled.
3786 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
3787 (xd_read_message): Make them static.
3788
4189ed40
CY
37892009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
3790
3791 * term.c (turn_on_face): Allow simultaneously bold and dim
3792 terminal faces (Bug#3530).
3793
cd9b5e16
CY
37942009-06-27 Chong Yidong <cyd@stupidchicken.com>
3795
4e23bedb
CY
3796 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
3797
cd9b5e16
CY
3798 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
3799 truncation glyphs (Bug#3686).
3800
07cc3c35
GM
38012009-06-27 Glenn Morris <rgm@gnu.org>
3802
3803 * m/pmax.h: Restore file, with only netbsd portions.
3804
31fd7c5c 38052009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 3806
cd9b5e16 3807 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 3808
42d4a64f
KH
38092009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
3810
3811 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
3812 the arg FORCE_SYMBOL.
3813
930fe55b 38142009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
3815
3816 * fontset.c (fontset_find_font): When a usable rfont_def is found
3817 in a fallback font-group, make it the first element of the group.
3818
57ebc3fd
CY
38192009-06-24 Chong Yidong <cyd@stupidchicken.com>
3820
3821 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
3822
f084f942
KH
38232009-06-24 Kenichi Handa <handa@m17n.org>
3824
3825 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
3826 set for C.
3827 (fontset_font): Record the availability of a font for C both in
3828 the realized fontsets of the current one and the default one.
3829
2f686c87
DN
38302009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
3831
3832 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
3833 conditional, it is always defined on AIX.
3834
666e158e
MB
38352009-06-23 Miles Bader <miles@gnu.org>
3836
3837 * window.c (Vrecenter_redisplay): New variable.
3838 (syms_of_window): Initialize it.
3839 (Qtty): New extern declaration.
3840 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
3841
c6da7cd2
JM
38422009-06-23 Jim Meyering <meyering@redhat.com>
3843
1ac9108a
SM
3844 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
3845 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 3846 pointer dereferences are guaranteed to be valid.
c6da7cd2 3847
678dca3d
KH
38482009-06-23 Kenichi Handa <handa@m17n.org>
3849
74d75424
KH
3850 * emacs.c (main): Call init_font ().
3851
3852 * font.h (Vfont_log): Extern it.
3853 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
3854
3855 * font.c (font_sort_entities, font_list_entities)
3856 (font_matching_entity, font_open_entity)
3857 (font_close_object): Change font_add_log to FONT_ADD_LOG.
3858 (Vfont_log): Delete static.
3859 (font_log_env_checked): Delete this variable.
3860 (font_add_log): Don't check font_log_env_checked.
3861 (font_deferred_log): Check Vfont_log.
3862 (init_font): New function.
3863
678dca3d
KH
3864 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
3865
3866 * w32font.c: Change font_add_log to FONT_ADD_LOG.
3867
3868 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
3869
3870 * xfont.c: Change font_add_log to FONT_ADD_LOG.
3871
3872 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
3873 (face_for_char): Don't call font_deferred_log here.
3874 (font_for_char): Likewise.
3875
8a668709
CY
38762009-06-22 Chong Yidong <cyd@stupidchicken.com>
3877
9a01ee33
CY
3878 * w32term.c (x_draw_glyph_string): Use the glyph string's width
3879 rather than its background_width for drawing the overline and
3880 underline (Bug#489).
3881
3882 * xterm.c (x_draw_glyph_string): Use the glyph string's width
3883 rather than its background_width for drawing the overline and
3884 underline (Bug#489).
ec7c9926
CY
3885 (xg_default_icon_file): New variable.
3886 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
3887 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 3888
8a668709
CY
3889 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
3890 (load_overlay_strings): Remove externs.
3891 (fast_find_position): Function deleted.
3892 (mouse_face_from_buffer_pos): New function, based on
3893 fast_find_position. Correctly handle before-strings,
3894 display-strings, and after-strings (Bug#1220).
3895 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
3896
4d4c02d8
CY
38972009-06-21 Chong Yidong <cyd@stupidchicken.com>
3898
1ac9108a 3899 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
3900 (move_it_in_display_line_to, move_it_in_display_line_to)
3901 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
3902
70243478
CY
39032009-06-21 Chong Yidong <cyd@stupidchicken.com>
3904
3905 * Branch for 23.1.
3906
13087e59
JR
39072009-06-21 Jason Rumney <jasonr@gnu.org>
3908
3909 * w32term.c (keyboard_codepage): New static variable.
3910 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
3911 (w32_read_socket) [WM_CHAR]: Use it to decode character
3912 input (bug#3237).
3913 (w32_initialize): Initialize it.
3914 (codepage_for_locale): New function.
3915
4735b74e
KR
39162009-06-20 Ken Raeburn <raeburn@raeburn.org>
3917
3918 * process.c (status_message): Pass Faset index argument as a lisp
3919 object, so as to work with USE_LISP_UNION_TYPE.
3920
0e727afa
YM
39212009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3922
3923 * coding.c (Ffind_coding_systems_region_internal):
3924 Cache checked characters.
3925
cf299835
KH
39262009-06-18 Kenichi Handa <handa@m17n.org>
3927
1ac9108a 3928 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 3929
90f20d94
AS
39302009-06-18 Andreas Schwab <aschwab@redhat.com>
3931
3932 * xdisp.c (redisplay_internal): Check that the frame is still
3933 live after redisplay of its windows.
3934 (redisplay_windows): Check that the window is still live.
3935
7f1faf1c
KH
39362009-06-17 Andreas Schwab <schwab@linux-m68k.org>
3937
3938 * coding.c (detect_coding_utf_16): Fix previous change.
3939
cc13543e
KH
39402009-06-16 Kenichi Handa <handa@m17n.org>
3941
3942 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
3943 UTF-16 by checking the dispersion of Eth and Oth bytes.
3944
977b85f4
AS
39452009-06-15 Andreas Schwab <schwab@linux-m68k.org>
3946
3947 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
3948
66bd43d1
KH
39492009-06-15 Kenichi Handa <handa@m17n.org>
3950
3951 * process.c (status_message): Fix previous change. Be sure to
3952 decode a localized string.
3953
cb5ca9c5
YM
39542009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3955
3956 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
3957 add comment explaining why.
3958
ec7709ba 39592009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 3960
ec7709ba 3961 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 3962
4b7f335c
AR
39632009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
3964
3965 * nsfont.m (ns_attribute_value): Remove.
3966 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
3967 (ns_has_attribute): Shrink the normal range.
3968 (ns_findfonts): Don't worry about requested spec in determining
3969 need for synthItal.
e41820ee 3970 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 3971
73b26103
SZ
39722009-06-14 Seiji Zenitani <zenitani@mac.com>
3973
3974 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
3975
5753e4da
KH
39762009-06-11 Kenichi Handa <handa@m17n.org>
3977
3978 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
3979 overhang for the static composition case.
3980
3561b671
KH
39812009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3982
5753e4da
KH
3983 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
3984 overhang for the automatic composition case.
3985
3561b671
KH
3986 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
3987 composition case.
3988
852bbd41
CY
39892009-06-10 Chong Yidong <cyd@stupidchicken.com>
3990
3991 * xdisp.c (get_next_display_element): When handling wrap-prefix
3992 and line-prefix, treat \n as a control character (bug#3502).
3993
9903d1e6
KH
39942009-06-10 Kenichi Handa <handa@m17n.org>
3995
3996 * font.c (font_parse_family_registry): Fix for one-char foundry.
3997 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
3998
0bcbaaaa
CY
39992009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
4000
4001 * process.c (status_message): Fix handling of multibyte signal
4002 string (Bug#3499).
4003
40aa3f13
JM
40042009-06-09 Jim Meyering <meyering@redhat.com>
4005
1f80c7e2
CY
4006 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
4007 color name is missing.
40aa3f13 4008
72d51285
KH
40092009-06-09 Kenichi Handa <handa@m17n.org>
4010
4011 * charset.c (Fmap_charset_chars): In docstring, state clearly that
4012 FROM-CODE and TO-CODE are codepoints of CHARSET.
4013
c1d04d84
AR
40142009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4015
4016 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
4017
40182009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4019
4020 Changes to support :script/:lang/:otf in NS font driver.
4021 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
4022 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
4023 indicate not part of font driver interface, and change callers.
4024 (ns_get_family): Remove pointless null check.
4025 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
4026 ns_spec_to_descriptor, ns_descriptor_to_entity.
4027 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
4028 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
4029 (ns_spec_to_descriptor, ns_descriptor_to_entity)
4030 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
4031 (ns_get_req_script, ns_accumulate_script_ranges)
4032 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
4033 New functions.
4034 (nsfont_list, nsfont_match): Use ns_findfonts.
4035 (nsfont_open): Use font descriptor instead of traits.
4036 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
4037 (dump_glyphstring): Rename to ns_dump_glyphstring.
4038
c7eb9816
AR
4039 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
4040
c1d04d84
AR
4041 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
4042
4043 * fontset.c (fontset_from_font): Remove NS-specific code.
4044
ec7709ba 40452009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
4046
4047 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
4048 nonactive windows.
4049
31fd7c5c 40502009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 4051
1ac9108a 4052 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 4053
68852c13 40542009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
4055
4056 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
4057
6756cd1d
CY
40582009-06-07 Chong Yidong <cyd@stupidchicken.com>
4059
4060 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
4061 account for the overflowing of newlines into the last glyph on the
4062 display line (Bug#3482).
4063
28bf482a
DR
40642009-06-05 David Reitter <david.reitter@gmail.com>
4065
ec7709ba
JB
4066 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
4067 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
4068 Fns_selection_exists_p, Fns_selection_owner_p.
4069
fdb55376
JR
40702009-06-03 Jason Rumney <jasonr@gnu.org>
4071
4072 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
4073 available. (Bug#3379)
4074
05129fbe
KH
40752009-05-29 Kenichi Handa <handa@m17n.org>
4076
1ac9108a
SM
4077 * coding.c (get_translation_table):
4078 Check Venable_character_translation.
05129fbe 4079
ec7709ba 40802009-05-26 David Reitter <david.reitter@gmail.com>
15891144 4081
ec7709ba
JB
4082 * nsterm.m (ns_raise_frame): Only raise frame if visible.
4083 (x_make_frame_visible): Move frame to front rather than calling
15891144 4084 ns_raise_frame().
ec7709ba 4085 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 4086 isn't key window.
ec7709ba 4087 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
4088 drawRect may be called by NSView even if the frame is hidden.
4089
ec7709ba
JB
4090 * nsfns.m (Fx_create_frame): Follow other ports in
4091 determining visibility; default to t. Ensure async_visible is set.
15891144 4092
21f73755
EZ
40932009-05-23 Eli Zaretskii <eliz@gnu.org>
4094
4095 * dired.c (Ffile_attributes): Doc fix.
4096
34001e41
CY
40972009-05-22 Chong Yidong <cyd@stupidchicken.com>
4098
4099 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
4100
46306a17
SM
41012009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
4102
4103 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
4104 and xfont_scratch_props.
4105 (syms_of_xfont): Do it here instead.
4106 (xfont_find_ccl_program): Delete, unused.
4107 (xfont_open): Delete unused var `i'.
4108
ef6e0694
KH
41092009-05-21 Kenichi Handa <handa@m17n.org>
4110
4111 * fontset.c (Qlatin): Don't make it static.
4112
46306a17
SM
4113 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
4114 New functions.
ef6e0694
KH
4115 (xfont_scripts_cache, xfont_scratch_props): New variables.
4116 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
4117 (xfont_list_pattern): Argument changed. Callers changed.
4118 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
4119 (xfont_list): Don't reject a font spec with :script property.
4120 (xfont_has_char): Fix setting of encoding.
4121 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
4122 xfont_scratch_props.
4123
41242009-05-19 Kenichi Handa <handa@m17n.org>
4125
46306a17 4126 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
4127 Callers changed.
4128
41292009-05-18 Kenichi Handa <handa@m17n.org>
4130
4131 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
4132
ac71ced7
SM
41332009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
4134
4135 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
4136 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
4137
1c6d1051
YM
41382009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4139
4140 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
4141 (x_delete_terminal): Dissociate resource database from display and
4142 then call XrmDestroyDatabase before closing display.
4143
9b9b779c
AR
41442009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
4145
4146 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
4147 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
4148 whether selected frame is viable before raising it (based on patch
4149 by David Reitter), and improve commentary.
4150 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 4151
cccd42d5
KH
41522009-05-15 Kenichi Handa <handa@m17n.org>
4153
4154 * font.c (Ffont_spec): Check arguments.
4155
337fbd17
CY
41562009-05-14 Chong Yidong <cyd@stupidchicken.com>
4157
4158 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
4159 weight when testing attributes (Bug#3282).
4160
47a6002f
JD
41612009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4162
4163 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
4164 what we expect to get in the next ConfigureNotify event.
4165
9cb363db
YM
4166 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
4167 before Xft one (Bug#1696).
4168
b9126609
CY
41692009-05-07 David Reitter <david.reitter@gmail.com>
4170
4171 * nsfns.m (Fx_display_planes): Compute bitplanes using
4172 NSBitsPerPixelFromDepth (Bug#3207).
4173
27a69fd9
CY
41742009-05-10 Chong Yidong <cyd@stupidchicken.com>
4175
4176 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
4177
00f37552
TTN
41782009-05-10 Ulrich Mueller <ulm@gentoo.org>
4179
4180 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
4181
2d82a920
DR
41822009-05-07 David Reitter <david.reitter@gmail.com>
4183
ec7709ba
JB
4184 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
4185 Respect mouse face background.
2d82a920 4186
46b0d52d
DR
41872009-05-07 David Reitter <david.reitter@gmail.com>
4188
ec7709ba
JB
4189 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
4190 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
4191 in ns_update_begin and ns_update_end.
4192
ce1b23bb
SM
41932009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4194
5996e1b7
SM
4195 * nsfns.m (ns_get_screen): Rewrite.
4196 Don't presume selected-frame is of type `ns'.
4197
ba98e3a0
SM
4198 * font.c (font_update_drivers): Sanity fallback to avoid disabling
4199 all drivers.
4200
ce1b23bb
SM
4201 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
4202
bcda200f
YM
42032009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4204
4205 * keyboard.h (add_user_signal): Fix typo in extern.
4206
4207 * lisp.h (add_user_signal): Remove extern.
4208
4209 * unexelf.c (unexec): Consider a section to precede the .bss section
4210 if its addresses overlap that of .bss.
4211 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
4212 instead of dumping process.
4213
864660a2
SM
42142009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4215
4216 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
4217
50da4e56
SM
42182009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
4219
4220 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
4221
51520a1a
DN
42222009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
4223
4224 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
4225 any statements.
4226
409ea3a1
AS
42272009-05-02 Andreas Schwab <schwab@linux-m68k.org>
4228
59c4c60f
AS
4229 * process.c (read_process_output): Make sure the current buffer is
4230 always restored.
4231
409ea3a1
AS
4232 * coding.c (record_conversion_result): Don't modify
4233 Vlast_code_conversion_error for successful result.
4234 (alloc_destination): Don't clobber conversion result. (Bug#1650)
4235
56f00ed2
KH
42362009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
4237
4238 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 4239 (load_charset_map): Remove unnecessary code.
56f00ed2 4240
4491c9d2
DR
42412009-04-30 David Reitter <david.reitter@gmail.com>
4242
35f5b128 4243 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
4244 through f24.
4245
6970f632
CY
42462009-04-30 Chong Yidong <cyd@stupidchicken.com>
4247
4248 * xfaces.c (face_at_buffer_position): New arg base_face_id.
4249
4250 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
4251 face_at_buffer_position.
4252 (face_before_or_after_it_pos, get_next_display_element)
4253 (note_mouse_highlight): Update face_at_buffer_position call.
4254
4255 * term.c (term_mouse_highlight):
4256 * msdos.c (IT_note_mouse_highlight):
4257 * fontset.c (Finternal_char_font):
35f5b128 4258 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
4259
4260 * dispextern.h (face_at_buffer_position): Update prototype.
4261
0c616f63
KH
42622009-04-30 Kenichi Handa <handa@m17n.org>
4263
35f5b128 4264 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 4265
ad3aaf33
AS
42662009-04-29 Andreas Schwab <schwab@linux-m68k.org>
4267
4268 * callproc.c (Fcall_process): Fix GC protection. Make sure
4269 current buffer is always restored.
4270
c3c963a0
YM
42712009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4272
4273 * atimer.c (init_atimer): Also clear stopped_atimers.
4274
4275 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
4276
7e3386cb
YM
4277 * process.c (create_process): Clean up merger residues of
4278 2008-07-17 change.
4279
91f68422
CY
42802009-04-29 Ulrich Mueller <ulm@gentoo.org>
4281
4282 * lread.c (Vread_circle): New variable.
4283 (read1): Disable recursive read if Vread_circle is nil.
4284
24b34550
KH
42852009-04-29 Kenichi Handa <handa@m17n.org>
4286
4287 * fontset.h (set_default_ascii_font): Delete extern.
4288
4289 * fontset.c (set_default_ascii_font): Delete this unused function.
4290
4291 * frame.c (x_set_font): When ARG is a font-object, check if the
4292 font-object matches with the ASCII font-spec of the frame's
9c358bda 4293 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 4294
77bf07e1
AS
42952009-04-28 Andreas Schwab <schwab@linux-m68k.org>
4296
4297 * fns.c (Flocale_info): Protect vector from GC during decoding.
4298
4299 * process.c (Fstart_process): Protect argv strings from GC during
4300 encoding.
4301
2c55aacf
AS
43022009-04-27 Andreas Schwab <schwab@linux-m68k.org>
4303
4304 * sysdep.c: Include <ctype.h>.
4305
b892d3c9
DR
43062009-04-27 David Reitter <david.reitter@gmail.com>
4307
35f5b128 4308 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
4309 Remove commented-out code.
4310
9d0644c4
JB
43112009-04-26 Johan Bockgård <bojohan@gnu.org>
4312
4313 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
4314
b7053016
JR
43152009-04-25 Jason Rumney <jasonr@gnu.org>
4316
4317 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
4318
4e8231f3
YM
43192009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4320
4321 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
4322 Swap bytes in short integer if fringe bitmap width > 8.
4323
493dcf2c
KH
43242009-04-23 Kenichi Handa <handa@m17n.org>
4325
4326 * xfaces.c (Fx_list_fonts): If a font size is specified in
4327 PATTERN, set it in returned scalable fonts.
4328
401e9e57
CY
43292009-04-22 Chong Yidong <cyd@stupidchicken.com>
4330
708e05dc
CY
4331 * keyboard.c (Fset_input_meta_mode): Doc fix.
4332
4333 * dispnew.c (Fsend_string_to_terminal): Doc fix.
4334
1ac9108a 4335 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
4336
4337 * coding.c (Fterminal_coding_system): Doc fix.
4338
4339 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
4340 (Fx_display_pixel_height, Fx_display_planes)
4341 (Fx_display_color_cells, Fx_server_max_request_size)
4342 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
4343 (Fx_display_mm_height, Fx_display_mm_width)
4344 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
4345 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
4346 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
4347 (check_x_display_info): Handle terminal objects instead of
4348 terminal ids.
4349
401e9e57
CY
4350 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
4351 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
4352 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
4353 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 4354
df80c7f0
KH
43552009-04-21 Kenichi Handa <handa@m17n.org>
4356
5a8f12af 4357 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 4358 (font_score): Check AVGWIDTH too.
908567ef 4359
df80c7f0
KH
4360 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
4361 worst case.
1ac9108a
SM
4362 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
4363 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 4364
705af33f
JR
43652009-04-19 Jason Rumney <jasonr@gnu.org>
4366
4367 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 4368 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
4369
4370 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
4371 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
4372 get_phys_cursor_geometry.
4373
b71ac3dd 4374 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
4375 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
4376 using get_phys_cursor_geometry.
4377
4378 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
4379 correctly calculated.
4380
dc2933eb
JD
43812009-04-19 Jan Djärv <jan.h.d@swipnet.se>
4382
1ac9108a
SM
4383 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
4384 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
4385 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
4386 is deprecated.
4387
973e7849
AS
43882009-04-18 Andreas Schwab <schwab@linux-m68k.org>
4389
4390 * font.c (font_put_frame_data): Use xfree instead of free.
4391
314d66f4
JB
43922009-04-17 Juanma Barranquero <lekktu@gmail.com>
4393
4394 * w32font.c (Qja, Qko): Remove declarations.
4395 (syms_of_w32font): Don't DEFSYM them.
4396
cf702558
CY
43972009-04-17 Chong Yidong <cyd@stupidchicken.com>
4398
4399 * font.c (Qja, Qko): Move definitions here from ftfont.c.
4400
4401 * font.h (Qja, Qko): Extern them.
4402
4403 * ftfont.c (Qja, Qko): Remove declarations.
4404
4405 * xfont.c (Qja, Qko): Remove declarations.
4406
b50504f5
KH
44072009-04-17 Kenichi Handa <handa@m17n.org>
4408
bde25748
KH
4409 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
4410 string from a vector to handle Latin-1 characters correctly.
4411
b50504f5
KH
4412 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
4413 entity even if the cache hits.
4414
f4646fff
AS
44152009-04-16 Andreas Schwab <schwab@linux-m68k.org>
4416
4417 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 4418 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 4419
e7deaab0
AS
4420 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
4421 * lisp.h: Adjust prototypes.
4422
0a0e7d49
CY
44232009-04-16 Chong Yidong <cyd@stupidchicken.com>
4424
4425 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
4426 change (Bug#3003).
4427
3c908a57
KH
44282009-04-16 Kenichi Handa <handa@m17n.org>
4429
1ac9108a 4430 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
4431
4432 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
4433 adstyle.
4434
4435 * ftfont.c (Qja, Qko): Don't make them static.
4436 (enum ftfont_cache_for): New enum.
4437 (fc_charset_table): Undo the previous change.
4438 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
4439 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
4440 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
4441 non-scarable font, try to get AVERAGE_WIDTH.
4442 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
4443 Change ft_face_cache from a list of a hash-table. Don't check
4444 `ja' and `ko' adstyle here.
4445 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
4446 FTFONT_CACHE_FOR_CHARET.
4447 (ftfont_get_charset): Undo the previous change.
1ac9108a 4448 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
4449 (ftfont_close): Likewise.
4450 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
4451
4452 * font.c (font_sort_entites): Change the meaning of the arg
4453 BEST-ONLY. Don't optimize for VEC of lenght 1.
4454 (font_select_entity): Just return the value of font_sort_entites.
4455
4456 * xfaces.c (merge_face_vectors): Reflect font properties in
4457 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
4458 font_clear_prop if a face attribute doesn't change.
4459
3c908a57
KH
4460 * charset.h (charset_ksc5601): Extern it.
4461
4462 * charset.c (charset_ksc5601): New variable.
4463 (Fdefine_charset_internal): Set charset_ksc5601.
4464 (init_charset_once): Initialize charset_ksc5601 to -1.
4465
d65859c3
DN
44662009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
4467
4468 * fileio.c (history_delete_duplicates): Remove unused declaration.
4469
4470 * callint.c (history_delete_duplicates): New declaration.
4471 (Fcall_interactively): Remove command history duplicates when
4472 history_delete_duplicates is true.
4473
3ba010e5
EZ
44742009-04-14 Eli Zaretskii <eliz@gnu.org>
4475
4476 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
4477
06f19b91
KH
44782009-04-14 Kenichi Handa <handa@m17n.org>
4479
4480 * font.c (Ffont_info): Fix docstring. Fix the second element of
4481 the returned value (bug#2949).
4482
2cce8bfc
CY
44832009-04-14 Chong Yidong <cyd@stupidchicken.com>
4484
4485 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
4486
d156542d
KH
44872009-04-14 Kenichi Handa <handa@m17n.org>
4488
4489 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
4490 encoding charset is ascii_compatible.
4491
4492 * charset.c (Fdefine_charset_internal): Make charset
4493 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
4494 code_offset is 0, and covers all ASCII characters.
4495
86fa089e
SM
44962009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
4497
4498 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
4499 (ns_string_to_pasteboard_internal):
4500 * nsmenu.m (process_dialog):
4501 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
4502 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
4503 * lisp.h (Fx_load_color_file): Declare.
4504
a8a3728b
KH
45052009-04-13 Kenichi Handa <handa@m17n.org>
4506
1ac9108a 4507 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
4508 (font_select_entity): Suppress the code to optimize for the same
4509 kind of fonts.
4510 (font_load_for_lface): Get a font that supports at least ASCII
4511 characters.
4512
4513 * ftfont.c (Qja, Qko): New variables.
4514 (fc_charset_table): Delete uniquifier data for iso8859-1.
4515 (ftfont_get_latin1_charset): New function.
4516 (get_adstyle_property): New function.
4517 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
4518 bitmap fonts.
4519 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
4520 Delete iso-8859-1 range from the charset of fonts whose adstyle is
4521 `ko' or `ja'.
4522 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 4523 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
4524 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
4525 property.
4526 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
4527 (syms_of_ftfont): DEFSYM Qja and Qko.
4528
483670b5
KH
45292009-04-09 Kenichi Handa <handa@m17n.org>
4530
12b55765
KH
4531 * charset.c (map_charset_chars): For a charset of `superset'
4532 method, fix calculation of code range.
4533
483670b5
KH
4534 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
4535 from the list of extra properties.
4536 (font_clear_prop): Be sure to delete `:name' font property.
4537
57d3b93b
KH
45382009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4539
b4b2c2ca
YM
4540 * dispnew.c (redraw_overlapping_rows): Fix detection of
4541 overlapping for topmost and bottommost rows.
4542
1ac9108a 4543 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 4544
472c3609
JR
45452009-04-06 Jason Rumney <jasonr@gnu.org>
4546
4547 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
4548
ab193662
KH
45492009-04-06 Kenichi Handa <handa@m17n.org>
4550
4551 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
4552
4553 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
4554
0c26f026
KH
45552009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4556
4557 * ftfont.c (ftfont_open): Fix checking of the return value of
4558 FT_Load_Char. Fix setting font->underline_thickness.
4559
e173bbce
CY
45602009-04-04 Chong Yidong <cyd@stupidchicken.com>
4561
4562 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
4563 (Fterminal_parameters, Fterminal_parameter)
4564 (Fset_terminal_parameter): In doc string, refer to terminal
4565 objects rather than terminal ids.
4566
693a2698
EZ
45672009-04-04 Eli Zaretskii <eliz@gnu.org>
4568
4569 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
4570 ret_lim_data. (Bug#2867)
4571
d5221487
CY
45722009-04-03 Chong Yidong <cyd@stupidchicken.com>
4573
4574 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
4575 so they don't get wider than the window, matching 2006-01-23
4576 change to the partner function in xdisp.c (Bug#2800).
4577
223509a3
KH
45782009-04-03 Kenichi Handa <handa@m17n.org>
4579
4580 * print.c (print_object): Make each lowest sub_char_table start a
4581 new line (Bug#2866).
4582
74fcd0b1
KH
45832009-04-02 Kenichi Handa <handa@m17n.org>
4584
4585 * fontset.c (fontset_font): Record no-font when a fontset
4586 explicitly tells not to try another font-specs.
4587
c542407d
SM
45882009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
4589
4590 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
4591
e3869731
KH
45922009-03-30 Kenichi Handa <handa@m17n.org>
4593
d8d2f142
KH
4594 * fontset.c (fontset_from_font): Specify only registry in a
4595 font-spec for all characters supported by that registry.
4596
e3869731
KH
4597 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
4598 even if HAVE_M17N_FLT is not defined.
4599
5da5f805
CY
46002009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
4601
4602 * ftfont.c: Conditionalize prototyping and use of
4603 ftfont_variation_glyphs.
4604
ab226c50
SM
46052009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
4606
9628fed7
SM
4607 * frame.c (delete_frame): Work around compiler bug.
4608
4609 * editfns.c (general_insert_function): Adjust to insdel.c changes.
4610 * insdel.c (prepare_to_modify_buffer, signal_before_change):
4611 Some more EMACS_INT.
4612 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
4613
4614 * xdisp.c (dump_glyph): Fix typo.
4615
ae19ba7c
SM
4616 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
4617 (adjust_markers_gap_motion, adjust_markers_for_delete)
4618 (adjust_markers_for_insert, adjust_point)
4619 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
4620 (make_gap, copy_text, count_size_as_multibyte, insert)
4621 (insert_and_inherit, insert_before_markers)
4622 (insert_before_markers_and_inherit, insert_1)
4623 (count_combining_before, count_combining_after, insert_1_both)
4624 (insert_from_string, insert_from_string_before_markers)
4625 (insert_from_string_1, insert_from_gap, insert_from_buffer)
4626 (insert_from_buffer_1, adjust_after_replace)
4627 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
4628 (replace_range_2, del_range, del_range_1, del_range_byte)
4629 (del_range_both, del_range_2, modify_region)
4630 (prepare_to_modify_buffer, signal_before_change)
4631 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
4632 for buffer positions and sizes.
4633 * lisp.h: Adjust prototypes accordingly.
4634
4635 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
4636 (non_regular_inserted, non_regular_nbytes, read_non_regular)
4637 (Finsert_file_contents): Use EMACS_INT for buffer positions.
4638
ab226c50
SM
4639 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
4640
46dfb8fb
JD
46412009-03-27 Jan Djärv <jan.h.d@swipnet.se>
4642
4643 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
4644 lines and columns so we keep the same pixel height and width.
4645
4646 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
4647 the property _NET_WM_STATE has changed.
46dfb8fb
JD
4648 (x_handle_net_wm_state): New function to update frame parameter
4649 fullscreen.
4650 (x_term_init): Initialize atoms for _NET_WM_STATE.
4651
4652 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
4653
d347e494
SM
46542009-03-27 Kevin Ryde <user42@zip.com.au>
4655
4656 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
4657 Gpm_GetEvent as an error that justifies closing the filedescriptor.
4658 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
4659 (Fgpm_mouse_stop): Pass that new parameter.
4660 * termhooks.h (close_gpm): Adjust prototype.
4661
84db11d6
SM
46622009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
4663
c95a5008
SM
4664 * lisp.h (Fx_focus_frame): Declare.
4665
84db11d6
SM
4666 * callint.c (Fcall_interactively): For '^' just delegate the work to
4667 handle-shift-selection.
4668 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
4669
0a1958d6
CY
46702009-03-24 Chong Yidong <cyd@stupidchicken.com>
4671
0bfdff23
CY
4672 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
4673
0a1958d6
CY
4674 * data.c (Qinteractive_form): New variable.
4675 (Finteractive_form): Use it.
4676
4677 * eval.c (Fcommandp): Use Qinteractive_form.
4678
58aec0d6
JR
46792009-03-24 Jason Rumney <jasonr@gnu.org>
4680
4681 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
4682 Calculate total size precisely. Decode environment variables
4683 before substituting. (Bug#38)
4684
553dd618
KH
46852009-03-24 Kenichi Handa <handa@m17n.org>
4686
4687 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 4688 encoding (Bug#2722).
553dd618 4689
c39ea606
JD
46902009-03-23 Jan Djärv <jan.h.d@swipnet.se>
4691
4692 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
4693 that gdpy is set.
4694
bc9b2b5e
AM
46952009-03-22 Alan Mackenzie <acm@muc.de>
4696
4697 * callint.c (Finteractive): Clarify the doc string - even
4698 promptless elements need \n separators.
4699
9f995a76
JR
47002009-03-22 Jason Rumney <jasonr@gnu.org>
4701
4702 * w32term.c (syms_of_w32term): Doc fix for
4703 x-use-underline-position-properties.
4704
22749e9a
EZ
47052009-03-21 Eli Zaretskii <eliz@gnu.org>
4706
4707 * w32.c (getpwuid): Change argument type to unsigned.
4708 (struct w32_id): Change type of `rid' member to unsigned.
4709 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
4710 argument ID to unsigned. All callers changed.
4711 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
4712
e00553bf
EZ
47132009-03-20 Eli Zaretskii <eliz@gnu.org>
4714
4715 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
4716 negative, produce a float value.
4717
4718 * dired.c (make_uid, make_gid): New functions.
4719 (Ffile_attributes): Use them to avoid negative UID and GID.
4720
f761d6b6
JB
47212009-03-20 Juanma Barranquero <lekktu@gmail.com>
4722
4723 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
4724 (syms_of_keyboard) <command-hook-internal, input-method-function>:
4725 Fix typos in docstrings.
4726
d507f8d7
KH
47272009-03-19 Kenichi Handa <handa@m17n.org>
4728
4729 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
4730 changed, use font_load_for_lface to get a new font object.
4731 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
4732
4733 * frame.c (x_set_font): Handle the case that ARG is a cons.
4734
c68845e0
GM
47352009-03-19 Glenn Morris <rgm@gnu.org>
4736
4737 * fileio.c (Fsubstitute_in_file_name): Doc fix.
4738
bfa49dd1
CY
47392009-03-19 Chong Yidong <cyd@stupidchicken.com>
4740
4741 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
4742
8458d4c1
KH
47432009-03-19 Kenichi Handa <handa@m17n.org>
4744
4745 * charset.c (load_charset_map_from_file): When a mapfile can't be
4746 loaded, signal an error.
4747
78e7d1fe
EZ
47482009-03-18 Eli Zaretskii <eliz@gnu.org>
4749
4750 * dired.c (Ffile_attributes): Make sure UID and GID are always
4751 positive, even if the value is too large for a positive EMACS_INT.
4752 Doc fix.
4753
4754 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
4755
5da9fdfa
YM
47562009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4757
4758 * xmenu.c (xdialog_show): Move Fredisplay call ...
4759 (Fx_popup_dialog): ... here.
4760
7519c40d
SM
47612009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
4762
4763 * dired.c (file_name_completion): Disable the first optimization just
4764 installed, since it is not implemented correctly.
4765
2cd298e2
SM
47662009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
4767
4768 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 4769 only if the entry can affect bestmatch.
2cd298e2
SM
4770 Stop the search early, as Ftry_completion already does.
4771
48d37adf
CY
47722009-03-17 Chong Yidong <cyd@stupidchicken.com>
4773
e10c9c93 4774 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 4775
9286b16a
CY
47762009-03-15 Chong Yidong <cyd@stupidchicken.com>
4777
4778 * keyboard.c (parse_menu_item): Don't display remappings as menu
4779 equivalent bindings (Bug#788).
4780
f7b146dc
JR
47812009-03-15 Jason Rumney <jasonr@gnu.org>
4782
4783 * w32term.h (WM_EMACS_PAINT): New message.
4784 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
4785 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
4786 before passing to lisp thread. (Bug#950)
4787
f761d6b6 47882009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 4789
d93f9575
CY
4790 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
4791 variable as it was never reset.
4792 (ns_term_init): Remove initialization of Lisp-settable defaults
4793 and ns_expand_space.
4794 (-setPanelFromDefaultValues): Remove ns_expand_space.
4795 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
4796 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
4797 i.e. no additional spacing, similar to Carbon port.
4798
d93f9575
CY
4799 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
4800 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 4801
305018ec
JD
48022009-03-14 Jan Djärv <jan.h.d@swipnet.se>
4803
4804 * sound.c (alsa_configure): Remove call to deprecated
4805 snd_pcm_sw_params_set_xfer_align.
4806
f761d6b6 48072009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
4808
4809 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
4810 after clicking in a detached tool bar.
4811 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
4812
46e722a9
SM
48132009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
4814
348db3dd
SM
4815 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
4816 int/Lisp_Object mixup).
46e722a9 4817
a3d16f39
KH
48182009-03-13 Kenichi Handa <handa@m17n.org>
4819
4820 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 4821 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
4822 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
4823 (set_fontset_font): Change ARG to a vector. Handle range_list in
4824 ARG correctly.
4825 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 4826 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
4827 the above change.
4828 (fontset_from_font): Fix previous change.
fe24f56a 4829 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
4830 entry. If FONTSET is the default fontset, don't set the extra
4831 slot of the returning char-table.
4832
b066e6b6
JB
48332009-03-12 Juanma Barranquero <lekktu@gmail.com>
4834
4835 * nsfns.m (Fx_close_connection): Doc fix.
4836 (Fns_do_applescript): Reflow docstring.
4837 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
4838 (Fx_display_pixel_width, Fx_display_pixel_height)
4839 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
4840 Fix typos in docstrings.
4841 (Fns_set_alpha): Fix typos in error messages.
4842
d472514e 48432009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 4844
d472514e 4845 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
4846 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
4847 were used for such events.
4848
d472514e
JB
4849 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
4850 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 4851
d472514e 4852 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
4853 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
4854
fb930676
KH
48552009-03-11 Kenichi Handa <handa@m17n.org>
4856
ff85581a
KH
4857 * font.h (font_open_by_spec): Extern it.
4858
c50b7e98
KH
4859 * font.c (font_open_by_spec): New function.
4860 (font_open_by_name): Use font_open_by_spec.
4861
fb930676
KH
4862 * frame.c (x_set_font): When ARG is a font-object, don't alter the
4863 fontset of the frame.
4864
4865 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
4866 modify the default font of frames that use this fontset.
4867 (num_auto_fontsets): New variable.
4868 (fontset_from_font): Use num_auto_fontsets to decide a fontset
4869 name. Be sure to set FONTSET_ASCII to the correct font name.
4870 (update_auto_fontset_alist): New function.
4871
df4e8455
JB
48722009-03-11 Juanma Barranquero <lekktu@gmail.com>
4873
4874 * makefile.w32-in: Update dependencies.
4875
0a375797
AR
48762009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
4877
4878 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
4879
61313fa3
SM
48802009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
4881
4882 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
4883
b55103fb
CY
48842009-03-10 Chong Yidong <cyd@stupidchicken.com>
4885
4886 * lread.c (Feval_buffer): Doc fix.
4887
dde2559c
KH
48882009-03-09 Kenichi Handa <handa@m17n.org>
4889
4890 * charset.c (Qfile_name_handler_alist): Extern it.
4891 (load_charset_map_from_file): Temporarily bind
4892 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
4893
df4e8455 48942009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 4895
47f588bb
GM
4896 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
4897 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 4898
4ddf94bd
AR
48992009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
4900
4c9bdfc2
AR
4901 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
4902 (x_set_window_size): Change back to calculated method of setting
4903 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
4904 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
4905 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
4906
fe41ae9e
AR
4907 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
4908
4c9bdfc2
AR
4909 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
4910 accelerator in parens under GNUstep.
4911
825d0875
KH
49122009-03-06 Kenichi Handa <handa@m17n.org>
4913
4914 These changes are to detect incorrect composition sequence without
f3b3be74 4915 looking ahead the source. (Bug#2370)
825d0875
KH
4916
4917 * coding.h: Include "composite.h".
4918 (enum compisition_state): New enum.
4919 (struct compisition_status): New struct.
4920 (struct iso_2022_spec): New member cmp_status.
4921 (struct emacs_mule_spec): New struct.
4922 (struct coding_system): New members ctext_extended_segment_len and
4923 embedded_utf_8. Change the union member
4924 spec.emacs_mule_full_support to spec.emacs_mule.
4925
4926 * coding.c (CODING_ISO_CMP_STATUS): New macro.
4927 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 4928 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
4929 (ADD_COMPOSITION_DATA): New arg nbytes.
4930 (emacs_mule_char): New arg cmp_status.
4931 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
4932 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
4933 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
4934 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
4935 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
4936 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
4937 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
4938 (EMACS_MULE_COMPOSITION_END): New macro.
4939 (emacs_mule_finish_composition): New function.
4940 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
4941 (decode_coding_emacs_mule): Avoid long looking ahead while
4942 handling composition.
4943 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
4944 (ENCODE_COMPOSITION_RULE): New macro.
4945 (finish_composition): New function.
4946 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
4947 (DECODE_COMPOSITION_START): New implementation.
4948 (DECODE_COMPOSITION_END): Likewise.
4949 (STORE_COMPOSITION_RULE): New macro.
4950 (decode_coding_iso_2022): Avoid long looking ahead while handling
4951 composition, CTEXT extended segment, and embedded UTF-8.
4952 (setup_coding_system): For a coding of type iso-2022, reset
4953 CODING_ISO_EXTSEGMENT_LEN (coding) and
4954 CODING_ISO_EMBEDDED_UTF_8 (coding).
4955 (get_translation): Delete arguments last_block, from_nchars,
4956 to_nchars. Callers changed.
4957 (produce_chars): Don't modify charbuf. Adjusted for the change of
4958 get_translation.
98a326f7 4959 (produce_composition): Adjust for the new annotation sequence.
825d0875 4960 (handle_composition_annotation): Likewise.
98a326f7 4961 (consume_chars): Adjust for the change of get_translation.
825d0875 4962
ccbc4452
AR
49632009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
4964
4ddf94bd 4965 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 4966
988a7ddb
KH
49672009-03-05 Kenichi Handa <handa@m17n.org>
4968
4969 * font.c (font_select_entity): New function.
4970 (font_find_for_lface): Use font_select_entity to select a font.
4971
4972 * fontset.c (fontset_find_font): If a font found without
a8a3728b 4973 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
4974 font with C restriction.
4975
98a326f7 49762009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 4977
be1bce46 4978 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 4979
10ea2b82
JR
49802009-03-04 Jason Rumney <jasonr@gnu.org>
4981
2c93b248 4982 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 4983 characters that have already been read. (Bug#2569)
2c93b248 4984
10ea2b82
JR
4985 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
4986 Log an error message if check_image_size failed.
4987 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 4988 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 4989
71a0c011
EZ
49902009-03-02 Eli Zaretskii <eliz@gnu.org>
4991
4992 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
4993 when decoding process output.
4994
2f63bba8
RS
49952009-03-01 Richard M Stallman <rms@gnu.org>
4996
4997 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
4998
4999 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
5000
0a9564cb
EZ
50012009-02-28 Eli Zaretskii <eliz@gnu.org>
5002
5003 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
5004 (decode_coding_emacs_mule, decode_coding_iso_2022)
5005 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
5006 (decode_coding_raw_text, decode_coding_charset)
5007 (setup_coding_system, decode_eol, decode_coding, consume_chars):
5008 Honor inhibit-eol-conversion. (Bug #2186)
5009
449148b3
JR
50102009-02-28 Jason Rumney <jasonr@gnu.org>
5011
5012 * coding.c (detect_coding_charset): If not checking latin extra,
5013 fail on characters between 0x80 and 0xA0. (Bug#2354)
5014
a4aee864
EZ
50152009-02-28 Eli Zaretskii <eliz@gnu.org>
5016
5017 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 5018 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 5019
d88bee5a
GM
50202009-02-27 Glenn Morris <rgm@gnu.org>
5021
5022 * callint.c (Finteractive): Doc fix.
5023
a808f22d
KH
50242009-02-27 Kenichi Handa <handa@m17n.org>
5025
5026 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
5027
caf8d60c
CY
50282009-02-27 Chong Yidong <cyd@stupidchicken.com>
5029
5030 * font.c (font_style_to_value): Set value for unknown symbols to
5031 100 instead of 255.
b61137ea
CY
5032 (weight_table, slant_table, width_table): Treat "unspecified" as
5033 the default value.
caf8d60c 5034
1a0de25c
JB
50352009-02-26 Juanma Barranquero <lekktu@gmail.com>
5036
5037 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
5038
8fc45744
JB
50392009-02-25 Juanma Barranquero <lekktu@gmail.com>
5040
107bd7d1
JB
5041 * lread.c (Fload): Stop checking Vloads_in_progress and signal
5042 error as soon as a recursive load is detected.
8fc45744 5043
f097e223
AR
50442009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5045
5046 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
5047 before caching.
5048
8810a12f
KH
50492009-02-24 Kenichi Handa <handa@m17n.org>
5050
5051 * fontset.c (fontset_find_font): Fix the condition for checking
5052 unavailable font.
5053
2c7d1565
GM
50542009-02-24 Glenn Morris <rgm@gnu.org>
5055
5056 * xfaces.c (Finternal_set_font_selection_order): Remove leading
5057 whitespace that confuses documentation.
5058
a20878b6
MB
50592009-02-23 Miles Bader <miles@gnu.org>
5060
5061 * process.c (Flist_system_processes, Fprocess_attributes)
5062 (syms_of_process): Rename `system-process-attributes' to
5063 `process-attributes'.
5064
b3b58c01
AS
50652009-02-22 Andreas Schwab <schwab@linux-m68k.org>
5066
1b3b981b
AS
5067 * coding.h (struct coding_system): Make safe_charsets a pointer to
5068 unsigned char.
5069 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
5070 being 255.
5071 (SAFE_CHARSET_P): Likewise.
5072 (setup_iso_safe_charsets): Properly setup safe_charsets.
5073 (Fdefine_coding_system_internal): Likewise.
5074 (setup_coding_system): Likewise. Remove unneeded casts.
5075 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
5076 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
5077 unneeded casts.
5078
b3b58c01
AS
5079 * insdel.c (del_range_2): Don't modify gap contents when called
5080 from decode_coding_object. (Bug#1809)
5081
0b6f228c
CY
50822009-02-21 Chong Yidong <cyd@stupidchicken.com>
5083
5084 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
5085 Qfont_object.
5086 (Ftype_of): Recognize font objects.
5087
5088 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
5089
5090 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
5091 moved to data.c.
5092
52f8870b
AR
50932009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5094
5095 * nsterm.m (x_make_frame_invisible): Unset async_visible,
5096 async_iconified. Based on a patch by Christian Lynbech
5097 <christian.lynbech@tieto.com>.
5098 (EmacsView-windowDidMiniaturize:): Unset async_visible.
5099
7087d5e9
GM
51002009-02-20 Glenn Morris <rgm@gnu.org>
5101
5102 * syntax.c (Fskip_chars_forward): Fix doc typo.
5103
41d2ceef
CY
51042009-02-20 Chong Yidong <cyd@stupidchicken.com>
5105
5106 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
5107
1a3b7ca6
CY
51082009-02-19 Chong Yidong <cyd@stupidchicken.com>
5109
5110 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
5111
73cce38d
KH
51122009-02-19 Kenichi Handa <handa@m17n.org>
5113
5114 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 5115 Don't overflow coding->carryover. (Bug#2370)
73cce38d 5116
a51092ee
DN
51172009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
5118
5119 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
5120
c423ecca
KH
51212009-02-18 Kenichi Handa <handa@m17n.org>
5122
5123 * font.c (font_check_otf_features): Fix handling of `nil' element.
5124 (Ffont_spec): Describe :lang and :otf in the docstring.
5125
4c1958f4
AS
51262009-02-16 Andreas Schwab <schwab@suse.de>
5127
5128 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
5129 string.
5130
5704f39a
KH
51312009-02-16 Kenichi Handa <handa@m17n.org>
5132
5133 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 5134 (Bug#1723)
5704f39a 5135
8f0085aa
CY
51362009-02-14 Chong Yidong <cyd@stupidchicken.com>
5137
a057d86a 5138 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
5139
5140 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
5141 (handle_line_prefix): Suppress wrapping of wrap prefixes.
5142
aff01dd9
EZ
51432009-02-14 Eli Zaretskii <eliz@gnu.org>
5144
5145 * msdos.c (MAX_SCREEN_BUF): New macro.
5146 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
5147 Encode the entire run of glyphs sharing the same face, instead of
5148 doing that one glyph at a time (fixes a bug with displaying
5149 double-size characters).
5150
ba301db3
AR
51512009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
5152
5153 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
5154
5155 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
5156 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 5157 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
5158
5159 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 5160 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 5161
51d861de
SM
51622009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
5163
ac146f82 5164 * keyboard.c (adjust_point_for_property): Allow stopping between two
51d861de
SM
5165 invisible areas.
5166
7fed8996
JR
51672009-02-12 Jason Rumney <jasonr@gnu.org>
5168
631ea4fb
JR
5169 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
5170 (add_font_entity_to_list): Call check_face_name even when family
5171 is unspecified.
5172
cb4a3e42
JR
5173 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5174 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 5175 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 5176
7fed8996 5177 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 5178 raster fonts. (Bug#2219)
7fed8996 5179
895416e3
KH
51802009-02-12 Kenichi Handa <handa@m17n.org>
5181
5182 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
5183 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
5184 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 5185 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
5186 (find_automatic_composition): While looking forward and backward,
5187 check static composition. Fix where to stop looking forward.
5188 (composition_adjust_point): Fix checking of static composition.
5189 (Fcomposition_get_gstring): Pay attention to
1dacf998 5190 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
5191
5192 * lisp.h (fast_looking_at): Extern it.
5193
5194 * search.c (fast_looking_at): New function.
5195
51d861de 5196 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
5197 <struct glyph>.u.cmp.to.
5198 (append_composite_glyph): Likewise.
5199
51d861de 5200 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
5201 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
5202 composition.
51d861de 5203 (append_composite_glyph): Adjust for the change of
895416e3
KH
5204 <strcut glyph>.u.cmp.to.
5205
8510724d
JB
52062009-02-11 Juanma Barranquero <lekktu@gmail.com>
5207
5208 * casetab.c (init_casetab_once):
5209 * coding.c (ALLOC_CONVERSION_WORK_AREA):
5210 * font.c (font_update_lface):
5211 * fontset.c (Fnew_fontset):
5212 * ftfont.c (ftfont_drive_otf):
5213 * xfont.c (xfont_open):
5214 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
5215
294fa707
SM
52162009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
5217
5218 * fileio.c (Fwrite_region): !NILP -> CONSP.
5219
b5bfebec
AS
52202009-02-10 Andreas Schwab <schwab@suse.de>
5221
5222 * process.c (send_process): Properly relocate pointer into data
adab88bd 5223 when using encoded data. (Bug#2272)
b5bfebec 5224
cb84a2be
KH
52252009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
5226
5227 * coding.c (detect_coding_charset): Fix previous change.
5228
89e09428
JR
52292009-02-08 Jason Rumney <jasonr@gnu.org>
5230
5231 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 5232 disappeared while hourglass was displayed. (Bug #2193)
89e09428 5233
4470a277
AS
52342009-02-07 Andreas Schwab <schwab@suse.de>
5235
5236 * unexelf.c (unexec): Fix error message.
5237
3175b12a
AR
52382009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
5239
5240 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 5241 when modal window is active. (Bug #2152)
3175b12a
AR
5242 (applicationShouldTerminate:): Remove now-unneeded while loop
5243 around NSRunAlertPanel.
5244
5245 * nsmenu.m (popupSession): New file-global variable.
5246 (pop_down_menu): End the popupSession before closing dialog.
5247 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
5248 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
5249 don't query NSApp for events (just sleep instead).
5250
8434d0b8
EZ
52512009-02-07 Eli Zaretskii <eliz@gnu.org>
5252
51d861de
SM
5253 * coding.c (syms_of_coding) <translation-table-for-input>:
5254 Modify doc string to discourage use for character code unification.
8434d0b8 5255
aa82edfd
CY
52562009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5257
5258 * atimer.c (run_timers): Update pending_atimers.
5259
2d283c7c
CY
52602009-02-06 Chong Yidong <cyd@stupidchicken.com>
5261
eb306cab
CY
5262 * image.c (svg_load_image): Fix last change.
5263
2d283c7c
CY
5264 * xfns.c (Fx_create_frame): Signal an error if no font is
5265 found (Bug#2147).
5266
4d8e170e
JB
52672009-02-05 Juanma Barranquero <lekktu@gmail.com>
5268
5269 * character.c (syms_of_character) <script-representative-chars>:
5270 Fix typo in docstring.
5271
c96169a0
AR
52722009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5273
5274 * nsmenu.m (pop_down_menu): New function.
5275 (ns_popup_dialog): Call it on unwind.
5276 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
5277 call timer_check() (Bug#2154).
5278 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
5279 handling_signal is set.
5280 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
5281
31fd7c5c 5282 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
5283
5284 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
5285
5286 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
5287
51d861de
SM
5288 * keyboard.c (poll_for_input_1, handle_async_input):
5289 Set handling_signal under HAVE_NS.
c96169a0 5290
aacd8ba1
GM
52912009-02-04 Glenn Morris <rgm@gnu.org>
5292
5293 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
5294
4cb75c4b
KH
52952009-02-04 Kenichi Handa <handa@m17n.org>
5296
5297 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
5298
5299 * charset.c (Fchar_charset): New optional arg restriction.
5300
5301 * coding.h (coding_system_charset_list): Extern it.
5302
5303 * coding.c (coding_system_charset_list): New function.
5304
5305 * composite.c: Include coding.h and termhooks.h.
5306 (composition_gstring_p): Fix for the terminal case.
5307 (composition_gstring_width): Likewise.
5308 (fill_gstring_body): Likewise.
5309 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
5310 the frame.
5311 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
5312 is within a composition.
867d4bb3 5313 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
5314
5315 * term.c (encode_terminal_code): Fix handling of composition.
5316 (produce_composite_glyph): For static composition, get pixel_width
5317 from struct composition.
5318
826ba17e
AS
53192009-02-02 Andreas Schwab <schwab@suse.de>
5320
5321 * unexelf.c (unexec): Handle unaligned bss offset.
5322
8ad093db
AR
53232009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5324
5325 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
5326 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 5327
8ad093db
AR
5328 * keyboard.c (handle_interrupt): Don't call
5329 quit_throw_to_read_char() under NS.
d0a76a6e 5330
8ad093db
AR
5331 * blockinput.h: Remove NS-specific code.
5332
4d18a7a2
DN
53332009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
5334
db878925
DN
5335 * dispnew.c (window_change_signal): Don't try to get the size of a
5336 suspended tty frame.
5337 * term.c (Fresume_tty): Resize if the size has changed while the
5338 tty was suspended.
5339
4d18a7a2
DN
5340 * alloc.c (mark_stack): Properly conditionalize previous change.
5341
8984df7c
JB
53422009-01-30 Juanma Barranquero <lekktu@gmail.com>
5343
5344 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
5345 * w32term.c (w32_read_socket) [SYNC_INPUT]:
5346 Remove; this code is not used on Windows.
5347
75f4f1ac
EZ
53482009-01-30 Eli Zaretskii <eliz@gnu.org>
5349
5350 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
5351 EOLs that also has stray ^M characters.
5352
07a1e794
JB
53532009-01-30 Juanma Barranquero <lekktu@gmail.com>
5354
5355 * atimer.c (run_timers, alarm_signal_handler):
5356 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
5357 * w32inevt.c (w32_console_read_socket):
5358 * w32term.c (w32_read_socket):
5359 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
5360
a8b11cc9
CY
53612009-01-30 Chong Yidong <cyd@stupidchicken.com>
5362
5363 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
5364 Initialize it as a relative filename pattern.
5365 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
5366 (Fcall_process_region): Simplify temp file creation using
5367 temporary-file-directory.
5368
c279587b
EZ
53692009-01-29 Eli Zaretskii <eliz@gnu.org>
5370
5371 * msdos.c: Rename pending_signals to msdos_pending_signals.
5372 (sig_suspender, sigprocmask): Adjust.
5373
a8fe3242
CY
53742009-01-29 Chong Yidong <cyd@stupidchicken.com>
5375
5376 * keyboard.c (pending_signals): New var.
5377 (poll_for_input, input_available_signal, init_keyboard): Set it.
5378 (process_pending_signals): New function.
5379
5380 * lisp.h (QUIT): Check pending_signals instead of
5381 interrupt_input_pending. Use process_pending_signals.
5382
51d861de 5383 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 5384
51d861de 5385 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
5386
5387 * sysdep.c (emacs_write): Use process_pending_signals.
5388
5389 * xterm.c (XTread_socket): Update pending_signals.
5390
5391 * w32term.c (w32_read_socket): Update pending_signals.
5392
5393 * w32inevt.c (w32_console_read_socket): Update pending_signals.
5394
6570a1c4
KH
53952009-01-29 Kenichi Handa <handa@m17n.org>
5396
5397 * xftfont.c (xftfont_has_char): New function.
5398 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
5399
d72a4afa
AR
54002009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5401
5402 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
5403 under GNUstep.
5404 (ns_query_color): New declaration.
5405
5406 * nsterm.m (ns_confirm_quit): New variable.
5407 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
5408 (EmacsApp-applicationShouldTerminate:): Use it.
5409 (EmacsPrefsController): Let user set it.
5410 (ns_query_color): New function.
5411 (ns_defined_color): Use it.
5412 (ns_initialize): Drop.
5413 (ns_term_init): Add two lines from ns_initialize(), and set
5414 input_interrupt_mode to nil.
5415
5416 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 5417 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 5418
9fe78804
KH
54192009-01-28 Kenichi Handa <handa@m17n.org>
5420
5421 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
5422 (fontset_get_font_group): Remember that no font-group is specified
5423 for C.
9fe78804 5424
fa57de36
CY
54252009-01-27 Chong Yidong <cyd@stupidchicken.com>
5426
930600e9
CY
5427 * fns.c (concat): Check for string overflow (bug#1787).
5428
fa57de36
CY
5429 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
5430 Quadruple undo limits (bug#1501).
5431
7179ce7b
KH
54322009-01-27 Kenichi Handa <handa@m17n.org>
5433
5434 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
5435 directly use GT_Get_Char_index.
5436
5437 * xftfont.c (struct xftfont_info): New member `index'.
5438
5439 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 5440 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 5441
5be8fcc0
CY
54422009-01-26 Kenichi Handa <handa@m17n.org>
5443
5444 * fontset.c (fontset_find_font): Fix handling of non-cons return
5445 value of fontset_get_font_group.
5446 (fontset_font): Revert last change.
5447
19ae3e61
JR
54482009-01-26 Jason Rumney <jasonr@gnu.org>
5449
5450 * w32font.c (w32font_list_internal): Return quickly if registry is
5451 unknown. Simplify final return.
5452 (add_font_entity_to_list): Break complex logic down into more
5453 manageable chunks. Move unknown registry check to
5454 w32font_list_internal.
5455
8612b71a
AR
54562009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
5457
5458 Changes to remove Feval calls from GUI under NS.
5459
d8038940
JB
5460 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
5461 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
5462 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
5463
5464 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
5465 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
5466 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
5467 instead of NON_ASCII_KEYSTROKE_EVENT.
5468 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
5469 (EmacsApp-applicationShouldTerminate:): Query user.
5470 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
5471 instead of Feval.
5472
5473 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
5474
5475 * keyboard.c (kbd_buffer_get_event): Check for it.
5476 (keys_of_keyboard): Define lispy keys for
5477 ns-put/unput-working-text.
5478
5479 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
5480 versions.
5481 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
5482
6288ae55
CY
54832009-01-25 Chong Yidong <cyd@stupidchicken.com>
5484
5485 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 5486 setting current_buffer directly. (Bug#2044)
6288ae55 5487
289e7f8f
CY
54882009-01-24 Chong Yidong <cyd@stupidchicken.com>
5489
5ce87308 5490 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 5491 any work. (Bug#1952, bug#1990).
5ce87308 5492
64cc3cf6 5493 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 5494
b3243e6f
AR
54952009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
5496
5497 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
5498 (ns_no_defaults): New declaration.
5499 (main): Use it.
e0d2e69a 5500
d900b2af 5501 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 5502
d900b2af 5503 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 5504
d900b2af
AR
5505 * nsterm.m (ns_no_defaults): New variable.
5506 (ns_initialize): Don't read defaults when ns_no_defaults.
5507 (EmacsView-readSelectionFromPasteboard:)
5508 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 5509 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
5510 (ns_dumpglyphs_stretch): New function.
5511 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 5512 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 5513
e0d2e69a
AR
5514 * nsimage.m (setPixmapData:): Set to ignore image DPI.
5515
3ac71f5d
CY
55162009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
5517
5518 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
5519 call for Sparc64.
5520
3fe53a83
AR
55212009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5522
5523 * nsfns.m:
5524 * nsgui.h:
5525 * nsmenu.m:
5526 * nsselect.m:
5527 * nsterm.h:
5528 * nsterm.m: Remove '23' comments that indicated code added during
5529 update from emacs-20 -> emacs-23.
5530
10f87c6f 55312009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
5532
5533 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 5534 ns_alternate_modifier. (Bug#1217)
a3b53a85 5535
c7cef62d
AR
5536 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
5537 Display all shortcuts, including those w/o super modifier.
5538
575fb8bd
AR
5539 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
5540
918b848b
CY
55412009-01-22 Chong Yidong <cyd@stupidchicken.com>
5542
5543 * fileio.c (Vwrite_region_post_annotation_function)
5544 (Vwrite_region_annotation_buffers): New vars.
5545 (build_annotations_unwind): Just reset
5546 Vwrite_region_annotation_buffers.
5547 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
5548 Call write-region-post-annotation-function.
5549 (build_annotations): Add to Vwrite_region_annotation_buffers if
5550 buffer changes.
5551
a39e2539
AR
55522009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
5553
5554 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
5555 Tiger.
51d861de
SM
5556 * nsfns.m (ns_do_applescript):
5557 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 5558
35ed44db
AR
55592009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
5560
5561 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
5562
cbe0b5bf
AR
55632009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
5564
5565 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 5566
6049d3a0
AR
5567 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
5568
5569 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
5570 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
5571 handle Ctrl-tab. (Bug#1841)
5572 (ns_get_color): Use unsigned long long for scanned hex string value.
5573 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 5574 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 5575 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 5576 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 5577 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 5578 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 5579 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 5580
d3810c21 5581 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 5582 DPI. (Bug#1316)
d3810c21
AR
5583 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
5584 values in onTiger section.
4c7077c3 5585
e301e634
CY
55862009-01-19 Chong Yidong <cyd@stupidchicken.com>
5587
7f82490b
CY
5588 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
5589 Check return value of font_spec_from_name.
64cc3cf6 5590 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
5591
5592 * font.c (font_spec_from_name): Return Qnil if font name could not
5593 be parsed.
5594 (font_parse_name): Treat a `?' character as part of an XLFD.
5595
e301e634
CY
5596 * fns.c (Fsubstring): Doc fix.
5597
1c0db158
KH
55982009-01-19 Kenichi Handa <handa@m17n.org>
5599
51d861de 5600 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
5601 (ftfont_list): Likewise.
5602
acf20901
JB
56032009-01-18 Juanma Barranquero <lekktu@gmail.com>
5604
fff4e459
JB
5605 * dbusbind.c (Fdbus_register_signal):
5606 * process.c (conv_sockaddr_to_lisp):
5607 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
5608
acf20901
JB
5609 * callproc.c (Fgetenv_internal): Doc fix.
5610
e7abcdfb
CY
56112009-01-16 Chong Yidong <cyd@stupidchicken.com>
5612
5613 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
5614 it is not even used.
5615
b60861e6
GM
56162009-01-16 Glenn Morris <rgm@gnu.org>
5617
5618 * font.c (Ffont_variation_glyphs): Silence compiler.
5619
8db52afe
JB
56202009-01-15 Juanma Barranquero <lekktu@gmail.com>
5621
5622 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
5623 Reported by David Robinow <drobinow@gmail.com>.
5624
4cddb209
KH
56252009-01-15 Kenichi Handa <handa@m17n.org>
5626
51d861de 5627 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 5628
f247f67b
JR
56292009-01-14 Jason Rumney <jasonr@gnu.org>
5630
5631 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 5632 never a fontset. (Bug#1562)
f247f67b 5633
f56a4450
KH
56342009-01-14 Kenichi Handa <handa@m17n.org>
5635
5636 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 5637 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 5638
4e99855e
CY
56392009-01-13 Chong Yidong <cyd@stupidchicken.com>
5640
5641 * font.c (font_clear_prop): If clearing the family, clear the font
5642 width index too.
5643
fff4e459 5644 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 5645
24f01470
JB
56462009-01-12 Juanma Barranquero <lekktu@gmail.com>
5647
5648 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
5649 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
5650 functions, use sizeof.
5651
a41240a3
MR
56522009-01-12 Martin Rudalics <rudalics@gmx.at>
5653
5654 * keyboard.c (read_char): Fix case where last_nonmenu_event
5655 returned a bad value with submenus. (Bug#447)
5656
944636b8
CY
56572009-01-12 Chong Yidong <cyd@stupidchicken.com>
5658
5659 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
5660 family, clear the font width index too.
5661
0dad7c6f
JR
56622009-01-11 Jason Rumney <jasonr@gnu.org>
5663
5664 * keyboard.c (cmd_error_internal): Exit when errors occur before
5665 frame creation and not in daemon mode. (Bug#1836)
5666
7c2363af
CY
56672009-01-10 Chong Yidong <cyd@stupidchicken.com>
5668
5669 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
5670 of a display vector, backtrack.
5671 (try_window_reusing_current_matrix): Check glyph type before
5672 referencing charpos member.
5673
97b1b294
EZ
56742009-01-10 Eli Zaretskii <eliz@gnu.org>
5675
5676 Fix Bug #876:
5677
5678 * coding.c (inhibit_null_byte_detection): New variable.
5679 (detect_coding, detect_coding_system): Don't pay attention to null
5680 bytes if inhibit_null_byte_detection is non-zero.
51d861de 5681 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
5682 <inhibit-iso-escape-detection>: Doc fix.
5683
4624b6e3
JR
56842009-01-09 Jason Rumney <jasonr@gnu.org>
5685
5686 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 5687 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
5688 Only report Unicode Plane 2 fonts as unicode-sip.
5689
323b840c
CY
56902009-01-09 Chong Yidong <cyd@stupidchicken.com>
5691
51d861de
SM
5692 * xfaces.c (Fx_font_family_list): Delete function.
5693 Move compatibility version to faces.el.
323b840c 5694
51d861de 5695 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 5696
eba7400d
MR
56972009-01-09 Martin Rudalics <rudalics@gmx.at>
5698
5699 * frame.c (x_set_frame_parameters): Remember requested value for
5700 fullscreen before it's reset by the parameter handler.
5701
4b09796d
GM
57022009-01-09 Glenn Morris <rgm@gnu.org>
5703
5704 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 5705 (last_command_event): ... and update all users.
4b09796d
GM
5706 (last_input_char): For clarity, rename to...
5707 (last_input_event): ... and update all users.
5708 (last-command-char, last-input-char): Move to subr.el as aliases.
5709 * cmds.c, commands.h: Update for last_command_char rename.
5710
14ccea62
CY
57112009-01-08 Chong Yidong <cyd@stupidchicken.com>
5712
51d861de 5713 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 5714
5f004711
JR
57152009-01-08 Jason Rumney <jasonr@gnu.org>
5716
5717 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
5718 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
5719 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
5720 Don't declare.
fff4e459 5721 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
5722 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
5723
b71f6f73
KH
57242009-01-07 Kenichi Handa <handa@m17n.org>
5725
50b06221 5726 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 5727 remember the coding system used for decoding in
50b06221
KH
5728 coding_system (Bug#1039).
5729
b71f6f73 5730 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 5731 breaking the loop. (Bug#870)
b71f6f73
KH
5732 (decode_coding_utf_16, decode_coding_emacs_mule)
5733 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
5734 (decode_coding_charset): Likewise.
5735
56f668f7
MR
57362009-01-05 Martin Rudalics <rudalics@gmx.at>
5737
5738 * frame.c (x_set_frame_parameters): Make sure height (width) get
5739 applied when fullwidth (fullheight) is set. (Bug#1522)
5740
5da9424d
JB
57412009-01-04 Juanma Barranquero <lekktu@gmail.com>
5742
5743 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
5744 (utc_base): Declare as ULONGLONG, not long double.
5745 (convert_time_raw): Delete.
5746 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
5747 (initialize_utc_base): New function.
5748 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
5749 (convert_from_time_t): Use initialize_utc_base; compute result with
5750 64-bit arithmetic.
5751 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
5752
c4605e09
EZ
57532009-01-03 Eli Zaretskii <eliz@gnu.org>
5754
9acef61c 5755 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
5756 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
5757 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
5758 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
5759 [!subprocesses]: Define.
5760 (syms_of_process) [!subprocesses]: Intern and staticpro them.
5761 (Flist_system_processes, Fsystem_process_attributes)
5762 [!subprocesses]: Call list_system_processes and
5763 system_process_attributes instead of returning Qnil.
5764
9acef61c
JB
5765 * dosfns.c (system_process_attributes, list_system_processes):
5766 New functions.
c4605e09
EZ
5767
5768 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
5769
5770 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
5771 Don't use the default (no-op) implementation.
5772
8b7d0a16
JR
57732009-01-03 Jason Rumney <jasonr@gnu.org>
5774
a6d46bc1
JR
5775 * keyboard.c (parse_modifiers_uncached): Wheel events are
5776 clicks (bug#687).
5777
8b7d0a16
JR
5778 * w32term.c (x_query_colors, x_query_color): New functions.
5779
5780 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
5781 (svg_load_image): Cast returned pointers from dynamically loaded
5782 functions. Eliminate W32 specific code.
5783
bfe11752
DN
57842009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
5785
89e2438a
DN
5786 * nsfns.m (x_set_foreground_color, x_set_background_color)
5787 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
5788 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
5789 x_ prefix instead of ns_. Update references.
5790 (syms_of_nsfns): Add a FIXME comment.
5791
5792 * nsterm.m (x_set_cursor_type): New prototype.
5793 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
5794
bfe11752
DN
5795 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
5796 for Solaris instead of incorrectly providing Qutime and Qcutime.
5797
031da700
EZ
57982009-01-02 Eli Zaretskii <eliz@gnu.org>
5799
5800 * w32.c (process_times): Compute sum of utime and stime.
5801 (system_process_attributes): Add Qtime to the alist.
5802
5803 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
5804 and add them to the alist.
5805
5806 * process.c (top level) <Qtime, Qctime>: New variables.
5807 (syms_of_process): staticpro them.
5808 (Fsystem_process_attributes): Add their documentation to the doc
5809 string.
5810
5811 * process.h: Declare Qtime and Qctime.
5812
df23bf08
JR
58132009-01-02 Jason Rumney <jasonr@gnu.org>
5814
9acef61c 5815 * image.c (Qgobject): New symbol.
df23bf08
JR
5816 (syms_of_image): Initialize it.
5817 (init_svg_functions): Load some functions from gobject library.
5818
5bbdf7aa
DN
58192009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
5820
5821 * frame.c (make_terminal_frame): Remove redundant code and useless
5822 block.
5823
63136da6
AS
58242009-01-01 Andreas Schwab <schwab@suse.de>
5825
5826 * process.c (conv_sockaddr_to_lisp): Add workaround for
5827 getsockname bug on BSD.
5828
9ef69046
CY
58292009-01-01 Chong Yidong <cyd@stupidchicken.com>
5830
d6fafbe0
CY
5831 * xfns.c (x_create_tip_frame): Set border width of the X window.
5832
51d861de 5833 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 5834
f9c34147
JR
58352009-01-01 Jason Rumney <jasonr@gnu.org>
5836
9acef61c 5837 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
5838 Don't block input, as per earlier xterm.c changes.
5839
f5497e45
AR
58402008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
5841
5842 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
5843 (ns_appkit_version_int): New function.
5844 (x-server-version): Use ns_appkit_version_int and follow 21+
5845 convention of returning 3 integers.
5846
c19cab20
KH
58472008-12-30 Kenichi Handa <handa@m17n.org>
5848
5849 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
5850 (CHAR_SURROGATE_PAIR_P): New macro.
5851
5852 * font.h (struct font_driver): New member get_variation_glyphs.
5853
9acef61c 5854 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
5855 (Ffont_variation_glyphs): New function.
5856 (syms_of_font): Defsubr it.
5857
5858 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
5859 ftfont_variation_glyphs.
5860 (setup_otf_gstring): New function.
5861 (ftfont_drive_otf): Use it.
5862 (ftfont_shape_by_flt): Handle variation selector.
5863 (ftfont_variation_glyphs): New function.
5864
28cd591f
MR
58652008-12-30 Martin Rudalics <rudalics@gmx.at>
5866
5867 * frame.c (Vemacs_iconified): Remove.
5868
7f714baf
JR
58692008-12-30 Jason Rumney <jasonr@gnu.org>
5870
5871 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 5872 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 5873
9d2d22ab
CY
58742008-12-30 Chong Yidong <cyd@stupidchicken.com>
5875
5876 * indent.c (Fvertical_motion): Don't advance iterator if we have
5877 reseated to the desired position.
5878
5879 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
5880 checking for pos match.
5881
545312c2
KH
58822008-12-30 Kenichi Handa <handa@m17n.org>
5883
1ede3eb6
KH
5884 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
5885 just get the low 8-bit of the code.
5886
545312c2
KH
5887 * font.c (font_intern_prop): Validate str as multibyte.
5888
bd7bbf29
DN
58892008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
5890
31e0750e
DN
5891 * dispextern.h (struct face): Move lface and hash from the middle
5892 of bitfields.
5893
bd7bbf29
DN
5894 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
5895
b5672e7c
DN
58962008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
5897
5898 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
5899 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
5900 instead of intervals.h.
5901
d704470f
AS
59022008-12-26 Andreas Schwab <schwab@suse.de>
5903
5904 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
5905 cons.
5906
54b33868
MR
59072008-12-26 Martin Rudalics <rudalics@gmx.at>
5908
5909 * textprop.c (Qminibuffer_prompt): New variable.
5910 (syms_of_textprop): Initialize it.
5911 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
5912 in minibuffer-prompt face. (Bug#1662)
5913
40b615d6
JR
59142008-12-25 Jason Rumney <jasonr@gnu.org>
5915
5916 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
5917
baae5c2d
JR
59182008-12-24 Jason Rumney <jasonr@gnu.org>
5919
5920 * ralloc.c (r_alloc_reset_variable): New function.
5921
5922 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 5923 record of what points where. (Bug#716)
baae5c2d 5924
a9051c88
DN
59252008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
5926
5927 * minibuf.c (read_minibuf): Follow the non-interactive case when
5928 running as a daemon, before detaching.
5929
8b146312
AS
59302008-12-22 Andreas Schwab <schwab@suse.de>
5931
5932 * buffer.c (init_buffer): Use realloc instead of xrealloc.
5933 * gtkutil.c (free_widget_value): Use xfree instead of free.
5934
56f2de10
MR
59352008-12-22 Martin Rudalics <rudalics@gmx.at>
5936
5937 * frame.c (delete_frame): New function derived from
5938 Fdelete_frame to handle Qnoelisp value for FORCE argument.
5939 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
5940 (Fdelete_frame): Call delete_frame. Remove line from doc-string
5941 saying that FORCE non-nil doesn't run `delete-frame-functions'.
5942 * frame.h: Extern delete_frame.
5943 * window.c (window_loop):
5944 * terminal.c (delete_terminal):
5945 * xterm.c (x_connection_closed):
5946 * xfns.c (Fx_hide_tip):
9acef61c 5947 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 5948
1fc200d6
JR
59492008-12-21 Jason Rumney <jasonr@gnu.org>
5950
5951 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
5952 when character maps to .notdef character.
5953
5e252df2
SM
59542008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
5955
5956 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
5957
99b72cc4
JR
59582008-12-20 Jason Rumney <jasonr@gnu.org>
5959
5960 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 5961 a graphical frame on Windows. (Bug#1325)
99b72cc4 5962
acc49a52
JD
59632008-12-20 Jan Djärv <jan.h.d@swipnet.se>
5964
5965 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
5966
6ea15123
CY
59672008-12-20 Chong Yidong <cyd@stupidchicken.com>
5968
5969 * minibuf.c (Fread_buffer): Doc fix.
5970
b2dab6c8
JR
59712008-12-20 Jason Rumney <jasonr@gnu.org>
5972
54ea0c87 5973 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 5974 server name in UNC paths. (Bug#719)
54ea0c87 5975
b2dab6c8 5976 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 5977 charbuf. (Bug#1035)
b2dab6c8 5978
6d1921be
DN
59792008-12-19 Daniel Engeler <engeler@gmail.com>
5980
5981 * sysdep.c (serial_configure): Fix typo.
5982
53934c98
DN
59832008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
5984
5985 * sysdep.c: Include alloca.h.
f4f634e8
DN
5986 (system_process_attributes): Add implementation for Solaris.
5987
5988 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 5989
06e111a6
DN
59902008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
5991
5992 Reorganize implementation of Flist_system_processes and
5993 Fsystem_process_attributes. No functional changes.
5994 * process.c: Don't #include pwd.h, grp.h and limits.h.
5995 (Flist_system_processes): Just call list_system_processes.
5996 (Fsystem_process_attributes): Just call system_process_attributes.
5997 (procfs_list_system_processes, time_from_jiffies)
5998 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
5999 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
6000
6001 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
6002 (list_system_processes): Rename from
6003 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
6004 Provide a do nothing implementation.
6005 (system_process_attributes): Rename from
6006 procfs_list_system_processes.
6007 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 6008 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
6009
6010 * w32.c (list_system_processes): Rename from
6011 w32_list_system_processes.
6012 (system_process_attributes): Rename from
6013 w32_system_process_attributes.
6014
6015 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
6016
6017 * process.h (w32_list_system_processes)
6018 (w32_system_process_attributes): Remove.
362654a6
JB
6019 (list_system_processes, system_process_attributes):
6020 New prototypes.
06e111a6 6021
6a705b23
KH
60222008-12-19 Kenichi Handa <handa@m17n.org>
6023
6024 * xfont.c (xfont_decode_coding_xlfd): New function.
6025 (xfont_encode_coding_xlfd): New function.
6026 (xfont_list_pattern): Decode XLFD by iso-8859-1.
6027 (xfont_list): Decode and encode XLFD by iso-8859-1.
6028 (xfont_match): Likewise.
6029 (xfont_list_family): Likewise.
6030 (xfont_open): Likewise.
6031
d66c0241 6032 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
6033 names are utf-8.
6034
d66c0241 6035 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
6036 names are utf-8.
6037
5a130941
JD
60382008-12-18 Jan Djärv <jan.h.d@swipnet.se>
6039
6040 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
6041 changed.
bfd20325
JD
6042 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
6043 clicked on a detached tool bar button.
5a130941 6044
fd95644b
DN
60452008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
6046
6047 * emacs.c (main): Print and error and exit when no data is read
6048 from the pipe.
6049
e6eee6ae
JR
60502008-12-17 Jason Rumney <jasonr@gnu.org>
6051
6052 * w32font.c (w32font_has_char): Always return -1.
6053
a35dd56b
KH
60542008-12-16 Kenichi Handa <handa@m17n.org>
6055
6056 * font.c (font_open_entity): Fix previous change.
6057
0e3635c2
DN
60582008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
6059
6060 * process.c: Include <limits.h>.
6061
d4835507 60622008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
6063
6064 * font.c (font_update_drivers): Fix mistake in reconstructing the
6065 driver list.
6066
60672008-12-16 Chong Yidong <cyd@stupidchicken.com>
6068
6069 * font.c (font_clear_cache): Fix format of font cache data.
6070
e2cbc401
CY
60712008-12-15 Chong Yidong <cyd@stupidchicken.com>
6072
6073 * xftfont.c (xftfont_open): Free Xft font pattern if
6074 XftFontOpenPattern fails.
6075
6076 * xterm.c (x_free_frame_resources): Remove extraneous call to
6077 free_frame_faces.
6078
b131d535
CY
60792008-12-13 Chong Yidong <cyd@stupidchicken.com>
6080
6081 * xterm.c (x_delete_display): Move xim_close_dpy call to
6082 x_delete_terminal.
6083 (x_delete_terminal): Call xim_close_dpy.
6084
e6df5336
JR
60852008-12-13 Jason Rumney <jasonr@gnu.org>
6086
6087 * w32font.c (intern_font_name): New function.
6088 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
6089 (w32font_open_internal, Fx_select_font): Decode font name.
6090 (fill_in_logfont, list_all_matching_fonts): Encode font name.
6091
6092 * w32font.h (intern_font_name): Declare new function.
6093
6094 * w32uniscribe.c (add_opentype_font_name_to_list):
6095 Use intern_font_name.
6096
20d68145
CY
60972008-12-13 Chong Yidong <cyd@stupidchicken.com>
6098
9f2554de
CY
6099 * frame.c (Fdelete_frame): Call free_font_driver_list.
6100
3d9bec9a
CY
6101 * font.c (free_font_driver_list): Implement missing function.
6102
20d68145
CY
6103 * w32term.c (w32_term_init): Don't initialize the image cache
6104 here; it will be done in init_frame_faces.
6105
6106 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
6107 (struct x_display_info): Remove unused member null_pixel. New
6108 member xim_callback_data.
6109
6110 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
6111 (xim_initialize): Save pointer to callback function data.
6112 (xim_close_dpy): Free callback function data. Call XCloseIM,
6113 reverting 2008-11-04 change by David Smith.
6114 (x_term_init): Don't initialize the image cache here; it will be
6115 done in init_frame_faces. Remove ancient "null_pixel" cruft.
6116 (x_delete_display): Free x_dnd_atoms member.
6117
96f9306b
KH
61182008-12-13 Kenichi Handa <handa@m17n.org>
6119
6dec9044
JB
6120 * font.c (font_rescale_ratio): Moved from xfaces.c.
6121 Argument type changed. Handle a font-spec too.
96f9306b 6122 (font_score): Check Vface_font_rescale_alist.
6dec9044 6123 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
6124
6125 * xfaces.c (font_rescale_ratio): Moved to font.c.
6126
8d5b4964
CY
61272008-12-13 Chong Yidong <cyd@stupidchicken.com>
6128
6129 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
6130
e6df5336
JR
61312008-12-12 Jason Rumney <jasonr@gnu.org>
6132
6133 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
6134 Vwindow_system_version to the real w32 major version.
6135
97c6058a
DN
61362008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
6137
6138 * term.c (init_tty): Move setting the terminal name before the
6139 potential user: maybe_fatal.
6140
ec4e88d7
CY
61412008-12-11 Chong Yidong <cyd@stupidchicken.com>
6142
d4835507
JB
6143 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
6144 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 6145
b4233ec9
JR
61462008-12-11 Jason Rumney <jasonr@gnu.org>
6147
8ec71e23 6148 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 6149 SYMBOL_CHARSET. (Bug#547)
8ec71e23 6150
b4233ec9 6151 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 6152 size for surrogates. (Bug#1096, bug#872)
b4233ec9 6153
011a0143
JB
61542008-12-11 Juanma Barranquero <lekktu@gmail.com>
6155
6156 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
6157
3c309f34
JB
61582008-12-11 Juanma Barranquero <lekktu@gmail.com>
6159
6160 * process.c (Fsystem_process_attributes, syms_of_process):
6161 Fix typo in name of Ssystem_process_attributes.
6162 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
6163
fedc6ab5
JB
61642008-12-11 Juanma Barranquero <lekktu@gmail.com>
6165
6166 * syntax.c (Fmodify_syntax_entry): Doc fix.
6167
ba3de0e8
JB
61682008-12-10 Juanma Barranquero <lekktu@gmail.com>
6169
6170 * font.c (Ffont_spec): Move usage to end of docstring.
6171
174f1c74
JR
61722008-12-10 Jason Rumney <jasonr@gnu.org>
6173
6174 * w32font.c (Qcham): New symbol.
6175 (font_supported_scripts): Add cham, and comments for other new
6176 scripts in bitfield from OpenType spec.
9d32f818
JR
6177 (add_font_entity_to_list): Limit unicode-sip fonts to those that
6178 contain characters beyond the bmp.
174f1c74 6179
7b649478
KH
61802008-12-10 Kenichi Handa <handa@m17n.org>
6181
6182 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 6183 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
6184 Qunicode_sip.
6185
2133e2d1
JB
61862008-12-10 Juanma Barranquero <lekktu@gmail.com>
6187
6188 * coding.c (QCdefault_char): Rename from QCdefalut_char.
6189 (Fcoding_system_put): Use QCdefault_char.
6190 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
6191
9af886ee
CY
61922008-12-09 Chong Yidong <cyd@stupidchicken.com>
6193
74d819eb
CY
6194 * xftfont.c (syms_of_xftfont): Fix typo.
6195
4ccfa1c0 6196 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 6197
7c19d3ae
DN
61982008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
6199
6200 * emacs.c (main): Close daemon_pipe on exec.
6201
567826bb
CY
62022008-12-08 Chong Yidong <cyd@stupidchicken.com>
6203
6204 * termchar.h (struct tty): New members termcap_term_buffer and
6205 termcap_strings_buffer.
6206
6207 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 6208 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
6209 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
6210 All callers changed.
6211 (init_tty): Store termcap data and string buffers in new struct
6212 tty members termcap_term_buffer and termcap_strings_buffer.
6213 (delete_tty): Free them.
4ccfa1c0 6214 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 6215
aa96c42b
SZ
62162008-12-07 Seiji Zenitani <zenitani@mac.com>
6217
6218 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 6219 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 6220
b7e1d896
CY
62212008-12-06 Chong Yidong <cyd@stupidchicken.com>
6222
6223 * coding.c (make_conversion_work_buffer): Disable buffer
6224 modification hooks in the work buffer.
6225
b5ec91a5
EZ
62262008-12-05 Eli Zaretskii <eliz@gnu.org>
6227
6228 * process.c (procfs_system_process_attributes): If `nread' has a
6229 negative value, assign zero to it.
6230
a5d2a52b
CY
62312008-12-05 Chong Yidong <cyd@stupidchicken.com>
6232
68c5540b 6233 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 6234
7bf1bb21
KH
62352008-12-05 Kenichi Handa <handa@m17n.org>
6236
6237 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
6238 second character is a combining character.
6239
2fdc7d00
EZ
62402008-12-05 Eli Zaretskii <eliz@gnu.org>
6241
6242 * process.c (procfs_system_process_attributes): Don't use cmd,
6243 cmdsize, and q without initializing them first.
6244
bf6bfba8
JR
62452008-12-04 Jason Rumney <jasonr@gnu.org>
6246
6247 * w32font.c (w32font_draw): Initialize orig_clip before getting
6248 it, and delete it when finished.
6249
a3b1a468
DN
62502008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
6251
6252 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
6253 case when running as a daemon before detaching.
6254
8b8be8eb
JB
62552008-12-03 Juanma Barranquero <lekktu@gmail.com>
6256
805f2638 6257 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 6258
b1bde622
KH
62592008-12-03 Kenichi Handa <handa@m17n.org>
6260
e500c47d
KH
6261 * font.c (font_at): Set `multibyte' at first.
6262
ca516334
KH
6263 * coding.c (decode_coding_charset): Check type of an element of
6264 vector VALIDS.
7bf1bb21 6265 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 6266
4ccfa1c0 6267 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
6268 (font_for_char): Likewise.
6269
1e5ecd37
CY
62702008-12-03 Chong Yidong <cyd@stupidchicken.com>
6271
d5b01609 6272 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
6273 (font_update_lface): Handle fonts with corrupted size specs,
6274 i.e. non-int and non-float.
d5b01609 6275
11e3a6e4 6276 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 6277 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 6278 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 6279
ab06788b
CY
6280 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
6281
1e5ecd37 6282 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 6283 underline_minimum_offset for underline position.
1e5ecd37 6284
63c125ab
DN
62852008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
6286
6287 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
6288
6289 * character.c (c_string_width): Specify the type for LEN.
6290
3a8406e1
KH
62912008-12-03 Kenichi Handa <handa@m17n.org>
6292
4ccfa1c0 6293 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 6294 (decode_coding_utf_8): Likewise.
4ccfa1c0 6295 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 6296 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 6297
651df7d9
CY
62982008-12-02 Chong Yidong <cyd@stupidchicken.com>
6299
6300 * keyboard.c (make_lispy_position): Only use PT if the selected
6301 window is current.
6302
1f625c6c
AS
63032008-12-02 Andreas Schwab <schwab@suse.de>
6304
f7741ce9
AS
6305 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
6306
1f625c6c
AS
6307 * doprnt.c (doprnt1): Fix size of charbuf.
6308
92bc2678
CY
63092008-12-02 Chong Yidong <cyd@stupidchicken.com>
6310
6311 * keyboard.c (timer_check): Revert last change.
6312
93b9e8cc
JB
63132008-12-02 Juanma Barranquero <lekktu@gmail.com>
6314
6315 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
6316
fd7a37d5
JB
63172008-12-01 Juanma Barranquero <lekktu@gmail.com>
6318
6319 * makefile.w32-in: Update dependencies.
6320 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
6321
c115043b
AS
63222008-12-01 Andreas Schwab <schwab@suse.de>
6323
6324 * font.c (register_font_driver): Use xmalloc.
6325 (font_put_frame_data): Likewise.
6326
f5668d2a
CY
63272008-12-01 Chong Yidong <cyd@stupidchicken.com>
6328
860d96be
CY
6329 * xfaces.c (realize_x_face): Make abort condition clearer.
6330
f5668d2a
CY
6331 * gtkutil.c (update_frame_tool_bar): Initialize variable.
6332
379c17e7
CY
63332008-11-30 Chong Yidong <cyd@stupidchicken.com>
6334
6335 * keyboard.c (timer_check): After a timer runs, ensure that the
6336 selected window's buffer is current.
6337
35f36d65
JB
63382008-11-30 Juanma Barranquero <lekktu@gmail.com>
6339
f952c61c
JB
6340 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
6341 It was accidentally restored by the Unicode merge.
6342
35f36d65
JB
6343 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
6344
b23077df
JB
63452008-11-29 Juanma Barranquero <lekktu@gmail.com>
6346
6347 * w32proc.c: Include "coding.h".
6348 (Fw32_short_file_name): Encode filename passed to Windows API.
6349 (Fw32_long_file_name): Encode filename passed to Windows API and
6350 decode back the result. (Bug#1433)
6351
b8ebe9dd
KH
63522008-11-29 Kenichi Handa <handa@m17n.org>
6353
8cc53f96
KH
6354 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
6355 not before accessing it.
6356
b8ebe9dd
KH
6357 * charset.c (Fdefine_charset_internal): After calculating
6358 min_char, max_char, and fastmap, copy the charset structure again.
6359 (encode_char): Fix the previous change.
6360
59bc82c0
SZ
63612008-11-28 Seiji Zenitani <zenitani@mac.com>
6362
6363 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
6364
6365 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
6366
6367 * nsterm.m (x_set_frame_alpha): New function.
6368
32247e3d
EZ
63692008-11-27 Eli Zaretskii <eliz@gnu.org>
6370
6371 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
6372
b003e5ff
JB
63732008-11-27 Juanma Barranquero <lekktu@gmail.com>
6374
6375 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
6376 pointer to check_face_name.
6377
708550f5
KH
63782008-11-27 Kenichi Handa <handa@m17n.org>
6379
6380 * category.h (SET_CATEGORY_SET): Call set_category_set.
6381 (set_category_set): Extern it.
6382
6383 * category.c (hash_get_category_set): New function.
6384 (Fmodify_category_entry): Adjusted for the change of
6385 char_table_ref_and_range. Call hash_get_category_set to get a
6386 category set to store in the table.
6387
6388 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
6389 Funify_charset.
6390
2ae37cf0 6391 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
6392 (DECODE_CHAR): Check if the decoder vector is ready.
6393 (ENCODE_CHAR): Check if the encoder char-table is ready.
6394 (maybe_unify_char): Extern it.
6395
6396 * charset.c (Vchar_unified_charset_table): Delete it.
6397 (inhibit_load_charset_map): New variable.
6398 (temp_charset_work): New variable.
6399 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
6400 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
6401 New macros.
6402 (load_charset_map): Meaning of control_flag changed. If
6403 inhibit_load_charset_map is nonzero, setup a table in
6404 temp_charset_work.
6405 (load_charset): New argument control_flag.
6406 (map_charset_for_dump): New function.
6407 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
6408 map_charset_for_dump.
6409 (Fdefine_charset_internal): If the charset method is MAP, load
6410 mapping tables by calling load_charset.
6411 (Funify_charset): Don't load a mapping table but directly set
6412 Vchar_unify_table.
6413 (maybe_unify_char): New function.
6414 (decode_char): Don't handle the deleted method MAP_DEFERRED.
6415 Handle the case of inhibit_load_charset_map being nonzero.
6416 (encode_char): Don't handle the deleted method MAP_DEFERRED.
6417 Handle the case of inhibit_load_charset_map being nonzero.
6418 (Fclear_charset_maps): Just free temp_charset_work.
6419 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
6420 variable.
6421
6422 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
6423 change of char_table_ref_and_range.
6424 (char_table_ref_and_range): Change the meaning of argument FROM
6425 and TO. Now the caller must provide initial values for *FROM
6426 and *TO.
6427
6428 * fontset.c (fontset_add): Adjusted for the change of
6429 char_table_ref_and_range.
6430 (fontset_get_font_group): Likewise.
6431 (Ffontset_info): Likewise.
6432
6433 * keymap.c (describe_vector): Adjusted for the change of
6434 char_table_ref_and_range. For char-table, put boundary between
6435 non-ASCII and 8-bit characters.
6436
6437 * print.c (print_object): For bool-vector, delete unnecessary
6438 check of ASCII_BYTE_P.
6439
9196133b
JR
64402008-11-26 Jason Rumney <jasonr@gnu.org>
6441
6442 * w32font.c (w32font_open_internal): Don't include external
9acef61c 6443 leading in font height. (Bug#879)
9196133b 6444
9f688acf
GM
64452008-11-26 Glenn Morris <rgm@gnu.org>
6446
6447 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
6448 redefinition with ifdef. (Bug#1383)
6449
90d19aff
AR
64502008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
6451
6452 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
6453
4ccfa1c0 64542008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
6455
6456 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
6457 New EmacsView methods.
6458 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
6459 Fixes bug #1048,1357,1414.
6460
64612008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
6462
6463 Fix bug #1362.
6464 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
6465 is not an indexed color.
6466 * nsterm.m (free_indexed_color): Add argument checking.
6467 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
6468
e7d5ecb3
CY
64692008-11-24 Chong Yidong <cyd@stupidchicken.com>
6470
6471 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
6472 Document confirm-after-completion value for
6473 minibuffer-completion-confirm.
6474
c285743c
JR
64752008-11-24 Jason Rumney <jasonr@gnu.org>
6476
6477 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
6478 warning.
6479
b0857706
JR
64802008-11-23 Jason Rumney <jasonr@gnu.org>
6481
6482 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
6483 restored before returning.
6484
6485 * w32font.c (check_face_name): New function.
6486 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 6487 fonts. (Bug#642)
b0857706 6488
ee50ff07
MR
64892008-11-22 Martin Rudalics <rudalics@gmx.at>
6490
6491 * buffer.c (Fswitch_to_buffer): Reword and mention new option
6492 confirm-nonexistent-file-or-buffer in doc-string.
6493
b8ff72fa
SM
64942008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
6495
6496 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
6497 Fix copy/paste typo. Add checks.
6498
cee53ed4
KH
64992008-11-21 Kenichi Handa <handa@m17n.org>
6500
6501 * coding.c (detect_coding_iso_2022): Reject invalid composition
6502 sequence.
6503 (DECODE_COMPOSITION_START): If the current source is the last
6504 block, and the current composition doesn't end, regard this
6505 sequence as invalid.
6506 (decode_coding_iso_2022): Handle invalid composition sequence.
6507
f6ef1e65
MR
65082008-11-20 Martin Rudalics <rudalics@gmx.at>
6509
6510 * window.c (coordinates_in_window): Don't return
6511 ON_VERTICAL_BORDER for the rightmost position of a mode/header
6512 line when the window is not the rightmost one. (Bug#1372)
6513
e08b1705
MR
65142008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
6515
6516 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
6517
ad98e89f
EZ
65182008-11-15 Eli Zaretskii <eliz@gnu.org>
6519
6520 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
6521 and bright_bg if noninteractive is non-zero.
6522
fb098a4b
CY
65232008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6524
6525 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
6526 x_draw_glyph_string_background.
6527
6528 * w32term.c (x_draw_glyph_string): Likewise.
6529
ce952b6e
CY
65302008-11-15 Chong Yidong <cyd@stupidchicken.com>
6531
6532 * xterm.c (x_draw_glyph_string): Stop drawing the background of
6533 the next glyph string once past the overhang width.
6534
6535 * nsterm.m (ns_draw_glyph_string): Likewise.
6536
6537 * w32term.c (x_draw_glyph_string): Likewise.
6538
26ea7079
CY
65392008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
6540
6541 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
6542 double file close.
6543
1c33c906
MR
65442008-11-14 Martin Rudalics <rudalics@gmx.at>
6545
6546 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
6547 dedicated status of window before attempting to display another
6548 buffer in it.
6549
8fc29035
JB
65502008-11-14 Juanma Barranquero <lekktu@gmail.com>
6551
6552 * msdos.c (Fmsdos_long_file_names):
6553 (syms_of_msdos) <dos-unsupported-char-glyph>:
6554 * dosfns.c (Fint86): Fix typos in docstrings.
6555
55fb4286
EZ
65562008-11-14 Eli Zaretskii <eliz@gnu.org>
6557
6558 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
6559
3fda0315
KY
65602008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
6561
6562 * puresize.h (BASE_PURESIZE): Increase to 1260000.
6563
7e849c17
CY
65642008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
6565
6566 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
6567
6568 * frame.h: Negative alpha means "don't touch".
6569
6570 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
6571
6572 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
6573
b9fd67bd
DN
65742008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
6575
6576 * hftctl.c:
6577 * chpdef.h:
6578 * acldef.h: Remove files used only for systems no longer supported.
6579
6580 * Makefile.in: Fix .o alphabetical ordering.
6581 (hftctl.o): Remove dependency, file removed.
6582 (keymap.o, print.o): Depend on charset.h.
6583
d5998e03
KH
65842008-11-10 Kenichi Handa <handa@m17n.org>
6585
2ae37cf0 6586 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 6587
be70e183
CY
65882008-11-08 Chong Yidong <cyd@stupidchicken.com>
6589
6590 * dired.c (file_name_completion): If completion_ignore_case is
6591 enabled, ignore case when checking completion-regexp-list.
6592
7cf94eac
EZ
65932008-11-08 Eli Zaretskii <eliz@gnu.org>
6594
6595 * vm-limit.c (get_lim_data): Fix last change.
6596
ee107a89
KH
65972008-11-08 Kenichi Handa <handa@m17n.org>
6598
6599 * character.c (Fget_byte): New function.
6600 (syms_of_character): Defsubr Fget_byte.
6601
5fd15622
CY
66022008-11-07 Chong Yidong <cyd@stupidchicken.com>
6603
6604 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
6605 cursor position is valid after scrolling.
6606
13d62fad
JB
66072008-11-06 Juanma Barranquero <lekktu@gmail.com>
6608
6609 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
6610
a1dd2936
GM
66112008-11-06 Glenn Morris <rgm@gnu.org>
6612
6613 * xterm.c (handle_one_xevent): Don't let popup menus cause
6614 mouse-autoselect-window related window switching. (Bug#1261)
6615
860cd236
CY
66162008-11-04 David Smith <davidsmith@acm.org> (tiny change)
6617
6618 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
6619
653a3150
AS
66202008-11-04 Andreas Schwab <schwab@suse.de>
6621
6622 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
6623
870f5cac
CY
66242008-11-03 Chong Yidong <cyd@stupidchicken.com>
6625
6626 * xfns.c (Fx_wm_set_size_hint): New function.
6627
1e02f3cb
MR
66282008-11-03 Martin Rudalics <rudalics@gmx.at>
6629
6630 * textprop.c (Fprevious_single_char_property_change): Return 0
6631 when there's no change in a string. (Bug#1301)
6632
e630dfc6
MR
66332008-11-02 Martin Rudalics <rudalics@gmx.at>
6634
6635 * frame.c (do_switch_frame): New argument NORECORD passed to
6636 Fselect_window.
6637 (Fselect_frame): New argument NORECORD passed to
6638 do_switch_frame.
6639 (Fset_frame_selected_window): New argument NORECORD passed to
6640 Fselect_frame.
6641 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
6642 in call of do_switch_frame.
6643 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
6644 Handle NORECORD argument in call of Fselect_frame.
6645 * lisp.h (do_switch_frame, Fselect_frame)
6646 (Fset_frame_selected_window): Adjust declarations.
6647 * window.c (select_frame_norecord): New function.
6648 (run_window_configuration_change_hook): Use it and call
6649 Fselect_frame with NORECORD set.
6650 (Fselect_window): Pass NORECORD to Fselect_frame.
6651 (Fset_window_configuration): Handle NORECORD argument in call of
6652 do_switch_frame.
6653 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
6654 Fset_frame_selected_window.
6655 * keyboard.c (command_loop_1): Handle NORECORD in call of
6656 Fselect_frame (currently ifdefd).
6657
9020b223
GM
66582008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
6659
6660 * emacs.c (USAGE2): Untabify.
6661
793ffee8
SM
66622008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
6663
6664 * composite.c (fill_gstring_header): Fix copy/paste typo.
6665
ab6d1131
MR
66662008-10-31 Martin Rudalics <rudalics@gmx.at>
6667
6668 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
6669 (Fother_window): Rename argument and rewrite doc-string.
6670 (select_window_norecord): Fix return value. (Bug#1276)
6671
601a9cf1
JB
66722008-10-30 Juanma Barranquero <lekktu@gmail.com>
6673
6674 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
6675 new frames overriding foreground for tooltips. Based on similar patch
6676 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
6677
813b0652
CY
66782008-10-29 Chong Yidong <cyd@stupidchicken.com>
6679
6680 * emacs.c (Fdaemon_initialized): Initialize nfd.
6681
4414f58f
MR
66822008-10-29 Martin Rudalics <rudalics@gmx.at>
6683
6684 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
6685 (Fwindow_text_height): Clarify doc-strings.
6686 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
6687 doc-string of window-scroll-functions.
6688
ecdcaa09
RS
66892008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
6690
6691 * category.c (syms_of_category): Fix typo in docstring.
6692
23fe745a
JB
66932008-10-28 Juanma Barranquero <lekktu@gmail.com>
6694
6695 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
6696 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
6697 Fix typos in docstrings.
6698
ff808935
DN
66992008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
6700
6701 * emacs.c (daemon_pipe): Make non-static.
6702 (IS_DAEMON): Move definition ...
6703 * lisp.h (IS_DAEMON): ... here.
6704 (daemon_pipe): Declare.
6705 (is_daemon): Remove.
6706 * dispnew.c (init_display): Use IS_DAEMON.
6707
fc012771
SM
67082008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
6709
6710 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
6711 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
6712
6713 * emacs.c (is_daemon): Remove.
6714 (main): Don't set is_daemon.
6715 (IS_DAEMON): New macro.
6716 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 6717 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
6718 parent exits.
6719 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
6720
d8bdbe6f
CY
67212008-10-27 Chong Yidong <cyd@stupidchicken.com>
6722
d1a072bf
CY
6723 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
6724 over-sized glyph, draw it with the default glyph width.
6725
e2e325aa
CY
6726 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
6727 glyph, draw it with the default glyph width.
6728
6729 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
6730 glyph, draw it with the default glyph width.
6731
d8bdbe6f
CY
6732 * xdisp.c (try_scrolling): When computing the distance from the
6733 scroll margin to PT, try moving some distance past the window
6734 bottom before giving up.
6735
7bfac547
MR
67362008-10-27 Martin Rudalics <rudalics@gmx.at>
6737
6738 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
6739 (Fset_window_buffer): Explain in doc-string that a window can be
6740 "strongly" dedicated to its buffer.
6741
4ff029f6
DN
67422008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
6743
6744 * emacs.c (daemon_name): New variable.
6745 (main): Deal with --daemon=SERVER_NAME.
6746 (Fdaemonp): Return a name if one was passed to --daemon.
6747
5790ef40
DN
67482008-10-26 Romain Francoise <romain@orebokech.com>
6749
f9bd0df9 6750 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
6751 (main): Create a pipe before forking, make the parent exit only after
6752 the child has closed its end of the pipe. Move closing the
6753 descriptors ...
6754 (Fdaemon_initialized): ... here. New function.
6755
f5385255
SM
67562008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
6757
4d632321
SM
6758 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
6759 the previous unoptimized table.
6760
f5385255
SM
6761 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
6762 the distinction between non-nil and non-t value of `dedicated'.
6763
6c56a0f3
CY
67642008-10-25 Chong Yidong <cyd@stupidchicken.com>
6765
6766 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 6767 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 6768
fec89261
MR
67692008-10-25 Martin Rudalics <rudalics@gmx.at>
6770
6771 * window.c (Fget_buffer_window, Fdelete_windows_on)
6772 (Freplace_buffer_in_windows): Make buffer argument optional and
6773 rename to buffer_or_name.
6774
34fcddd0
CY
67752008-10-24 Chong Yidong <cyd@stupidchicken.com>
6776
f5385255
SM
6777 * xdisp.c (handle_single_display_spec, handle_display_prop):
6778 Undo 2005-05-16 change.
34fcddd0
CY
6779 (handle_stop): Pop iterator if it's loaded with an empty string.
6780 (get_overlay_strings_1): Don't save iterator if it's loaded with
6781 an empty string (bug#1201).
6782
064766f2
KH
67832008-10-24 Kenichi Handa <handa@m17n.org>
6784
6785 * ftfont.c (ftfont_otf_features): Fix previous change.
6786 (ftfont_otf_capability): Check FeatureList.FeatureCount before
6787 calling ftfont_otf_features.
6788
f9bd0df9 67892008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
6790
6791 * font.c (font_match_p): Fix for the case that a vector of
6792 characters is in script-representative-chars.
6793
1dae9197
MA
67942008-10-24 Michael Albinus <michael.albinus@gmx.de>
6795
6796 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 6797 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
6798 (xd_read_queued_messages): Catch Qdbus_error from the macros.
6799 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
777013f2 6800 macro. (Bug#1186)
1dae9197 6801
f9bd0df9 68022008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
6803
6804 * s/sol2-10.h: New file.
6805
878a4584
JB
68062008-10-23 Juanma Barranquero <lekktu@gmail.com>
6807
6808 * xdisp.c (fill_glyph_string): Fix typo in source (though the
6809 poor beast has survived 9+ years and the jump from xterm.c!).
6810
cd265ca6
MR
68112008-10-23 Martin Rudalics <rudalics@gmx.at>
6812
6813 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
6814 Reword doc-string.
f5385255 6815 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 6816
472a4dc9
JB
68172008-10-23 Juanma Barranquero <lekktu@gmail.com>
6818
6819 * character.c (syms_of_character) <script-representative-chars>:
6820 <unicode-category-table>: Doc fixes.
6821
159bd5a2
NF
68222008-10-23 Noah Friedman <friedman@splode.com>
6823
6824 * coding.c (make_conversion_work_buffer): Check that
6825 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
6826 Fget_buffer_create.
6827
49f9c344
KH
68282008-10-23 Kenichi Handa <handa@m17n.org>
6829
6830 * font.c (font_add_log): Check the values of extra properties.
6831
12bb3111
MR
68322008-10-22 Martin Rudalics <rudalics@gmx.at>
6833
6834 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
6835 Reword doc-string.
6836 (Fset_window_parameter): Use NILP.
6837 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 6838 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 6839
bbeb4e99
JB
68402008-10-22 Juanma Barranquero <lekktu@gmail.com>
6841
6842 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
6843
68442008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
6845
6846 * nsfns.m (ns_appkit_version): New function.
6847 (x-server-version): Use it.
6848 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
6849 (x-server-vendor): Don't check_ns().
6850
6851 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
6852
a9b555d3
JB
68532008-10-22 Juanma Barranquero <lekktu@gmail.com>
6854
6855 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
6856 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
6857
4626499f
KH
68582008-10-22 Kenichi Handa <handa@m17n.org>
6859
e3681952
KH
6860 * syntax.c (scan_words): Call word_boundary_p instead of comparing
6861 scripts.
6862
4626499f
KH
6863 * category.c (word_boundary_p): Check scripts instead of charset.
6864 Handle nil value in word-separating-categories and
6865 word-combining-categories.
6866 (syms_of_category): Fix docstrings of word-separating-categories
6867 and word-combining-categories.
6868
1560f91a
EZ
68692008-10-21 Eli Zaretskii <eliz@gnu.org>
6870
6871 * coding.c (Fencode_coding_region, Fdecode_coding_region)
6872 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
6873
f4668441
MR
68742008-10-21 Martin Rudalics <rudalics@gmx.at>
6875
6876 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
6877 Rename arg "buffer" to "buffer_or_name".
6878 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
6879 it optional.
6880 (no_switch_window): Remove since the return value is not used.
a9b555d3 6881 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
6882 Consider window as dedicated when Fwindow_dedicated_p returns a
6883 non-nil value.
6884 * lisp.h: Remove prototype for no_switch_window.
6885
fd75ddb2
JD
68862008-10-21 Jan Djärv <jan.h.d@swipnet.se>
6887
6888 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 6889 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 6890
07295713
KH
68912008-10-21 Kenichi Handa <handa@m17n.org>
6892
6893 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
6894 check Vlatin_extra_code_table.
6895
712adc82
EZ
68962008-10-20 Eli Zaretskii <eliz@gnu.org>
6897
6898 * fileio.c (Fset_file_modes): Doc fix.
6899
f549eb0b
MA
69002008-10-19 Michael Albinus <michael.albinus@gmx.de>
6901
6902 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
6903 in arrays.
6904
aac0c6e3
MR
69052008-10-19 Martin Rudalics <rudalics@gmx.at>
6906
6907 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
6908 Mention kill-buffer in doc-string.
6909 (Fset_window_buffer): Reinsert tem check removed in last commit.
6910 (Fenlarge_window, Fshrink_window): Have argument names and
6911 doc-string follow Elisp manual more closely.
6912
69132008-10-18 Eli Zaretskii <eliz@gnu.org>
6914
6915 * fileio.c (Fset_file_modes): Doc fix.
6916
69172008-10-18 Martin Rudalics <rudalics@gmx.at>
6918
6919 * window.c (Fwindow_width, Fset_window_start)
6920 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
6921 (Fdelete_windows_on, Freplace_buffer_in_windows):
6922 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
6923 (Fwindow_dedicated_p): Make window argument optional.
6924 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
6925 (Fset_window_buffer): Respect any non-nil dedicated value for
6926 window. Rename "buffer" argument to "buffer_or_name".
6927
69282008-10-18 Ulrich Mueller <ulm@gentoo.org>
6929
6930 * m/sh3.h: New file, machine description for SuperH.
6931
69322008-10-17 Martin Rudalics <rudalics@gmx.at>
6933
6934 * window.c (Fsplit_window): Rename arg horflag to horizontal.
6935
69362008-10-17 Kenichi Handa <handa@m17n.org>
6937
6938 * ftfont.c (ftfont_otf_features): Fix indexing
6939 gsub_gpos->FeatureList.Feature. Check the validity of indices.
6940
69412008-10-16 Magnus Henoch <mange@freemail.hu>
6942
6943 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
6944 (Fdbus_call_method_asynchronously): Ditto.
6945 This change makes C-h f display the argument list.
6946
69472008-10-16 Chong Yidong <cyd@stupidchicken.com>
6948
6949 * fileio.c (Fexpand_file_name): Doc fix.
6950
6951 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
6952 of :foreground and :background equivalent to unspecified (20.x
6953 compatibility).
6954
69552008-10-15 Eli Zaretskii <eliz@gnu.org>
6956
6957 * buffer.c (syms_of_buffer): Doc fix.
6958
69592008-10-14 Kenichi Handa <handa@m17n.org>
6960
6961 * font.c (font_clear_prop): When clearing font width, clear the
6962 average width field too.
6963
69642008-10-12 Andreas Schwab <schwab@suse.de>
6965
6966 * ftfont.c (ftfont_shape_by_flt): Make static.
6967 * ftfont.h (ftfont_shape_by_flt): Don't declare.
6968
6969 * font.c: Don't include <m17n-flt.h>.
6970
69712008-10-10 Eli Zaretskii <eliz@gnu.org>
6972
6973 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
6974
69752008-10-09 Eli Zaretskii <eliz@gnu.org>
6976
6977 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
6978 away code.
6979
69802008-10-09 Chong Yidong <cyd@stupidchicken.com>
6981
6982 * dispnew.c (update_text_area): Avoid looping due to large glyph
6983 overhangs (bug#1070).
6984
69852008-10-09 Kenichi Handa <handa@m17n.org>
6986
6987 * fontset.c (face_for_char): If face->fontset is negative, just
6988 return ascii_face.
6989
f5385255
SM
6990 * font.c (font_delete_unmatched): Fix previous change.
6991 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
6992
69932008-10-09 Martin Rudalics <rudalics@gmx.at>
6994
6995 * frame.c (Fraise_frame): On text-only terminals select frame in
6996 order to make it visible. (Bug#1061)
6997
69982008-10-08 Chong Yidong <cyd@stupidchicken.com>
6999
7000 * fontset.c (fontset_find_font): Check frame validity.
7001
70022008-10-07 Chong Yidong <cyd@stupidchicken.com>
7003
a9b555d3 7004 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
7005 (xg_display_close): Allow Emacs to close all displays (bug#985).
7006
70072008-10-06 Andreas Schwab <schwab@suse.de>
7008
f5385255 7009 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
7010
70112008-10-06 Chong Yidong <cyd@stupidchicken.com>
7012
f5385255 7013 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 7014
a9b555d3 7015 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
7016
7017 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
7018 during initialization.
7019
70202008-10-04 Eli Zaretskii <eliz@gnu.org>
7021
7022 * xdisp.c (redisplay_internal): If frame switched, redisplay the
7023 whole thing on MSDOS frames as well as on a TTY.
7024
7025 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
7026 well as for TTY.
7027 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
7028 well as on a TTY.
7029
7030 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
7031 as well as for TTY.
7032
7033 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
7034
7035 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
7036 MSDOS frames as well.
7037
70382008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7039
7040 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
7041 correct arguments.
b71ac3dd 7042 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
7043
70442008-10-03 Glenn Morris <rgm@gnu.org>
7045
7046 * emacs.c (USAGE1): Add --daemon.
7047
70482008-10-02 Eli Zaretskii <eliz@gnu.org>
7049
7050 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
7051 100, so it's in percents as advertised.
7052
70532008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7054
7055 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
7056 (ns_output.current_cursor, ns_output.desired_cursor)
7057 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
7058 (FRAME_NEW_CURSOR_COLOR): Remove.
7059
7060 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 7061 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
7062 enumeration (HOLLOW_BOX_CURSOR, etc.).
7063
7064 * nsterm.m (ns_frame_rehighlight): Remove commented code.
7065 (draw_window_cursor): Simplify code.
f5385255
SM
7066 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
7067 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 7068 updates manually.
a9b555d3
JB
7069 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
7070 Use core Emacs cursor types.
aac0c6e3 7071
b8ff72fa 7072 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
7073
70742008-10-02 Martin Rudalics <rudalics@gmx.at>
7075
7076 * process.c (Faccept_process_output): Fix doc-string.
7077
70782008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
7079
7080 * gmalloc.c (__sbrk): Also define for uClibc.
7081
7082 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
7083 for uClibc.
7084
70852008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7086
7087 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
7088 styles.
7089 (nsfont_open): Reenable the cache.
7090
70912008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7092
7093 * font.c (font_matching_entity): Reflect ATTRS in font selection.
7094 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
7095
70962008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
7097
7098 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
7099 a suspended terminal.
7100
71012008-09-30 Michael Albinus <michael.albinus@gmx.de>
7102
7103 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
7104
71052008-09-30 Eli Zaretskii <eliz@gnu.org>
7106
7107 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
7108
71092008-09-30 Chong Yidong <cyd@stupidchicken.com>
7110
7111 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
7112 in a continued line coincides with a line beginning.
7113
71142008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
7115
7116 * nsfont.m (nsfont_trait_distance): Fix bug.
7117 (nsfont_list): Return a list rather than a vector (syncs with Handa
7118 changes of 2008-05-14).
7119 (nsfont_open): Improve logging.
7120
71212008-09-29 Andreas Schwab <schwab@suse.de>
7122
7123 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
7124
71252008-09-28 Martin Rudalics <rudalics@gmx.at>
7126
7127 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
7128 name as char-resolve-modifiers.
7129 Reported by: Markus Triska <markus.triska@gmx.at>
7130
71312008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
7132
7133 * dispnew.c (init_display): Return earlier when running as a daemon.
7134
71352008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7136
7137 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
7138
71392008-09-27 Eli Zaretskii <eliz@gnu.org>
7140
7141 * composite.c (Fcomposition_get_gstring)
7142 (Fcompose_region_internal, Fcompose_string_internal)
7143 (Ffind_composition_internal): Doc fix.
7144 (syms_of_composite) <compose-chars-after-function>: Doc fix.
7145 (syms_of_composite) <auto-composition-function>: Doc fix.
7146 (syms_of_composite) <composition-function-table>: Doc fix.
7147
71482008-09-25 Chong Yidong <cyd@stupidchicken.com>
7149
7150 * search.c (wordify): New argument for lax word-ends.
7151 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
7152
71532008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
7154
7155 * lisp.h (is_daemon): Declare.
7156 * dispnew.c (init_display): Do not try to initialize the terminal
7157 when running as a daemon.
7158
71592008-09-22 Chong Yidong <cyd@stupidchicken.com>
7160
7161 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
7162 x_display_pixel_height.
7163
71642008-09-22 Martin Rudalics <rudalics@gmx.at>
7165
7166 * undo.c (record_point): Don't call Fundo_boundary for first
7167 change. (Bug#731)
7168
71692008-09-22 Juanma Barranquero <lekktu@gmail.com>
7170
7171 * emacs.c (Fdaemonp): Doc fix.
7172
71732008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
7174
7175 * emacs.c (main): Place #ifdef in the proper place.
7176
71772008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
7178
7179 * emacs.c (standard_args): Add --daemon.
7180 (main): Disconnect from the terminal when --daemon is passed.
7181 (is_daemon): New variable.
7182 (Fdaemonp): New function.
7183 (syms_of_emacs): Defsubr it.
7184
71852008-09-20 Chong Yidong <cyd@stupidchicken.com>
7186
7187 * xdisp.c (get_next_display_element): Handle string display
7188 correctly when checking for the end of a box run.
7189
71902008-09-20 Glenn Morris <rgm@gnu.org>
7191
7192 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
7193 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
7194 (Frename_file): Avoid copying to trash if a rename involves
7195 a delete. (Bug#964).
7196
71972008-09-20 Eli Zaretskii <eliz@gnu.org>
7198
7199 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
7200 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
7201 frames as well as termcap frames.
7202 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
7203 get_named_tty.
7204
72052008-09-19 Eli Zaretskii <eliz@gnu.org>
7206
7207 * process.c (procfs_system_process_attributes): Fix cmdline in
7208 case /proc/PID/cmdline is empty.
7209
7210 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
7211 x_display_pixel_height.
7212
72132008-09-19 Juanma Barranquero <lekktu@gmail.com>
7214
7215 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
7216
7217 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
7218 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
7219
72202008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
7221
7222 * dispextern.h (struct it): Move line_wrap away from the middle of
7223 bitfields. Move voffset in struct iterator_stack_entry after the
7224 bitfields. Move tab_width near after another short.
7225
72262008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
7227
7228 * frame.h (struct frame): Move alpha from the middle of bitfields.
7229
7230 * window.h (struct window): Move frozen_window_start_p after the
7231 rest of the bitfields to reduce padding.
7232
72332008-09-18 Chong Yidong <cyd@stupidchicken.com>
7234
7235 * xterm.h (x_display_info): Remove `height' and `width' members.
7236
7237 * nsterm.h (ns_display_info): Remove `height' and `width' members.
7238
7239 * w32term.h (w32_display_info): Remove `height', `width',
7240 `height_in', and `width_in' members.
7241
b8ff72fa
SM
7242 * xterm.c (x_display_pixel_height, x_display_pixel_width):
7243 New functions.
aac0c6e3
MR
7244 (x_calc_absolute_position): Use them.
7245 (x_term_init): Omit removed `height' and `width' members.
7246
b8ff72fa
SM
7247 * w32term.c (x_display_pixel_height, x_display_pixel_width):
7248 New functions.
aac0c6e3
MR
7249 (w32_read_socket, x_calc_absolute_position): Use them.
7250 (w32_initialize_display_info, w32_term_init): Omit removed members
7251 of w32_display_info.
7252
b8ff72fa
SM
7253 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
7254 New functions.
7255 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 7256
b8ff72fa
SM
7257 * xterm.c (x_display_pixel_height, x_display_pixel_width):
7258 New functions.
aac0c6e3
MR
7259 (x_calc_absolute_position): Use them.
7260 (x_term_init): Omit removed `height' and `width' members.
7261
7262 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
7263 (compute_tip_xy):
7264 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
7265 * xmenu.c (menu_position_func): Use x_display_pixel_height and
7266 x_display_pixel_width.
7267
72682008-09-18 Kenichi Handa <handa@m17n.org>
7269
7270 * composite.c (fill_gstring_header): Don't check FROM and TO here.
7271 (composition_compute_stop_pos): Fix handling of static composition.
7272 (Fcomposition_get_gstring): Check FROM and TO at first.
7273
72742008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
7275
46e722a9 7276 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
7277 mixup (YAILOM).
7278
72792008-09-17 Chong Yidong <cyd@stupidchicken.com>
7280
7281 * indent.c (Fvertical_motion): Use position reported by iterator
7282 instead of PT for determining screen motion (bug#943).
7283
72842008-09-17 Romain Francoise <romain@orebokech.com>
7285
7286 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
7287
72882008-09-17 Kenichi Handa <handa@m17n.org>
7289
7290 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
7291
7292 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
7293 if necessary.
7294
72952008-09-16 Kenichi Handa <handa@m17n.org>
7296
7297 * coding.c (make_conversion_work_buffer): Avoid calling
7298 Fget_buffer_create if it is not necessary.
7299
73002008-09-15 Martin Rudalics <rudalics@gmx.at>
7301
7302 * window.c (Fselect_window): Don't update window_select_count and
7303 use_time when norecord is not nil.
7304
73052008-09-14 Kenichi Handa <handa@m17n.org>
7306
7307 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
7308 specpdl_ptr.
7309
73102008-09-12 Kenichi Handa <handa@m17n.org>
7311
7312 * indent.c (scan_for_column): Don't handle automatic composition
7313 if the current buffer is not associated with a window.
7314
7315 * composite.c (composition_reseat_it): If the current buffer is
7316 not associated with a window, ignore the automatic composition.
7317 (find_automatic_composition): Likewise.
7318
73192008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
7320
7321 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
7322 (Fgpm_mouse_stop): Use it.
7323 * termhooks.h (close_gpm): Declare.
7324 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
7325 connection if Gpm_GetEvent fails.
7326
7327 * window.c (set_window_buffer): Always preserve current-buffer.
7328
73292008-09-12 Glenn Morris <rgm@gnu.org>
7330
7331 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
7332
73332008-09-11 Glenn Morris <rgm@gnu.org>
7334
7335 * charset.c (charset-map-path): Doc fix.
7336
73372008-09-10 Kenichi Handa <handa@m17n.org>
7338
7339 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
7340
7341 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
7342 compose a grapheme cluster with the preceding base glyph.
7343
7344 * composite.c (composition_compute_stop_pos): Fix previous change.
7345 Reset cmp_it->id to -1 at first.
7346
73472008-09-10 Glenn Morris <rgm@gnu.org>
7348
7349 * Makefile.in (character.o, chartab.o): Fix config.h typo.
7350
73512008-09-09 Chong Yidong <cyd@stupidchicken.com>
7352
7353 * keyboard.c (read_key_sequence): Reapply translation maps when
7354 switching keyboards.
7355
73562008-09-09 Kenichi Handa <handa@m17n.org>
7357
7358 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
7359 characters.
7360
7361 * composite.c (FORWARD_CHAR): Fix calculation
7362 of (POSITION).pos_byte.
7363 (composition_compute_stop_pos): Limit the search of composition to
7364 at most 500 characters ahead. If we reach the limit or find a
7365 newline, set cmp_it->ch to -2 and return 0.
7366 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
7367
73682008-09-08 Kenichi Handa <handa@m17n.org>
7369
7370 * indent.c (Fvertical_motion): Be sure to set
7371 it_overshoot_expected if it.cmp_it.id is non-negative.
7372
73732008-09-07 Andreas Schwab <schwab@suse.de>
7374
7375 * callproc.c (Fcall_process): Don't hold references to string data
7376 across garbage collection. Move initialisation of new_argv down
7377 to avoid compiler bug.
7378
73792008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
7380
7381 * process.c (Fsystem_process_attributes): Doc fix.
7382
73832008-09-07 Chong Yidong <cyd@stupidchicken.com>
7384
7385 * callproc.c (Fcall_process): Canonicalize current directory name.
7386
7387 * xdisp.c (move_it_to): When moving by vpos, ensure that the
7388 iterator advances to the next line if the current line ends in a
7389 continued tab.
7390
73912008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
7392
7393 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
7394 member to point to cmp_from.
7395
7396 * xdisp.c: Doc fix for references to gidx data member.
7397
73982008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
7399
7400 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
7401
74022008-09-07 Kenichi Handa <handa@m17n.org>
7403
7404 * composite.c (FORWARD_CHAR): Check STOP after
7405 incrementing (POSITION).pos.
7406
74072008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
7408
7409 * process.c (Fsystem_process_attributes): Doc fix.
7410
74112008-09-06 Chong Yidong <cyd@stupidchicken.com>
7412
7413 * keyboard.c (Ftop_level): Doc fix.
7414
74152008-09-06 Eli Zaretskii <eliz@gnu.org>
7416
7417 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
7418 minibuffer, don't let lower part of menu invade the echo area.
7419
7420 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
7421 "char *q" to access menu text and advance through it. Revert the
7422 change that displayed ">" instead of ASCII character 0x10.
7423
74242008-09-05 Eli Zaretskii <eliz@gnu.org>
7425
7426 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
7427 toggle boxes and radio buttons on MS-DOS as well.
7428
74292008-09-05 Kenichi Handa <handa@m17n.org>
7430
7431 * composite.c (autocmp_chars): Check lookback count.
7432 (composition_compute_stop_pos): Set cmp_it->lookback.
7433 (composition_reseat_it): Check lookback count.
7434 (struct position_record): New struct.
7435 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
7436 (find_automatic_composition): New function.
7437 (composition_adjust_point): Use find_automatic_composition.
7438
7439 * dispextern.h (struct composition_it): New member lookback.
7440
74412008-09-02 Chong Yidong <cyd@stupidchicken.com>
7442
7443 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
7444 if moving by a single line.
7445
74462008-09-02 Andreas Schwab <schwab@suse.de>
7447
7448 * xterm.c (x_delete_display): Fix merge error.
7449
7450 * fileio.c (Fexpand_file_name): Remove unused variables.
7451
74522008-09-02 Eli Zaretskii <eliz@gnu.org>
7453
7454 * fileio.c (Fexpand_file_name): Copy argument `name' into local
7455 storage on all platforms, not just on DOS_NT.
7456
74572008-09-02 Jason Rumney <jasonr@gnu.org>
7458
b8ff72fa
SM
7459 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
7460 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
7461
74622008-09-01 Chong Yidong <cyd@stupidchicken.com>
7463
7464 * xfaces.c (Finternal_set_alternative_font_family_alist)
7465 (Finternal_set_alternative_font_registry_alist): Properly copy
7466 entire alist structure.
7467
74682008-09-01 Kenichi Handa <handa@m17n.org>
7469
d66c0241 7470 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 7471 representative chars of the script is a vector.
d66c0241
JB
7472 (ftfont_list): Handle the case where the representative chars of
7473 the script is a vector.
aac0c6e3
MR
7474
7475 * character.c (syms_of_character): Docstring of
7476 script-representative-chars fixed.
7477
74782008-08-31 Eli Zaretskii <eliz@gnu.org>
7479
7480 * msdos.c (BUILD_CHAR_GLYPH): New macro.
7481 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
7482 the menu. Allocate larger buffer for `text', to account for
7483 possible ^C characters.
7484
74852008-08-31 Martin Rudalics <rudalics@gmx.at>
7486
7487 * xdisp.c (prepare_menu_bars): Don't call
7488 Vwindow_size_change_functions with arg Qt.
7489
74902008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
7491
7492 * font.h (font_range):
7493 * fileio.c (report_file_error):
46e722a9
SM
7494 * composite.c (composition_update_it): Yet another int/Lisp_Object
7495 mixup (YAILOM).
aac0c6e3
MR
7496
74972008-08-30 Glenn Morris <rgm@gnu.org>
7498
7499 * data.c (Fmake_variable_frame_local): Doc fix.
7500
7501 * frame.c (Fmodify_frame_parameters): Doc fix.
7502
75032008-08-30 Eli Zaretskii <eliz@gnu.org>
7504
7505 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
7506 needed by GetTokenInformation.
7507 (w32_system_process_attributes): Check return values of all system
7508 APIs.
7509
7510 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
7511 only when the state changes.
7512 (IT_update_begin, IT_update_end): Add termscript trace.
7513
7514 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
7515 clipboard is unavailable. Set dst to NULL if it doesn't point to
7516 malloc'ed data.
7517 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
7518 passing random values to xfree.
7519
7520 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 7521 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
7522
75232008-08-29 Jason Rumney <jasonr@gnu.org>
7524
7525 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
7526
75272008-08-29 Eli Zaretskii <eliz@gnu.org>
7528
7529 * composite.c (fill_gstring_body): Avoid compiler warnings.
7530
7531 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
7532 LGLYPH_SET_CODE to avoid compiler warnings.
7533
2ae37cf0 7534 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
7535
7536 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
7537
7538 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
7539 LGLYPH_SET_CODE.
7540
75412008-08-29 Kenichi Handa <handa@m17n.org>
7542
7543 * fileio.c (report_file_error): Don't downcase the first character
7544 of errstring if it is still unibyte.
7545
75462008-08-29 Kenichi Handa <handa@m17n.org>
7547
7548 These changes are to re-implement the automatic composition so
7549 that it doesn't use text properties.
7550
7551 * Makefile.in (ftfont.o): Depend on composite.h.
7552 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
7553
7554 * character.h (Vunicode_category_table): Extern it.
7555
7556 * character.c (Vunicode_category_table): New variable.
7557 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
7558
7559 * chartab.c (optimize_sub_char_table): Perform more greedy
7560 optimization.
7561
b8ff72fa
SM
7562 * composite.h (enum composition_method):
7563 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
7564 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
7565 (Vcomposition_function_table): Extern it.
7566 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
7567 (composition_gstring_put_cache, composition_gstring_from_id)
7568 (composition_gstring_p, composition_gstring_width)
7569 (composition_compute_stop_pos, composition_reseat_it)
7570 (composition_update_it, composition_adjust_point): Extern them.
7571 (Fcomposition_get_gstring): EXFUN it.
7572
d66c0241 7573 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
7574 (Vcomposition_function_table)
7575 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
7576 (gstring_hash_table, gstring_work, gstring_work_headers):
7577 New variables.
aac0c6e3
MR
7578 (gstring_lookup_cache, composition_gstring_put_cache)
7579 (composition_gstring_from_id, composition_gstring_p)
7580 (composition_gstring_width, fill_gstring_header)
7581 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
7582 (composition_reseat_it, composition_update_it)
b8ff72fa 7583 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
7584 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
7585 and gstring_work_headers. DEFVAR_LISP composition-function-table.
7586 Defsubr compostion_get_gstring.
7587
7588 * dispextern.h (struct glyph): New union u.cmp. Delete the member
7589 cmp_id.
7590 (struct glyph_string): Delete the member gidx. New members
7591 cmp_id, cmp_from, and cmp_to.
7592 (enum it_method): Delete GET_FROM_COMPOSITION.
7593 (struct composition_it): New struct.
7594 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
7595 Delete c, len, cmp_id, cmp_len in u.comp.
7596
7597 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 7598 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 7599 (enum lglyph_indices): Likewise.
b8ff72fa 7600 (font_range): Adjust extern.
aac0c6e3
MR
7601 (font_fill_lglyph_metrics): Extern it.
7602
7603 * font.c (QCf): New variable.
7604 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
7605 (font_prepare_composition): Delete this function.
7606 (font_range): Type and arguments changed.
7607 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
7608 (font_fill_lglyph_metrics): New function.
b8ff72fa 7609 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 7610 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
7611 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
7612 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
7613
7614 * fontset.h (font_for_char): Extern it.
7615
7616 * fontset.c (font_for_char): New function.
7617
7618 * ftfont.c: Include composite.h.
7619 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 7620 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
7621
7622 * indent.c: Include composite.h and dispextern.h.
7623 (check_composition): Delete this function.
7624 (scan_for_column): Handle composition by
7625 composition_compute_stop_pos, composition_reseat_it, and
7626 composition_update_it.
7627 (compute_motion): Likewise.
7628 (Fvertical_motion): Fix checking of composition.
7629
7630 * keyboard.c (adjust_point_for_property): Check composition by
7631 composition_adjust_point.
7632
b8ff72fa 7633 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
7634 struct glyph_string.
7635
b8ff72fa
SM
7636 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
7637 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
7638 struct glyph.
7639 (produce_composite_glyph): Likewise.
7640
b8ff72fa
SM
7641 * w32term.c (x_draw_composite_glyph_string_foreground):
7642 Adjust for the change of struct glyph_string.
aac0c6e3
MR
7643 (x_draw_glyph_string): Likewise.
7644
7645 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
7646 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
7647
7648 * xdisp.c: Include font.h.
7649 (it_props): Delete the entry for Qauto_composed.
7650 (init_iterator): Initialize it->cmp_it.id to -1.
7651 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 7652 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
7653 (handle_auto_composed_prop): Delete it.
7654 (handle_composition_prop): Handle only static composition.
7655 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
7656 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 7657 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
7658 (pop_it): Likewise.
7659 (get_next_element): Delete next_element_from_composition.
7660 (CHAR_COMPOSED_P): New macro.
7661 (get_next_display_element): For automatic composition, get a face
7662 from the font in the glyph-string.
7663 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 7664 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
7665 (next_element_from_string): Check if the character at the current
7666 position is composed by CHAR_COMPOSED_P.
7667 (next_element_from_buffer): Likewise.
d66c0241
JB
7668 (next_element_from_composition): Adjust for the change of struct it.
7669 Update it->cmp_it.
b8ff72fa
SM
7670 (dump_glyph): Adjust for the change of struct glyph.
7671 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
7672 it and struct glyph. Don't handle automatic composition here.
7673 (fill_gstring_glyph_string): New function.
7674 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 7675 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
7676 (BUILD_GSTRING_GLYPH_STRING): New macro.
7677 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
7678 automatic composition.
b8ff72fa 7679 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 7680 struct glyph.
b8ff72fa 7681 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 7682
b8ff72fa 7683 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
7684 the change of struct glyph_string.
7685 (x_draw_glyph_string): Likewise.
7686
76872008-08-29 Glenn Morris <rgm@gnu.org>
7688
7689 * buffer.c (word-wrap): Doc fix.
7690 * xdisp.c (truncate-partial-width-windows): Doc fix.
7691 Increase default to 50.
7692
76932008-08-29 Chong Yidong <cyd@stupidchicken.com>
7694
7695 * xdisp.c (update_tool_bar_unwind): New function.
7696 (update_tool_bar): Temporarily set selected frame before building
7697 tool-bar items.
7698
76992008-08-28 Michael Albinus <michael.albinus@gmx.de>
7700
7701 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
7702 snprintf, respectively.
7703 (xd_append_arg): Convert strings with Fstring_make_unibyte.
7704
77052008-08-28 Chong Yidong <cyd@stupidchicken.com>
7706
7707 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
7708 LDFLAGS to GNUstep CC invocation.
7709
77102008-08-27 Chong Yidong <cyd@stupidchicken.com>
7711
7712 * indent.c (Fvertical_motion): Revert last change. Handle the
7713 general case where we are moving forward, and PT spans multiple
7714 screen lines.
7715
7716 * eval.c (find_handler_clause): Temporarily increase
7717 max-lisp-eval-depth while printing the backtrace buffer, to
7718 guarantee that help-mode code can run.
7719
77202008-08-27 Eli Zaretskii <eliz@gnu.org>
7721
7722 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
7723 colors under -rv.
7724 (IT_set_frame_parameters): Don't swap foreground and background
7725 colors if `(reverse . t)' is present in the frame properties.
7726 (internal_terminal_init): Call init_frame_faces only for the
7727 initial frame.
7728
77292008-08-27 Andreas Schwab <schwab@suse.de>
7730
7731 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
7732
77332008-08-27 Andreas Schwab <schwab@suse.de>
7734
7735 * search.c (search_buffer): Set char_base to zero only at the end.
7736
77372008-08-27 Kenichi Handa <handa@m17n.org>
7738
b8ff72fa 7739 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
7740
77412008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
7742
7743 * xterm.c (x_term_init): Temporarily hide the partially
7744 initialized terminal while calling vendor-specific-keysyms.
7745
77462008-08-26 Eli Zaretskii <eliz@gnu.org>
7747
7748 * msdos.c (internal_terminal_init): Most initializations done only
7749 once, especially initial_screen_colors[] and termscript open.
7750
77512008-08-26 Chong Yidong <cyd@stupidchicken.com>
7752
7753 * eval.c (Fcondition_case): Doc fix.
7754
7755 * widgetprv.h (EmacsFramePart): Change font member to the new font
7756 struct.
7757
7758 * widget.c: Include character.h and font.h for XSETFONT.
7759 (setup_frame_gcs): Compute X font id from font struct, just once.
7760
77612008-08-26 Eli Zaretskii <eliz@gnu.org>
7762
7763 * term.c (get_named_tty): Fix last change.
7764
77652008-08-26 Chong Yidong <cyd@stupidchicken.com>
7766
7767 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 7768 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
7769
77702008-08-25 Eli Zaretskii <eliz@gnu.org>
7771
7772 * frame.c (do_switch_frame): Mark previously displayed frame as
7773 obscured for FRAME_MSDOS_P frames as well.
7774
77752008-08-24 Eli Zaretskii <eliz@gnu.org>
7776
7777 * frame.c (make_terminal_frame): Initialize f->terminal,
7778 f->terminal->reference_count, and scroll bars on MS-DOS as well.
7779 Set the top frame to newly created frame.
7780 (Fmake_terminal_frame): Reuse the_only_display_info.
7781
7782 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
7783 estimating available memory.
7784
b97439ce 77852008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
7786
7787 * nsterm.m (ns_draw_window_cursor): Don't call
7788 NSDisableScreenUpdates and NSEnableScreenUpdates on
7789 non-NS_IMPL_COCOA systems.
7790
77912008-08-23 Andreas Schwab <schwab@suse.de>
7792
7793 * process.c (procfs_system_process_attributes): Fix use of
7794 uninitialized variables.
7795
77962008-08-23 Eli Zaretskii <eliz@gnu.org>
7797
7798 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
7799
7800 * dispnew.c (init_display): Remove MS-DOS specific conditions for
7801 calling tty-set-up-initial-frame-faces.
7802
b8ff72fa
SM
7803 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
7804 Allow MSDOS frames along with X frames.
aac0c6e3
MR
7805
7806 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
7807 addition to output_termcap.
7808
7809 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
7810
7811 * termchar.h (FRAME_TTY): Support output_msdos_raw.
7812 (struct tty_display_info) [MSDOS]: Add fields related to mouse
7813 highlight.
7814
7815 * process.c [!subprocesses]: Define QCname.
7816 (syms_of_process): Intern and staticpro it.
7817
7818 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
7819 Adjust for changes in encoding/decoding routines.
7820 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
7821 encode_coding and decode_coding.
7822
b8ff72fa 7823 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
7824
7825 * dosfns.c: Include frame.h before termhooks.h.
7826 (dos_cleanup): Use CURTTY ()->termscript instead of a global
7827 variable termscript.
7828
7829 * s/msdos.h (USER_FULL_NAME): Define.
7830 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
7831
7832 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
7833 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
7834 pw->pw_gecos.
7835
7836 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
7837 SELECTED_FRAME as additional (1st) argument.
7838 (tty_read_avail_input): Handle output_msdos_raw in
7839 addition to output_termcap.
7840
7841 * msdos.c: Include frame.h before termhooks.h.
7842 (mouse_on, mouse_off, mouse_moveto, mouse_init)
7843 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
7844 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
7845 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
7846 (IT_set_terminal_modes, IT_reset_terminal_modes)
7847 (IT_set_frame_parameters): Use tty->termscript instead of a global
7848 variable termscript.
7849 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
7850 global variable terminal_coding. Don't refer to
7851 Vnonascii_translation_table.
7852 (internal_terminal_init): Set Vwindow_system in current_kboard.
7853 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
7854 Announce date and time of session start, if termscript is open.
7855 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
7856 term.c:init_tty). Open termscript only of not already open.
7857 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
7858 here instead of dos_ttraw. Don't initialize display if this is an
7859 initial tty. Don't set FRAME_FONT.
7860 (Vwindow_system_version): Bump to 23.
7861 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
7862 is available, set up mouse_position_hook.
7863 (dos_ttraw, IT_set_terminal_modes): If called with initial
7864 terminal, do nothing.
7865 (IT_set_frame_parameters): Handle the Qtty_type frame
7866 parameter by calling internal_terminal_init.
7867 (dos_set_window_size, show_mouse_face)
7868 (clear_mouse_face, IT_note_mode_line_highlight)
7869 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
7870 (dos_rawgetc): Use tty_display_info instead of x_display_info.
7871 (initialize_msdos_display): New function.
7872 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
7873 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
7874 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
7875 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 7876 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
7877 (request_sigio, unrequest_sigio): Don't define, now defined on
7878 sysdep.c.
7879 (IT_write_glyphs): Rewrite to use encode_terminal_code.
7880
7881 * term.c [MSDOS]: Include msdos.h.
7882 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
7883 conditional to DOS_NT. Allow only one call to this function in a
7884 session. Don't allocate a new struct tty_display_info; instead,
7885 reuse the_only_display_info. Call get_tty_size to get screen
7886 dimensions. Call init_baud_rate to set bad_rate.
7887 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
7888 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 7889 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
7890 (get_tty_terminal, get_named_tty, Ftty_type)
7891 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
7892 output_termcap.
b8ff72fa
SM
7893 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
7894 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 7895 only when subprocesses are supported.
aac0c6e3
MR
7896
7897 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
7898 f->output_data.x.
7899 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
7900 terminal devices.
7901
5582fbc7 7902 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
7903 x_output.
7904 (FRAME_FONT): Use output_data.tty.
7905 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
7906 (struct x_display_info): Rename from display_info. Update all users in
7907 msdos.c.
aac0c6e3 7908 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 7909 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
7910 (dos_ttraw): Update prototype.
7911
7912 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
7913 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
7914
79152008-08-23 Jason Rumney <jasonr@gnu.org>
7916
7917 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
7918 (fn_TIFFSetDirectory): New library function used.
7919 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
7920 (tiff_load): Use :index to select among multiple images. Set count
7921 property when multiple images exist.
7922 (gif_format): Use :index, not :image.
7923
79242008-08-23 Chong Yidong <cyd@stupidchicken.com>
7925
7926 * xdisp.c (try_scrolling): Check INT_MAX instead of
7927 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
7928 to obtain INT_MAX.
7929
79302008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
7931
7932 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
7933
79342008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
7935
7936 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
7937 GNUstep library location.
7938
79392008-08-21 Chong Yidong <cyd@stupidchicken.com>
7940
7941 * xfaces.c (x_update_menu_appearance): Check validity of menu font
7942 before using it.
7943
7944 * puresize.h (BASE_PURESIZE): Increase to 1250000.
7945
79462008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7947
7948 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
7949 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
7950 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
7951 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
7952 (EmacsApp-cursor_blink_handler): Remove declaration.
7953 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
7954 match 01 Feb 2008 changes in xterm.c.
7955 (ns_read_socket): Add cast to avoid warning.
7956 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
7957 GNUstep.
7958
79592008-08-20 Chong Yidong <cyd@stupidchicken.com>
7960
7961 * xselect.c (x_get_foreign_selection): Return nil if desired
7962 selection could not be obtained, instead of signalling an error.
7963
79642008-08-20 David Reitter <david.reitter@gmail.com>
7965
7966 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
7967 * nsterm.m: Remove ns-specific code for cursor blinking.
7968 (ns_draw_window_cursor): Clear cursor properly rather than
7969 redrawing the area. Respect width of bar cursors.
7970 These changes enable the use of generic blink-cursor-mode and
7971 generic cursor types in NS and support smooth cursor movements (do
7972 not blink off after command).
7973 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
7974 Nextstep, too.
7975
79762008-08-19 Kenichi Handa <handa@m17n.org>
7977
7978 * font.c (Vfont_log_deferred): New variable.
7979 (font_add_log): Check Vfont_log_deferred.
7980 (font_deferred_log): New function.
7981
7982 * font.h (font_deferred_log): Extern it.
7983
7984 * fontset.c (reorder_font_vector): Use encoding charset of fonts
7985 for sorting.
7986 (face_for_char): Use deferred log.
7987
79882008-08-18 Kenichi Handa <handa@m17n.org>
7989
7990 * fontset.c (face_for_char): Add font log.
7991
7992 * font.c (font_add_log): Add the font properties :script, :lang,
7993 and :otf in the log.
7994
79952008-08-17 Chong Yidong <cyd@stupidchicken.com>
7996
7997 * xdisp.c: Remove dead code.
7998 (handle_invisible_prop, next_overlay_string): Defer call to
7999 setup_for_ellipsis.
8000 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
8001
80022008-08-15 Chong Yidong <cyd@stupidchicken.com>
8003
8004 * xfaces.c (lookup_derived_face): Properly handle possible zero
8005 return value of get_lface_attributes.
8006 (merge_faces): Don't tell lookup_derived_face to signal an error
8007 if face is not found.
8008
8009 * dired.c (Fdirectory_files): Doc fix.
8010
8011 * process.c (make_process): Initialize kill_without_query struct
8012 member.
8013
80142008-08-15 Eli Zaretskii <eliz@gnu.org>
8015
8016 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
8017 Alternative calculation of totphys for Visual Studio 6.
8018
8019 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
8020
8021 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
8022 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
8023 All users changed.
8024 (stat): Only root directory passed to GetDriveType. Allow RAM
8025 disk as well as local fixed disk when w32-get-true-file-attributes
8026 is set to `local'.
8027 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
8028 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
8029 (w32_cached_id, w32_add_to_cache): New functions.
8030 (get_name_and_id): Look account names in the cache before calling
8031 lookup_account_sid.
8032 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
8033 New initialization flags.
8034 (globals_of_w32): Initialize them to zero.
8035 (w32_system_process_attributes): Use w32_cached_id and
8036 w32_add_to_cache.
8037
80382008-08-14 Lawrence Mitchell <wence@gmx.li>
8039
8040 * lread.c (Fread_char, Fread_char_exclusive): If no character
8041 event is read before timeout is reached, return nil, rather than
8042 converting to a number.
8043
80442008-08-14 Chong Yidong <cyd@stupidchicken.com>
8045
8046 * fns.c (use_dialog_box): Doc fix.
8047
8048 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
8049 on OS X.
8050
80512008-08-13 Chong Yidong <cyd@stupidchicken.com>
8052
8053 * frame.c (Qns_parse_geometry): New var.
8054 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
8055
80562008-08-11 Chong Yidong <cyd@stupidchicken.com>
8057
8058 * xdisp.c (x_produce_glyphs): Handle the case when font has no
8059 space character in calculating tabs.
8060
80612008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
8062
8063 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
8064
80652008-08-10 Glenn Morris <rgm@gnu.org>
8066
8067 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
8068 silence gcc "limited range of data type" warnings in some
8069 make_fixnum_or_float calls.
8070
80712008-08-09 Eli Zaretskii <eliz@gnu.org>
8072
8073 * w32.c (w32_system_process_attributes): If the process does not
8074 exist, return nil.
8075
8076 * w32.c: Include thelp32.h, psapi.h and coding.h.
8077 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
8078 declarations.
8079 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
8080 (Process32Next_Proc): New typedefs.
8081 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
8082 (g_b_init_process32_next, g_b_init_open_thread_token)
8083 (g_b_init_impersonate_self, g_b_init_revert_to_self)
8084 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
8085 (g_b_init_get_process_working_set_size)
8086 (g_b_init_global_memory_status_ex): New static variables.
8087 (globals_of_w32): Initialize them.
8088 (create_toolhelp32_snapshot, process32_first, process32_next)
8089 (open_thread_token, impersonate_self, revert_to_self)
8090 (get_process_memory_info, get_process_working_set_size)
8091 (global_memory_status, global_memory_status_ex): New wrapper
8092 functions.
8093 (w32_list_system_processes, w32_system_process_attributes)
8094 (enable_privilege, restore_privilege, ltime, process_times):
8095 New functions.
8096 (convert_time_raw): New function.
8097 (convert_time): Remove conversion of FILETIME into time in 100
8098 nsec units, call convert_time_raw instead.
8099
8100 * process.h (w32_list_system_processes, w32_system_process_attributes):
8101 Add prototypes.
8102 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
8103 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
8104 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
8105 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
8106
8107 * process.c (Fsystem_process_attributes): Doc fix.
8108
81092008-08-08 Chong Yidong <cyd@stupidchicken.com>
8110
8111 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
8112 a continued multi-char glyph; if so, advance to the actual glyph.
8113
81142008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
8115
8116 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
8117
8118 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
8119 (.m.o): Use it.
8120 * config.in: Regenerate.
8121
81222008-08-07 Chong Yidong <cyd@stupidchicken.com>
8123
8124 * xdisp.c (redisplay_window): Revert last change.
8125 (try_window): Check bottom scroll margin too.
8126
81272008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8128
8129 * config.in: Regenerate.
8130
8131 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
8132 -list-load-path-shadows'.
8133 (nsgui.h): Reduce number of things depending on it.
8134
81352008-08-06 Chong Yidong <cyd@stupidchicken.com>
8136
8137 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
8138 instead of window-end which does the wrong thing at eob.
8139 (try_cursor_movement): Minor optimization.
8140 (redisplay_window): If scroll margin is defined, don't assume
8141 window doesn't need scrolling.
8142
81432008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8144
8145 * config.in: Regenerate.
8146
8147 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
8148 (mostlyclean): Don't delete *.d under NS.
8149
8150 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
8151
81522008-08-06 Kenichi Handa <handa@m17n.org>
8153
8154 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
8155
81562008-08-06 Andreas Schwab <schwab@suse.de>
8157
8158 * config.in: Regenerate.
8159
81602008-08-05 Chong Yidong <cyd@stupidchicken.com>
8161
8162 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
8163 forcing a window start.
8164
8165 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
8166 (auto_save_1): Update modtime when auto-save-list-file-name is on.
8167
81682008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8169
8170 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
8171 argument.
8172
81732008-08-05 Juanma Barranquero <lekktu@gmail.com>
8174
8175 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
8176 <scroll-down-aggressively, before-change-functions>:
8177 <after-change-functions>: Reflow docstrings.
8178
81792008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8180 Ken Raeburn <raeburn@gnu.org>
8181
8182 Dock menu customization, based on a patch by Ken Raeburn, plus some
8183 other fixes.
8184 * nsmenu.m (dockMenu): New variable.
8185 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
8186
8187 * nsterm.h (dockMenu): Declare.
8188
8189 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
8190 (ns_term_init): Initialize dockMenu.
8191 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
8192 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
8193 left.
8194
8195 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
8196
81972008-08-04 Chong Yidong <cyd@stupidchicken.com>
8198
8199 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
8200
8201 * config.in: Regenerate.
8202
82032008-08-04 Seiji Zenitani <zenitani@mac.com>
8204
8205 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
8206
82072008-08-04 Chong Yidong <cyd@stupidchicken.com>
8208
8209 * nsterm.h (find_and_call_menu_selection): Fix prototype.
8210
82112008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8212
8213 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
8214
8215 * keyboard.h: Comment an #endif.
8216
8217 * lisp.h (have_menus_p): Adjust comment.
8218
8219 * menu.c (find_and_return_menu_selection): Fix comparison with
8220 client_data.
8221
8222 * nsmenu.m (popup_activated_flag): New variable.
8223 (popup_activated): New function.
8224 (menu-or-popup-active-p): New exported lisp definition.
8225 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
8226 when popup done.
8227 (ns_popup_dialog): Set popup_activated_flag.
8228
8229 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
8230 version for GNUstep (handled by conditional typedef in nsterm.m).
8231 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
8232 in rgb.txt).
8233
8234 * process.c (init_process): Use DARWIN_OS, not DARWIN.
8235
8236 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
8237
8238 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
8239
8240 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
8241 shortcircuit if popup_activated like GTK and X toolkit.
8242
8243 * m/inter386.h: Change DARWIN to DARWIN_OS.
8244
8245 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
8246 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
8247 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
8248 comment on NO_SOCK_SIGIO.
8249
82502008-08-03 Chong Yidong <cyd@stupidchicken.com>
8251
8252 * nsterm.m (windowDidResize): Remove stopModal call.
8253
82542008-08-03 Andreas Schwab <schwab@suse.de>
8255
8256 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
8257 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
8258
82592008-08-02 Chong Yidong <cyd@stupidchicken.com>
8260
8261 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
8262 Don't use uninitialized pointer variable when using getrlimit.
8263
82642008-08-02 Jason Rumney <jasonr@gnu.org>
8265
8266 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
8267
82682008-08-02 Eli Zaretskii <eliz@gnu.org>
8269
8270 * alloc.c (NSTATICS): Bump to 0x640.
8271
8272 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
8273
8274 * lisp.h: Add prototype for directory_files_internal.
8275
8276 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
8277 New functions.
8278 (syms_of_process): Defsubr them. Add initializations for various
8279 Q* symbols used in procfs_system_process_attributes.
8280 (procfs_list_system_processes, procfs_system_process_attributes)
8281 [HAVE_PROCFS]: New functions.
8282 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
8283 (procfs_get_total_memory): New functions.
8284
82852008-08-01 Juanma Barranquero <lekktu@gmail.com>
8286
8287 * xfaces.c (Fx_load_color_file): Fix previous change;
8288 it is #ifdef WINDOWSNT, not WINDOWS_NT.
8289
82902008-08-01 Michael Albinus <michael.albinus@gmx.de>
8291
8292 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
8293
82942008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8295
8296 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
8297
82982008-08-01 Chong Yidong <cyd@stupidchicken.com>
8299
8300 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
8301
8302 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
8303 define NSApplicationDelegateReplySuccess.
8304 (EmacsView -converstationIdentifier): Use long instead of
8305 NSInteger for GNUstep, since it doesn't have NSInteger.
8306
8307 * xmenu.c: Revert last change.
8308
8309 * keyboard.h: Fix last change.
8310
83112008-08-01 Juanma Barranquero <lekktu@gmail.com>
8312
8313 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
8314 on Windows.
8315
83162008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8317
8318 Warning clearing and clean-up in NS port.
8319 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
8320 Add prototypes.
8321 * nsgui.h (FACE_DEFAULT): Remove, unused.
8322 (XGCValues): Change colors to unsigned long.
8323 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
8324 nsterm.m.
8325 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
8326 (ns_list_fonts): Remove, unused.
8327 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
8328 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
8329 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
8330 (nsfont_draw): Compare face colors to 0, not nil.
8331 * nsmenu.m (struct widget_value): Drop unneeded declaration.
8332 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
8333 (-addSubmenuWithTitle:): Use NSMenuItem class.
8334 (ns_popup_menu): Use NO, not NULL, for enabled setting.
8335 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
8336 (ns_clip_to_row): Make gc arg a BOOL.
8337 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
8338 ns_clip_to_row() call.
8339 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
8340 used). Cast FRAME_FONT assignments.
8341 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
8342 (ns_string_to_lispmod): Change arg to const char.
8343 (ns_term_init): Use NSMenuItem class.
8344 (EmacsApp -openFile:): Move to different section of file.
8345 (EmacsApp -application:openFiles:): Don't return a value, call
8346 -replyToOpenOrPrint:.
8347 (EmacsView -keyDown:): Fix up cast.
8348 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
8349 (EmacsView -menuDown:): Cast tag in call to
8350 find_and_call_menu_selection().
8351 (ns_list_fonts): Remove, unused.
8352 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
8353 (ns_fontname_to_xlfd): Make static.
8354 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
8355 Remove prototypes (now in keyboard.h).
8356 (next_menubar_widget_id): Remove, unused.
8357 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
8358 Remove prototypes (now in keyboard.h).
8359 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
8360
83612008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
8362
8363 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
8364 (floatfns.o): Depend on syssignal.h.
8365 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
8366
8367 * systty.h: Fix previous change that removed BSD_TERMIOS.
8368 Add comments to #ifdefs.
8369
83702008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8371
8372 * w32fns.c (w32-load-color-file): Remove.
8373 (x-open-connection): Use renamed Fx_load_color_file.
8374 * xfaces.c (x-load-color-file): Add.
8375 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
8376 Emacs.clr.
8377 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
8378
83792008-07-31 Michael Albinus <michael.albinus@gmx.de>
8380
8381 * dbusbind.c (Fdbus_call_method_asynchronously)
8382 (Fdbus_method_error_internal): New defuns.
8383 (xd_read_message): Handle also reply messages.
8384 (Vdbus_registered_functions_table): Extend docstring.
8385
83862008-07-31 Juanma Barranquero <lekktu@gmail.com>
8387
8388 * keyboard.c (gobble_input): Fix previous change.
8389
83902008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
8391
8392 * bitmaps/README:
8393 * xfns.c:
8394 * termcap.c:
8395 * term.c:
8396 * syswait.h:
8397 * systty.h:
8398 * systime.h:
8399 * syssignal.h:
8400 * sysdep.c:
8401 * process.h:
8402 * process.c:
8403 * print.c:
8404 * ndir.h:
8405 * lread.c:
8406 * keyboard.c:
8407 * getpagesize.h:
8408 * floatfns.c:
8409 * fileio.c:
8410 * emacs.c:
8411 * doc.c:
8412 * dispnew.c:
8413 * dired.c:
8414 * data.c:
8415 * callproc.c:
8416 * buffer.c:
8417 * README:
8418 * Makefile.in:
8419 * s/template.h:
8420 * s/msdos.h:
8421 * m/vax.h: Remove VMS support.
8422 * s/vms.h:
8423 * vlimit.h:
8424 * uaf.h:
8425 * temacs.opt:
8426 * param.h:
8427 * ioctl.h: Remove file.
8428
84292008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
8430
8431 * s/ms-w32.h (MULTI_KBOARD): Remove.
8432 * xterm.c:
8433 * xselect.c:
8434 * xfns.c:
8435 * window.c:
8436 * w32term.c:
8437 * w32fns.c:
8438 * terminal.c:
8439 * termhooks.h:
8440 * term.c:
8441 * sysdep.c:
8442 * keyboard.h:
8443 * keyboard.c:
8444 * frame.h:
8445 * frame.c:
8446 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
8447 * config.in: Regenerate.
8448
84492008-07-30 Jason Rumney <jasonr@gnu.org>
8450
8451 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
8452
8453 * w32font.c (w32font_encode_char): Leave as unicode if in range.
8454 (w32font_open_internal): Get unicode version of textmetrics.
8455 Don't enable or disable glyph indices here.
8456 (w32font_open): Disable use of glyph indices.
8457
8458 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
8459
84602008-07-30 Chong Yidong <cyd@stupidchicken.com>
8461
8462 * minibuf.c (Vread_buffer_function): Doc fix.
8463
84642008-07-30 John Paul Wallington <jpw@pobox.com>
8465
8466 * minibuf.c (read_buffer_completion_ignore_case): New var.
8467 (Fread_buffer): Use it.
8468
84692008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
8470
8471 * systty.h (sensemode): Remove empty #if. Remove reference to
8472 BSD_TERMIOS, unused.
8473
8474 * sysdep.c: Remove reference to DGUX.
8475 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
8476
8477 * config.in: Regenerate.
8478
84792008-07-30 Jason Rumney <jasonr@gnu.org>
8480
8481 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
8482
84832008-07-29 Jason Rumney <jasonr@gnu.org>
8484
8485 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
8486 is populated.
8487 (uniscribe_encode_char): Always use uniscribe.
8488 Avoid using context if cache is populated.
8489
84902008-07-29 Jan Djärv <jan.h.d@swipnet.se>
8491
8492 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
8493 open menu.
8494
8495 * gtkutil.c (menu_nav_ended): Remove.
8496 (create_menus): Remove signal connect for menu_nav_ended.
8497
84982008-07-28 Chong Yidong <cyd@stupidchicken.com>
8499
8500 * xdisp.c (redisplay_window): Check return value of
8501 compute_window_start_on_continuation_line before forcing a window
8502 start.
8503
85042008-07-28 Jason Rumney <jasonr@gnu.org>
8505
8506 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
8507
8508 * w32term.c (w32_enable_unicode_output, cleartype_active):
8509 Remove obsolete display options.
8510 (x_draw_glyph_string_background): Don't use old cleartype_active
8511 workaround.
8512 (w32_initialize): Remove cleartype_active initialization.
8513 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
8514
85152008-07-28 Andreas Schwab <schwab@suse.de>
8516
8517 * lisp.h (init_weak_hash_tables, syms_of_font)
8518 (xd_read_queued_messages, syms_of_dbusbind): Declare.
8519 (remove_hash_entry): Don't declare.
8520 * eval.c (maybe_call_debugger): Make static and move before use.
8521 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
8522 * xdisp.c: Include "gtkutil.h" if USE_GTK.
8523 * xterm.h (x_set_frame_alpha): Declare.
8524
85252008-07-28 Jan Djärv <jan.h.d@swipnet.se>
8526
8527 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
8528 (create_menus): Connect selection-done to menu_nav_ended.
8529
85302008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
8531
8532 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
8533 Set Vx_resource_name to a fallback. Replace read of 'buffered'
8534 parameter with read of 'alpha' one.
8535 (Qns_frame_parameter): Remove.
5582fbc7 8536 * nsselect.m (selection-coding-system)
aac0c6e3
MR
8537 (next-selection-coding-system, Vselection_coding_system)
8538 (Vnext_selection_coding_system): Drop.
8539
85402008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
8541
8542 * nsfns.m (do-applescript, do_applescript): Rename to
8543 ns-do-applescript, ns_do_applescript, and move within file.
8544
85452008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
8546
8547 Remove support for Mac Carbon.
8548 * mactoolbox.c:
8549 * macterm.h:
8550 * macterm.c:
8551 * macselect.c:
8552 * macmenu.c:
8553 * macgui.h:
8554 * macfns.c:
8555 * mac.c: Remove file.
8556 * s/darwin.h:
8557 * m/intel386.h:
8558 * xfaces.c:
8559 * xdisp.c:
8560 * window.c:
8561 * tparam.c:
8562 * termhooks.h:
8563 * termcap.c:
8564 * term.c:
8565 * syssignal.h:
8566 * sysselect.h:
8567 * sysdep.c:
8568 * process.c:
8569 * lread.c:
8570 * lisp.h:
8571 * keyboard.c:
8572 * image.c:
8573 * fringe.c:
8574 * frame.h:
8575 * frame.c:
8576 * fontset.c:
8577 * font.h:
8578 * font.c:
8579 * fns.c:
8580 * fileio.c:
8581 * emacs.c:
8582 * dispnew.c:
8583 * dispextern.h:
8584 * config.in:
8585 * atimer.c:
2ae37cf0 8586 * Makefile.in: Remove code for Carbon.
aac0c6e3 8587
f0131492 85882008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
8589
8590 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
8591
85922008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8593
8594 * macterm.h (kCGBitmapByteOrder32Host): New define for
8595 non-universal SDKs.
8596
8597 * image.c (mac_create_cg_image_from_image, image_load_image_io)
8598 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
8599
8600 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
8601 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
8602
86032008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
8604
8605 * w32inevt.c: Include dispextern.h.
8606
86072008-07-26 Andreas Schwab <schwab@suse.de>
8608
8609 * print.c (print_object): Fix off-by-one in last change.
8610
86112008-07-25 Juanma Barranquero <lekktu@gmail.com>
8612
8613 * term.c (syms_of_term): Don't initialize default_orig_pair,
8614 default_set_foreground and default_set_background on Windows.
8615
86162008-07-25 Jason Rumney <jasonr@gnu.org>
8617
8618 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
8619 ScriptItemize. Clean up return value checking. Remove unused
8620 variables.
8621 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
8622 shaping engine.
8623
8624 * w32font.c (w32font_has_char): Handle the case where we can't
8625 determine the script for a character.
8626
86272008-07-25 Chong Yidong <cyd@stupidchicken.com>
8628
8629 * term.c (syms_of_term): Initialize default_orig_pair,
8630 default_set_foreground, and default_set_background.
8631
8632 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
8633 clash (bug#86).
8634 (getloadavg): Callers changed.
8635
8636 * image.c (svg_load_image): Fix last change.
8637 (svg_load_image): Use rsvg_handle_get_dimensions to check that
8638 image size is valid. Use g_object_unref instead of deprecated
8639 rsvg_handle_free to free rsvg handle.
8640 (x_from_xcolors): Don't initialize pixmap (silence compiler).
8641
86422008-07-25 Jason Rumney <jasonr@gnu.org>
8643
8644 * w32font.c (w32font_encode_char): Encode characters outside BMP as
8645 surrogates before looking up glyph index.
8646 (w32font_text_extents): Encode as surrogates if falling back to
8647 functions that need UTF-16 wide chars.
8648
8649 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
8650 BMP as surrogates before looking up glyph index.
8651
86522008-07-25 Chong Yidong <cyd@stupidchicken.com>
8653
8654 * image.c (svg_load_image): Check for failure in return value of
8655 rsvg_handle_get_pixbuf. Free rsvg handle when done.
8656
86572008-07-25 Jason Rumney <jasonr@gnu.org>
8658
8659 * w32font.c (Fx_select_font): Reverse sense of second arg.
8660
86612008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
8662
8663 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
8664 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
8665
8666 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
8667 (PURESIZE): Use it.
8668
86692008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
8670
8671 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
8672 * m/alpha.h (TEXT_END):
8673 * m/ibmrs6000.h (TEXT_END):
8674 * m/macppc.h (TEXT_END):
8675 * s/darwin.h (TEXT_END):
8676 * s/msdos.h (TEXT_END): Remove, unused.
8677 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
8678 * s/cygwin.h: Remove comment.
8679
8680 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
8681 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
8682 * m/intel386.h (DOT_GLOBAL_START):
8683 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
8684 (USG): Remove, file not used on USG platforms.
8685
8686 * Makefile.in (HAVE_X11): Remove empty #else.
8687
86882008-07-24 Andreas Schwab <schwab@suse.de>
8689
8690 * fileio.c (Finsert_file_contents): Properly adjust undo list
8691 after format conversion.
8692
86932008-07-24 Jan Djärv <jan.h.d@swipnet.se>
8694
8695 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
8696 (menu_nav_ended): Remove.
8697 (create_menus): Remove signal connect for menu_nav_ended.
8698 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
8699 create_menus.
8700 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
8701
87022008-07-23 Jason Rumney <jasonr@gnu.org>
8703
8704 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
8705 with opened font.
8706 (w32font_open): Set font type to gdi.
8707
8708 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
8709
87102008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
8711
8712 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
8713 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
8714 defines it.
8715 * unexec.c (ADDR_CORRECT): Define unconditionally.
8716
8717 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
8718
8719 * unexec.c: Remove code depending on !COFF and USG, the file is
8720 not used for such systems.
8721
8722 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
8723 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
8724 (LD_SWITCH_SYSTEM_1): Remove, update users.
8725
8726 * s/darwin.h (DATA_END):
8727 * m/intel386.h (DATA_END):
8728 * m/ibmrs6000.h (DATA_END):
8729 * m/alpha.h (DATA_END): Remove, unused.
8730
8731 * config.in: Regenerate.
8732 * s/ms-w32.h (subprocesses): Define unconditionally.
8733 * s/template.h (subprocesses): Update comment.
8734 * s/vms.h (subprocesses):
8735 * s/usg5-4.h (subprocesses):
8736 * s/hpux10-20.h (subprocesses):
8737 * s/gnu-linux.h (subprocesses):
8738 * s/cygwin.h (subprocesses):
8739 * s/bsd-common.h (subprocesses):
8740 * s/aix4-2.h (subprocesses):
8741 * s/darwin.h (subprocesses): Do not define, defined by default now.
8742
8743 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
8744 Remove all references.
8745 (temacs): Add GNUstep specific ld flags.
8746
8747 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
8748 similarly to what X does.
8749
87502008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
8751
8752 * nsfns.m (x-list-fonts): Remove.
8753 (syms_of_nsfns): Drop the x-list-fonts declaration.
8754 * nsterm.m: Get rid of remaining "//" comments.
8755
87562008-07-22 Chong Yidong <cyd@stupidchicken.com>
8757
8758 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
8759
8760 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
8761 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
8762 (Fns_own_selection_internal, Fx_disown_selection_internal)
8763 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
8764
8765 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
8766 ... */' style of docstrings. Doc fixes.
8767
87682008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
8769
8770 * terminfo.c (UP, BC, PC): Undo previous change.
8771
8772 * nsfns.m: Rename ns prefixed functions/variables to the
8773 corresponding x versions. Update references.
8774
87752008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
8776
8777 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
8778
87792008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
8780
8781 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
8782 Remove forwarding functions.
8783 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
8784 non-static.
8785 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
8786 non-static.
8787 (ns_frame_parm_handlers): Use the new names.
8788 (syms_of_nsfns): Move to the end of file.
8789
8790 * nsterm.m (syms_of_nsterm): Move to the end of file.
8791
8792 * dispnew.c (init_display): Remove code for X10.
8793
87942008-07-22 Jason Rumney <jasonr@gnu.org>
8795
8796 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
8797 bare drive.
8798
87992008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
8800
8801 * nsterm.m (syms_of_nsterm): Remove debugging println.
8802
88032008-07-22 David Reitter <david.reitter@gmail.com>
8804
8805 * nsfns.m (do_applescript, F_do_applescript): NS version of the
8806 Carbon implementation of the same functionality: execute arbitrary
8807 AppleScript code.
8808
88092008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
8810
8811 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
8812 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
8813 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
8814 (Fx_display_mm_height, Fx_display_mm_width)
8815 (Fx_display_backing_store, Fx_display_visual_class)
8816 (Fx_display_save_under, Fx_open_connection)
8817 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
8818 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
8819 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
8820 (Fx_display_pixel_width, Fx_display_pixel_height)
8821 (Fx_display_usable_bounds, Fx_display_planes)
8822 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
8823 ... */' style of docstrings.
8824
88252008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
8826
8827 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
8828 on this platform.
8829 (mips):
8830 * m/iris4d.h (mips): Do not define.
8831 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
8832
8833 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
8834
8835 * image.c:
8836 * nsfns.m:
8837 * nsselect.m:
8838 * nsterm.h:
8839 * nsterm.m: Rename ns prefixed functions/variables to the
8840 corresponding x versions. Update references.
8841
8842 * m/ibms390x.h (NO_REMAP): Do not undefine.
8843
8844 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
8845
88462008-07-21 Chong Yidong <cyd@stupidchicken.com>
8847
8848 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
8849 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
8850 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
8851 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
8852 (Fns_display_mm_height, Fns_display_mm_width)
8853 (Fns_display_backing_store, Fns_display_visual_class)
8854 (Fns_display_save_under, Fns_open_connection)
8855 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
8856 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
8857 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
8858 (Fns_display_pixel_width, Fns_display_pixel_height)
8859 (Fns_display_usable_bounds, Fx_display_planes)
8860 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
8861
88622008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
8863
8864 * print.c (print_object): Check print_depth before searching for
8865 circularities.
8866
88672008-07-21 Michael Albinus <michael.albinus@gmx.de>
8868
8869 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
8870 only sprintf.
8871
88722008-07-21 Kenichi Handa <handa@m17n.org>
8873
8874 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
8875
88762008-07-20 Andreas Schwab <schwab@suse.de>
8877
8878 * syntax.c (find_start_pos, find_start_value)
8879 (find_start_value_byte, find_start_begv, find_defun_start)
8880 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
8881
88822008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
8883
8884 * s/sol2-3.h: Insert contents of s/sol2.h.
8885 (LD_SWITCH_SYSTEM): Remove redundant definition.
8886 * s/sol2.h: Remove, unused.
8887
88882008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
8889
8890 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
8891
88922008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
8893
8894 * Makefile.in (ns_appdir): Fix typo in find command.
8895
88962008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
8897
8898 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
8899
8900 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
8901 added not supported anymore.
8902
8903 * s/usg5-4-2.h (LIBS_SYSTEM):
8904 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
8905
8906 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
8907 * s/lynxos.h (GETPGRP_NO_ARG):
8908 * s/hpux10-20.h (NO_SIOCTL_H):
8909 * s/gnu.h (GETPGRP_NO_ARG):
8910 * s/gnu-linux.h (NO_SIOCTL_H):
8911 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
8912 * s/cygwin.h (GETPGRP_NO_ARG):
8913 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
8914 (C_DEBUG_SWITCH): Remove duplicate definition.
8915
8916 * m/ibms390.h: Remove boilerplate comments.
8917
8918 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
8919
8920 * process.c (HAVE_SERIAL): Consolidate ifdefs.
8921 (wait_reading_process_output): Remove code for SunOS, platform not
8922 supported anymore. Use SOLARIS2 instead of sun.
8923
89242008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
8925
8926 * font.c (font_open_by_name): Under NS, default lface height to zero.
8927 (font_open_for_lface): Under NS, set size based on frame fontsize.
8928 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
8929 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
8930
89312008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
8932
8933 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
8934 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
8935 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
8936 YES/NO.
8937 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
8938 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
8939 * Makefile.in (clean): Clear out build destination dir.
8940
89412008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
8942
8943 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
8944 xterm, xselect.
8945 * lisp.h: Remove declaration of hash_remove.
8946 * nsgui.h: Remove redefinitions of hash_remove.
8947 * fns.c (hash_remove): Rename to hash_remove_from_table.
8948
89492008-07-19 Seiji Zenitani <zenitani@mac.com>
8950
8951 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
8952 strdup() the family UTF8String before modifying it.
8953
89542008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
8955
8956 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
8957 NS_FACE_BACKGROUND with 0 instead of nil.
8958 * nsfont.m (nsfont_draw): Same.
8959
89602008-07-19 Chong Yidong <cyd@stupidchicken.com>
8961
8962 * nsfns.m (ns_set_background_color): Fix crash.
8963
89642008-07-18 Chong Yidong <cyd@stupidchicken.com>
8965
8966 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
8967
89682008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
8969
8970 * puresize.h (BASE_PURESIZE): Increase to 1240000.
8971
89722008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8973
8974 * gtkutil.c: Include <config.h> instead of "config.h".
8975
8976 * lisp.h (Foverlay_buffer): Add EXFUN.
8977
8978 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
8979 child process to complete child_setup. Undo 2005-09-21 change.
8980
8981 * s/darwin.h: Mention setsid after vfork.
8982
89832008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8984
8985 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
8986 Depend on macgui.h.
8987
8988 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
8989 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
8990
8991 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
8992 and f19.
8993 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
8994
8995 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
8996 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
8997 Remove enumerators.
8998
8999 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
9000 Check if FACE_FROM_ID returns NULL.
9001
90022008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
9003
9004 * w32inevt.c (change_frame_size): Remove extern declaration.
9005 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
9006 change_frame_size.
9007
90082008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9009
9010 * getloadavg.c: Revert last change (2008-07-15).
9011
90122008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9013
9014 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 9015 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
9016 from configure.
9017
90182008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
9019
9020 * s/sol2.h:
9021 * s/sol2-4.h: Reorganize conditionals.
9022
9023 * ecrt0.c: Remove code depending on m68000, not used anymore.
9024
9025 * fns.c (hash_remove): Make static.
9026 * lisp.h (hash_remove): Don't prototype.
9027
9028 * m/ibmrs6000.h:
9029 * m/ibms390x.h:
9030 * m/macppc.h: Remove boilerplate comments.
9031
9032 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
9033 Solaris, which does not need them.
9034
9035 * m/vax.h: Remove comments about unsupported systems.
9036
9037 * s/darwin.h: Reorganize ifdefs.
9038
90392008-07-17 Andreas Schwab <schwab@suse.de>
9040
9041 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
9042
90432008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
9044
9045 Use SDATA. Follow coding convention of placing operators at
9046 beginning of next line rather than end of previous line, and placing
9047 spaces around infix operators.
9048
9049 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
9050 in case it was defined already.
9051 USE @GNUSTEP_MAKEFILES@ rather than envvars.
9052 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
9053 ns_default.
9054 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
9055 Lisp_Objects.
9056 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
9057 (ns_defined_color, ns_color_to_lisp): Declare.
9058 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
9059 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
9060 it's accepted even with USE_LISP_UNION_TYPE.
9061 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
9062 (update_frame_tool_bar): Remove apparently obsolete tests for
9063 non-integerness of f->tool_bar_lines.
9064 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
9065 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
9066 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
9067 (nsfont_open): Don't confuse NULL for Qnil.
9068 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
9069 * menu.h (find_and_call_menu_selection):
9070 * menu.c (find_and_call_menu_selection): Use just int for vector size.
9071 (find_and_return_menu_selection): Always return something.
9072 * frame.h: Include dispextern.h for Display_Info.
9073 (display_x_get_resource): Declare.
9074
90752008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
9076
9077 * syntax.c: Remove stdio.h include accidentally introduced in
9078 Emacs.app commit.
9079 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
9080 NS_IMPL_COCOA.
9081 * keyboard.c (handle_async_input, input_available_signal): Remove
9082 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
9083
90842008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9085
9086 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
9087 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
9088 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
9089 Use SDATA.
9090
9091 * keymap.c: Remove all NS-specific code.
9092 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
9093 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
9094 where_is_preferred_modifier, return a different value depending on how
9095 preferred is the binding.
9096 (where_is_internal): Adjust accordingly.
9097 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
9098 Adjust to new preferred_sequence_p.
9099 (syms_of_keymap): Declare `where-is-preferred-modifier'.
9100 * keyboard.c (parse_solitary_modifier): Not static any more.
9101 * keyboard.h (parse_solitary_modifier): Declare.
9102
91032008-07-16 Andreas Schwab <schwab@suse.de>
9104
9105 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
9106 of easymenu.
9107
91082008-07-16 Chong Yidong <cyd@stupidchicken.com>
9109
9110 * xdisp.c (move_it_in_display_line): Account for word wrap, so
9111 that we don't move off the line.
9112
91132008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9114
9115 * keyboard.c (Qsuper): Remove.
9116 (parse_menu_item): Don't call where_is_internal specially for NS.
9117
91182008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9119
9120 * s/gnu-linux.h: Remove boilerplate comments.
9121
9122 * m/alpha.h (__ELF__): Consolidate conditions.
9123
9124 * m/m68k.h (linux): Use GNU_LINUX instead.
9125 Remove boilerplate comments.
9126
9127 * m/intel386.h: Undo refactoring from previous change.
9128 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
9129 too, remove dead code.
9130 (linux): Use GNU_LINUX instead.
9131
91322008-07-16 Jason Rumney <jasonr@gnu.org>
9133
9134 * w32gui.h: Repeat 26 June changes lost by last change.
9135
91362008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9137
9138 * systty.h: Remove code for Aix on 386, unsupported platform.
9139
9140 * s/ms-w32.h: Remove boilerplate comments.
9141 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
9142
9143 * s/gnu-linux.h (TERM): Remove support.
9144 (HAVE_SYSVIPC): Remove, unused.
9145 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
9146 for this system.
9147
9148 * process.c: Remove support for IRIS, unused.
9149 Remove support for TERM, not relevant anymore.
9150
9151 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
9152 used with the definition.
9153
9154 * s/aix4-2.h (static): Do not undef.
9155
9156 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
9157 only used on Aix.
9158 (HAVE_SYSVIPC): Remove, unused.
9159
9160 * m/hp800.h (CANNOT_DUMP): Do not undef.
9161
9162 * m/alpha.h: Fix comment.
9163
9164 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
9165 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
9166 used by this configuration.
9167 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
9168 * unexec.c: Remove code depending on HPUX and
9169 USG_SHARED_LIBRARIES, not used with this file. Remove code
9170 depending on IRIS, unused. Remove if 0-ed code.
9171
9172 * s/template.h: Remove comments about static.
9173
9174 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
9175 Remove if 0-ed code.
9176 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
9177 were the same as the default.
9178 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
9179 Remove boilerplate comments.
9180 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
9181 (HAVE_SYSVIPC): Remove, unused.
9182 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
9183
9184 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9185 Remove boilerplate comments.
9186 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9187 Remove boilerplate comments.
9188 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9189 Remove boilerplate comments.
9190 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
9191
9192 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
9193 USG systems which do not use DATA_SEG_BITS.
9194 Refactor code. Remove boilerplate comments.
9195
9196 * m/ibms390.h:
9197 * m/m68k.h:
9198 * s/bsd-common.h:
9199 * s/cygwin.h:
9200 * s/darwin.h:
9201 * s/freebsd.h:
9202 * s/gnu.h:
9203 * s/msdos.h: Remove boilerplate comments.
9204
9205 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 9206 do not use this file.
aac0c6e3
MR
9207 (IRIS_4D): Remove, unused.
9208
9209 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 9210 do not use this file.
aac0c6e3
MR
9211 (SIGN_EXTEND_CHAR):
9212 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
9213 * unexmips.c: Remove file, unused.
9214
9215 * editfns.c (Fuser_full_name): Replace the only use of
9216 USER_FULL_NAME with its value.
9217 * config.in: Regenerate.
9218
92192008-07-16 David Reitter <david.reitter@gmail.com>
9220
9221 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
9222 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
9223
92242008-07-16 Glenn Morris <rgm@gnu.org>
9225
9226 * emacs.c (system-type): Doc fix.
9227
92282008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
9229
9230 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
9231 If the cache doesn't work, let's fix it, rather than work around it.
9232
92332008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
9234
9235 * Makefile.in: Correct additions for nsfont.o in last commit.
9236 * nsfont.m: New file (forgot last commit).
9237
92382008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
9239
9240 * callproc.c (set_initial_environment): Initialize
9241 Vprocess_environment under CANNOT_DUMP (fixes crash when
9242 batch-compiling for bootstrap).
9243
92442008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
9245 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9246
9247 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
9248 fix crash due to different init order.
9249
92502008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
9251
9252 Changes and additions for NeXTstep windowing system (Cocoa and
9253 GNUstep) support.
9254
9255 * Makefile.in:
9256 * config.in: Support defines and build commands for NS port.
9257 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
9258 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
9259 * dispextern.h: Include nsgui.h and add needed typedefs under NS
9260 windowing.
9261 (struct face): Add synth_ital field.
9262 * dispnew.c: Include nsterm.h when compiling under NS windowing.
9263 (init_display): Initialize Vinitial_window_system to "ns" when so
9264 compiled.
9265 * emacs.c: Include GSConfig.h when compiling under GNUstep.
9266 (display_arg): Use under NS.
9267 (main): Under NS, allocate autorelease pool and handle command line
9268 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
9269 (standard_args): Add NS-specific args.
9270 (shut_down_emacs): Shut down NS terminal if compiled under NS.
9271 * font.c (DEFAULT_ENCODING): New variable.
9272 (font_find_for_lface): Use it.
9273 (syms_of_font): Load syms_of_nsfont under NS.
9274 * font.h: Declare nsfont_driver when compiled under NS.
9275 * fontset.c: When compiling under NS, include nsterm.h.
9276 (fontset_from_font): Autoconstruct fontset under NS.
9277 * frame.c (various): Under NS, include nsterm.h, add Qns window system
9278 symbol, document and use it.
9279 (do_switch_frame): When for_deletion under Cocoa, add
9280 Fraise_frame(Qnil).
9281 (x_set_frame_parameters): Ensure font attribute changes are picked up.
9282 (x_get_arg): Allow "yes" and "no" as boolean values.
9283 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
9284 Qright under Cocoa.
9285 (focus-follows-mouse): Default to 0 under NS.
9286 * frame.h (enum output_method): Add output_ns.
9287 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
9288 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
9289 (FRAME_WINDOW_P): NS-specific definition.
9290 * fringe.c (max_used_fringe_bitmap): Make public.
9291 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
9292 (getloadavg): Use NeXT code under descendant OS's.
9293 * image.c (includes and header section, x_create_bitmap_from_data)
9294 (x_create_bitmap_from_file, free_bitmap_record, image_background)
9295 (image_background_transparent, x_clear_image_1)
9296 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
9297 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
9298 (x_to_xcolors, x_from_xcolors, x_disable_image)
9299 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
9300 other GUIs, including XPM support using code originally written for
9301 Carbon GUI.
9302 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
9303 using NS API.
9304 (image_ascent): Use font metrics macros instead of direct struct field
9305 access.
9306 * keyboard.c (includes): Add nsterm.h when compiling under NS.
9307 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
9308 Also, handle NS as GTK for menu bar purposes.
9309 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
9310 toolkit where they differ.
9311 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
9312 use cachelist, still needed under NS.
9313 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
9314 (struct widget_value): Define it here for menu.c.
9315 * keymap.c (includes): Include modifier internals.
9316 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
9317 NS.
9318 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
9319 support for preferring sequences using certain modifiers, specified by
9320 the FIRSTONLY argument.
9321 * lisp.h (hash_remove): Rename to avoid name clash when compiling
9322 under NS GNUstep implementation.
9323 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
9324 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
9325 * menu.c: Include nsterm.h under NS.
9326 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
9327 (free_menubar_widget_tree_value, update_submenu_strings)
9328 (find_and_call_menu_selection): Treat NS as X and NT.
9329 (find_and_return_menu_selection): New function, used for popup menus.
9330 * nsgui.h:
9331 * nsterm.h:
9332 * nsfns.m:
9333 * nsimage.m:
9334 * nsmenu.m:
9335 * nsselect.m:
9336 * nsterm.m: New files.
9337 * process.c (wait_reading_process_output): Under NS, call ns_select()
9338 instead of plain select().
9339 * syntax.c (char_quoted): Under NS, avoid a crash when called near
9340 beginning of buffer.
9341 * sysselect.h (init_process): Rename when compiling under Cocoa to
9342 avoid name conflict.
9343 * termhooks.h (display_info): Add ns_display_info to union.
9344 * terminal.c (Fterminal_live_p): Add ns to terminal types.
9345 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
9346 COCOA environment.
9347 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
9348 unexec() signature. (Note, this will dump, but the resulting file
9349 crashes; unexosx is used instead; keeping around for reference and
9350 possible aid in getting dump working under GNUstep.)
9351 * w32gui.h (button_type, widget_value): Remove definitions (now in
9352 keyboard.h).
9353 * window.c: Include nsterm.h when compiling under NS.
9354 * xdisp.c (includes): Include nsterm.h when compiling under NS.
9355 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
9356 other GUI windowing systems.
9357 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
9358 GTK.
9359 (x_consider_frame_title): Under NS, set icon type and frame
9360 modified-state indicator; use ns_set_name_as_filename() when using
9361 formatted title.
9362 (update_window_cursor): Make public when compiling under NS.
9363 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
9364 (hourglass_atimer, Vhourglass_delay
9365 * xfaces.c (header section, init_frame_faces, clear_font_table)
9366 (defined_color, unload_color, x_face_list_fonts)
9367 (prepare_face_for_display): Add NS support parallel to other GUIs.
9368 Emulate GCs like other non-X GUIs.
9369 (split_font_name): Don't lowercase font name under NS.
9370 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
9371 under NS.
9372 * s/darwin.h: Add support for compilation under NS.
9373
93742008-07-15 Jason Rumney <jasonr@gnu.org>
9375
9376 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
9377 (w32_show_hourglass): Rename from show_hourglass.
9378 (w32_hide_hourglass): Rename from hide_hourglass.
9379 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
9380 (Vhourglass_delay): Declare extern.
9381 (hourglass_started): Remove.
9382
9383 * xdisp.c (Vhourglass_delay): Remove static.
9384 (hourglass_started, start_hourglass, cancel_hourglass):
9385 Don't include these versions on WINDOWSNT.
9386
93872008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
9388
9389 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
9390 variables (formerly in xfns.c).
9391 (show_hourglass, hide_hourglass): New prototypes (same).
9392 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
9393 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
9394 in xfns.c).
9395 (syms_of_xdisp): Declare/initialize display-hourglass,
9396 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
9397 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
9398 formerly in xfns.c.
9399 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
9400 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
9401 (start_hourglass, cancel_hourglass): Remove.
9402 (show_hourglass, hide_hourglass): Remove prototypes and static
9403 modifiers.
9404 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
9405 hourglass_atimer, hourglass_shown_p declaration/initialization.
9406 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
9407 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
9408 (start_hourglass, cancel_hourglass): Remove.
9409 (show_hourglass, hide_hourglass): Remove prototypes and static
9410 modifiers.
9411 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
9412 hourglass_atimer, hourglass_shown_p declaration/initialization.
9413 * w32fns.c (display_hourglass_p, Vhourglass_delay)
9414 (DEFAULT_HOURGLASS_DELAY): Remove.
9415 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
9416 hourglass_shown_p declaration/initialization.
9417
94182008-07-14 Jason Rumney <jasonr@gnu.org>
9419
9420 * w32fns.c (w32_get_arg): Remove wrapper function.
9421 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
9422 directly.
9423 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
9424
94252008-07-14 Kenichi Handa <handa@m17n.org>
9426
9427 * xfont.c (xfont_open): Add workaround for X's bug.
9428
94292008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
9430
9431 * fontset.c: Include <stdio.h> unconditionally.
9432
94332008-07-13 Michael Albinus <michael.albinus@gmx.de>
9434
9435 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
9436 for filtering.
9437
94382008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
9439
9440 * s/vms.h: Use __GNUC__ instead of _GNUC_.
9441
9442 * m/macppc.h:
9443 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
9444
9445 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
9446 (SPECIAL_EMACS_INT):
9447 * m/ia64.h (SPECIAL_EMACS_INT):
9448 * m/amdx86-64.h (SPECIAL_EMACS_INT):
9449 * s/gnu.h (NLIST_STRUCT):
9450 * s/aix4-2.h (X11R5_INHIBIT_I18N):
9451 * s/gnu-linux.h (LINUX):
9452 * s/msdos.h (HAVE_FACES):
9453 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
9454
9455 * systty.h:
9456 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
9457 anymore.
9458
94592008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
9460
9461 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
9462 always defined as int.
9463
9464 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
9465 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
9466 * s/gnu-linux.h (HAVE_WAIT_HEADER):
9467 * s/freebsd.h (HAVE_WAIT_HEADER):
9468 * s/bsd-common.h (HAVE_UNION_WAIT):
9469 * s/aix4-2.h (HAVE_WAIT_HEADER):
9470 * m/mips.h (HAVE_UNION_WAIT):
9471 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
9472 (COFF, static): Do not define, they are undefined later in the file.
9473
9474 * process.c (update_status): Don't use a union.
9475 (status_convert):
9476 (sigchld_handler): Use int instead of WAITTYPE.
9477
94782008-07-12 Chong Yidong <cyd@stupidchicken.com>
9479
9480 * indent.c (Fvertical_motion): Restore hscroll before moving to
9481 goal column.
9482
94832008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
9484
9485 * lisp.h: Remove left over code.
9486
94872008-07-11 Andreas Schwab <schwab@suse.de>
9488
9489 * lisp.h: Fix logic in last change.
9490
9491 * menu.h: New file.
9492 * menu.c: Include it.
9493 * xmenu.c: Likewise.
9494 * Makefile.in: Update dependencies.
9495
94962008-07-11 Kenichi Handa <handa@m17n.org>
9497
9498 * fontset.c (fontset_from_font): Cancel the previous change.
9499
95002008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
9501
9502 * lisp.h:
9503 * w32heap.c:
9504 * emacs.c:
9505 * alloc.c: Replace all references of NO_UNION_TYPE with
9506 USE_LISP_UNION_TYPE.
9507
9508 * m/xtensa.h (NO_UNION_TYPE):
9509 * m/vax.h (NO_UNION_TYPE):
9510 * m/template.h (NO_UNION_TYPE):
9511 * m/sparc.h (NO_UNION_TYPE):
9512 * m/mips.h (NO_UNION_TYPE):
9513 * m/macppc.h (NO_UNION_TYPE):
9514 * m/m68k.h (NO_UNION_TYPE):
9515 * m/iris4d.h (NO_UNION_TYPE):
9516 * m/intel386.h (NO_UNION_TYPE):
9517 * m/ibms390x.h (NO_UNION_TYPE):
9518 * m/ibms390.h (NO_UNION_TYPE):
9519 * m/ibmrs6000.h (NO_UNION_TYPE):
9520 * m/ia64.h (NO_UNION_TYPE):
9521 * m/hp800.h (NO_UNION_TYPE):
9522 * m/arm.h (NO_UNION_TYPE):
9523 * m/amdx86-64.h (NO_UNION_TYPE):
9524 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
9525 defining it the same.
9526
95272008-07-10 Chong Yidong <cyd@stupidchicken.com>
9528
9529 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
9530
95312008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
9532
9533 * fileio.c:
9534 * sysdep.c
9535 * systty.h:
9536 * m/ibmrs6000.h:
9537 * m/iris4d.h:
9538 * s/aix4-2.h:
9539 * s/freebsd.h:
9540 * s/gnu-linux.h:
9541 * s/hpux10-20.h:
9542 * s/hpux11.h:
9543 * s/netbsd.h:
9544 * s/sol2-3.h:
9545 * s/sol2-4.h:
9546 * s/sol2.h:
9547 * s/usg5-4.h:
9548 * s/vms.h: Remove references to unused variables.
9549
95502008-07-10 Andreas Schwab <schwab@suse.de>
9551
9552 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
9553 pattern before matching the generic family.
9554
95552008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
9556
9557 * unexec.c:
9558 * s/vms.h:
9559 * s/usg5-4-2.h:
9560 * s/sol2-5.h:
9561 * s/freebsd.h:
9562 * s/darwin.h: Remove dead code.
9563
9564 * m/template.h:
9565 * m/sparc.h:
9566 * m/mips.h:
9567 * m/m68k.h:
9568 * m/iris4d.h:
9569 * m/intel386.h:
9570 * m/ibms390x.h:
9571 * m/ibms390.h:
9572 * m/ia64.h:
9573 * m/hp800.h:
9574 * m/arm.h:
9575 * m/amdx86-64.h: Remove dead code and references to unused
9576 and compiler defined symbols.
9577
9578 * unexmips.c:
9579 * unexelf.c: Remove references to desupported systems.
9580
9581 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
9582
9583 * m/powermac.h: Remove boilerplate comments.
9584 (NO_REMAP): Remove unused definition.
9585
9586 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
9587 define them.
9588
95892008-07-10 Kenichi Handa <handa@m17n.org>
9590
9591 * xfont.c (xfont_open): Log the reason of failure.
9592
95932008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
9594
9595 * fontset.c (fontset_get_font_group):
9596 * font.c (font_check_otf): Specify argument types.
9597
95982008-07-09 Kenichi Handa <handa@m17n.org>
9599
9600 * coding.c (detect_coding_utf_8): Set detect_info->found only when
9601 non-ASCII char is found.
9602
9603 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
9604 (reorder_font_vector): Change the arg preferred_family to font.
9605 Prefer the spec matching with font.
9606 (fontset_get_font_group): New function.
9607 (fontset_find_font): Change the format of an element of a realized
9608 fontset. Use fontset_get_font_group.
9609 (fontset_font): Try the current fontset, the default fontset, the
9610 fallbacks of the current fontset, and the fallbacks of the default
9611 fontset in this order.
9612 (face_for_char): Delete the shortcut to use the current font.
9613 (fontset_from_font): Don't set fonts for Latin in the fontset.
9614
9615 * font.h (font_make_object, font_match_p): Adjust prototypes.
9616
9617 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
9618
9619 * font.c (font_make_object): New arg entity and pixelsize.
9620 (font_check_otf_features, font_check_otf): New functions.
9621 (font_match_p): Check :lang, :script, and :otf properties.
9622
9623 * xfont.c (xfont_open): Adjust it for the change of
9624 font_make_object.
9625 (xfont_text_extents): Fix initial setting of metrics.
9626
9627 * ftfont.c (struct ftfont_info): New member index, delete member
9628 fc_charset_idx. Make the member order compatible with struct
9629 xftfont_info.
9630 (fc_charset_table): Change charset names to registry names.
9631 (ftfont_pattern_entity): Delete the args registry and
9632 fc_charset_idx. Change the value of :font-entity property
9633 to (FONTNAME . INDEX). Always set :registry property to
9634 `iso10646-1'.
9635 (struct ftfont_cache_data): New struct.
9636 (ftfont_lookup_cache): New arg for_face.
9637 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
9638 (ftfont_driver): Set the member otf_capability.
9639 (ftfont_get_charset): Adjust it for the change of
9640 fc_charset_table.
9641 (OTF_TAG_SYM): New macro.
9642 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
9643 for the change of fc_charset_table.
9644 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
9645 ftfont_pattern_entity. Add FC_INDEX to objset.
9646 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
9647 and ftfont_pattern_entity.
9648 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
9649 font_make_object, struct ftfont_info.
9650 (ftfont_has_char): Use ftfont_get_fc_charset.
9651 (ftfont_otf_features, ftfont_otf_capability): New functions.
9652 (ftfont_shape): Use ftfont_get_otf.
9653 (ftfont_text_extents): Fix initial setting of metrics.
9654
9655 * xftfont.c (struct xftfont_info): New member ft_size. Make the
9656 member order compatible with struct ftfont_info.
9657 (xftfont_open): Add FC_CHARSET to the pattern. Set
9658 xftfont_info->ft_size. Don't unlock the face. Check BDF
9659 properties if appropriate.
9660 (xftfont_close): Unlock the face.
9661 (xftfont_anchor_point, xftfont_shape): Deleted.
9662 (syms_of_xftfont): Don't set members anchor_point and shape of
9663 xftfont_driver.
9664
9665 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
9666 font_make_object.
9667
9668 * w32font.c (w32font_open): Adjust it for the change of
9669 font_make_object.
9670 (w32font_open_internal): Don't set properties of font_object here.
9671
96722008-07-08 Chong Yidong <cyd@stupidchicken.com>
9673
9674 * macfns.c (x_create_tip_frame):
9675 * w32fns.c (x_create_tip_frame):
9676 * xfns.c (x_create_tip_frame): Pass parameter argument to
9677 face-set-after-frame-default.
9678
9679 * xfaces.c (Finternal_merge_in_global_face): Save merged
9680 attributes for the default face back into the face vector.
9681
96822008-07-08 Andreas Schwab <schwab@suse.de>
9683
9684 * fontset.h: Declare fontset_from_font. Don't declare
9685 new_fontset_from_font and fontset_from_font_name.
9686 * xterm.c: Include "fontset.h".
9687 * Makefile.in (xterm.o): Update dependencies.
9688
96892008-07-08 Glenn Morris <rgm@gnu.org>
9690
9691 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
9692 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
9693
96942008-07-07 Chong Yidong <cyd@stupidchicken.com>
9695
9696 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
9697 (x_set_frame_parameters): Don't bind it.
9698
96992008-07-07 Juanma Barranquero <lekktu@gmail.com>
9700
9701 * w32fns.c (map_w32_filename): Declare extern.
9702
97032008-07-07 Jason Rumney <jasonr@gnu.org>
9704
9705 * w32term.c (WS_EX_LAYERED): Define if not already.
9706
97072008-07-06 Chong Yidong <cyd@stupidchicken.com>
9708
9709 * xfaces.c (set_font_frame_param): Don't try to set the font
9710 parameter if it is still unspecified in the lface.
9711
97122008-07-05 Chong Yidong <cyd@stupidchicken.com>
9713
9714 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
9715 face if it didn't already exist.
9716
9717 * xdisp.c (try_window_id): Give up if word-wrapping is on.
9718
97192008-07-05 Andreas Schwab <schwab@suse.de>
9720
9721 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
9722
97232008-07-05 Chong Yidong <cyd@stupidchicken.com>
9724
9725 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
9726 word-wrapping.
9727 (IT_DISPLAYING_WHITESPACE): New macro.
9728 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
9729 when word-wrapping. Simplify word-wrapping logic. Use correct
9730 pixel positions when saving copies of the iterator.
9731 (display_line): Use proper wrap point if the last character on a
9732 line was preceded by whitespace.
9733
97342008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
9735
9736 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
9737
97382008-07-04 Kenichi Handa <handa@m17n.org>
9739
9740 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
9741
9742 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
9743
97442008-07-02 Jason Rumney <jasonr@gnu.org>
9745
9746 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 9747 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
9748
9749 * xdisp.c (next_element_from_display_vector): Move assignment out
9750 of if statement.
9751
97522008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
9753
9754 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
9755
9756 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
9757 (syms_of_fileio): Initialize and export them.
9758 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
9759
9760 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
9761 (Fsystem_move_file_to_trash): New function.
9762 (syms_of_w32fns): Export it to lisp.
9763
97642008-07-01 Jason Rumney <jasonr@gnu.org>
9765
9766 * w32font.c (w32font_text_extents): Don't count overhang as part
9767 of width.
9768
97692008-06-30 Miles Bader <miles@gnu.org>
9770
9771 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
9772 Add `avoid_cursor_p' field.
9773
9774 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
9775 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
9776 (append_glyph, append_composite_glyph, produce_image_glyph)
9777 (append_stretch_glyph): Initialize avoid_cursor_p.
9778 (get_it_property): Rename from `get_line_height_property'.
9779 (x_produce_glyphs): Use get_it_property.
9780 (handle_line_prefix, push_display_prop): New functions.
9781 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
9782 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
9783 New variables.
9784 (syms_of_xdisp): Initialize them.
9785
97862008-06-30 Kenichi Handa <handa@m17n.org>
9787
9788 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
9789 XftDefaultSubstitute (they are called in XftFontMatch).
9790 (xftfont_open): Fix args to ftfont_font_format.
9791
9792 * ftfont.c (fc_charset_table): New member lang.
9793 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 9794 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
9795 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
9796 (ftfont_open): Fix args to ftfont_font_format.
9797 (ftfont_font_format): New arg filename.
9798
97992008-06-30 Chong Yidong <cyd@stupidchicken.com>
9800
9801 * xfaces.c (Finternal_merge_in_global_face): If default face was
9802 modified, realize it again. Update the font face attribute.
9803
98042008-06-29 Jason Rumney <jasonr@gnu.org>
9805
9806 * w32term.c (x_set_frame_alpha): Fix logic.
9807
98082008-06-29 Kenichi Handa <handa@m17n.org>
9809
9810 * fontset.c (Finternal_char_font): Return font-object instead of
9811 font-name.
9812
9813 * composite.c (get_composition_id): Fix the width calculation for TAB.
9814
98152008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
9816
9817 * indent.c (Fvertical_motion): Properly handle float column arg.
9818
98192008-06-28 Jason Rumney <jasonr@gnu.org>
9820
9821 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
9822 (pfnSetLayeredWindowAttributes): New function pointer.
9823 (w32_initialize): Initialize it when supported.
9824 (x_set_frame_alpha): New function.
9825
9826 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
9827 (w32_frame_parm_handlers): Set alpha handler.
9828
9829 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
9830
98312008-06-27 Jason Rumney <jasonr@gnu.org>
9832
9833 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
9834 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
9835 (w32_to_x_charset, x_to_w32_charset)
9836 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
9837 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
9838 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
9839 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
9840 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
9841 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
9842 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
9843 (Qw32_charset_unicode): Remove.
9844 (syms_of_w32fns): Update for above changes.
9845
9846 * w32font.c (w32_to_x_charset, x_to_w32_charset)
9847 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
9848 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
9849 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
9850 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
9851 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
9852 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
9853 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
9854 (syms_of_w32font): Update for above changes.
9855
98562008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
9857
9858 * s/usg5-4.h: Fix previous change: keep the correct branch of a
9859 removed #if.
9860 (USG_SHARED_LIBRARIES): Remove duplicate definition.
9861
98622008-06-26 Juanma Barranquero <lekktu@gmail.com>
9863 Eli Zaretskii <eliz@gnu.org>
9864
9865 * makefile.w32-in (LOCAL_FLAGS):
9866 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
9867
9868 * sysdep.c (_spawnlp, _getpid):
9869 Declare with explicit _cdecl instead of _CRTAPI1.
9870
9871 * editfns.c (Fget_internal_run_time):
9872 Check for WINDOWSNT with #ifdef, not #if.
9873
98742008-06-26 Jason Rumney <jasonr@gnu.org>
9875
9876 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
9877
9878 * w32term.c (x_draw_glyph_string_foreground)
9879 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
9880 Use FONT_HANDLE macro.
9881 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
9882
9883 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
9884 (uniscribe_encode_char): Use FONT_HANDLE macro.
9885
9886 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
9887 (w32font_text_extents): Use precast w32_font.
9888 (w32font_close): Free cached metrics.
9889 (w32font_open_internal): Allocate space for name on stack.
9890
98912008-06-26 Chong Yidong <cyd@stupidchicken.com>
9892
9893 * xdisp.c (extend_face_to_end_of_line): Fix last change.
9894
98952008-06-26 Jason Rumney <jasonr@gnu.org>
9896
9897 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
9898 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
9899
99002008-06-26 Juanma Barranquero <lekktu@gmail.com>
9901
9902 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
9903
99042008-06-26 Jason Rumney <jasonr@gnu.org>
9905
9906 * w32bdf.c, w32bdf.h: Remove obsolete files.
9907
9908 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
9909
9910 * w32gui.h: Don't include w32bdf.h.
9911 (XCharStruct, enum w32_char_font_type, W32FontStruct):
9912 Remove obsolete font support.
9913
9914 * w32font.h (struct w32font_info): Remove compat_w32_font.
9915 Add hfont member.
9916 (FONT_COMPAT): Remove obsolete macro.
9917
9918 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
9919 (w32font_encode_char, w32font_text_extents): Use new hfont member.
9920 (w32font_open_internal): Remove compat code. Set new hfont member.
9921 (Fx_select_font): Use new hfont member.
9922
9923 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
9924 (uniscribe_encode_char): Use new hfont member.
9925
9926 * w32term.c (x_draw_glyph_string_foreground)
9927 (x_draw_composite_glyph_string_foreground): Use new hfont member.
9928 (x_draw_glyph_string): Use metrics in w32font_info.
9929
99302008-06-26 Kenichi Handa <handa@m17n.org>
9931
9932 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
9933
99342008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
9935
9936 * unexnext.c:
9937 * m/ews4800.h:
9938 * m/hp9000s300.h:
9939 * m/ibm370aix.h:
9940 * m/mips-siemens.h:
9941 * m/ncr386.h:
9942 * m/next.h:
9943 * m/pmax.h:
9944 * m/powerpcle.h:
9945 * m/tandem-s2.h:
9946 * s/386bsd.h:
9947 * s/bsd386.h:
9948 * s/bsd4-1.h:
9949 * s/bsd4-2.h:
9950 * s/bsdos2-1.h:
9951 * s/bsdos2.h:
9952 * s/bsdos3.h:
9953 * s/bsdos4.h:
9954 * s/nextstep.h:
9955 * s/ultrix4-3.h:
9956 * s/usg5-0.h:
9957 * s/usg5-2-2.h:
9958 * s/usg5-2.h:
9959 * s/usg5-4-3.h:
9960 * s/ux4800.h:
9961 * s/uxpds.h:
9962 * s/uxpv.h: Remove support for obsolete systems.
9963 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 9964 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
9965 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
9966 Remove, insert contents in s/aix4-2.h.
9967 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
9968 * s/bsd4-3.h: Rename to ...
9969 * s/bsd-common.h: ... this.
9970 * data.c:
9971 * doc.c:
9972 * ecrt0.c:
9973 * emacs.c:
9974 * fileio.c:
9975 * floatfns.c:
9976 * keyboard.c:
9977 * mem-limits.h:
9978 * print.c:
9979 * process.c:
9980 * sysdep.c:
9981 * syssignal.h:
9982 * systty.h:
9983 * syswait.h:
9984 * term.c:
9985 * unexec.c:
9986 * unexelf.c:
9987 * unexhp9k800.c:
9988 * m/hp800.h:
9989 * m/ibmrs6000.h:
9990 * m/mips.h:
9991 * m/vax.h:
9992 * s/darwin.h:
9993 * s/freebsd.h:
9994 * s/gnu.h:
9995 * s/ms-w32.h:
9996 * s/msdos.h:
9997 * s/netbsd.h:
9998 * s/template.h: Remove references to obsolete variables.
9999
10000 * Makefile.in: Add dependencies for all unexec files.
10001 (admindir): Remove unused variable.
10002 (UNEXEC_SRC): Remove references.
10003
100042008-06-25 Chong Yidong <cyd@stupidchicken.com>
10005
10006 * xfns.c (x_default_font_parameter): If Xft is available, first
10007 try Monospace-12 for the default font.
10008
100092008-06-25 Jason Rumney <jasonr@gnu.org>
10010
10011 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
10012
100132008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
10014
10015 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
10016
10017 * buffer.c (syms_of_buffer): Remove default-word-wrap.
10018
100192008-06-25 Juanma Barranquero <lekktu@gmail.com>
10020
10021 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
10022 <scroll-conservatively>: Fix typo in docstring.
10023
10024 * xselect.c (Fx_send_client_event): Doc fix.
10025
100262008-06-25 Kenichi Handa <handa@m17n.org>
10027
10028 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
10029
10030 * font.c (font_parse_fcname): Remove unused variables.
10031 (font_sort_entites): Delete the arg SPEC. Caller changed.
10032 Fix for the case of ! best_only.
10033 (font_delete_unmatched): Check DPI and AVGWIDTH too.
10034
10035 * lisp.h (Fstring_to_unibyte): EXFUN it.
10036
10037 * character.h (str_to_unibyte): Extern it.
10038
10039 * character.c (str_to_unibyte): New function.
10040
10041 * fns.c (Fstring_to_unibyte): New function.
10042 (syms_of_fns): Defsubr it.
10043
100442008-06-24 Kenichi Handa <handa@m17n.org>
10045
10046 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
10047 DPI too.
10048 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
10049
100502008-06-24 Andreas Schwab <schwab@suse.de>
10051
10052 * Makefile.in (${lispsource}loaddefs.el): Rename from
10053 ../lisp/loaddefs.el.
10054 (bootstrap-clean): Do what distclean does but don't remove
10055 Makefile.
10056 (distclean): Depend on bootstrap-clean and remove Makefile.
10057
100582008-06-24 Chong Yidong <cyd@stupidchicken.com>
10059
10060 * buffer.h (struct buffer): New member word_wrap.
10061
10062 * buffer.c (syms_of_buffer): New variables default-word-wrap and
10063 word-wrap.
10064 (init_buffer_once): Initialize them.
10065
10066 * dispextern.h (struct it): Replace bool truncate_lines_p with a
10067 line_wrap enum possessing three possible values.
10068
10069 * termopts.h: Replace truncate_partial_width_windows with
10070 Vtruncate_partial_width_windows.
10071
10072 * dispnew.c (direct_output_for_insert): Avoid direct output when
10073 inserting a space with word wrap on.
10074
10075 * indent.c (compute_motion): Obey integer values of
10076 truncate-partial-width-windows.
10077
10078 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
10079 replacing truncate_partial_width_windows.
10080 (init_iterator): If Vtruncate_partial_width_windows is an integer,
10081 truncate only if the window width is below that integer.
10082 (start_display, resize_mini_window, produce_stretch_glyph)
10083 (display_string, move_it_in_display_line_to): Use line_wrap.
10084 (back_to_previous_visible_line_start, reseat_1): Reset
10085 string_from_display_prop_p.
10086 (display_line): Extend default face to end of line when wrapping.
10087
100882008-06-24 Kim F. Storm <storm@cua.dk>
10089
10090 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
10091 to wrap continued lines at word boundaries.
10092
100932008-06-24 Jason Rumney <jasonr@gnu.org>
10094
10095 * font.c (Ffont_face_attributes): Multiply pixel size before point
10096 conversion to avoid multiplying rounding error.
10097
100982008-06-23 Jason Rumney <jasonr@gnu.org>
10099
10100 * w32term.c (x_draw_glyph_string_background)
10101 (x_draw_glyph_string): Remove old bdf font code.
10102
10103 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
10104
101052008-06-22 Kenichi Handa <handa@m17n.org>
10106
10107 * font.c (font_find_for_lface): Try the adstyle specified in
10108 the property of LFACE_FONT of LFACE (if any).
10109
101102008-06-21 Seiji Zenitani <zenitani@mac.com>
10111 Ryo Yoshitake <ryo@shiftmode.net>
10112
10113 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
10114
101152008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
10116
10117 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
10118 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
10119 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
10120 (witness-emacs): Remove.
10121 (lisp, shortlisp): Move loaddefs.el earlier.
10122 (mostlyclean): Forget about witness-emacs.
10123
101242008-06-22 Glenn Morris <rgm@gnu.org>
10125
10126 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
10127 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
10128
101292008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10130
10131 * Makefile.in (PRECOMP): Remove.
10132 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
10133 (witness-emacs): Run `compile-first'.
10134 (.el.elc): Use the new compile-onefile target.
10135
101362008-06-21 Kenichi Handa <handa@m17n.org>
10137
10138 * xftfont.c (xftfont_open): Handle QCembolden only when
10139 FC_EMBOLDEN is defined.
10140
101412008-06-21 Andreas Schwab <schwab@suse.de>
10142
10143 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
10144 (.el.elc): Likewise.
10145
101462008-06-21 Miles Bader <miles@gnu.org>
10147
10148 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
10149 build dir, not the lisp source dir.
10150
101512008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10152
10153 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
10154 (bootstrapclean): Remove.
10155 (.el.elc): New rule.
10156 (PRECOMP): New var.
10157 (../lisp/subdirs.el): Remove.
10158 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
10159 (witness-emacs): New target.
10160 (mostlyclean): Remove witness-emacs as well.
10161 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
10162 Add witness-emacs dependency.
10163
101642008-06-20 Chong Yidong <cyd@stupidchicken.com>
10165
10166 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
10167 defined by the font.
10168
101692008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10170
10171 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
10172 (bootstrap-clean): New target that keeps TAGS around.
10173 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
10174 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
10175
101762008-06-20 Jason Rumney <jasonr@gnu.org>
10177
10178 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
10179 Remove obsolete font code.
10180
10181 * w32font.c (font_matches_spec): Use csb bitfield from font signature
10182 to determine language support.
10183
101842008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10185
10186 * sysdep.c (cfsetspeed): New fun extracted from the code.
10187 (cfmakeraw): Move before first use.
10188
101892008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
10190
10191 * sysdep.c (cfmakeraw): Provide fallback implementation.
10192 (serial_configure): Provide fallback implementation of cfsetspeed.
10193
101942008-06-20 Kenichi Handa <handa@m17n.org>
10195
10196 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
10197 the pattern.
10198
10199 * fontset.c (fontset_from_font): Copy font_spec before changing
10200 the elements.
10201
10202 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
10203
102042008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10205
10206 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
10207 for explicit `font' parameters.
10208
10209 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
10210
102112008-06-19 Kenichi Handa <handa@m17n.org>
10212
10213 * frame.c: Include <ctype.h>.
10214 (x_set_font_backend): Allow spacing characters in the X resource
10215 for FontBackend.
10216
102172008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
10218
10219 * w32fns.c, xfns.c (Qfont_param): New var.
10220 (syms_of_w32fns): Initialize it.
10221 (x_default_font_parameter): Record explicit `font' into
10222 `font-parameter'.
10223
102242008-06-18 Kenichi Handa <handa@m17n.org>
10225
10226 * font.c (font_parse_xlfd): Fix previous change.
10227 (font_parse_fcname): Don't use :fc-unknown-spec.
10228 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
10229 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
10230 (font_add_log): Prepend the driver name to the resulting fonts.
10231
10232 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
10233 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
10234 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
10235
10236 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
10237 (QCembolden): New variables.
10238 (syms_of_xftfont): DEFSYM them.
10239 (xftfont_open): Call XftFontMatch. Don't trust the result of
10240 XftTextExtents8 if the pixel_size is less than 5.
10241
102422008-06-18 Andreas Schwab <schwab@suse.de>
10243
10244 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
10245 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
10246
102472008-06-18 Jason Rumney <jasonr@gnu.org>
10248
10249 * w32font.c (w32font_list, w32font_match): Add logging.
10250
10251 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
10252
102532008-06-17 Chong Yidong <cyd@stupidchicken.com>
10254
10255 * font.c (font_parse_fcname): Store divider characters for
10256 unknown-spec list. For known key symbols, intern using correct
10257 symbol name.
10258
102592008-06-17 Kenichi Handa <handa@m17n.org>
10260
10261 * xfaces.c (realize_default_face): If the frame is not on window
10262 system, set the fontset of face to nil.
10263
102642008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
10265
10266 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
10267
102682008-06-16 Juanma Barranquero <lekktu@gmail.com>
10269
10270 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
10271 (build_font_name_from_vector): Delete externs.
10272
10273 * xfaces.c (struct font_name): Don't declare.
10274
102752008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
10276
10277 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
10278
102792008-06-16 Chong Yidong <cyd@stupidchicken.com>
10280
10281 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
10282
102832008-06-16 Juanma Barranquero <lekktu@gmail.com>
10284
10285 * font.c (Ffont_spec): Fix usage in docstring.
10286 (Ffont_face_attributes): Doc fix.
10287
102882008-06-16 Andreas Schwab <schwab@suse.de>
10289
10290 * font.c (Ffont_face_attributes): Fix definition.
10291
102922008-06-16 Jason Rumney <jasonr@gnu.org>
10293
10294 * font.h (font_style_symbolic_from_value): Remove.
10295
10296 * font.c (font_style_symbolic_from_value): Remove.
10297 (font_style_symbolic): Revert to pre 2008-06-13 version.
10298
10299 * w32font.c (w32_to_fc_weight): New function.
10300 (w32font_full_name, logfont_to_fcname): Use it.
10301
103022008-06-16 Kenichi Handa <handa@m17n.org>
10303
10304 * font.c (font_check_object): Delete it.
10305 (font_clear_cache): Check if a font-object is alive.
10306 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
10307 font-object to nil.
10308 (font_close_object): Don't check FONT_CLOSE_OBJECT.
10309 (font_at): Don't call font_check_object.
10310 (Ffont_get): Return a symbol for :weight, :slant, and :width.
10311
103122008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
10313
10314 * puresize.h (BASE_PURESIZE): Increase to 1230000.
10315
103162008-06-16 Chong Yidong <cyd@stupidchicken.com>
10317
10318 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
10319
103202008-06-15 Chong Yidong <cyd@stupidchicken.com>
10321
10322 * font.c (font_parse_fcname): Only one decimal point.
10323 (font_unparse_fcname): Handle data in family and foundry indices
10324 as symbols, not strings.
10325 (font_unparse_gtkname, Ffont_face_attributes): New functions.
10326
10327 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
10328
10329 * font.h (font_unparse_gtkname): Add prototype.
10330
103312008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
10332
10333 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
10334
103352008-06-15 Andreas Schwab <schwab@suse.de>
10336
10337 * font.c (font_update_drivers): Fix crash when no drivers match.
10338
103392008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
10340
10341 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
10342 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
10343
103442008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
10345
10346 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
10347
103482008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
10349
10350 * process.c (Fserial_process_configure, Fprocess_send_eof):
10351 Use EQ to compare Lisp_Objects.
10352
103532008-06-13 Jason Rumney <jasonr@gnu.org>
10354
10355 * w32fns.c (Fw32_select_font): Remove old font API function.
10356
10357 * w32font.c (logfont_to_fcname): New function.
10358 (Fx_select_font): New font dialog function compatible with
10359 GTK/fontconfig version.
10360
10361 * font.c (font_style_symbolic_from_value): New function.
10362 (font_style_symbolic): Use it.
10363
10364 * font.h (font_style_symbolic_from_value): Declare new function.
10365
103662008-06-13 Juanma Barranquero <lekktu@gmail.com>
10367
10368 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
10369 <font-width-table>: Fix typos in docstrings.
10370
103712008-06-13 Daniel Engeler <engeler@gmail.com>
10372
10373 These changes add serial port access.
10374 * process.c: Add HAVE_SERIAL.
10375 (Fdelete_process, Fprocess_status, Fset_process_buffer)
10376 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
10377 (list_processes_1, select_wrapper, Fstop_process)
10378 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
10379 (status_notify): Modify to handle serial processes.
10380 [HAVE_SERIAL] (Fserial_process_configure)
10381 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
10382 New functions.
10383 * process.h (struct Lisp_Process): Add `type'.
10384 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
10385 New functions.
10386 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
10387 serial ports.
b71ac3dd 10388 (serial_open, serial_configure): New functions.
aac0c6e3
MR
10389 * w32.h: Add FILE_SERIAL.
10390 (struct _child_process): Add ovl_read, ovl_write.
10391
103922008-06-13 Kenichi Handa <handa@m17n.org>
10393
10394 * dispextern.h (enum lface_attribute_index): New member
10395 LFACE_FOUNDRY_INDEX.
10396
10397 * font.c (font_score): Delete arg alternate_families. Check only
10398 weight, slant, width, and size. Ignore the difference of alias
10399 style symbols.
10400 (font_sort_entites): Adjust for the above change. Reflect the
10401 order of font-driver to scores.
10402 (font_list_entities): Don't check alternate_familes here.
10403 (font_clear_prop): Handle foundry.
10404 (font_update_lface): Don't parse "foundry-family" form here.
10405 Handle FONT_FOUNDRY_INDEX.
10406 (font_find_for_lface): Likewise. Handle alternate families here.
10407 If registry is nil, try iso8859-1 and ascii-0.
10408 (font_open_for_lface): Pay attention to size in ENTITY.
10409 (font_open_by_name): Simplify by calling font_load_for_lface.
10410 (free_font_driver_list): Delete it.
10411 (font_update_drivers): Preserve the order of backends.
10412 (syms_of_font): Setting of sort_shift_bits adjusted for the change
10413 of font_score and font_sort_entites.
10414 (font_update_sort_order): Likewise.
10415
10416 * xfaces.c (LFACE_FOUNDRY): New macro.
10417 (check_lface_attrs): Check foundry.
10418 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
10419 (merge_face_vectors): Check foundry.
10420 (merge_face_ref): Likewise.
10421 (Finternal_set_lisp_face_attribute): Likewise.
10422 (x_update_menu_appearance): Likewise.
10423 (Finternal_get_lisp_face_attribute): Likewise.
10424 (lface_hash): Likewise.
10425 (lface_same_font_attributes_p): Likewise.
10426 (x_supports_face_attributes_p): Likewise.
10427 (tty_supports_face_attributes_p): Likewise.
10428 (Finternal_set_alternative_font_family_alist): Intern strings.
10429 (Finternal_set_alternative_font_registry_alist): Downcase strings.
10430 (realize_default_face): Set LFACE_FOUNDRY (lface).
10431
10432 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
10433 font-driver at first.
10434
10435 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
10436
104372008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
10438
10439 * lread.c (Fload): Use xfree, not free on saved_doc_string.
10440
104412008-06-12 Jim Meyering <meyering@redhat.com>
10442
10443 Make unexec_free handle NULL the same way free does.
10444 * unexmacosx.c (unexec_free): Ignore a NULL argument.
10445
104462008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
10447
10448 * character.h (CHAR_TO_BYTE_SAFE): New macro.
10449 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
10450 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
10451 (WEAK_ALIAS): Simplify.
10452 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
10453 when searching a unibyte buffer.
10454
104552008-06-12 Chong Yidong <cyd@stupidchicken.com>
10456
10457 * xfns.c (Fx_select_font): Rename from x-font-dialog.
10458
104592008-06-12 Juanma Barranquero <lekktu@gmail.com>
10460
10461 * w32font.c: Include ctype.h.
10462
104632008-06-11 Jason Rumney <jasonr@gnu.org>
10464
10465 * w32font.c (w32font_encode_char): Detect missing glyphs that are
10466 misreported as space.
10467 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
10468 as aliases for registry iso10646-1.
10469
104702008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
10471
10472 * buffer.c (clone_per_buffer_values): Skip `name'.
10473
104742008-06-11 Chong Yidong <cyd@stupidchicken.com>
10475
10476 * font.c (font_parse_fcname): Fix last change; accept decimal
10477 points in font size.
10478
104792008-06-10 Jason Rumney <jasonr@gnu.org>
10480
10481 * w32uniscribe.c (add_opentype_font_name_to_list):
10482 Skip non unicode fonts.
10483
104842008-06-10 Chong Yidong <cyd@stupidchicken.com>
10485
10486 * xfns.c (Fx_font_dialog): New function.
10487
10488 * gtkutil.c (xg_dialog_response_cb): Rename from
10489 xg_file_response_callback.
10490 (pop_down_dialog): Rename from pop_down_file_dialog.
10491 (xg_get_file_name): Callers changed.
10492 (xg_get_font_name): New function.
10493
10494 * gtkutil.h (xg_get_font_name): Insert prototype.
10495
104962008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
10497
10498 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
10499 x_underline_minimum_display_offset.
10500 (syms_of_xdisp): Declare it here rather than in xterm.c.
10501 * dispextern.h (underline_minimum_offset): Declare it.
10502 * w32term.c (x_draw_glyph_string): Use it.
10503 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
10504 (syms_of_xterm): Don't declare it any more.
10505 (x_draw_glyph_string): Adjust to the new name.
10506
8719abec 105072008-06-10 David De La Harpe Golden <david@harpegolden.net>
aac0c6e3
MR
10508
10509 * xterm.c (x_underline_minimum_display_offset): New var.
10510 (x_draw_glyph_string): Use it.
10511 (syms_of_xterm): Declare it.
10512
105132008-06-10 Chong Yidong <cyd@stupidchicken.com>
10514
10515 * font.c (font_parse_fcname): Accept GTK-style font names too.
10516
105172008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
10518
10519 * dired.c (file_name_completion): Don't return t if the match is exact
10520 but with different capitalization.
10521 * minibuf.c (Ftry_completion): Simplify.
10522
10523 * window.c (Vwindow_point_insertion_type): New var.
10524 (set_window_buffer): Use it.
10525 (syms_of_window): Init and export it to Lisp.
10526
105272008-06-10 Kenichi Handa <handa@m17n.org>
10528
10529 * font.h (font_intern_prop): Prototype adjusted.
10530
10531 * font.c (font_intern_prop): New arg force_symbol.
10532 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
10533 Adjust for the change of font_intern_prop.
10534
10535 * ftfont.c (ftfont_pattern_entity):
10536 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
10537 (w32_registry):
10538 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
10539 the change of font_intern_prop.
10540
105412008-06-09 Juanma Barranquero <lekktu@gmail.com>
10542
10543 * w32menu.c (digest_single_submenu): Declare extern.
10544
105452008-06-09 Jason Rumney <jasonr@gnu.org>
10546
10547 * w32term.c (x_make_frame_visible): Use alternate restore flags.
10548
10549 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
10550 (parse_single_submenu): Remove.
10551 (digest_single_submenu): Remove.
10552 (syms_of_w32menu): Don't initialise variables that have moved
10553 to menu.c.
10554 (set_frame_menubar): Sync with version in xmenu.c.
10555 (w32_menu_show): Sync with xmenu_show in xmenu.c.
10556
10557 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
10558 Make static again.
10559
105602008-06-09 Jason Rumney <jasonr@gnu.org>
10561
10562 Changes to w32 files related to the move of common menu code
10563 to menu.c on 2008-06-08 by Chong Yidong.
10564
10565 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
10566 defs to w32gui.h.
10567 (single_keymap_panes, push_menu_item, push_menu_pane):
10568 Make globally visible.
10569
10570 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
10571 (local_free, malloc_widget_value, free_widget_value)
10572 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
10573 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
10574 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
10575 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
10576 (menu_items, menu_items_allocated, menu_items_used)
10577 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
10578 (init_menu_items, finish_menu_items, discard_menu_items)
10579 (grow_menu_items, push_submenu_start, push_submenu_end)
10580 (push_left_right_boundary, push_menu_pane, push_menu_item)
10581 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
10582 (free_menubar_widget_tree_value, parse_single_submenu)
10583 (update_submenu_strings): Remove functions.
10584 (xmalloc_widget_value): Remove and declare extern.
10585
10586 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
10587 (OBJ1): Build it.
10588
10589 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
10590 (local_heap, local_alloc, local_free, malloc_widget_value)
10591 (free_widget_value): Define here.
10592
105932008-06-09 Kenichi Handa <handa@m17n.org>
10594
10595 * font.h (Qascii_0): Extern it.
10596
10597 * font.c (Qascii_0): New variable.
10598 (syms_of_font): DEFSYM it.
10599 (font_open_by_name): If the registry "iso8859-1" fails, try also
10600 "ascii-0".
10601
10602 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
10603
106042008-06-08 Kenichi Handa <handa@m17n.org>
10605
10606 * .gdbinit (xfont): New command.
10607
106082008-06-08 Andreas Schwab <schwab@suse.de>
10609
10610 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
10611 * Makefile.in (menu.o): Update dependencies.
10612
10613 * Makefile.in (obj): Always add menu.o.
10614 * emacs.c (main): Always call syms_of_menu.
10615 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
10616
106172008-06-08 Chong Yidong <cyd@stupidchicken.com>
10618
10619 * Makefile.in: Compile menu.c.
10620
10621 * lisp.h: Declare syms_of_menu.
10622
10623 * emacs.c (main): Call syms_of_menu.
10624
10625 * keyboard.h: Relocate platform-independent menu definitions from
10626 xmenu.c.
10627
10628 * menu.c: New file. Relocate platform-independent menu
10629 definitions from xmenu.c. Suggested by Adrian Robert.
10630
10631 * xmenu.c: Remove platform-independent menu definitions.
10632 (menu_items menu_items_inuse, menu_items_allocated)
10633 (menu_items_used, menu_items_n_panes)
10634 (menu_items_submenu_depth): Move to keyboard.h.
10635 (init_menu_items, finish_menu_items, unuse_menu_items)
10636 (discard_menu_items, restore_menu_items, save_menu_items)
10637 (grow_menu_items, push_submenu_start, push_submenu_end)
10638 (push_left_right_boundary, push_menu_pane, push_menu_item)
10639 (keymap_panes, single_keymap_panes, single_menu_item)
10640 (list_of_panes, list_of_items, find_and_call_menu_selection)
10641 (xmalloc_widget_value, free_menubar_widget_value_tree)
10642 (parse_single_submenu, digest_single_submenu)
10643 (update_submenu_strings): Move to menu.c.
10644
106452008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
10646
10647 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
10648
106492008-06-06 Miles Bader <miles@gnu.org>
10650
10651 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
10652 face, not frame default.
10653
106542008-06-05 Martin Rudalics <rudalics@gmx.at>
10655
10656 * window.c (pop_up_windows, pop_up_frames)
10657 (display_buffer_reuse_frames, Vpop_up_frame_function)
10658 (Vdisplay_buffer_function, Veven_window_heights)
10659 (Vspecial_display_buffer_names, Vspecial_display_regexps)
10660 (Vspecial_display_function, Vsame_window_buffer_names)
10661 (Vsame_window_regexps, split_height_threshold)
10662 (Vsplit_window_preferred_function): Move those vars to window.el.
10663 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
10664 (Fdisplay_buffer): Move those functions to window.el.
10665 (syms_of_window): Remove corresponding declarations.
10666 (display_buffer): New function.
10667 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
10668 * dispnew.c (Flast_nonminibuf_frame): New function.
10669 * buffer.c (Fpop_to_buffer): Move to window.el.
10670
106712008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
10672
10673 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
10674
106752008-06-05 Kenichi Handa <handa@m17n.org>
10676
10677 * coding.c (detect_coding): Fix previous change.
10678 (detect_coding_system): Likewise.
10679
106802008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
10681
10682 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
10683
10684 * keymap.c (Vminibuffer_local_filename_must_match_map):
10685 Rename from Vminibuffer_local_must_match_filename_map.
10686 (syms_of_keymap):
10687 * minibuf.c (Fcompleting_read): Adjust accordingly.
10688 * commands.h: Rename declaration as well.
10689
106902008-06-05 Kenichi Handa <handa@m17n.org>
10691
10692 * font.c (Ffont_spec): Don't use font_parse_family_registry for
10693 family name.
10694 (Ffont_put): Likewise.
10695
10696 * fontset.c (fontset_find_font): Call font_open_for_lface with the
10697 current font-spec.
10698
10699 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
10700 is unspecified.
10701
10702 * xfaces.c (realize_x_face): If the font-related face attributes
10703 are the same as those of default face, realize a new fontset from
10704 default->fontset.
10705 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
10706
107072008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
10708
10709 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
10710 (move_it_in_display_line): New wrapper.
10711
10712 * window.c (window_scroll_pixel_based_preserve_x)
10713 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
10714 (window_scroll_pixel_based, window_scroll_line_based):
10715 Use them to preserve column positions.
10716 (syms_of_window): Initialize them.
10717
10718 * indent.c (Fvertical_motion): Extend first arg to allow passing an
10719 (HPOS . VPOS) pair.
10720
10721 * dispextern.h (move_it_in_display_line): Declare.
10722
107232008-06-05 Juanma Barranquero <lekktu@gmail.com>
10724
10725 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
10726 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
10727 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
10728
107292008-06-04 Juanma Barranquero <lekktu@gmail.com>
10730
10731 * window.c (Fset_window_parameter): Doc fix.
10732 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
10733
107342008-06-04 Joakim Verona <joakim@verona.se>
10735
10736 * window.h (struct window): Add new member window_parameters.
10737
10738 * window.c (Fwindow_parameters, Fwindow_parameter)
10739 (Fset_window_parameter): New defuns.
10740 (syms_of_window): Defsubr the new defuns.
10741 (make_window): Initialize window_parameters to nil.
10742
107432008-06-04 John Paul Wallington <jpw@pobox.com>
10744
10745 * eval.c (Fdefmacro): Doc fix.
10746
107472008-06-04 Kenichi Handa <handa@m17n.org>
10748
10749 * coding.c (detect_coding): Fix handling of coding->head_ascii.
10750 Be sure to call setup_coding_system when we find a proper coding system.
10751 (detect_coding_system): Fix handling of coding->head_ascii.
10752
107532008-06-03 Andreas Schwab <schwab@suse.de>
10754
10755 * font.c (font_prop_validate_spacing): Fix last change.
10756
107572008-06-03 Kenichi Handa <handa@m17n.org>
10758
10759 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
10760 (font_parse_fcname): Fix handling of unknown key.
10761
10762 * xfont.c (xfont_list): Try an alias.
10763
10764 * charset.c (char_charset): Return NULL if the arg charset_list is
10765 specified and C doesn't belong to any of them.
10766
107672008-06-02 Chip Coldwell <coldwell@redhat.com>
10768
10769 * font.c (font_pixel_size): Don't take cdr of an integer.
10770
107712008-06-02 Jim Meyering <meyering@redhat.com>
10772
10773 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
10774 * alloc.c (xfree): Return right away for a NULL arg.
10775 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
10776 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
10777 * mac.c (create_apple_event_from_event_ref): Likewise.
10778 (create_apple_event_from_drag_ref, cfstring_create_normalized):
10779 Likewise.
10780 * doprnt.c (doprnt1): Likewise.
10781 * frame.c (frame): Likewise.
10782 * keyboard.c (wipe_kboard): Likewise.
10783 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
10784 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
10785 * term.c (tty_default_color_capabilities, maybe_fatal)
10786 (delete_tty): Likewise.
10787 * w16select.c (string): Likewise.
10788 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
10789 * w32bdf.c (w32_free_bdf_font): Likewise.
10790 * w32fns.c (w32_unload_font): Likewise.
10791 * w32font.c (w32font_close): Likewise.
10792 * window.c (size_window): Likewise.
10793 * xselect.c (receive_incremental_selection): Likewise.
10794 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
10795 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
10796 * w32.c (stat): Likewise.
10797
10798 Remove useless if-before-free tests.
10799 * editfns.c (Fset_time_zone_rule): Likewise.
10800 * lread.c (nosuffix): Likewise.
10801 * ralloc.c (get_bloc): Likewise.
10802 * regex.c (reg_free): Likewise.
10803 * xftfont.c (xftfont_open, xftfont_close): Likewise.
10804 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
10805 * xsmfns.c (smc_save_yourself_CB): Likewise.
10806
108072008-06-02 Kenichi Handa <handa@m17n.org>
10808
10809 * font.c (font_find_for_lface): Handle float font size.
10810 (font_open_for_lface): Likewise.
10811
10812 * xfaces.c (x_supports_face_attributes_p): Check face->font before
10813 comparing the properties.
10814
108152008-06-01 Jason Rumney <jasonr@gnu.org>
10816
10817 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
10818 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
10819 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
10820 Don't add empty script list.
10821 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
10822
108232008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
10824
10825 * Makefile.in (dot, dotdot): Remove, update users.
10826 ".." has been used elsewhere in the file for a long time.
10827 (LIBXT_STATIC): Remove conditional based on unused variable.
10828
108292008-06-01 Miles Bader <miles@gnu.org>
10830
10831 * xfaces.c (Vface_remapping_alist): New variable.
10832 (syms_of_xfaces): Initialize it.
10833 (enum named_merge_point_kind): New type.
10834 (struct named_merge_point): Add `named_merge_point_kind' field.
10835 (push_named_merge_point): Make cycle detection respect different
10836 named-merge-point kinds.
10837 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
10838 Remove face-name alias resolution.
10839 (lface_from_face_name): New definition using
10840 `lface_from_face_name_no_resolve'.
10841 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
10842 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
10843 (get_lface_attributes): New definition that layers face-remapping on
10844 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
10845 (lookup_basic_face): New function.
10846 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
10847 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
10848 `get_lface_attributes'.
10849 (face_at_buffer_position): Use `lookup_basic_face' to lookup
10850 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
10851 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
10852
10853 * xdisp.c (init_iterator): Pass base_face_id through
10854 `lookup_basic_face' when we actually use it as a face-id.
10855 (handle_single_display_prop): Use `lookup_basic_face' to lookup
10856 DEFAULT_FACE_ID.
10857
10858 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
10859 lookup the initial face-id.
10860
10861 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
10862
108632008-06-01 Juanma Barranquero <lekktu@gmail.com>
10864
10865 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
10866 (Fremove_text_properties): Fix typos in docstrings.
10867
108682008-05-31 Kenichi Handa <handa@m17n.org>
10869
10870 * font.c (font_list_entities): Fix the car part of data to be
10871 stored in the cache.
10872
10873 * ftfont.c (ftfont_font_format): Don't use strcasestr.
10874
108752008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
10876
10877 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
10878 Add a `test' argument so another predicate than `equal' can be used.
10879 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
10880 (map_char_table): Remove unused vars `c' and `i'.
10881 * lisp.h (Foptimize_char_table): Adjust declaration.
10882 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
10883
108842008-05-30 Kenichi Handa <handa@m17n.org>
10885
10886 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
10887 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
10888 defined.
10889
108902008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
10891
10892 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
10893 (Fmake_variable_frame_local): Disallow mixing buffer-local and
10894 frame-local settings for the same variable.
10895
108962008-05-30 Kenichi Handa <handa@m17n.org>
10897
10898 * fontset.c (Ffont_info): Move to font.c.
10899 (syms_of_fontset): Delete defsubr of Sfont_info.
10900
10901 * font.c (font_style_to_value, font_score): Delete casting of the
10902 args to xstcasecmp.
10903 (register_font_driver): Increment num_font_drivers only when
10904 registering the driver globally.
10905 (Ffont_info): Move from fontset.c. Handle a font object too.
10906 (syms_of_font): Defsubr Sfont_info.
10907
109082008-05-29 Kenichi Handa <handa@m17n.org>
10909
10910 * coding.h (enum define_coding_utf8_arg_index): New enum.
10911 (enum coding_attr_index): Change coding_attr_utf_16_bom to
10912 coding_attr_utf_bom.
10913 (enum utf_bom_type): Rename from utf_16_bom_type.
10914 (struct utf_16_spec): Adjust for the above change.
10915 (struct coding_system): Add utf_8_bom in `spec' union.
10916
10917 * coding.c (CODING_UTF_8_BOM): New macro.
10918 (enum coding_category): Delete coding_category_utf_8, add
10919 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
10920 coding_category_utf_8_sig.
10921 (CATEGORY_MASK_UTF_8): Delete it.
10922 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
10923 (CATEGORY_MASK_UTF_8_SIG): New macros.
10924 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
10925 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
10926 CATEGORY_MASK_UTF_8_SIG.
10927 (CATEGORY_MASK_UTF_8): New macro.
10928 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
10929 (detect_coding_utf_8): Check BOM.
10930 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
10931 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
10932 (encode_coding_utf_16): Likewise.
10933 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
10934 (detect_coding, detect_coding_system): Handle utf-8-auto.
10935 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
10936 (syms_of_coding): Fix setting up of Vcoding_category_table.
10937
109382008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
10939
10940 * process.c (Faccept_process_output): If `millisec' is non-nil,
10941 `seconds' default to 0.
10942 (wait_reading_process_output): Also return non-nil if we read output
10943 from a non-running process.
10944
109452008-05-29 Jason Rumney <jasonr@gnu.org>
10946
10947 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
10948 `raster' specified.
10949 (add_font_entity_to_list): Allow non-opentype truetype fonts back
10950 in the uniscribe backend, but disallow any font that has no
10951 unicode subrange support.
10952
109532008-05-29 Juanma Barranquero <lekktu@gmail.com>
10954
10955 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
10956 Fix typos in docstrings.
10957
109582008-05-29 Kenichi Handa <handa@m17n.org>
10959
10960 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
10961 (Fx_family_fonts): Set frame correctly.
10962
109632008-05-28 Jason Rumney <jasonr@gnu.org>
10964
10965 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
10966
109672008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
10968
10969 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
10970 calling build_annotations.
10971
109722008-05-28 Juanma Barranquero <lekktu@gmail.com>
10973
10974 * coding.c (Fdecode_coding_region, Fencode_coding_region)
10975 (Fencode_coding_string):
10976 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
10977 <latin-extra-code-table>: Fix typos in docstrings.
10978 (syms_of_coding) <coding-system-alist>: Doc fix.
10979 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
10980
109812008-05-28 Kenichi Handa <handa@m17n.org>
10982
10983 * fontset.c (Ffont_info): Don't call font_close_object.
10984
10985 * font.c (font_parse_family_registry): Use Ffont_put to validate
10986 foundry and family.
10987 (font_delete_unmatched): Don't check spacing.
10988 (font_list_entities): Add spacing to the spec to list fonts.
10989
10990 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
10991 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
10992
10993 * coding.c (encode_coding_raw_text): Fix previous change.
10994 (encode_coding_object): When the dst_object is a buffer and is
10995 different from src_object, move gap to PT.
10996
109972008-05-27 Chong Yidong <cyd@stupidchicken.com>
10998
10999 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
11000
110012008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11002
11003 * coding.c (encode_coding_raw_text): Set coding->produced_char for
11004 all branches. Compute it differently.
11005
11006 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
11007
110082008-05-27 Juanma Barranquero <lekktu@gmail.com>
11009
11010 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
11011 into "else if () ... else ...".
11012
110132008-05-27 Jason Rumney <jasonr@gnu.org>
11014
11015 * w32font.c (w32font_open_internal): Determine if glyph indices
11016 are likely to work here.
11017
110182008-05-27 Chong Yidong <cyd@stupidchicken.com>
11019
11020 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
11021 draw overlap glyphs with appropriate highlighting.
11022
110232008-05-27 Kenichi Handa <handa@m17n.org>
11024
11025 * xfont.c (xfont_open): Fix calculation of font->average_width.
11026
110272008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11028
11029 * casefiddle.c (casify_object): Try to guess better whether the
11030 argument is a byte or a char.
11031
110322008-05-26 Andreas Schwab <schwab@suse.de>
11033
11034 * xselect.c (x_reply_selection_request): Properly handle format == 32.
11035 Always send multiples of format size.
11036
11037 * xterm.c (x_set_frame_alpha): Fix type mismatch.
11038
110392008-05-26 Jason Rumney <jasonr@gnu.org>
11040
11041 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
11042 (compute_metrics): Don't set failure if we just cleared the cache.
11043 (w32_weight_table): Remove unused variable.
11044 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
11045 backwards compatibility.
11046
110472008-05-25 Kenichi Handa <handa@m17n.org>
11048
11049 * w32term.c (x_draw_glyph_string):
11050 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
11051
11052 * xfaces.c: Delete unused function prototypes.
11053 (xstrlwr, font_frame): Delete them.
11054 (clear_face_cache): Delete unused variable.
11055
11056 * xftfont.c (xftfont_open): Delete unused variable.
11057 If underline_thickness is not 1, adjust underline_position.
11058
11059 * ftxfont.c (ftxfont_open): Delete unused variable.
11060
11061 * fontset.c (face_for_char): Optimize for the case of no charset
11062 property.
11063
11064 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
11065 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
11066 (otf_open, font_otf_capability, generate_otf_features)
11067 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
11068 Comment out by surrounding "#if 0" and "#endif" for the moment.
11069 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
11070 (syms_of_font): Codes for accessing above commented out.
11071
110722008-05-24 Eli Zaretskii <eliz@gnu.org>
11073
11074 * w32proc.c: Include dispextern.h.
11075
11076 * w32.c: Include dispextern.h.
11077
110782008-05-23 Juanma Barranquero <lekktu@gmail.com>
11079
11080 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
11081 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
11082 Fix typos in docstrings.
11083
110842008-05-23 Jason Rumney <jasonr@gnu.org>
11085
11086 * xsmfns.c: Remove includes that are already included by config.h.
11087
110882008-05-23 Kenichi Handa <handa@m17n.org>
11089
11090 * charset.c (Qemacs, charset_emacs): New variables.
11091 (char_charset): Fix for non-Unicode characters.
11092 (syms_of_charset): Define charset_emacs.
11093
11094 * w32term.c (x_draw_glyph_string): Be sure to update
11095 s->underline_thickness and s->underline_position. Be sure to draw
11096 underline within the current line area.
11097
11098 * xterm.c (x_draw_glyph_string): Be sure to update
11099 s->underline_thickness and s->underline_position. Be sure to draw
11100 underline within the current line area.
11101
11102 * fontset.c: Delete unused variables and add casting for char *
11103 throughout the file.
11104 (fontset_font): Try the fallback fonts of the current fontset
11105 before consulting the default fontset.
11106
11107 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
11108
11109 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
11110
111112008-05-22 Jason Rumney <jasonr@gnu.org>
11112
11113 * font.c: Don't include strings.h.
11114
11115 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
11116
11117 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
11118 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
11119 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
11120 to call xstrcasecmp.
11121
11122 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
11123
11124 * fontset.c (fs_query_fontset): Use xstrcasecmp.
11125
11126 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
11127
11128 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
11129
111302008-05-22 Kenichi Handa <handa@m17n.org>
11131
11132 * puresize.h (BASE_PURESIZE): Increase to 1220000.
11133
11134 * font.c (font_prop_validate_style): Adjust for the format
11135 change of font_style_table.
11136
11137 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
11138 two args.
11139
11140 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
11141 two args.
11142
111432008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
11144
11145 * minibuf.c (keys_of_minibuf): Delete.
11146 * lisp.h (keys_of_minibuf): Delete.
11147 * emacs.c (main): Don't call keys_of_minibuf.
11148
111492008-05-22 Kenichi Handa <handa@m17n.org>
11150
11151 * ftfont.c (ftfont_resolve_generic_family): Rename from
11152 ftfont_list_generic_family. Return a single family for each
11153 generic family.
11154 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
11155 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
11156 Call font_add_log.
11157 (ftfont_match): Call font_add_log.
11158
11159 * font.h (Ffont_xlfd_name): EXFUN adjusted.
11160 (FONT_DEBUG): Define it.
11161 (font_add_log): Extern it.
11162 (font_assert): Rename from xassert.
11163
11164 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
11165 (xfont_list_family): Call font_add_log.
11166 (xfont_match): Likewise.
11167 (memq_no_quit): Delete.
11168
11169 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
11170 call of Ffont_xlfd_name.
11171
11172 * xfaces.c (struct table_entry, slant_table, weight_table)
11173 (swidth_table): Move to font.c.
11174
11175 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
11176 xassert are changed to font_assert. Delete many unused variables.
11177 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
11178 New variables.
11179 (struct table_entry): Move from xfaces.c and modified.
11180 (weight_table, slant_table, width_table): Move from xfaces.c and
11181 contents adjusted for the change of struct table_entry.
11182 (font_style_to_value, font_style_symbolic): Adjust for the
11183 format change of font_style_table.
11184 (font_parse_family_registry): Don't overwrite existing foundry and
11185 family of font_spec.
11186 (font_score): Fix calculation of diff for sizes.
11187 (font_sort_entites): Call font_add_log.
11188 (font_delete_unmatched): Return a newly created list.
11189 (font_list_entities): Fix previous change. Call font_add_log.
11190 (font_matching_entity, font_open_entity, font_close_entity):
11191 Call font_add_log.
11192 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
11193 (Finternal_set_font_style_table): Delete.
11194 (BUILD_STYLE_TABLE): New macro.
11195 (build_style_table): New function.
11196 (Vfont_log, font_log_env_checked): New variables.
11197 (font_add_log): New function.
11198 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
11199 Declare Lisp variables "font-weight-table", "font-slant-table",
11200 "font-width-table", and "font-log". Initialize font_style_table.
11201
112022008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
11203
11204 * xterm.c (x_set_frame_alpha): Move declarations before statements.
11205
112062008-05-21 Seiji Zenitani <zenitani@mac.com>
11207 Ryo Yoshitake <ryo@shiftmode.net>
11208
11209 * frame.c (Qalpha): Add a new frame parameter `alpha'.
11210 (Vframe_alpha_lower_limit): New variable.
11211 (x_set_alpha): New function.
11212
11213 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
11214
11215 * xfns.c (x-create-frame, Qalpha):
11216 Initialize the frame parameter `alpha'.
11217 * xterm.c (OPAQUE, OPACITY): New.
11218 (x_set_frame_alpha): New function.
11219 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
11220
11221 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
11222 * w32fns.c (w32_frame_parm_handlers): Likewise.
11223
112242008-05-20 Jason Rumney <jasonr@gnu.org>
11225
11226 * w32font.c (add_font_entity_to_list): Don't add non-opentype
11227 truetype fonts to opentype list.
11228
112292008-05-20 Juanma Barranquero <lekktu@gmail.com>
11230
11231 * fontset.c (Ffontset_info): Doc fix.
11232 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
11233 <ignore-relative-composition>: Fix typos in docstrings.
11234
11235 * font.c (syms-of-font) <font-encoding-alist>:
11236 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
11237 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
11238 (Ffont_otf_alternates): Doc fixes.
11239
112402008-05-20 Kenichi Handa <handa@m17n.org>
11241
11242 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
11243 font.h through out the file.
11244 (FONT_DRIVERS): Rename from FONTOBJ.
11245 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
11246 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
11247
11248 * emacs.c (main): Call syms_of_font unconditionally.
11249
11250 * font.h (find_font_encoding): Extern it.
11251
11252 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
11253 fontset.c.
194d44e7 11254 (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
aac0c6e3
MR
11255 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
11256 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
11257 only when HAVE_WINDOW_SYSTEM is defined.
11258 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
11259 when HAVE_WINDOW_SYSTEM is defined.
11260
11261 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
11262 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
11263
11264 * xfaces.c: Include font.h unconditionally.
11265 (merge_face_ref, merge_face_vectors)
11266 (Finternal_set_lisp_face_attribute): Cancel the previous change.
11267
112682008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
11269
11270 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
11271 indirect_variable.
11272 * eval.c (lisp_indirect_variable): New fun.
11273 (Fuser_variable_p): Use it.
11274
112752008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
11276
11277 * lisp.h (indirect_variable):
11278 * data.c (indirect_variable, let_shadows_buffer_binding_p):
11279 Use Lisp_Symbol pointers rather than Lisp_Object.
11280 Adjust callers.
11281 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
11282 To this end, change calling-convention.
11283
11284 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
11285 if some non-hidden buffers are selected by string&pred.
11286
112872008-05-19 Chong Yidong <cyd@stupidchicken.com>
11288
11289 * process.c (wait_reading_process_output): Always check status
11290 when in batch mode.
11291
112922008-05-19 Kenichi Handa <handa@m17n.org>
11293
11294 * font.c (font_list_entities): Fix handling of cache.
11295 (font_matching_entity): Likewise.
11296
11297 * ftfont.c (cs_iso8859_1): Delete.
11298 (ft_face_cache): New variable.
11299 (struct ftfont_info): New member fc_charset_idx.
11300 (ftfont_build_basic_charsets): Delete.
11301 (fc_charset_table): New variable.
11302 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
11303 . FC_CHARSET_IDX) as :font-entity property in the font entity.
11304 Callers changed.
11305 (ftfont_lookup_cache, ftfont_get_charset): New functions.
11306 (ftfont_spec_pattern): New argument fc_charset_idx.
11307 Check registry more rigidly. Change callers.
11308 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
11309 change of :font-entity property of the font.
11310
11311 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
11312 property of the font.
11313
113142008-05-18 Juanma Barranquero <lekktu@gmail.com>
11315
11316 * coding.c (Fcoding_system_p): Rename argument to match docstring.
11317 (Funencodable_char_position, Fcheck_coding_systems_region)
11318 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
11319 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
11320 (Ffind_operation_coding_system, Fset_coding_system_priority)
11321 (Fcoding_system_eol_type): Doc fixes.
11322
113232008-05-17 Glenn Morris <rgm@gnu.org>
11324
11325 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
11326
113272008-05-16 Eli Zaretskii <eliz@gnu.org>
11328
11329 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
11330 and st_gid.
11331
11332 * frame.c (Fdelete_frame): Don't call font_update_drivers if
11333 HAVE_WINDOW_SYSTEM is not defined.
11334
11335 * xfaces.c (merge_face_ref, merge_face_vectors)
11336 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
11337 HAVE_WINDOW_SYSTEM is defined.
11338 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
11339
113402008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
11341
11342 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
11343
113442008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11345
11346 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
11347
113482008-05-15 Kenichi Handa <handa@m17n.org>
11349
11350 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
11351 preference.
11352
113532008-05-15 Glenn Morris <rgm@gnu.org>
11354
11355 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
11356
113572008-05-15 Chong Yidong <cyd@stupidchicken.com>
11358
11359 * fns.c (init_fns): Don't initialize weak_hash_tables here.
11360 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
11361
11362 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
11363
113642008-05-15 Kenichi Handa <handa@m17n.org>
11365
11366 * ftfont.c (ftfont_list): Downcase family name to check generic
11367 families.
11368
11369 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
11370 font-spec for QCfont value.
11371
11372 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
11373 buffer. Check the return value of it.
11374
113752008-05-14 Jason Rumney <jasonr@gnu.org>
11376
11377 * w32term.c (w32_get_glyph_overhangs): Remove.
11378 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
11379
113802008-05-14 Kenichi Handa <handa@m17n.org>
11381
11382 * font.c (font_prop_validate): Make nil a valid value.
11383 (font_clear_cache): Check if the cached vector of entities is nil
11384 or not.
11385
113862008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11387
11388 * emacs.c (main_thread): Conditionalize on
11389 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
11390 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
11391
11392 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
11393 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
11394 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
11395
113962008-05-14 Kenichi Handa <handa@m17n.org>
11397
11398 * coding.c (detect_coding_iso_2022): Ignore a coding category that
11399 has no corresponding coding system.
11400
114012008-05-14 Jason Rumney <jasonr@gnu.org>
11402
11403 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
11404
11405 * w32font.h (w32font_open_internal): Update declaration.
11406
11407 * w32font.c (w32font_open_internal): Change last argument from
11408 w32font_info struct to font object. Fill in font object from
11409 font_entity. Get Outline metrics if possible. Use them to
11410 calculate underline position and thickness. Use xlfd name as name
11411 property. Don't set codepage.
11412 (w32font_open): Pass font_object to w32font_open_internal. Don't
11413 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
11414 (w32font_draw): Use s->font.
11415 (clear_cached_metrics): Don't clear non-existent blocks.
11416
11417 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
11418 font was not found.
11419 (x_draw_glyph_string): Use underline position and thickness from font.
11420
11421 * w32uniscribe.c (uniscribe_open): Pass font_object to
11422 w32font_open_internal.
11423
114242008-05-14 Kenichi Handa <handa@m17n.org>
11425
11426 These changes are to delete all legacy font-handling codes, and
11427 make Emacs use only font-backends.
11428
11429 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
11430 (frame.o, image.o, print.o): Depend on $(FONTSRC).
11431
11432 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
11433
11434 * charset.h (Vcharset_non_preferred_head)
11435 (Vcurrent_iso639_language): Extern them.
11436
11437 * charset.c (Vcharset_non_preferred_head): New variable.
11438 (Vcurrent_iso639_language): New variable.
11439 (syms_of_charset): Declare it as a Lisp variable.
11440 (char_charset): Don't check non preferred charsets. As a last
11441 resort, return charset_unicode.
11442 (Fset_charset_priority): Update Vcharset_non_preferred_head.
11443
11444 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
11445 conditionals. Don't check enable_font_backend. Delete all codes
11446 used only when USE_FONT_BACKEND is not defined.
11447
11448 * dispextern.h (struct glyph_string): Change type of `font' to
11449 `struct font *'.
11450 (struct glyph_string): New member underline_position and
11451 underline_thickness.
11452 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
11453 (struct face): Change type of `font' to `struct font *'. Remove
11454 members `font_name', `font_info_id'.
11455 (per_char_metric, encode_char): Delete externs.
11456 (calc_pixel_width_or_height): Adjust the prototype.
11457
11458 * emacs.c (enable_font_backend): Delete extern.
11459 (main): Don't set enable_font_backend. Don't check the command
11460 line argument "-disable-font-backend".
11461
11462 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
11463 (enum font_property_index): New members FONT_DPI_INDEX,
11464 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
11465 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
11466 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
11467 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
11468 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
11469 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
11470 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
11471 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
11472 (struct font_spec, struct font_entity): New structs.
11473 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
11474 (struct font): Many members from old "struct font_info" moved to
11475 here. Members font and entity deleted.
11476 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
11477 the new font-related objects.
11478 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
11479 (CHECK_FONT_GET_OBJECT): Likewise.
11480 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
11481 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
11482 (struct font_driver): New members case_sensitive anc check. Type
11483 of the member list and open changed.
11484 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
11485 (font_symbolic_width, font_find_object, font_get_spec)
11486 (font_set_lface_from_name): Delete extern.
11487 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
11488
11489 * font.c: Include <strings.h>.
11490 (enable_font_backend): Delete it.
11491 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
11492 (CHECK_VALIDATE_FONT_SPEC): Delete it.
11493 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
11494 (null_string): Delete it.
11495 (null_vector): Make it static.
11496 (font_family_alist): Delete it.
11497 (Qnormal): Extern it.
11498 (QCextra, QClanguage): Delete it.
11499 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
11500 (font_make_spec, font_make_entity, font_make_object)
11501 (font_intern_prop): Renamed from intern_downcase. Don't downcase
11502 the string. Callers changed.
11503 (font_pixel_size): Adjusted for the format change of font-related
11504 objects.
11505 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
11506 (font_style_to_value, font_style_symbolic): New function.
11507 (build_font_family_alist): Delete it.
11508 (font_registry_charsets): Use Fassoc_string instead of
11509 assq_no_quit.
11510 (font_prop_validate_symbol): Don't return null_string.
11511 (font_prop_validate_style): Adjusted for the change of
11512 style-related values in a font vector.
11513 (font_property_table): Delete entries for QClanguage and
11514 QCantialias, add entries for QCavgwidth.
11515 (get_font_prop_index): Delete the 2nd argument FROM.
11516 (font_prop_validate): Arguments changed.
11517 (font_put_extra): Adjusted for the change of font-related objects.
11518 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
11519 (font_parse_fcname, font_unparse_fcname)
11520 (font_prepare_composition): Likewise.
11521 (font_parse_family_registry): Renamed from font_merge_old_spec.
11522 (otf_open): Delete the 1st arg entity.
11523 (font_otf_capability): Adjusted for the above change.
11524 (font_score): New arg alternate_families. Adjusted for the change
11525 of font-related objects.
11526 (font_sort_entites): New arg best_only.
11527 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
11528 Delete them.
11529 (font_match_p): Check alternate families.
11530 (font_find_object): Delete it.
11531 (font_check_object): New function.
11532 (font_clear_cache): Adjusted for the change of font-related objects.
11533 (font_delete_unmatched): New arg.
11534 (font_list_entities): Call font_driver->list with a spec that
11535 doesn't specify style-related properties.
11536 (font_matching_entity): Arguments changed. Caller changed.
11537 (font_open_entity): Adjusted for the change of font-related objects.
11538 (font_close_object, font_has_char, font_encode_char)
11539 (font_get_name, font_get_spec): Likewise.
11540 (font_spec_from_name, font_clear_prop, font_update_lface):
11541 New functions.
11542 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
11543 (font_prepare_for_face, font_done_for_face, font_open_by_name)
11544 (font_at): Adjusted for the change of font-related objects.
11545 (font_range): New function.
11546 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
11547 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
11548 (Fcopy_font_spec, Fmerge_font_spec): New function.
11549 (Ffont_family_list): Renamed from list-families.
11550 (Finternal_set_font_style_table): Arguments changed.
11551 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
11552 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
11553 change of font-related objects.
11554 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
11555
11556 * fontset.h (struct font_info): Delete it. Most members go to
11557 struct font.
11558 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
11559 (enum FONT_SPEC_INDEX): Delete it.
11560 (font_info, list_fonts_func, load_font_func, query_font_func)
11561 (set_frame_fontset_func, find_ccl_program_func)
11562 (get_font_repertory_func, new_fontset_from_font_name): Delete
11563 externs.
11564 (fontset_from_font_name): Extern it.
11565 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
11566 (FONT_INFO_FROM_FACE): Deleted.
11567 (face_for_font): Adjust prototype.
11568
11569 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
11570 conditionals. Don't check enable_font_backend. Delete all codes
11571 used only when USE_FONT_BACKEND is not defined.
11572 (get_font_info_func, list_font_func, load_font_func)
11573 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
11574 (get_font_repertory_func): Delete them.
11575 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
11576 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
11577 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
11578 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
11579 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
11580 (fontset_compare_rfontdef): New function.
11581 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
11582 rfont-defs by qsort. Adjusted for the change of font-group vector.
11583 (load_font_get_repertory): Deleted.
11584 (fontset_find_font): Use new macros to ref/set elements of
11585 font-def and rfont-def.
11586 (fontset_font): Fix the timing of remembering that no font for C.
11587 (free_face_fontset): Do nothing if the face has no fontset.
11588 (face_suitable_for_char_p): Use new macros to ref/set elements of
11589 rfont-def.
11590 (face_for_char): Likewise. Call face_for_char with font_object.
11591 (fs_load_font): Delete. Delete #pragma surrounding it.
11592 (fs_query_fontset): Use strcasecmp instead of strcmp.
11593 (generate_ascii_font_name): Adjusted for the format change of
11594 font-spec.
11595 (Fset_fontset_font): Likewise. Use new macros to set elements of
11596 font-def.
11597 (Fnew_fontset): Use font_unparse_xlfd to generate
11598 FONTSET_ASCII (fontset).
11599 (new_fontset_from_font_name): Deleted.
11600 (fontset_from_font): Renamed from new_fontset_from_font. Check if
11601 a fontset is already created for the font. FIx updating of
11602 Vfontset_alias_alist.
11603 (fontset_ascii_font): Deleted.
11604 (Ffont_info): Adjusted for the format change of font-spec.
11605 (Finternal_char_font): Likewise.
11606 (Ffontset_info): Likewise.
11607 (syms_of_fontset): Don't check load_font_func.
11608
11609 * fns.c (internal_equal): Handle PREV_FONT.
11610
11611 * frame.h: Delete USE_FONT_BACKEND conditional.
11612
11613 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
11614 conditionals. Don't check enable_font_backend. Delete all codes
11615 used only when USE_FONT_BACKEND is not defined.
11616 (x_set_font): Call x_new_font, not x_new_fontset2.
11617 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
11618 already set for the frame.
11619
11620 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
11621 a font-entity by font_make_entity. Use font_intern_prop instead
11622 of intern_downcase. Use FONT_SET_STYLE to set a style-related
11623 font property. If a font is scalable, set avgwidth property to 0.
11624 Set font-entity property by font_put_extra.
11625 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
11626 (ffont_driver): Adjusted for the change of struct font_driver.
11627 (ftfont_spec_pattern): New function.
11628 (ftfont_list): Return a list, not vector.
11629 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
11630 (ftfont_list_family): Don't downcase names.
11631 (ftfont_free_entity): Deleted.
11632 (ftfont_open): Return a font-object. Adjusted for the change of
11633 struct font. Get underline_thickness and underline_position from
11634 font property. Don't update dpyinfo->smallest_font_height and
11635 dpyinfo->smallest_char_width.
11636 (ftfont_close): Don't free `struct font'.
11637 (ftfont_has_char): Adjusted for the format change of font-entity.
11638 (ftfont_encode_char, ftfont_text_extents): Likewise.
11639
11640 * ftxfont.c (ftxfont_list): Return a list, not vector.
11641 (ftxfont_open): Return a font-object. Adjusted for the change of
11642 struct font. Get underline_thickness and underline_position from
11643 font property. Don't update dpyinfo->smallest_font_height and
11644 dpyinfo->smallest_char_width.
11645 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
11646 (ftxfont_draw): Adjusted for the change of struct font.
11647
11648 * image.c (image_ascent): Don't include "charset.h". Include
11649 "character.h" and "font.h".
11650
11651 * lisp.h (enum pvec_type): New member PREV_FONT.
11652 (Fassoc_string): EXFUN it.
11653
11654 * print.c: Include font.h.
11655 (print_object): Handle font-related objects.
11656
11657 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
11658 conditionals. Don't check enable_font_backend. Delete all codes
11659 used only when USE_FONT_BACKEND is not defined.
11660 (handle_auto_composed_prop): Do nothing if it->f is not on a
11661 window system. Check how many following characters can be
11662 displayed by the same font.
11663 (calc_pixel_width_or_height): Type of the 4th arg is changed to
11664 'struct font *'.
11665 (get_char_face_and_encoding): Assign the whole encoding task to
11666 the `encode-char' method of a font driver.
11667 (fill_composite_glyph_string): Adjusted for the change of `struct
11668 face' and `struct glyph_string'.
11669 (fill_glyph_string): Likewise.
11670 (get_per_char_metric): Arguments changed.
11671 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
11672 and `struct glyph_string'.
11673 (produce_stretch_glyph, calc_line_height_property)
11674 (x_produce_glyphs): Likewise.
11675
11676 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
11677 conditionals. Don't check enable_font_backend. Delete all codes
11678 used only when USE_FONT_BACKEND is not defined. Use
11679 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
11680 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
11681 (Qp): Extern them.
11682 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
11683 Deleted.
11684 (struct font_name): Deleted.
11685 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
11686 (compare_fonts_by_sort_order): New function.
11687 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
11688 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
11689 Deleted.
11690 (Fx_family_fonts): Use font_list_entities, and sort fonts by
11691 compare_fonts_by_sort_order.
11692 (Fx_font_family_list): Call Ffont_family_list.
11693 (face_numeric_value, face_numeric_weight, face_numeric_slant)
11694 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
11695 (face_symbolic_slant, face_symbolic_swidth)
11696 (split_font_name_into_vector, build_font_name_from_vector)
11697 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
11698 (font_rescale_ratio, split_font_name, build_font_name)
11699 (free_font_names, sort_fonts, x_face_list_fonts)
11700 (face_font_available_p, sorted_font_list, cmp_font_names)
11701 (font_list_1, concat_font_list, font_list, remove_duplicates):
11702 Deleted.
11703 (Fx_list_fonts): Use Ffont_list.
11704 (LFACE_AVGWIDTH): Deleted.
11705 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
11706 by FONTP.
11707 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
11708 (set_lface_from_font_name): Delete it.
11709 (set_lface_from_font): Renamed from
11710 set_lface_from_font_and_fontset. Caller changed. Don't set
11711 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
11712 for face.
11713 (merge_face_vectors): Copy font-spec if necessary.
11714 Clear properties of the font-spec if necessary.
11715 (merge_face_ref): Clear properties of the font-spec if necessary.
11716 (Finternal_set_lisp_face_attribute): Likewise.
11717 (set_font_frame_param): Use font_load_for_lface to load a
11718 font-object, and call Fmodify_frame_parameters with it.
11719 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
11720 font name by Ffont_xlfd_name.
11721 (Finternal_lisp_face_attribute_values): Don't check QCweight,
11722 QCslant, and QCwidth.
11723 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
11724 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
11725 Compare fonts by EQ.
11726 (lookup_non_ascii_face): Deleted.
11727 (face_for_font): The 2nd argument changed.
11728 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
11729 Check atomic font properties by case insensitive.
11730 (realize_non_ascii_face): Set face->overstrike correctly.
11731 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
11732 (dump_realized_face): Get font name from
11733 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
11734
11735 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
11736 conditionals. Don't check enable_font_backend. Delete all codes
11737 used only when USE_FONT_BACKEND is not defined.
11738 (xic_create_xfontset): Original code deleted and renamed from
11739 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
11740 (x_make_gc): Don't set GCFont in GCs.
11741 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
11742 opened by "fixed".
11743 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
11744 find_ccl_program_func, query_font_func, set_frame_fontset_func,
11745 get_font_repertory_func.
11746
11747 * xfont.c: Include <stdlib.h> and "ccl.h".
11748 (struct xfont_info): New structure.
11749 (xfont_query_font): Deleted.
11750 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
11751 moved from xterm.c.
11752 (xfont_driver): Adjusted for the change of struct font_driver.
11753 (compare_font_names): New function.
11754 (xfont_list_pattern): Sort font names case insensitively. Make
11755 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
11756 (xfont_list): Return a list, not vector.
11757 (xfont_match): If the font doesn't have QCname property, generate
11758 a name from the other font properties.
11759 (xfont_open): Return a font-object. Adjusted for the change of
11760 struct font. Get underline_thickness and underline_position from
11761 font property. Don't update dpyinfo->smallest_font_height and
11762 dpyinfo->smallest_char_width.
11763 (xfont_close): Don't free struct font.
11764 (xfont_prepare_face): Adjusted for the change of struct font.
11765 (xfont_done_face): Deleted.
11766 (xfont_has_char): Adjusted for the change of struct font.
11767 (xfont_encode_char, xfont_draw): Likewise.
11768 (xfont_check): New function.
11769
11770 * xftfont.c (xftfont_list): Adjusted for the change of `list'
11771 callback function.
11772 (xftfont_match): Adjusted for the format change of font-entity.
11773 (xftfont_open): Adjusted for the format change of font-entity and
11774 font-object. Adjusted for the change of struct font. Return a
11775 font-object. Don't update dpyinfo->smallest_font_height and
11776 dpyinfo->smallest_char_width.
11777 (xftfont_close): Block input while calling XftFontClose.
11778 (xftfont_prepare_face): Don't block input while calling
11779 xftfont_get_colors. Adjusted for the change of struct font.
11780 (xftfont_shape): Return value of error case fixed.
11781
11782 * xrdb.c (x_load_resources): Don't setup a fontset resource.
11783
11784 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
11785 conditionals.
11786 (FONT_WIDTH): Return (f)->max_width.
11787 (struct x_display_info): Delete member `font'.
11788 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
11789 (x_find_ccl_program, x_get_font_repertory): Delete externs.
11790 (struct x_output): Change type of `font' to `struct font *'.
11791
11792 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
11793 conditionals. Don't check enable_font_backend. Delete all codes
11794 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
11795 (x_per_char_metric, x_encode_char): Deleted.
11796 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
11797 (x_compute_glyph_string_overhangs): Adjusted for the change of
11798 `struct face'.
11799 (x_draw_glyph_string_foreground)
11800 (x_draw_composite_glyph_string_foreground): Likewise.
11801 (x_draw_glyph_string): Likewise. Use font->underline_position and
11802 font->underline_thickness.
11803 (x_new_font): Renamed from x_new_fontset2.
11804 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
11805 (x_check_font): Call `check' method of a font driver.
11806 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
11807 (x_query_font, x_get_font_repertory): Deleted.
11808 (x_find_ccl_program): Renamed and moved to xfont.c.
11809 (x_redisplay_interface): Adjusted for the change of `struct
11810 redisplay_interface'.
11811
11812 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
11813 conditionals. Don't check enable_font_backend. Delete all codes
11814 used only when USE_FONT_BACKEND is not defined. Surround non-used
11815 code by "#ifdef OLD_FONT" and "endif".
11816 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
11817
11818 * w32font.h (struct w32font_info): New member.
11819 (FONT_COMPAT): New macro.
11820 (w32font_open_internal): Prototype adjusted.
11821
11822 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
11823 OLD_FONT" and "endif".
11824
11825 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
11826 conditionals. Don't check enable_font_backend. Delete all codes
11827 used only when USE_FONT_BACKEND is not defined.
11828 (w32font_open): Return a font-object. Make a font-object by
11829 font_make_object. Adjusted for the change of struct w32font_info.
11830 (w32font_close): Don't free struct font. Adjusted for the change
11831 of struct w32font_info.
11832 (w32font_encode_char, w32font_text_extents, w32font_draw):
11833 Adjusted for the change of struct w32font_info.
11834 (w32font_draw): Likewise.
11835 (w32font_list_internal): Return a list, not vector.
11836 (w32font_open_internal): Change the 4th arg to font-object.
11837 Adjusted for the change of struct w32font_info and font-object format.
11838 (add_font_name_to_list): Don't downcase names.
11839 (w32_enumfont_pattern_entity): Make a font-entity by
11840 font_make_entity. Adjusted for the format change of font-entity.
11841 Use FONT_SET_STYLE to set a style-related font property. If a
11842 font is scalable, set avgwidth property to 0. Set font-entity
11843 property by font_put_extra.
11844 (font_matches_spec): Adjusted for the format change of font-entity.
11845 (w32_weight_table, w32_decode_weight): New variables.
11846 (w32_encode_weight): New function.
11847 (fill_in_logfont): Adjusted for the format change of font-spec.
11848 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
11849 weight value.
11850 (w32font_driver): Adjusted for the change of struct font_driver.
11851
11852 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
11853 conditionals. Don't check enable_font_backend. Surround non-used
11854 code by "#ifdef OLD_FONT" and "endif".
11855 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
11856 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
11857
11858 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
11859 conditionals. Don't check enable_font_backend. Delete all codes
11860 used only when USE_FONT_BACKEND is not defined. Surround non-used
11861 code by "#ifdef OLD_FONT" and "endif".
11862
11863 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
11864 (uniscribe_open): Return value changed to font-object.
11865 Adjusted for the format change of font-object.
11866 (uniscribe_otf_capability): Adjusted for the change of struct font.
11867 (add_opentype_font_name_to_list): Don't downcase names.
11868 (uniscribe_font_driver): Adjusted for the change of struct
11869 font_driver.
11870
118712008-05-13 Chong Yidong <cyd@stupidchicken.com>
11872
11873 * dispnew.c (update_frame_1): Check if tty output is still valid
11874 before flushing it.
11875
118762008-05-13 Jan Djärv <jan.h.d@swipnet.se>
11877
11878 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
11879 to Gtk+ menus.
11880
118812008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
11882
11883 * dired.c (file_name_completion): Tweak the code so as to always do it
11884 in a single pass. Tighten the scope of some variables.
11885
11886 * dired.c (Qdefault_directory): New var.
11887 (file_name_completion): Use it instead of Fexpand_file_name.
11888 (syms_of_dired): Initialize it.
11889
118902008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
11891
11892 * fileio.c (double_dollars): Remove dead code.
11893
118942008-05-10 Eli Zaretskii <eliz@gnu.org>
11895
11896 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
11897 Mention w32-get-true-file-attributes in doc string.
11898
11899 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
11900
119012008-05-09 Glenn Morris <rgm@gnu.org>
11902
11903 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
11904 2008-04-23.
11905
119062008-05-09 Eli Zaretskii <eliz@gnu.org>
11907
11908 Support for reporting owner and group of each file on MS-Windows:
11909 * dired.c (stat_uname, stat_gname): New functions, with special
11910 implementation for w32.
11911 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
11912
11913 * w32.c: Rename the_passwd_* to dflt_passwd_*.
11914 (dflt_group_name): New static variable.
11915 (dflt_group): Rename from the_group.
11916 (init_user_info): Init dflt_group fields. Get user's group name
11917 from LookupAccountSid.
11918 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
11919 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
11920 New initialization states.
11921 (globals_of_w32): Initialize them to zero. Initialize the default
11922 group name to "None".
11923 (GetFileSecurity_Name): New global var, the name of the function
11924 to call for GetFileSecurity.
11925 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
11926 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
11927 (get_file_security, get_security_descriptor_owner)
11928 (get_security_descriptor_group, is_valid_sid)
11929 (get_file_security_desc, get_rid, get_name_and_id)
11930 (get_file_owner_and_group): New functions.
11931 (stat): Use get_file_security_desc and get_file_owner_and_group to
11932 report the owner and primary group of each file. Don't ignore the
11933 high 32 bits of file's size, now that st_size is 64-bit wide.
11934 Fix test when to get true file attributes.
11935 (init_user_info): Use get_rid instead of equivalent inline code.
11936 (fstat): Don't ignore the high 32 bits of file's size.
11937
119382008-05-09 Chong Yidong <cyd@stupidchicken.com>
11939
11940 * image.c (png_load): Use correct bit-depth for setting background
11941 color.
11942
119432008-05-08 Eli Zaretskii <eliz@gnu.org>
11944
11945 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
11946 epa-hook.elc.
11947
119482008-05-08 Juanma Barranquero <lekktu@gmail.com>
11949
11950 * font.c (Ffont_match_p): Don't use `iff' in docstring.
11951
119522008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
11953
11954 * macfns.c (Fx_create_frame): Make a copy of frame parameters
11955 because the original parameters are in pure storage now.
11956 (mac_window): Remove unused params. Update callers.
11957
119582008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
11959
11960 * lread.c (substitute_object_recurse): Use lower-level primitives.
11961 Don't signal errors when traversing sub-char-tables.
11962 Don't loop over all the possible characters when traversing char-tables.
11963
11964 * print.c (print_preprocess): Add sub-char-tables to the print-table,
11965 just like we do in print.c.
11966
119672008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
11968
11969 * minibuf.c (Ftry_completion): Remove code left over from when we used
11970 scmp instead of Fcompare_strings.
11971
119722008-05-04 Juanma Barranquero <lekktu@gmail.com>
11973
11974 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
11975
119762008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11977
11978 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
11979 Create bitmap context in native byte order.
11980
11981 * macterm.c (XDrawLine)
11982 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
11983 context in native byte order.
11984
119852008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11986
11987 * config.in: Regenerate.
11988
11989 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
11990 New definitions for Image I/O support.
11991 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
11992 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
11993 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
11994 (mac_data_provider_release_data, image_load_image_io)
11995 [USE_MAC_IMAGE_IO]: New functions.
11996 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
11997 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
11998 (init_image_func_pointer) [MAC_OSX]: Remove function.
11999 (image_load_quartz2d) [MAC_OSX]: Check availability of
12000 CGImageCreateWithPNGDataProvider at compile time.
12001 Use lowercase `false' for boolean constant.
12002 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
12003 Use image_load_image_io.
12004 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
12005 Don't check MyCGImageCreateWithPNGDataProvider.
12006 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
12007 Don't call init_image_func_pointer.
12008
12009 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
12010
12011 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
12012 Make variable non-static.
12013 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
12014 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12015
12016 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
12017 (RED_FROM_ULONG): Mask off higher bits.
12018 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
12019
12020 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
12021 Include AvailabilityMacros.h.
12022 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
12023 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
12024
120252008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
12026
12027 * chartab.c (Fset_char_table_range): If range is t, really set all
12028 chars to that value.
12029
120302008-05-03 Eli Zaretskii <eliz@gnu.org>
12031
12032 * dired.c (Ffile_attributes): Don't allow the device number become
12033 negative.
12034
120352008-05-02 Daiki Ueno <ueno@unixuser.org>
12036
12037 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
12038
120392008-05-02 Juri Linkov <juri@jurta.org>
12040
12041 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
12042 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
12043 DEFAULT argument as a list of default values in docstrings.
12044
120452008-05-01 Chong Yidong <cyd@stupidchicken.com>
12046
12047 * puresize.h (BASE_PURESIZE): Increase to 1210000.
12048
120492008-05-01 Martin Rudalics <rudalics@gmx.at>
12050
12051 * dispnew.c (change_frame_size_1): Preserve small windows when
12052 shrinking frames by calling set_window_height|width with third
12053 arg 2.
12054
12055 * window.h (struct window): Replace field too_small_ok by field
12056 resize_proportionally.
12057
12058 * window.c (make_window): Initialize resize_proportionally.
12059 (enlarge_window): Temporarily set resize_proportionally to make
12060 sure that shrink_windows does scale the window proportionally.
12061 (shrink_windows): When window has resize_proportionally set try
12062 to shrink it proportionally by stealing from other windows.
12063 (struct saved_window, Fset_window_configuration)
12064 (compare_window_configurations): Handle resize_proportionally.
12065 (WINDOW_TOTAL_SIZE): New macro.
12066 (window_min_size, shrink_windows, size_window): Use it.
12067 (check_min_window_sizes): Remove. Invalid values of
12068 window-min-height|width are handled by window_min_size_2 now.
12069 (size_window, Fsplit_window, enlarge_window)
12070 (adjust_window_trailing_edge, grow_mini_window): Don't call
12071 check_min_window_sizes.
12072 (window_min_size_2, window_min_size_1, window_min_size):
12073 New argument safe_p for retrieving "safe" minimum sizes.
12074 (Fdisplay_buffer, Fsplit_window, enlarge_window)
12075 (adjust_window_trailing_edge, grow_mini_window):
12076 Adjust arguments of window_min_size... functions.
12077 (shrink_windows): Argument min_size removed. New argument
12078 safe_p allows shrinking windows to their safe minimum sizes.
12079 Calculate minimum size and decide whether a window shall be
12080 deleted for each window individually.
12081 (size_window): When nodelete_p equals 2, tell shrink_windows to
12082 delete windows only if their new minimum size is no more safe.
12083 (shrink_window_lowest_first): Call window_min_size_1 to make
12084 sure to preserve modeline of bottom-most window when resizing
12085 the minibuffer.
12086 (Fset_window_configuration, Fcurrent_window_configuration)
12087 (compare_window_configurations): Do not handle
12088 window-min-height|width any more.
12089 (syms_of_window): Clarify window-min-height|width doc-strings.
12090
120912008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
12092
12093 * dired.c (file_name_completion): Fix up the encoding/decoding issue
12094 some more. Copy some of the code from Ftry_completions.
12095 Remove special case code that dates back to initial revision when the
12096 slash was only added when necessary and that can't trigger nowadays.
12097
120982008-04-27 Kenichi Handa <handa@m17n.org>
12099
12100 * font.c (font_prop_validate): Signal `error' instead of `font'.
12101
121022008-04-29 Jason Rumney <jasonr@gnu.org>
12103
12104 * w32fns.c (Fw32_battery_status): New defun.
12105 (syms_of_w32fns): Defsubr it.
12106
121072008-04-28 Andreas Schwab <schwab@suse.de>
12108
12109 * dired.c (file_name_completion): Fix another mixing of encoded
12110 and decoded names.
12111
121122008-04-28 Juanma Barranquero <lekktu@gmail.com>
12113
12114 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
12115
121162008-04-27 Juanma Barranquero <lekktu@gmail.com>
12117
12118 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
12119
121202008-04-27 Andreas Schwab <schwab@suse.de>
12121
12122 * dired.c (file_name_completion): Fix inappropriate mixing of
12123 encoded and decoded names.
12124
12125 * xterm.c (XTread_socket): Fix use of uninitialized variable.
12126
12127 * puresize.h (BASE_PURESIZE): Increase to 1200000.
12128
121292008-04-26 Eli Zaretskii <eliz@gnu.org>
12130
12131 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
12132 2008-03-31, it's not needed anymore with `struct stat' definition
12133 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
12134 for the same reasons.
12135
121362008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
12137
12138 * m/sparc.h: Additional redefinitions for GNU/Linux.
12139
121402008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12141
12142 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
12143 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
12144 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
12145 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
12146 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
12147 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
12148 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
12149 Likewise.
12150
12151 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
12152 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
12153 (mac_ax_number_of_characters): Add externs.
12154 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
12155 [USE_MAC_TSM]: Likewise.
12156 (mac_handle_text_input_event) [MAC_OSX]:
12157 Handle kEventTextInputOffsetToPos for no active input area case.
12158 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
12159 (mac_handle_document_access_event)
12160 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
12161 (install_application_handler) [MAC_OSX]: Register handlers for
12162 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
12163 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
12164 Register mac_handle_document_access_event.
12165
12166 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
12167 Make functions non-static.
12168
121692008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
12170
12171 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
12172 (read_file_name_completion_ignore_case, insert_default_directory)
12173 (Qdefault_directory): Move to minibuffer.el.
12174 (Fread_file_name): Call the new `read-file-name' instead.
12175
121762008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12177
12178 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
12179 Make function non-static.
12180 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
12181 Remove function.
12182 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
12183 Move to mactoolbox.c.
12184 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
12185
12186 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
12187 (mac_rect_make): New macro.
12188
12189 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
12190 instead of float.
12191 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
12192 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
12193 (XSetBackground) [USE_CG_DRAWING]: Likewise.
12194 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
12195 CGRectMake.
12196 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
12197 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
12198 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
12199 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
12200 instead of WindowRef in argument type.
12201 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
12202 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
12203 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
12204 instead of DISPLAY. All uses changed.
12205 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
12206 (x_calc_absolute_position): Simplify so as not to use
12207 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
12208
12209 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
12210 instead of WindowRef in argument type.
12211 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
12212 [TARGET_API_MAC_CARBON]: Remove externs.
12213 (create_apple_event, mac_event_parameters_to_lisp)
12214 [TARGET_API_MAC_CARBON]: Add externs.
12215
12216 * mactoolbox.c (Vmac_ts_script_language_on_focus)
12217 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
12218 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
12219 is clicked.
12220 (x_activate_menubar): Remove extern for saved_menu_event_location.
12221 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
12222 Move from mac.c.
12223
122242008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12225
12226 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
12227 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
12228
122292008-04-23 Jason Rumney <jasonr@gnu.org>
12230
12231 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
12232 attributes only for local files.
12233
12234 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
12235 default to Qlocal.
12236
122372008-04-22 Juri Linkov <juri@jurta.org>
12238
12239 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
12240 read-buffer-to-switch instead of using the letter "B".
12241
122422008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
12243
12244 * fileio.c (Qdefault_directory): New variable.
12245 (Fread_file_name): Use it to pass `dir' to the completion functions.
12246
122472008-04-20 Chong Yidong <cyd@stupidchicken.com>
12248
12249 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
12250
122512008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
12252
12253 * keyboard.c (Vpre_help_message): Remove.
12254 (show_help_echo): Remove default C code.
12255
12256 * dired.c (directory_files_internal, file_name_completion):
12257 Only call ENCODE_FILE if the string is indeed decoded.
12258
122592008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
12260
12261 * Makefile.in (TOOLKIT_DEFINES): Remove.
12262 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
12263
122642008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12265
12266 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
12267 (mactoolbox.o): New target.
12268
12269 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
12270 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
12271
12272 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
12273 Use mac_set_frame_window_background instead of XSetWindowBackground.
12274 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
12275 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
12276 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
12277 instead of SetWindowTitleWithCFString.
12278 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
12279 Move function to mactoolbox.c.
12280 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
12281 Use mac_set_window_modified instead of SetWindowModified.
12282 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
12283 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
12284 (Fx_focus_frame): Use mac_front_non_floating_window instead of
12285 FrontNonFloatingWindow. Use mac_activate_window instead of
12286 ActivateWindow. Use mac_active_non_floating_window instead of
12287 ActiveNonFloatingWindow.
12288 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
12289 Use mac_show_hourglass and mac_hide_hourglass.
12290 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
12291 instead of GetGlobalMouse.
12292 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
12293 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
12294 Use mac_bring_window_to_front instead of BringToFront.
12295 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
12296 mactoolbox.c.
12297 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
12298 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
12299 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
12300 mactoolbox.c.
12301
12302 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
12303 (XtPointer): Move typedef from macmenu.c.
12304 (enum button_type): Move enum from macmenu.c.
12305 (widget_value): Move typedef from macmenu.c.
12306 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
12307 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
12308 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
12309 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
12310 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
12311 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
12312 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
12313 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
12314 (Selection): Move typedef from macselect.c.
12315 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
12316 macterm.c.
12317 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
12318 (mac_is_window_collapsed, mac_bring_window_to_front)
12319 (mac_send_window_behind, mac_hide_window, mac_show_window)
12320 (mac_collapse_window, mac_front_non_floating_window)
12321 (mac_active_non_floating_window, mac_activate_window)
12322 (mac_move_window_structure, mac_move_window, mac_size_window)
12323 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
12324
12325 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
12326 (enum mac_menu_kind): Move enum to mactoolbox.c.
12327 (min_menu_id): Move variable to mactoolbox.c.
12328 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
12329 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
12330 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
12331 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
12332 [TARGET_API_MAC_CARBON]: Likewise.
12333 (XtPointer): Move typedef to macgui.h.
12334 (enum button_type): Move enum to macgui.h.
12335 (widget_value): Move typedef to macgui.h.
12336 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
12337 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
12338 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
12339 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
12340 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
12341 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
12342 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
12343 (popup_activated_flag): Make variable non-static.
12344 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
12345 (add_menu_item, fill_menu, dispose_menus):
12346 Move functions to mactoolbox.c.
12347 (restore_show_help_function, menu_target_item_handler)
12348 (install_menu_target_item_handler, mac_handle_dialog_event)
12349 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
12350 [TARGET_API_MAC_CARBON]: Likewise.
12351 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
12352 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
12353 (find_and_call_menu_selection, name_is_separator): Make function
12354 non-static.
12355 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
12356 to mactoolbox.c.
12357 (set_frame_menubar): Don't call install_menu_quit_handler.
12358 (menu_item_selection): New variable.
12359 (mac_menu_show): Use create_and_show_popup_menu.
12360 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
12361 selection but set variable menu_item_selection. All uses changed.
12362 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
12363 Call install_menu_quit_handler. Move to mactoolbox.c.
12364
12365 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
12366 (Selection): Move typedef to macgui.h.
12367 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
12368 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
12369 Make variables non-static.
12370 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
12371 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
12372 Make functions non-static.
12373 (Vmac_service_selection) [MAC_OSX]: Likewise.
12374 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
12375 (mac_valid_selection_target_p, mac_clear_selection)
12376 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
12377 (mac_put_selection_value, mac_selection_has_target_p)
12378 (mac_get_selection_value, mac_get_selection_target_list)
12379 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
12380 Move functions to mactoolbox.c.
12381 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
12382 Likewise.
12383 (copy_scrap_flavor_data, mac_handle_service_event)
12384 (install_service_handler) [MAC_OSX]: Likewise.
12385 (syms_of_macselect) <Vmac_dnd_known_types>:
12386 Use mac_dnd_default_known_types.
12387
12388 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
12389 Move to mactoolbox.c.
12390 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
12391 (Fx_selection_owner_p): Add EXFUN.
12392 (install_window_handler, remove_window_handler, XSetWindowBackground):
12393 Remove externs.
12394 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
12395 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
12396 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
12397 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
12398 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
12399 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
12400 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
12401 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
12402 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
12403 (create_and_show_popup_menu, mac_get_selection_from_symbol)
12404 (mac_valid_selection_target_p, mac_clear_selection)
12405 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
12406 (mac_put_selection_value, mac_selection_has_target_p)
12407 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
12408 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
12409 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
12410 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
12411 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
12412 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
12413 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
12414 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
12415 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
12416
12417 * mactoolbox.c: New file.
12418
124192008-04-18 Jason Rumney <jasonr@gnu.org>
12420
12421 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
12422
124232008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
12424
12425 * character.c (Fmultibyte_char_to_unibyte):
12426 Return latin1 chars unchanged.
12427
12428 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
12429 relocated if it points to `name'.
12430
124312008-04-17 Kenichi Handa <handa@m17n.org>
12432
12433 * data.c (Faset): Allow setting a multibyte character in an
12434 ASCII-only unibyte string.
12435
12436 * lisp.h (STRING_SET_MULTIBYTE): New macro.
12437
124382008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
12439
12440 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
12441 done in config.h.
12442
124432008-04-16 Juanma Barranquero <lekktu@gmail.com>
12444
12445 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
12446 (Fchar_direction): Add usage in the docstring.
12447
124482008-04-15 Chong Yidong <cyd@stupidchicken.com>
12449
12450 * keyboard.c (read_key_sequence): Remove always-true checks.
12451
124522008-04-14 Jason Rumney <jasonr@gnu.org>
12453
12454 * w32font.c (w32font_open_internal): Set max_bounds.descent in
12455 compatibility struct, for better underline positioning.
12456
124572008-04-13 David Hansen <david.hansen@gmx.net>
12458
12459 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
12460 string.
12461
124622008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
12463
12464 * m/hp800.h (XUINT, XSET): Remove.
12465
124662008-04-12 Juanma Barranquero <lekktu@gmail.com>
12467
12468 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
12469 previous change.
12470
124712008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
12472
12473 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
12474 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
12475
124762008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
12477
12478 * keymap.h (map_keymap_canonical): Declare.
12479 * xmenu.c (single_keymap_panes): Use it.
12480
124812008-04-11 Glenn Morris <rgm@gnu.org>
12482
12483 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
12484 set the target's value to that of the alias.
12485
124862008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
12487
12488 * term.c (set_tty_color_mode): Left over typo.
12489
124902008-04-10 Michael Albinus <michael.albinus@gmx.de>
12491
12492 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
12493 only after check for file name handler functions. Signal, when
12494 native functionality is not supported.
12495 (syms_of_fileio): Declare it unconditionally.
12496
124972008-04-10 Jason Rumney <jasonr@gnu.org>
12498
12499 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
12500 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
12501
12502 * w32.c (logon_network_drive): Also logon to remote drives that
12503 are mapped to drive letters.
12504
125052008-04-10 Glenn Morris <rgm@gnu.org>
12506
12507 * xdisp.c (truncate-partial-width-windows): Doc fix.
12508
125092008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
12510
12511 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
12512 Move functions to minibuffer.el.
12513 (syms_of_fileio): Don't declare them.
12514
125152008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
12516
12517 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
12518 (syms_of_minibuf): Remove its initialization.
12519
12520 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
12521
125222008-04-09 Juanma Barranquero <lekktu@gmail.com>
12523
12524 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
12525
125262008-04-09 Jason Rumney <jasonr@gnu.org>
12527
12528 * makefile.w32-in (distclean): Delete makefile too.
12529 (maintainer-clean): New target.
12530
12531 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
12532
12533 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
12534 for new font backend and composite cases.
12535
125362008-04-09 Jan Djärv <jan.h.d@swipnet.se>
12537
12538 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
12539 Most of the code moved to run_timers.
12540 (do_pending_atimers): Call run_timers.
12541 (run_timers): New function.
12542
12543 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
12544 run atimers.
12545
12546 * process.c (wait_reading_process_output): The same as above.
12547
125482008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
12549
12550 * minibuf.c (last_exact_completion): Remove variable.
12551 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
12552 (complete_and_exit_1, complete_and_exit_2)
12553 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
12554 (Fdisplay_completion_list, display_completion_list_1)
12555 (Fminibuffer_completion_help, Fself_insert_and_exit)
12556 (Fexit_minibuffer, Fminibuffer_message): Move functions to
12557 minibuffer.el.
12558 (syms_of_minibuf): Remove corresponding initializations.
12559
12560 * keyboard.c (Qdeactivate_mark): New var.
12561 (command_loop_1): Use it to call `deactivate-mark'.
12562 (syms_of_keyboard): Initialize it.
12563
12564 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
12565 to another frame.
12566 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
12567 Don't call set_tty_color_mode.
12568 (store_frame_param): Reset previous_frame rather than call
12569 set_tty_color_mode.
12570 * term.c (set_tty_color_mode): Rewrite.
12571 * dispextern.h (set_tty_color_mode): New type.
12572 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
12573
125742008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
12575
12576 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
12577 for generic chars, which do not exist any more in emacs-unicode.
12578
125792008-04-08 Michael Albinus <michael.albinus@gmx.de>
12580
12581 * coding.c (detect_coding_emacs_mule)
12582 (Ffind_operation_coding_system): Fix typo.
12583
125842008-04-08 Jason Rumney <jasonr@gnu.org>
12585
12586 * w32uniscribe.c (SNAME): Extract only symbol name.
12587
12588 * w32font.h (struct w32_metric_cache): New struct.
12589 (w32font_info): Use it.
12590 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
12591 (CACHE_BLOCKSIZE): New constants.
12592
12593 * w32font.c (Qja, Qko, Qzh): New symbols.
12594 (syms_of_w32font): Initialise them.
12595 (font_matches_spec): Use them to filter by language.
12596 (recompute_cached_metrics): Remove function.
12597 (compute_metrics, clear_cached_metrics): New functions.
12598 (w32font_encode_char): Use them to manage metric cache.
12599 (w32font_text_extents): Cache metrics for all glyphs on demand.
12600 Delay converting glyph indices to WORD until needed.
12601 (w32font_open_internal): Initialize metric cache to empty.
12602 (registry_to_w32_charset): Charset should always be a symbol.
12603 (fill_in_logfont, list_all_matching_fonts): Family should
12604 always be a symbol.
12605
126062008-04-06 Jason Rumney <jasonr@gnu.org>
12607
12608 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
12609 Give up if glyph indices not supported. Use uniscribe obtained
12610 ABC widths for individual metrics. Map glyph clusters back to
12611 characters using fClusterStart flag. Return number of glyphs
12612 produced, not chars processed.
12613 (uniscribe_shape): Map char at FROM to current glyph.
12614
126152008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12616
12617 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
12618 Use SetMenuItemHierarchicalMenu.
12619
126202008-04-05 Jason Rumney <jasonr@gnu.org>
12621
12622 * image.c (pbm_load): Allow color values up to 65535.
12623 Throw an error if max_color_idx is outside the supported range.
12624 Report an error when image size is invalid.
12625 Read two bytes at a time when raw images have max_color_idx above 255.
12626
126272008-04-05 Eli Zaretskii <eliz@gnu.org>
12628
12629 * w32.c (readdir): If FindFirstFile/FindNextFile return in
12630 cFileName a file name that includes `?' characters, use the 8+3
12631 alias in cAlternateFileName instead.
12632
126332008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
12634
12635 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
12636 append "CCL: Quitted" when the CCL program is quitted.
12637 (setup_ccl_program): Initialize ccl->quit_silently to zero.
12638
12639 * ccl.h (struct ccl_program): New member quit_silently.
12640
126412008-04-05 Chong Yidong <cyd@stupidchicken.com>
12642
12643 * search.c (compile_pattern_1): Treat non-nil and non-string of
12644 search-spaces-regexp as nil.
12645
12646 * minibuf.c (Fassoc_string): Tweak docstring.
12647
126482008-04-05 Eli Zaretskii <eliz@gnu.org>
12649
12650 * dired.c (Ffile_attributes): Support inode numbers wider than 32
12651 bits. Remove ugly WINDOWSNT-specific kludge introduced on
12652 2008-03-14 to force inode be positive.
12653
12654 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
12655 _S_* ones, since we now use our own sys/stat.h.
12656 (stat, fstat): Don't mangle the inode number.
12657 (init_user_info): Don't restrict UID and GID to 0-60000 range.
12658
126592008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
12660
12661 * frame.h (struct frame): Give one more bit to `visible' since we use
12662 values larger than 1 to indicate obscured frames on ttys.
12663
12664 * keymap.c (Qkeymap_canonicalize): New var.
12665 (Fmap_keymap_internal): New fun.
12666 (describe_map): Use keymap-canonicalize.
12667
12668 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
12669 (Fundo_boundary): Set them.
12670 (syms_of_undo): Initialize them.
12671 (record_point): Use them instead of last_point_position*.
12672 (last_undo_buffer): Change type.
12673
126742008-04-04 Jason Rumney <jasonr@gnu.org>
12675
12676 * w32font.c (w32font_text_extents): Use font's ascent and descent.
12677 (recompute_cached_metrics): Don't set ascent and descent per char.
12678
12679 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
12680 (uniscribe_check_otf): Add GC protection before consing.
12681 Rearrange loop for counting features.
12682
126832008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
12684
12685 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
12686 buffer with byte-size of source buffer.
12687
126882008-04-03 Chong Yidong <cyd@stupidchicken.com>
12689
12690 * callint.c (Fcall_interactively): Handle temporary region even
12691 when shift-select-mode is off.
12692
126932008-04-03 Jason Rumney <jasonr@gnu.org>
12694
12695 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
12696
126972008-04-03 Kenichi Handa <handa@m17n.org>
12698
12699 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
12700 (CATEGORY_MASK_UTF_16): Likewise.
12701 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
12702 binary file.
12703 (detect_coding): Add null-byte detection for a binary file.
12704 (detect_coding_system): Likewise.
12705
127062008-04-03 Jason Rumney <jasonr@gnu.org>
12707
12708 * w32uniscribe.c: New file.
12709
12710 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
12711
12712 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
12713
12714 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
12715 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
12716 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
12717 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
12718 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
12719 (Qphonetic): New symbols.
12720 (syms_of_w32font): Initialize them.
12721 (font_supported_scripts): Use them.
12722 (w32font_list_family): List all charsets.
12723 (w32font_text_extents, recompute_cached_metrics): Fix metric
12724 calculations.
12725 (w32_enumfont_pattern_entity): Make full_type a DWORD.
12726 Give opentype fonts their own format.
12727 (font_matches_spec): New arguments backend and logfont.
12728 Handle :otf spec for uniscribe backend.
12729 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
12730 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
12731
12732 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
12733 font backend.
12734 (globals_of_w32fns): Initialize uniscribe font backend.
12735
12736 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
12737 dependencies.
12738 (w32uniscribe.$(O)): New file to build.
12739 (FONT_OBJ): Include w32uniscribe.$(O).
12740 (LIBS): Add uniscribe libraries.
12741
12742 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
12743
127442008-04-02 Chong Yidong <cyd@stupidchicken.com>
12745
12746 * callint.c (Vshift_select_mode): New var.
12747 (Finteractive): Document new ^ spec.
12748 (Fcall_interactively): Call handle-shift-selection if the ^ spec
12749 is present.
12750
12751 * keyboard.c (Vthis_command_keys_shift_translated): New var.
12752 (command_loop_1): Avoid running the direct display versions of
12753 forward-char and backward-char if shift-selection may occur.
12754 (read_key_sequence): Set Vthis_command_keys_shift_translated if
12755 shift-translation takes place.
12756
12757 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
12758 avoid clobbering by define-minor-mode.
12759
12760 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
12761 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
12762
12763 * syntax.c (Fforward_word): Add ^ interactive spec.
12764
12765 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
12766 (Fscroll_right): Add ^ interactive spec.
12767
127682008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
12769
12770 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
12771
12772 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
12773
12774 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
12775
127762008-03-31 Juri Linkov <juri@jurta.org>
12777
12778 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
12779
127802008-03-30 Jan Djärv <jan.h.d@swipnet.se>
12781
12782 * gtkutil.c (xg_set_geometry): Fix indentation.
12783 (xg_resize_outer_widget): Remove.
12784 (x_wm_size_hint_off): Fix indentation.
12785 (xg_frame_set_char_size): Call flush_and_sync after
12786 gtk_window_resize.
12787 (x_wm_set_size_hint): Pass NULL as geometry window to
12788 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
12789 Add menu bar and tool bar height to base height.
12790 (xg_update_frame_menubar, free_frame_menubar)
12791 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
12792 (update_frame_tool_bar, free_frame_tool_bar):
12793 Change xg_resize_outer_widget to xg_frame_set_char_size.
12794
127952008-03-30 Michael Albinus <michael.albinus@gmx.de>
12796
12797 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
12798 (Fdbus_call_method): New parameter TIMEOUT.
12799 (dbus-send-signal): Optimize UNGCPRO call.
12800
128012008-03-29 Juri Linkov <juri@jurta.org>
12802
12803 * window.c (Fdisplay_buffer): Move call to
12804 Vsplit_window_preferred_function out of conditions that check
12805 if window is eligible for vertical splitting.
12806 When Vsplit_window_preferred_function is non-nil, call it and use
12807 its non-nil return value as window. Otherwise, continue doing
12808 vertical splitting using Fsplit_window with arg horflag=nil.
12809 (syms_of_window) <Vsplit_window_preferred_function>: Change the
12810 default value from `split-window' to nil.
12811
128122008-03-29 Juri Linkov <juri@jurta.org>
12813
12814 * callint.c (Fcall_interactively): Revert 2008-03-16 change
12815 for interactive code letters 'b' and 'B'.
12816
128172008-03-29 Eli Zaretskii <eliz@gnu.org>
12818
12819 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
12820 multibyte string.
12821
128222008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
12823
12824 * keyboard.c (pending_funcalls): New var.
12825 (timer_check): Run it.
12826 (syms_of_keyboard): Initialize it.
12827 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
12828 (Vdelete_terminal_functions): New vars.
12829 (syms_of_terminal): Initialize them.
12830 (Fdelete_terminal): Run delete-terminal-functions.
12831 * xdisp.c (safe_eval): Rewrite.
12832 (safe_call2): New fun.
12833 * frame.c (Qdelete_frame_functions): New var.
12834 (syms_of_frame): Initialize it.
12835 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
12836 * lisp.h (safe_call2, pending_funcalls): Declare.
12837
128382008-03-28 Andreas Schwab <schwab@suse.de>
12839
12840 * indent.c (Fmove_to_column): Move declaration before statements.
12841
128422008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
12843
12844 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
12845 (struct frame): Use bit fields for boolean vars.
12846
12847 * process.c (server_accept_connection): Simplify naming.
12848 (emacs_get_tty_pgrp): Use SDATA.
12849
12850 * coding.c (decode_coding_object): Fix last change.
12851
128522008-03-27 Jason Rumney <jasonr@gnu.org>
12853
12854 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
12855
128562008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
12857
12858 * charset.c (Fdefine_charset_internal): Change the way of
12859 registering charsets in Vcharset_order_list.
12860 (syms_of_charset): Make the charset `eight-bit' supplementary.
12861
128622008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
12863
12864 * regex.c (EXTEND_BUFFER): Change order of pointer addition
12865 operations, to avoid having the difference between pointers
12866 overflow.
12867
128682008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
12869
12870 * indent.c (check_display_width): New fun.
12871 (scan_for_column): Use it.
12872
12873 * data.c (syms_of_data): Mark most-positive-fixnum and
12874 most-negative-fixnum as constants.
12875
12876 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
12877
12878 * indent.c (scan_for_column): Extract from current_column_1.
12879 Merge with the same code from Fmove_to_column.
12880 (current_column_1, Fmove_to_column): Use it.
12881
128822008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
12883
12884 * keymap.c (map_keymap_internal): New fun.
12885 (map_keymap): Use it.
12886 (Fmap_keymap_internal): New fun.
12887 (Fmap_keymap): Remove left-out test from before make_save_value.
12888
12889 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
12890
12891 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
12892 Use XCAR/XCDR.
12893
12894 * process.h (struct Lisp_Process): Remove filter_multibyte.
12895 * process.c (QCfilter_multibyte): Remove.
12896 (setup_process_coding_systems): Don't use filter_multibyte.
12897 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
12898 (read_process_output): Don't adjust multibyteness to filter_multibyte.
12899 (Fset_process_filter_multibyte): Change the coding-system to
12900 approximate the previous behavior.
12901 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
12902 coding-system.
12903
12904 * coding.c (decode_coding_object): When not decoding into a buffer,
12905 obey the coding system's preference of (uni|multi)byte.
12906
129072008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
12908
12909 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
12910 every char is changed and has a different byte-length.
12911 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
12912 Fix int -> EMACS_INT.
12913
129142008-03-23 David Hansen <david.hansen@gmx.net>
12915
12916 * dbusbind.c (xd_read_message): Remove extra copying of message
12917 strings. Check for NULL `interface' or `member'.
12918
129192008-03-22 Eli Zaretskii <eliz@gnu.org>
12920
12921 * w32.c (readdir): If FindFirstFile/FindNextFile return in
12922 cFileName a file name that includes `?' characters, use the 8+3
12923 alias in cAlternateFileName instead.
12924
129252008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
12926
12927 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
12928
129292008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
12930
12931 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
12932 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
12933 work on current_buffer only instead (that was already the case
12934 for some of the code anyway).
12935 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
12936 (temp_set_point, temp_set_point_both): Use EMACS_INT.
12937 (SET_PT, SET_PT_BOTH): Adjust.
12938 * intervals.h (set_point, temp_set_point, set_point_both)
12939 (temp_set_point_both): Remove redundant declarations.
12940
129412008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
12942
12943 * fileio.c (Finsert_file_contents):
12944 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
12945 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
12946 when buffer != current_buffer anyway.
12947
129482008-03-20 Andreas Schwab <schwab@suse.de>
12949
12950 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
12951 as default.
12952
129532008-03-19 Jason Rumney <jasonr@gnu.org>
12954
12955 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
12956 (syms_of_w32fns): Initialize them.
12957 (HOURGLASS_ID): New constant.
12958 (x_window_to_frame): Don't check hourglass_window.
12959 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
12960 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
12961 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
12962 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
12963 Only change the cursor if hourglass is not active.
12964 (Fx_create_frame): Initialize frame's current_cursor.
12965 (hourglass_atimer): Remove.
12966 (hourglass_started): New function.
12967 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
12968 (show_hourglass): Adapt to w32, changing argument to frame.
12969
12970 * w32term.h (struct w32_output): Remove hourglass_window.
12971 Add current_cursor.
12972
12973 * eval.c (call_debugger, Fsignal):
12974 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
12975 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
12976 (Fexecute_extended_command, cancel_hourglass_unwind):
12977 * minibuf.c (read_minibuf):
12978 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
12979
129802008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
12981
12982 * window.c (run_funs): New fun.
12983 (run_window_configuration_change_hook): Use it to run the buffer-local
12984 and the global part of the hook.
12985
12986 * xdisp.c (format_mode_line_unwind_data): Add window argument.
12987 (unwind_format_mode_line): Restore selected window.
12988 (x_consider_frame_title, Fformat_mode_line): Set selected window.
12989
129902008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
12991
12992 * editfns.c (Fchar_equal): Check they are valid characters.
12993
12994 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
12995
129962008-03-17 Andreas Schwab <schwab@suse.de>
12997
12998 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
12999 against a charset.
13000
13001 * lisp.h (Fbuffer_list): Declare.
13002
130032008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 13004
aac0c6e3
MR
13005 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
13006 handlebox_widget is != 0.
13007
130082008-03-16 Juri Linkov <juri@jurta.org>
13009
13010 * callint.c (Fcall_interactively): For interactive code letters
13011 'b' and 'B' put the buffer list into the list of default "future"
13012 values of the minibuffer.
13013
130142008-03-16 Andreas Schwab <schwab@suse.de>
13015
13016 * keyboard.c (read_key_sequence): Fix downcasing of letters with
13017 modifiers.
13018
13019 * regex.c (re_match_2_internal): Correct matching of a charset
13020 against latin-1 characters.
13021
130222008-03-16 Kenichi Handa <handa@m17n.org>
13023
13024 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
13025 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
13026 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
13027 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
13028 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
13029 CHAR_STRING_ADVANCE.
13030 (produce_chars): Fix for the case that the source and the
13031 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
13032 instead of CHAR_STRING_ADVANCE.
13033 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
13034 STRING_CHAR_ADVANCE.
13035
130362008-03-15 Andreas Schwab <schwab@suse.de>
13037
13038 * regex.c (re_match_2_internal): Correct matching of eight bit
13039 characters in unibyte strings.
13040
130412008-03-15 Martin Rudalics <rudalics@gmx.at>
13042
13043 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
13044 at end of range when it coincides with the end of the buffer.
13045
130462008-03-14 Eli Zaretskii <eliz@gnu.org>
13047
13048 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
13049
13050 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
13051
130522008-03-14 Jason Rumney <jasonr@gnu.org>
13053
13054 * editfns.c (initial_tz): New variable.
13055 (syms_of_editfns): Initialize it.
13056 (Fset_time_zone_rule): Set it when first called.
13057 Use it when TZSTRING is nil.
13058
13059 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
13060 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
13061 (monitor_from_point_fn, get_monitor_info_fn): New globals.
13062 (globals_of_w32fns): Initialize them.
13063 (compute_tip_xy): Use them to position tooltips.
13064
130652008-03-14 Glenn Morris <rgm@gnu.org>
13066
13067 * emacs.c (main): Revert previous change.
13068 (standard_args): Revert -internal-script back to -scriptload,
13069 and remove the long-option form.
13070
130712008-03-13 Glenn Morris <rgm@gnu.org>
13072
13073 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
13074 Remove option -enable-font-backend.
13075
130762008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
13077
13078 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
13079
130802008-03-11 Jan Djärv <jan.h.d@swipnet.se>
13081
13082 * xterm.c (x_connection_closed): For GTK: If this is the last
13083 terminal just exit without closing the display.
13084
130852008-03-11 Jason Rumney <jasonr@gnu.org>
13086
13087 * w32font.c (w32font_full_name): Use floor to round.
13088
f0131492 130892008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
13090
13091 * sound.c (alsa_configure): Declare vol at beginning of block.
13092
13093 * fontset.c (Ffontset_info): Remove extra semicolon.
13094
130952008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
13096
13097 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
13098 size of resulting string.
13099
131002008-03-10 Jason Rumney <jasonr@gnu.org>
13101
13102 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
13103
131042008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13105
13106 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
13107 Don't pretend as if characters with display property haven't been
13108 consumed for string-replacing-string case.
13109
131102008-03-08 Kim F. Storm <storm@cua.dk>
13111
13112 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
13113 (get_next_display_element, next_element_from_string)
13114 (next_element_from_ellipsis, next_element_from_buffer): Use it.
13115
131162008-03-08 Andreas Schwab <schwab@suse.de>
13117
13118 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
13119
131202008-03-06 Jason Rumney <jasonr@gnu.org>
13121
13122 * w32font.c (w32_registry): Take font_type argument. Use ANSI
13123 when charset not specified. Only translate ANSI to unicode when
13124 font_type is truetype.
13125 (w32font_coverage_ok): New function.
13126 (add_font_entity_to_list): Use it to filter unsuitable fonts.
13127
131282008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
13129
13130 * lread.c (Fread_char): Resolve modifiers.
13131 (Fread_char_exclusive): Likewise.
13132
13133 * character.c (char_resolve_modifier_mask): New function.
13134 (char_string): Use char_resolve_modifier_mask.
13135 (Fchar_resolve_modifiers): New function.
13136 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
13137 function.
13138
131392008-03-04 Jason Rumney <jasonr@gnu.org>
13140
13141 * makefile.w32-in: Always include w32font.c in the build.
13142 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
13143
131442008-03-04 Andreas Schwab <schwab@suse.de>
13145
13146 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
13147 (versionclean): Likewise.
13148
131492008-03-04 Juanma Barranquero <lekktu@gmail.com>
13150
13151 * .cvsignore: Add oo.
13152
131532008-03-03 Andreas Schwab <schwab@suse.de>
13154
13155 * coding.c (decode_coding_object): Inhibit gap shrinking while
13156 decoding in place.
13157
131582008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
13159
13160 * w32term.c: Remove unused include "gnu.h".
13161 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
13162
13163 * gnu.h: Rename to ...
13164 * emacs-icon.h: ... this.
13165 * xterm.c: Use emacs-icon.h instead of gnu.h.
13166 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
13167
131682008-03-03 Juanma Barranquero <lekktu@gmail.com>
13169
13170 * w32font.c: Include math.h.
13171
131722008-03-03 Jason Rumney <jasonr@gnu.org>
13173
13174 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
13175 Compute options separately.
13176 (w32font_open_internal): Set glyph_idx before caching metrics.
13177
13178 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
13179 Define if system headers don't.
13180 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
13181 (w32font_encode_char): Don't declare here.
13182
13183 * w32font.c (Quniscribe, QCformat): New symbols.
13184 (syms_of_w32font): Define them.
13185 (w32font_has_char): Indicate uncertainty.
13186 (w32font_encode_char): Encode as glyph point. Make static.
13187 (recompute_cached_metrics): New function.
13188 (w32font_open_internal): Use it. Set font to use glyph points
13189 initially. Set format based on type of font.
13190 (w32font_text_extents, w32font_draw): Optionally use glyph points.
13191 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
13192 on it. Set format based on information available here.
13193 (add_font_entity_to_list): Identify backend based on opentype_only.
13194
131952008-03-02 Andreas Schwab <schwab@suse.de>
13196
13197 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
13198
13199 * coding.c (decode_coding_big5, produce_chars):
13200 Fix typos in last change.
13201
132022008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
13203
13204 * gnu.h: New icon.
13205
132062008-03-02 Kenichi Handa <handa@m17n.org>
13207
13208 * coding.c (decode_coding_utf_8): When eol-type of CODING is
13209 `dos', don't decode '\r' if that is the last in the source.
13210 (decode_coding_utf_16, decode_coding_emacs_mule)
13211 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13212 (decode_coding_raw_text, decode_coding_charset): Likewise.
13213 (produce_chars): Don't decode EOL here. Use EMACS_INT.
13214
132152008-03-01 Jason Rumney <jasonr@gnu.org>
13216
13217 * w32font.c (w32font_full_name): Report point size for scalable fonts.
13218
132192008-03-01 Kim F. Storm <storm@cua.dk>
13220
13221 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
13222
132232008-03-01 Jason Rumney <jasonr@gnu.org>
13224
13225 * w32font.c (w32font_full_name): New function.
13226 (w32font_open_internal): Use it.
13227
132282008-03-01 Kim F. Storm <storm@cua.dk>
13229
13230 * dispnew.c (line_draw_cost): Fix invalid glyph check.
13231
132322008-03-01 Jason Rumney <jasonr@gnu.org>
13233
13234 * font.c (font_unparse_fcname): Increase len when style is a symbol.
13235
132362008-03-01 Jan Djärv <jan.h.d@swipnet.se>
13237
13238 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
13239 xg_frame_resized when the event is for the edit widget.
13240
13241 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
13242
13243 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
13244 set_char_size.
13245 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
13246 operations on widgets here. Just set frame size if needed.
13247 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
13248 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
13249 (x_wm_set_size_hint): Set size hints on the edit widget only, not
13250 the whole frame.
13251 (xg_create_tool_bar): Move attachment of the tool bar to
13252 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
13253 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
13254
132552008-03-01 Jason Rumney <jasonr@gnu.org>
13256
13257 * w32fns.c (w32_msg_pump): Disable debug code.
13258
132592008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13260
13261 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
13262
132632008-02-29 Chong Yidong <cyd@stupidchicken.com>
13264
13265 * xdisp.c (next_overlay_string): Don't set
13266 overlay_strings_at_end_processed_p if we're currently reading from
13267 a display string.
13268
132692008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
13270
13271 * xdisp.c (get_overlay_strings_1): Fix typo.
13272
132732008-02-29 Chong Yidong <cyd@stupidchicken.com>
13274
13275 * xdisp.c (get_overlay_strings_1): Add missing argument type.
13276
132772008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
13278
13279 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
13280
13281 * xdisp.c (display_mode_element): Cancel the previous change.
13282 (decode_mode_spec): Likewise.
13283 (handle_auto_composed_prop): Don't make composition if it->string
13284 is a string.
13285
132862008-02-27 Kim F. Storm <storm@cua.dk>
13287
13288 * lisp.h (GLYPH): Change type from int to struct with separate char
13289 and face_id members.
13290 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
13291 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
13292 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
13293 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
13294 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
13295 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
13296 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
13297 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
13298 handle new Lisp glyph code encoding, either an integer or a cons.
13299
13300 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
13301 (GLYPH_ALIAS): Delete.
13302 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
13303 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
13304 (GLYPH_FROM_CHAR): Replace macro by ...
13305 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
13306
13307 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
13308 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
13309 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
13310 (GLYPH_INVALID_P): New macro.
13311 (spec_glyph_lookup_face): Update prototype.
13312
13313 * dispnew.c (line_draw_cost): Adapt to new glyph type.
13314 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
13315 new glyph code encoding.
13316 (spec_glyph_lookup_face): No return value; update passed glyph instead.
13317 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
13318
13319 * xdisp.c (get_next_display_element, next_element_from_display_vector):
13320 Adapt to new glyph type and new glyph code encoding.
13321
13322 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
13323
13324 * indent.c (current_column, current_column_1, Fmove_to_column)
13325 (compute_motion): Adapt to new glyph code encoding.
13326
13327 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
13328
133292008-02-27 Chong Yidong <cyd@stupidchicken.com>
13330
13331 * process.c (wait_reading_process_output): Check for window
13332 changes caused by timers.
13333 Suggested by Johan Bockgård.
13334
133352008-02-27 Glenn Morris <rgm@gnu.org>
13336
13337 * emacs.c (USAGE1): Add `--disable-font-backend'.
13338
133392008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
13340
13341 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
13342 is made to the buffer.
13343
133442008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
13345
13346 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
13347 (face_at_string_position):
13348 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
13349 (face_at_string_position):
13350 * xdisp.c (display_string, next_overlay_change):
13351 * buffer.h (overlays_at):
13352 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
13353 Update callers.
13354
133552008-02-26 Chong Yidong <cyd@stupidchicken.com>
13356
13357 * editfns.c (Fformat): Doc fix.
13358
133592008-02-26 Juanma Barranquero <lekktu@gmail.com>
13360
13361 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
13362 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
13363 (Ffont_otf_alternates, Fquery_font): Doc fixes.
13364
133652008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
13366
13367 * buffer.c (Fbuffer_swap_text): New function.
13368 (syms_of_buffer): Defsubr it.
13369
133702008-02-25 Chong Yidong <cyd@stupidchicken.com>
13371
13372 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
13373
133742008-02-25 Jason Rumney <jasonr@gnu.org>
13375
13376 * w32font.c (w32font_draw): Draw one character at a time when padding.
13377
133782008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
13379
13380 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
13381 Handle a nil arg. Use run_window_configuration_change_hook.
13382 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
13383 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
13384 Use run_window_configuration_change_hook.
13385
133862008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
13387
13388 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
13389 1-pixel width.
13390
133912008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
13392
13393 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
13394 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
13395 if the glyph in the font is zero pixel with.
13396
13397 * dispextern.h (struct glyph_string): New member padding_p.
13398
13399 * w32font.c (w32font_draw): Pay attention to s->padding_p.
13400
13401 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
13402
13403 * xfont.c (xfont_draw): Pay attention to s->padding_p.
13404
13405 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
13406
13407 * font.c: If the font driver doesn't have `shape' function, return Qnil.
13408
134092008-02-25 Jason Rumney <jasonr@gnu.org>
13410
13411 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
13412
134132008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
13414
13415 Allow fine-grained image-cache flushing.
13416 * dispextern.h (struct image): Add `dependencies' field.
13417 (clear_image_caches): Change arg to Lisp_Object.
13418 * image.c (make_image): Initialize `dependencies' field.
13419 (clear_image_cache): Change arg to allow fine-grained flushing.
13420 Perform the flush even if image-cache-eviction-delay is nil.
13421 (clear_image_caches): Change arg to Lisp_Object.
13422 (Fclear_image_cache): Expand meaning of the argument.
13423 (mark_image): Mark `dependencies' field.
13424 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
13425 (lface_hash): Use XHASH rather than XFASTINT.
13426 (face_at_buffer_position): Fix int -> EMACS_INT position.
13427 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
13428 (select_frame_for_redisplay): Remove code duplication.
13429 (redisplay_internal): Adapt arg to call to clear_image_caches.
13430
134312008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
13432
13433 * s/vms4-0.h:
13434 * s/vms4-2.h:
13435 * s/vms4-4.h:
13436 * s/vms5-5.h: Remove, unused.
13437
13438 * s/irix5-2.h:
13439 * s/irix6-0.h:
13440 * s/riscos5.h:
13441 * s/mach-bsd4-3.h:
13442 * m/mips4.h: Remove files for obsolete systems.
13443
13444 * Makefile.in:
13445 * filelock.c:
13446 * unexmips.c:
13447 * m/hp9000s300.h:
13448 * m/iris4d.h:
13449 * s/aix3-1.h:
13450 * s/hpux.h:
13451 * s/msdos.h:
13452 * s/usg5-0.h:
13453 * s/usg5-2-2.h:
13454 * s/usg5-2.h:
13455 * s/usg5-3.h: Remove references to obsolete variables.
13456
13457 * s/irix5-0.h: Remove, move all the contents ...
13458 * s/irix6-5.h: ... here. Simplify.
13459 * config.in: Regenerate.
13460
134612008-02-24 Jason Rumney <jasonr@gnu.org>
13462
13463 * w32term.c (x_draw_glyph_string_background): Clear the background
13464 manually when cleartype is in use.
13465 (x_draw_glyph_string_foreground): Draw text transparently when
13466 cleartype is in use.
13467
13468 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
13469 a font into it unless we have to.
13470
134712008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
13472
13473 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
13474 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 13475
aac0c6e3
MR
134762008-02-18 Jason Rumney <jasonr@gnu.org>
13477
13478 * w32fns.c (Fw32_shell_execute): Encode parameters.
13479
134802008-02-09 Eli Zaretskii <eliz@gnu.org>
13481
13482 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
13483
134842008-02-05 Juanma Barranquero <lekktu@gmail.com>
13485
13486 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
13487
134882008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
13489
13490 * xterm.c (x_set_offset): Don't change the gravity if
13491 CHANGE_GRAVITY is -1.
13492
134932008-02-23 Chong Yidong <cyd@stupidchicken.com>
13494
13495 * fileio.c (auto_save_error_occurred): New var.
13496 (auto_save_error): Set it.
13497 (Fdo_auto_save): Don't overwrite the error message if an auto-save
13498 error occurred.
13499
135002008-02-23 Eli Zaretskii <eliz@gnu.org>
13501
13502 * w32.c (globals_of_w32): Add initializations for
13503 g_b_init_get_sid_sub_authority and
13504 g_b_init_get_sid_sub_authority_count.
13505
135062008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
13507
13508 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
13509 (font_parse_xlfd): Use them for sanity check.
13510 (Finternal_set_font_style_table): Make sure the table is bijective.
13511
13512 Consolidate the image_cache to the terminal struct.
13513 * termhooks.h (P_): Remove redundant def.
13514 (struct terminal): New field `image_cache'.
13515 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
13516 of FRAME_X_IMAGE_CACHE.
13517 * xterm.h (struct x_display_info): Remove image_cache field.
13518 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
13519 * w32term.h (struct w32_display_info): Remove image_cache field.
13520 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
13521 * macterm.h (struct mac_display_info): Remove image_cache field.
13522 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
13523 * xterm.c (x_term_init):
13524 * w32term.c (w32_term_init):
13525 * macterm.c (mac_term_init): Set the image_cache in the terminal.
13526 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
13527 Remove declarations.
13528 (clear_image_caches, mark_image_cache): New declarations.
13529 * xfaces.c (clear_face_cache):
13530 * xdisp.c (redisplay_internal): Use clear_image_caches.
13531 * image.c (clear_image_cache): Don't check that a frame is on
13532 a window-system before checking if it shares the same cache.
13533 (clear_image_caches): New function.
13534 (Fclear_image_cache): Use it.
13535 (mark_image): Move from allo.c.
13536 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
13537 * alloc.c (mark_image, mark_image_cache): Move to image.c.
13538 (mark_object): Don't call mark_image_cache for frames.
13539 (mark_terminals): Call mark_image_cache.
13540
13541 * lisp.h (Fdelete_terminal): Declare.
13542
13543 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
13544 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
13545 wrong_type_argument.
13546
135472008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
13548
13549 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
13550 malayalam.el, and tamil.el. Add sinhala.el.
13551
135522008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
13553
13554 * xterm.c (x_connection_closed): Consolidate identical tests.
13555 (x_delete_terminal): Don't crash if called via x_connection_closed.
13556
135572008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
13558
13559 * xdisp.c (decode_mode_spec): New arg string.
13560 (display_mode_element): Adjust for the above change.
13561
135622008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
13563
13564 * callint.c (Fcall_interactively): Use AREF.
13565
135662008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
13567
13568 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
13569
135702008-02-18 Jan Djärv <jan.h.d@swipnet.se>
13571
13572 * xfns.c (Fx_show_tip): Set string to " " if empty.
13573
135742008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
13575
13576 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
13577 with Qt.
13578
135792008-02-17 Kenichi Handa <handa@m17n.org>
13580
13581 * ftfont.c (ftfont_shape): Return Lispy number.
13582
13583 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
13584 for GCs.
13585 (Finternal_set_font_selection_order): Call font_update_sort_order
13586 only when enable_font_backend is set.
13587 (realize_x_face): Set face->font_info to that of default face only
13588 when enable_font_backend is set.
13589
13590 * xdisp.c (handle_composition_prop): Set it->c to the fist
13591 character of the composed region.
13592 (fill_composite_glyph_string): Set base_face->font_info to
13593 s->font_info. Get a face for ascii from base_face->ascii_face.
13594 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
13595 with a face already decided.
13596 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
13597 non-negative.
13598 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
13599 call font_prepare_composition unconditionally.
13600
13601 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
13602
13603 * xterm.h (struct x_display_info): New member font.
13604
13605 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
13606 (x_set_mouse_face_gc, x_new_font): Likewise.
13607 (x_term_init): Setup display_info->font.
13608 (x_delete_terminal): Free display_info->font.
13609
13610 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
13611
13612 * ftxfont.c (ftxfont_default_fid): Delete it.
13613 (ftxfont_open): Set xfont->fid to 0.
13614 (ftxfont_end_for_frame): Clear data specific to the frame and the
13615 font-driver.
13616
13617 * xftfont.c (xftfont_default_fid): Delete it.
13618 (xftfont_open): Set xfont->fid to 0.
13619
13620 * fontset.c (FONTSET_OBJLIST): New macro.
13621 (fontset_find_font): Update font-object list of the fontset.
13622 (free_realized_fontset): New function.
13623 (free_face_fontset): Call free_realized_fontset.
13624 (Ffont_info): Call font_close_object only when enable_font_backend
13625 is set.
13626
13627 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
13628 [HAVE_NTGUI]: Include w32term.h.
13629 [MAC_OS]: Include macterm.ch.
13630 (font_otf_ValueRecord): Use make_number.
13631 (font_finish_cache): Fix handling of reference count.
13632 (font_clear_cache): Update num_fonts.
13633 (font_open_entity): Update smallest_char_width and
13634 smallest_font_height of the frame.
13635 (font_close_object): Update num_fonts.
13636 (Fclear_font_cache): Fix finding the target cache data.
13637
136382008-02-16 Glenn Morris <rgm@gnu.org>
13639
13640 * fontset.c (Finternal_char_font): Fix compilation warning.
13641
136422008-02-16 Eli Zaretskii <eliz@gnu.org>
13643
13644 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
13645 instead of char arrays. Enlarge the size of array passed to
13646 get_token_information.
13647
13648 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
13649 warnings.
13650
136512008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
13652
13653 * .gdbinit: Don't set `args', it breaks gdb --args.
13654
136552008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
13656
13657 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
13658 within a narrowed buffer.
13659
136602008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
13661
13662 * coding.c (decode_coding_object, encode_coding_object):
13663 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
13664
136652008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
13666
13667 * coding.c (coding_set_destination): Use BEG_BYTE rather than
13668 hardcoding 1.
13669 (detect_coding_system):
13670 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
13671 (string_char_to_byte, string_byte_to_char, insert_from_gap):
13672 * insdel.c (insert_from_gap):
13673 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
13674 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
13675 (string_to_multibyte):
13676 * character.c (chars_in_text, multibyte_chars_in_text):
13677 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
13678
13679 * character.h (FETCH_STRING_CHAR_ADVANCE)
13680 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
13681 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
13682 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
13683
13684 * casefiddle.c (casify_region): Only call after-change and composition
13685 functions on the part of the region that was changed.
13686
13687 * keyboard.c (read_avail_input):
13688 * frame.c (Fdelete_frame): Call Fdelete_terminal.
13689
136902008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
13691
13692 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
13693 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
13694
136952008-02-11 Juanma Barranquero <lekktu@gmail.com>
13696
13697 * w32menu.c (push_submenu_start, push_submenu_end)
13698 (push_left_right_boundary, push_menu_pane, push_menu_item):
13699 * keyboard.c (read_key_sequence): Don't pass args with side effects
13700 to AREF, it fails when compiling with -DENABLE_CHECKING.
13701
137022008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
13703
13704 * Makefile.in (${lispsource}international/charprop.el):
13705 Delete this target.
13706
13707 * search.c (boyer_moore): Fix incorrect synching of the trunk and
13708 emacs-unicode-2.
13709
137102008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
13711
13712 * terminal.c (Fdelete_terminal): Clean up the `force' path.
13713
137142008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
13715
13716 * frame.c (Qnoelisp): New symbol.
13717 (syms_of_frame): Initialize it.
13718 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
13719 harmless Elisp code, from a strong `force' from x_connection_closed.
13720 * frame.h (Qnoelisp): Declare.
13721 * xterm.c (x_connection_closed): Pass `noelisp'.
13722
13723 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
13724 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
13725 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
13726 rather than `int' for the type of `type'.
13727
137282008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
13729
13730 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
13731
13732 * Makefile.in (GNUC): Remove support for gcc-1.x.
13733
137342008-02-10 Richard Stallman <rms@gnu.org>
13735
13736 * lisp.h (ASET): Use AREF, not ASLOT.
13737
137382008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
13739
13740 * lisp.h (ASET): Check bounds.
13741
137422008-02-10 Glenn Morris <rgm@gnu.org>
13743
13744 * buffer.c (mode-name): Doc fix.
13745
137462008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
13747
13748 * Makefile.in:
13749 * emacs.c:
13750 * gmalloc.c:
13751 * keyboard.c:
13752 * lisp.h:
13753 * m/ibm370aix.h:
13754 * process.c:
13755 * regex.c:
13756 * s/hpux.h:
13757 * sysdep.c:
13758 * sysselect.h:
13759 * systty.h:
13760 * unexec.c:
13761 * w32term.c:
13762 * xsmfns.c:
13763 * xterm.c: Remove code that deals with obsolete variables.
13764
13765 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
13766
13767 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
13768 nothing else needs it anymore.
13769
137702008-02-09 Eli Zaretskii <eliz@gnu.org>
13771
13772 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
13773 instead of unibyte_char_to_multibyte.
13774
137752008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
13776
13777 * s/gnu-linux.h: Remove commented out code.
13778
13779 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
13780
13781 * Makefile.in: Update what RMS says about using autoconf.
13782 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
13783 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
13784 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
13785 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
13786
137872008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
13788
13789 * keymap.c (Fkey_description): Move side effect outside of macro call.
13790
13791 * xfaces.c (Finternal_make_lisp_face):
13792 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
13793
13794 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
13795 (syms_of_fontset): Use ASET.
13796
13797 * fns.c (concat): Move side effect outside of macro call.
13798 (hash_clear): Use ASET.
13799
138002008-02-08 Richard Stallman <rms@gnu.org>
13801
13802 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
13803 If FORCE, and frame has a surrogate minibuffer for another frame,
13804 delete the other frame first.
13805
138062008-02-07 Timo Savola <timo.savola@iki.fi>
13807
13808 * xterm.c (x_detect_focus_change): Handle embed client message.
13809 (handle_one_xevent): Ditto.
13810 (handle_one_xevent): If embedded and we get a button press/release,
13811 request focus.
13812 (xembed_set_info, xembed_send_message): New functions.
13813 (x_make_frame_visible): Call xembed_set_info if embedded.
13814 (x_make_frame_invisible): Call xembed_set_info if embedded.
13815 (x_term_init): Initialize Xatom_XEMBED.
13816 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
13817 (x_iconify_frame): Ditto.
13818
13819 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
13820 (enum xembed_info, enum xembed_message, enum xembed_focus)
13821 (enum xembed_modifier, enum xembed_accelerator): New.
13822 (xembed_set_info, xembed_send_message): Declare.
13823 (FRAME_X_EMBEDDED_P): New.
13824
13825 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
13826 gtk_plug_new.
13827
13828 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
13829 window ID of a frame.
13830 (x_window): Reparent frame if embedded.
13831 (Fx_create_frame): Don't set border width if embedded.
13832
13833 * emacs.c (USAGE3): Add --parent-id.
13834 (standard_args): Ditto.
13835
138362008-02-07 Jan Djärv <jan.h.d@swipnet.se>
13837
13838 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
13839
138402008-02-07 Jim Meyering <meyering@redhat.com>
13841
13842 Use "do...while (0)", not "if (1)...else" in macro definitions.
13843 The latter provokes a warning from gcc about the empty else, when
13844 followed by ";". Also, without that trailing semicolon, it would
13845 silently swallow up any following statement.
13846 * syntax.h (SETUP_SYNTAX_TABLE)
13847 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
13848 * buffer.h (DECODE_POSITION): Likewise.
13849 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
13850 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
13851 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
13852 (FETCH_CHAR_ADVANCE): Likewise.
13853 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
13854
138552008-02-07 Jim Meyering <meyering@redhat.com>
13856
13857 * lread.c [lint]: Don't include <sys/inode.h>.
13858
138592008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
13860
13861 * xselect.c (x_handle_dnd_message):
13862 * xmenu.c (digest_single_submenu, xmenu_show):
13863 * xdisp.c (with_echo_area_buffer_unwind_data)
13864 (format_mode_line_unwind_data, unwind_format_mode_line)
13865 (display_menu_bar):
13866 * eval.c (Ffetch_bytecode):
13867 * doc.c (store_function_docstring):
13868 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
13869 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
13870 * buffer.c (add_overlay_mod_hooklist): Use ASET.
13871
138722008-02-07 Kenichi Handa <handa@m17n.org>
13873
13874 * ftxfont.c (ftxfont_open): Don't set
13875 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
13876
13877 * ftfont.c (ftfont_open): Fix previous change.
13878
138792008-02-06 Jason Rumney <jasonr@gnu.org>
13880
13881 * w32font.c (w32font_text_extents): Fill in lbearing metric.
13882 Use cached metrics for ASCII characters.
13883 (w32font_open_internal): Don't set font's owning_frame.
13884 Cache metrics for ASCII characters.
13885
13886 * w32font.h (struct w32font_info): Add ascii_metrics.
13887 Remove owning_frame.
13888
138892008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
13890
13891 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
13892 to negative value.
13893
13894 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
13895
13896 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
13897
13898 * charset.c (syms_of_charset): Set QCtest and Qeq.
13899
139002008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
13901
13902 * process.c (Fstart_process):
13903 * callproc.c (Fcall_process): Handle the case where
13904 Funhandled_file_name_directory returns nil.
13905
13906 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
13907 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
13908 * font.c (check_gstring): Use them and AREF to access the vector before
13909 we know it's really a gstring.
13910 (Ffont_shape_text): Fix typo.
46e722a9 13911 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
13912
13913 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
13914 Declare.
13915
13916 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
13917
139182008-02-05 Jason Rumney <jasonr@gnu.org>
13919
13920 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
13921 Set smallest_font_height and smallest_char_width in display info.
13922
139232008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
13924
13925 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
13926
139272008-02-05 Miles Bader <miles@gnu.org>
13928
13929 * xfaces.c (get_lface_attributes, merge_named_face)
13930 (lookup_named_face, lookup_derived_face, realize_named_face):
13931 Revert 2008-02-01 change by cyd@stupidchicken.com.
13932
139332008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
13934
13935 * fontset.c (Ffontset_info): Handle the case of inhibitting the
13936 fallback fonts.
13937 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
13938
139392008-02-04 Jason Rumney <jasonr@gnu.org>
13940
13941 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
13942 set full_name.
13943 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
13944
139452008-02-03 Jason Rumney <jasonr@gnu.org>
13946
13947 * makefile.w32-in (OBJ1): Include font.o here.
13948 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
13949
139502008-02-02 Jason Rumney <jasonr@gnu.org>
13951
13952 * makefile.w32-in (temacs): Bump EMHEAP to 21.
13953
139542008-02-01 Jason Rumney <jasonr@gnu.org>
13955
13956 * s/cygwin.h: Define VIRT_ADDR_VARIES.
13957
13958 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
13959
139602008-02-01 Andreas Schwab <schwab@suse.de>
13961
13962 * Makefile.in (shortlisp, lisp): Update for rename of
13963 ../lisp/language/myanmar.el.
13964
139652008-02-01 Chong Yidong <cyd@stupidchicken.com>
13966
13967 * xfaces.c (get_lface_attributes): Delete function.
13968 (merge_named_face, lookup_named_face, lookup_derived_face)
13969 (realize_named_face): Call lface_from_face_name directly, and use
13970 the fact that merge_face_vectors does not alter its FROM argument.
13971
139722008-02-01 Jason Rumney <jasonr@gnu.org>
13973
13974 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
13975 input in the default locale. Handle non-Unicode multibyte input.
13976
139772008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13978
13979 * fontset.c (reorder_font_vector): Exclude nil elements from the
13980 font group. Don't try multiple fonts.
13981 (fontset_font): Adjust for the above change.
13982 (Finternal_char_font): Return nil if the found font doesn't
13983 contain the character ch.
13984
13985 * Makefile.in (lisp, shortlisp): Add cham.el.
13986
139872008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13988
13989 * font.h (FONTP): Make it return 1 also for a font-object.
13990
13991 * .gdbinit (xfontset): New function.
13992
13993 * font.c (font_find_for_lface): Check if the character C is
13994 supported or not only for the first font.
13995
13996 * fontset.c (reorder_font_vector): Fix typo.
13997 (fontset_find_font): Don't add a font-spec specifying a script.
13998 Use 0 (not Qt) for the indication of empty font-group. Change the
13999 format of RFONT-DEF. Return Qt if no font in the font-group
14000 support the character.
14001 (fontset_font): Adjust for the above change. If no font was
14002 found the character, remember that.
14003 (face_for_char): Adjust for the change of RFONT-DEF.
14004 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
14005 no font for the target.
14006 (Finternal_char_font): Adjust for the change of RFONT-DEF.
14007
140082008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14009
14010 * font.c (font_load_for_face): Handle the case that the font in
14011 face->lface is a string.
14012
140132008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14014
14015 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
14016
140172008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14018
14019 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
14020 Fix previous change. If the frame is not on a window system,
14021 signal an error.
14022
140232008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14024
14025 * coding.c (decode_coding_object, encode_coding_object): Adjust
14026 marker positions after conversion.
14027
14028 * lisp.h (struct Lisp_Marker): New member need_adjustment.
14029
140302008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14031
14032 * font.c (font_find_for_lface): Fix the handling of the return
14033 value of font_has_char.
14034 (Ffont_shape_text): Fix previous change.
14035
14036 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
14037 (fontset_ref_and_range): Delete it.
14038 (fontset_find_font): Call char_table_ref_and_range instead of
14039 FONTSET_REF_AND_RANGE.
14040 (make_fontset): Don't setup font groups of Latin here.
14041 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
14042 (new_fontset_from_font): Make the specified font the default for
14043 all Latin characters.
14044
140452008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14046
14047 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
14048 is on a window system before accessing the fontset of the frame.
14049
140502008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14051
14052 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
14053
14054 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
14055 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
14056
14057 * font.c (Ffont_shape_text): If the font driver doesn't have a
14058 shaper function, make zero-width glyphs to have at least one-pixel
14059 width. Fix setting of `to' field of glyphs.
14060
140612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14062
14063 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
14064 glyphs.
14065
14066 * font.h (struct font_driver): Improve docstring of member `shape'.
14067
140682008-02-01 Kenichi Handa <handa@m17n.org>
14069
14070 * composite.c (syms_of_composite): Fix docstring of
14071 auto-composition-function.
14072
14073 * font.h (LGLYPH_SIZE): New macro.
14074
14075 * font.c (Ffont_fill_gstring): Stop filling when a character not
14076 supported by the font is found.
14077 (Ffont_shape_text): When a shape callback function returns nil,
14078 try at most two more times with larger gstring.
14079 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
14080
14081 * xdisp.c (handle_auto_composed_prop): Change the argument to
14082 auto-composition-function.
14083
14084 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
14085 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
14086 Lispy glyph and store it in the lgstring.
14087
14088 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
14089
14090 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
14091
140922008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14093
14094 * font.c (Ffont_shape_text): Avoid unnecessary composition.
14095
14096 * fontset.c (Vfont_encoding_charset_alist): New variable.
14097 (syms_of_fontset): DEFVAR it.
14098 (reorder_font_vector, fontset_find_font): Optimize for the case of
14099 no need of reordering.
14100 (face_for_char): Map the charset property by
14101 Vfont_encoding_charset_alist.
14102
141032008-02-01 Jason Rumney <jasonr@gnu.org>
14104
14105 * w32font.c (logfonts_match): Don't check adstyle here.
14106 (font_matches_spec): Check here against physical font instead.
14107 (add_font_entity_to_list): Avoid some substitutions.
14108
14109 * font.c (font_parse_fcname): Default weight and slant to normal.
14110 (font_score): Prefer normal fonts if weight or slant unspecified.
14111 (font_score) [WINDOWSNT]: Scale weight difference down to closer
14112 match freetype scores.
14113
141142008-02-01 Jason Rumney <jasonr@gnu.org>
14115
14116 * w32font.c (w32font_text_extents): Don't use the frame stored in the
14117 font, as it may have been deleted.
14118 (w32_enumfont_pattern_entity): Map generic family to adstyle using
14119 most common hyphenless variation.
14120 (logfonts_match): Check generic family.
14121 (font_matches_spec): Don't check generic family here.
14122 (fill_in_logfont): Set generic family based on adstyle.
14123
14124 * w32font.h (w32font_get_cache): Update declaration.
14125
141262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14127
14128 * ftfont.c (ftfont_get_cache): Adjust the argument type.
14129
14130 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
14131 If none of the new drivers are available, call font_update_drivers
14132 with the old drivers.
14133
14134 * w32font.c (w32font_get_cache): Adjust the argument type.
14135
14136 * xfont.c (xfont_get_cache): Adjust the argument type.
14137
14138 * font.h (struct font_driver): Change argument type of get_cache.
14139
14140 * xftfont.c (xftfont_start_for_frame): Delete prototype.
14141
14142 * font.c (Ffont_get): Fix arguments to Fassoc.
14143 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
14144 (font_clear_cache): New function.
14145 (font_list_entities, font_matching_entity): Use font_get_cache.
14146 (font_update_drivers): Call font_clear_cache when finishing a driver.
14147
14148 * fontset.c (fontset_find_font): Fix previous change.
14149
141502008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14151
14152 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
14153 dpyinfo->font_table.
14154 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
14155 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
14156
14157 * font.c (font_at): Handle the case that the arg C is negative.
14158 Handle the unibyte case.
14159 (Ffont_at): Call font_at with the arg C -1.
14160
14161 * xdisp.c (handle_auto_composed_prop): Don't get a character at
14162 the position here, and call font_at with the arg C -1.
14163 Don't check the range of the existing composition at the point.
14164
141652008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14166
14167 * fontset.c (fontset_add): New args charset_id and family.
14168 Change caller.
14169 (load_font_get_repertory, fontset_find_font): Assume that
14170 font_spec is always a font-spec object.
14171 (Fset_fontset_font): Always store a font-spec object in a fontset.
14172
14173 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
14174 instead of get_property_and_range.
14175
141762008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14177
14178 * xftfont.c (struct xftfont_info): Delete the member ft_face.
14179 (xftfont_open): Don't keep locking face.
14180 (xftfont_close): Don't unlock face.
14181 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
14182
14183 * fontset.c (fontset_find_font): Don't prefer a font of
14184 supplementary charset.
14185
141862008-02-01 Kenichi Handa <handa@m17n.org>
14187
14188 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
14189 script, langsys_tag to langsys, new member script.
14190 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 14191 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
14192 listing to the script specified in that property. Fix arg to
14193 OTF_check_features.
14194
141952008-02-01 Jason Rumney <jasonr@gnu.org>
14196
14197 * w32font.h: New file.
14198
14199 * w32font.c: Include it.
14200 (struct w32font_info): Add owning_frame field. Move to w32font.h.
14201 (w32font_open): Set owning_frame.
14202 (w32font_text_extents): Use owning_frame.
14203 (struct font_callback_data): Add opentype_only field.
14204 (add_font_entity_to_list): Use it to filter fonts.
14205 Don't check against full name.
14206 (w32font_list_internal): New function.
14207 (w32font_list): Use it.
14208 (w32font_match_internal): New function.
14209 (w32font_match): Use it.
14210 (w32font_open_internal): New function.
14211 (w32font_open): Use it.
14212 (w32font_get_cache, w32font_close, w32font_has_char)
14213 (w32font_encode_char, w32font_text_extents, w32font_draw):
14214 Make non-static.
14215
14216 * makefile.w32-in (w32font.o): Depend on w32font.h.
14217
142182008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14219
14220 * charset.c (Fdefine_charset_internal): Record a supplementary
14221 charset at the tail of Vcharset_order_list.
14222
14223 * font.c (Ffont_shape_text): Fix the return value.
14224
14225 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
14226
14227 * xdisp.c (handle_auto_composed_prop): Fix previous change.
14228
142292008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14230
14231 * ftfont.c (struct OpenTypeSpec): New struct.
14232 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
14233 (ftfont_get_open_type_spec): New function.
14234 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
14235
14236 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
14237
142382008-02-01 Jason Rumney <jasonr@gnu.org>
14239
14240 * w32font.c (add_font_entity_to_list): Compare only the beginning
14241 of full name.
14242
142432008-02-01 Kenichi Handa <handa@m17n.org>
14244
14245 * xdisp.c (handle_auto_composed_prop): Simplify the code.
14246 Never return HANDLED_RECOMPUTE_PROPS.
14247
142482008-02-01 Kenichi Handa <handa@m17n.org>
14249
14250 * font.c (font_gstring_produce): Delete it.
14251
14252 * composite.h (COMPOSITION_METHOD):
14253 Handle COMPOSITION_WITH_GLYPH_STRING.
14254
142552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14256
14257 * xfont.c (Qx): Delete.
14258 (syms_of_xfont): Don't initialize Qx.
14259
14260 * composite.h (enum composition_method):
14261 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
14262
142632008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14264
14265 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
14266 (choose_face_font): Accept new form of font-spec.
14267
14268 * frame.h (font_driver_list): Declare it unconditionally.
14269 (struct frame): Define members font_driver_list and font_data_list
14270 unconditionally.
14271
14272 * fontset.c: Include "font.h" unconditionally.
14273 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
14274 (Fset_fontset_font): Accept a font-spec object.
14275
14276 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
14277 PIXEL_SIZE part a wild card.
14278
14279 * dispextern.h (struct glyph_string): Define members clip and
14280 num_clips unconditionally.
14281 (struct face): Define members font_info and extra unconditionally.
14282
14283 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
14284 ftfont_info only when HAVE_LIBOTF is defined.
14285
142862008-02-01 Andreas Schwab <schwab@suse.de>
14287
14288 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
14289 and end.
14290
142912008-02-01 Jason Rumney <jasonr@gnu.org>
14292
14293 * w32font.c (w32font_driver): Add new fields.
14294
142952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14296
14297 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
14298 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
14299 (LIBES): Add @M17N_FLT_CFLAGS@.
14300
14301 * composite.c (compose_text): Don't treat the new style
14302 composition specially.
14303
14304 * emacs.c (main): Call syms_of_font unconditionally.
14305
14306 * font.h (FONT_ENTITY_NOT_LOADABLE)
14307 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
14308 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
14309 (struct font_driver): New member shape.
14310 (font_registry_charsets): Extern it.
14311 (font_find_for_lface, font_prepare_composition): Adjust prototype.
14312 (font_otf_capability, font_drive_otf): Delete their externs.
14313
14314 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
14315 (font_charset_alist, font_registry_charsets): Move from xfont.c
14316 and rename.
14317 (font_prop_validate_otf): New function.
14318 (font_property_table): Register it for QCotf.
14319 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
14320 (font_drive_otf): Delete.
14321 (font_prepare_composition): New arg F. Adjust for the change of
14322 lispy gstring.
14323 (font_find_for_lface): New arg C.
14324 (font_load_for_face): Adjust for the change of font_find_for_lface.
14325 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
14326 lispy gstring.
14327 (Ffont_shape_text): New function.
14328 (Fopen_font): If the font size is not given, use 12-pixel.
14329 (Ffont_at): New arg STRING.
14330 (syms_of_font): Initalize font_charset_alist.
14331 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
14332 conditionally.
14333
14334 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
14335 fonts of the same font-spec. Change the format of RFONT-DEF.
14336 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
14337 Adjust for the change of RFONT-DEF.
14338 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
14339
14340 * ftfont.h: New file.
14341
14342 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
14343 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
14344 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
14345 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
14346 font_otf_capability and font_drive_otf, set ftfont_shape.
14347 (ftfont_list): Adjust for the change of :otf property value.
14348 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
14349 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
14350 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
14351 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
14352 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
14353 (otf_gstring, gstring, m17n_flt_initialized): New variables.
14354
14355 * w32term.c (x_draw_composite_glyph_string_foreground):
14356 Adjust for the change of lispy gstring.
14357
14358 * xdisp.c (handle_composition_prop): Adjust for the change of
14359 lispy gstring. Call a function for auto-composition with the
14360 third arg it->window.
14361 (fill_composite_glyph_string): Adjust for the change of lispy string.
14362 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
14363
14364 * xfaces.c (set_font_frame_param): Adjust for the change of
14365 font_find_for_lface.
14366
14367 * xfont.c (x_font_charset_alist): Move to font.c and rename.
14368 (xfont_registry_charsets): Likewise. Change caller.
14369 (syms_of_xfont): Don't handle x_font_charset_alist.
14370
14371 * xftfont.c: Include "ftfont.h".
14372 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
14373 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
14374 (xftfont_close) [HAVE_LIBOTF]: Close otf.
14375 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
14376 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
14377 Set xftfont_driver.shape to xftfont_shape.
14378
14379 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
14380 the change of lispy gstring.
14381
143822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14383
14384 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
14385
143862008-02-01 Jason Rumney <jasonr@gnu.org>
14387
14388 * w32font.c (w32font_draw): Fill background manually.
14389
143902008-02-01 Jason Rumney <jasonr@gnu.org>
14391
14392 * font.c (Qfontp): Remove unused symbol.
14393 (QCantialias): New symbol.
14394 (syms_of_font): Define it.
14395 (font_property_table): Set a validator for QCantialias.
14396
14397 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
14398 Define if not already.
14399 (QCfamily): Share with xfaces.c.
14400 (Qstandard, Qsubpixel, Qnatural): New symbols.
14401 (syms_of_w32font): Define them. Don't define QCfamily here.
14402 (w32_antialias_type, lispy_antialias_type): New functions.
14403 (w32_enumfont_pattern_entity): New arg requested_font.
14404 Set antialias parameter if non-default was requested.
14405 (fill_in_logfont): Fill in lfQuality if :antialias specified.
14406
144072008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14408
14409 * lread.c (read1): Undo the previous change.
14410
144112008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
14412
14413 * frame.c (Fdelete_frame): Call font_update_drivers only when
14414 USE_FONT_BACKEND is defined.
14415
144162008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14417
14418 * font.h (struct font_bitmap): New member bits_per_pixel.
14419 (struct font_driver): New members start_for_frame and end_for_frame.
14420 (struct font_data_list): New struct.
14421 (font_put_frame_data, font_get_frame_data): Extern them.
14422
14423 * frame.h (struct frame): New member font_data_list.
14424
14425 * font.c (font_update_drivers): Call driver->start_for_frame and
14426 driver->end_for_frame at proper timings.
14427 (font_put_frame_data, font_get_frame_data): New functions.
14428 (Ffont_spec): Add usage in the docstring.
14429
14430 * frame.c (make_frame): Initialize f->font_data_list to NULL.
14431 (Fdelete_frame): Call font_update_drivers.
14432
14433 * xftfont.c (struct xftface_info): Delete the member xft_draw.
14434 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
14435 (xftfont_get_xft_draw): New function.
14436 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
14437 (xftfont_end_for_frame): New function.
14438 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
14439
14440 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
14441 Change argument. Cache GCs in the per-frame data.
14442 (struct ftxfont_frame_data): New struct.
14443 (ftxfont_draw_bitmap): New arg gc_fore and flush.
14444 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
14445 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
14446 (ftxfont_end_for_frame): New function.
14447 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
14448
14449 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
14450
144512008-02-01 Kenichi Handa <handa@m17n.org>
14452
14453 * xselect.c (Vselection_coding_system)
14454 (Vnext_selection_coding_system): Delete them.
14455 (syms_of_xselect): Don't declare selection-coding-system and
14456 next-selection-coding-system. They are declared in select.el.
14457
144582008-02-01 Jason Rumney <jasonr@gnu.org>
14459
14460 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
14461
14462 * w32fns.c: Include imm.h.
14463 (get_composition_string_fn, get_ime_context_fn): New optional
14464 system functions.
14465 (globals_of_w32fns): Load them from imm32.dll.
14466 (ignore_ime_char): New flag.
14467 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
14468 WM_IME_ENDCOMPOSITION messages.
14469
14470 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
14471 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
14472
144732008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14474
14475 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
14476 (READCHAR_REPORT_MULTIBYTE): New macro.
14477 (readchar): New 2nd arg MULTIBYTE.
14478 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
14479 Make symbol's name multibyte according to the multibyteness of the
14480 source.
14481
144822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14483
14484 * xfaces.c (face_for_overlay_string): Call lookup_face with
14485 correct arguments (fix of synching with the trunk).
14486
144872008-02-01 Kenichi Handa <handa@m17n.org>
14488
14489 * font.c (font_prop_validate_symbol, font_prop_validate_style)
14490 (font_prop_validate_non_neg, font_prop_validate_spacing):
14491 Delete argument prop_index.
14492 (font_property_table): Change arguments to validater. Change Callers.
14493 (font_lispy_object): Delete.
14494 (font_at): Use font_find_object instead fo font_lispy_object.
14495
144962008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14497
14498 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
14499 and file names.
14500
145012008-02-01 Jason Rumney <jasonr@gnu.org>
14502
14503 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
14504 (font_matches_spec): Remove debug output.
14505 (add_font_entity_to_list): Avoid using substituted fonts.
14506
145072008-02-01 Jason Rumney <jasonr@gnu.org>
14508
14509 * doc.c (Fsnarf_documentation):
14510 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
14511
145122008-02-01 Miles Bader <miles@gnu.org>
14513
14514 * dispextern.h (struct glyph_row): Only define "clip" field if
14515 HAVE_WINDOW_SYSTEM is defined.
14516
145172008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
14518
14519 Fix up multi-tty merge.
14520
14521 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
14522 and indentation.
14523
14524 * xfaces.c (free_realized_face, clear_face_gcs):
14525 Include font_done_for_face in the input_blocked section, just in case.
14526
14527 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
14528 (get_char_face_and_encoding): Undo last change and remove the *other*
14529 duplicate definition (i.e. keep the one that's better scoped and that
14530 includes code for the font-backend).
14531
14532 * terminal.c (create_terminal): Default keyboard_coding to
14533 `no-conversion' and terminal_coding to `undecided'.
14534
14535 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
14536
14537 * fontset.c (free_realized_fontsets): Check that the table entry does
14538 contain a fontset before trying to compare it to `base'.
14539
14540 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
14541 syms_of_charset, and syms_of_coding earlier because init_window_once
14542 now needs Vcoding_system_hash_table to be setup.
14543
14544 * coding.h (default_buffer_file_coding): Remove.
14545
14546 * coding.c (default_buffer_file_coding): Remove.
14547 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
14548 than ->symbol, and use the terminal-local coding system.
14549 (syms_of_coding): Don't setup the coding-systems that are not
14550 terminal-local.
14551 (Fdefine_coding_system_internal): Use XCAR/XCDR.
14552
14553 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
14554 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
14555
14556 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
14557 in chartab.c and were re-added here by mistake.
14558 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
14559
14560 * doc.c (Fsnarf_documentation):
14561 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
14562 src to etc.
14563
14564 * ChangeLog.10: Add mistakenly removed entry.
14565
145662008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
14567
14568 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
14569
145702008-02-01 Miles Bader <miles@gnu.org>
14571
14572 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
14573 Add extra args to FACE_FOR_CHAR.
14574
145752008-02-01 Kenichi Handa <handa@m17n.org>
14576
14577 * keymap.c (where_is_internal_1): If key is a cons, store the copy
14578 in sequence.
14579
14580 * chartab.c (map_sub_char_table, map_char_table): If the range
14581 contains just one character, call the function with that character
14582 even if the depth is not 3.
14583
145842008-02-01 Jason Rumney <jasonr@gnu.org>
14585
14586 * w32font.c (w32font_text_extents): Calculate metrics for the
14587 whole string.
14588
145892008-02-01 Jason Rumney <jasonr@gnu.org>
14590
14591 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
14592
145932008-02-01 Jason Rumney <jasonr@gnu.org>
14594
14595 * w32term.c (x_set_glyph_string_clipping): Use
14596 get_glyph_string_clip_rects.
14597 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
14598 Adjust for the change of struct glyph_string.
14599
14600 * w32font.c (w32font_draw): Do clipping here.
14601
146022008-02-01 Kenichi Handa <handa@m17n.org>
14603
14604 * xftfont.c (xftfont_draw): Adjust for the change of struct
14605 glyph_string.
14606
14607 * xterm.c (x_set_glyph_string_clipping): Use
14608 get_glyph_string_clip_rects.
14609 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
14610 Adjust for the change of struct glyph_string.
14611
14612 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
14613 the resulting clip(s}.
14614 (expose_overlaps): Add arg r. Change callers. Set it to
14615 row->clip temporarily.
14616 (expose_window): Redraw rows overlapping the exposed area.
14617
14618 * dispextern.h (struct glyph_row): New member clip.
14619 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
14620 clip_height, new member clip, and num_clips.
14621
146222008-02-01 Kenichi Handa <handa@m17n.org>
14623
14624 * data.c (Fchar_or_string_p): Fix docstring.
14625
146262008-02-01 Kenichi Handa <handa@m17n.org>
14627
14628 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
14629 create a temporary XftDraw object.
14630
146312008-02-01 Kenichi Handa <handa@m17n.org>
14632
14633 * font.c (Ffontp): Fix docstring.
14634
14635 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
14636 strong evidence of ISO-2022.
14637
146382008-02-01 Kenichi Handa <handa@m17n.org>
14639
14640 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
14641 SYNTAX_ENTRY_FOLLOW_PARENT.
14642
146432008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
14644
14645 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
14646 its type.
14647 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
14648 Update to the new type of weak_hash_tables and next_weak.
14649
14650 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
14651 a plain C pointer to Lisp_Hash_Table.
14652
14653 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
14654 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
14655 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
14656 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
14657 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
14658 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
14659 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
14660 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
14661 (GC_EQ): Remove since they've been identical to their non-GC_
14662 alter-egos ever since the markbit was eradicated.
14663
14664 * alloc.c:
14665 * buffer.c:
14666 * buffer.h:
14667 * data.c:
14668 * fileio.c:
14669 * filelock.c:
14670 * fns.c:
14671 * frame.h:
14672 * lisp.h:
14673 * macterm.c:
14674 * print.c:
14675 * process.c:
14676 * w32fns.c:
14677 * w32menu.c:
14678 * w32term.c:
14679 * xfns.c:
14680 * xmenu.c:
14681 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
14682
146832008-02-01 Kenichi Handa <handa@m17n.org>
14684
14685 * chartab.c (map_sub_char_table): Make it work for the top-level
14686 char-table. Fix handling of parent char-table.
14687 (map_char_table): Adjust for the above change.
14688
146892008-02-01 Jason Rumney <jasonr@gnu.org>
14690
14691 * w32font.c (Qgdi): Rename from Qw32.
14692
146932008-02-01 Jason Rumney <jasonr@gnu.org>
14694
14695 * w32bdf.c (get_quoted_string): Make function static.
14696
146972008-02-01 Kenichi Handa <handa@m17n.org>
14698
14699 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
14700 bigger ascent and descent than those of the font, use them as
14701 font's ascent and descent.
14702
147032008-02-01 Kenichi Handa <handa@m17n.org>
14704
14705 * Makefile.in (${lispsource}international/charprop.el): Move this
14706 target within "#ifdef HAVE_UNIDATA" and "#endif".
14707
147082008-02-01 Kenichi Handa <handa@m17n.org>
14709
14710 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
14711 (shortlisp): Add ../lisp/language/tai-viet.el.
14712
147132008-02-01 Ulrich Mueller <ulm@gentoo.org>
14714
14715 * Makefile.in (${lispsource}international/charprop.el): Depend on
14716 temacs${EXEEXT}.
14717
147182008-02-01 Jason Rumney <jasonr@gnu.org>
14719
14720 * w32font.c (w32font_close): Delete the GDI font object.
14721
14722 * w32menu.c: Include character.h.
14723
14724 * w32proc.c: Likewise.
14725
14726 * w32select.c: Likewise.
14727
14728 * makefile.w32-in (w32proc.o): Depend on character.h.
14729
147302008-02-01 Jason Rumney <jasonr@gnu.org>
14731
14732 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
14733
14734 * w32menu.c (syms_of_w32menu): Likewise.
14735
14736 * w32proc.c (syms_of_ntproc): Likewise.
14737
14738 * w32select.c (syms_of_w32select): Likewise.
14739
14740 * w32term.c (syms_of_w32term): Likewise.
14741
147422008-02-01 Jason Rumney <jasonr@gnu.org>
14743
14744 * w32font.c (w32font_draw): Delete brush after using it.
14745
147462008-02-01 Jason Rumney <jasonr@gnu.org>
14747
14748 * w32font.c (w32font_open): Don't set font_idx.
14749 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
14750 to font settings.
14751 (w32font_draw): Fill background explicitly.
14752
147532008-02-01 Jason Rumney <jasonr@gnu.org>
14754
14755 * w32term.c (w32_initialize): Don't call w32font_initialize.
14756
14757 * w32font.c (w32font_info): Remove subranges.
14758 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
14759 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
14760 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
14761 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
14762 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
14763 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
14764 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
14765 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
14766 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
14767 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
14768 New symbols.
14769 (font_callback_data): New struct.
14770 (w32font_list, w32font_match): Use it.
14771 (w32font_open): Don't populate subranges.
14772 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
14773 (w32font_encode_char): Always return unicode code-point as-is.
14774 (w32font_text_extents): Supply a transformation matrix to
14775 GetGlyphOutline. Never look up by glyph index. Avoid looping
14776 twice. Use unicode version of GetTexExtentPoint32 instead of
14777 glyph index version.
14778 (set_fonts_frame): Remove.
14779 (w32_enumfont_pattern_entity): Add frame parameter, use it to
14780 set frame parameter. Use backward compatible fake foundries.
14781 Save generic family in extra slot under QCfamily. Make width slot
14782 constant. Save QCspacing value. Save list of scripts instead of
14783 binary subranges.
14784 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
14785 (add_font_entity_to_list): Use font_callback_data struct. Filter
14786 unwanted fonts.
14787 (add_one_font_entity_to_list): Use font_callback_data struct.
14788 (w32_registry): Default to iso10646_1.
14789 (fill_in_logfont): Use dpi from extra slot. Don't bother with
14790 string font registries. Don't fill in font name if it is a generic
14791 family name, fill family instead. Use spacing, family and script
14792 extra info to fill pitch, family and charset fields.
14793 (list_all_matching_fonts): Use font_callback_data struct.
14794 (unicode_range_for_char): Remove.
14795 (font_supported_scripts): New function.
14796 (w32font_initialize): Remove.
14797 (syms_of_w32font): Update which symbols are defined.
14798
147992008-02-01 Jason Rumney <jasonr@gnu.org>
14800
14801 * font.c (font_pixel_size): Reverse assq_no_quit args.
14802
14803 * w32term.h (FONT_WIDTH): Report max width, not average.
14804 (FONT_MAX_WIDTH): Remove.
14805 (FONT_AVG_WIDTH): New macro.
14806
14807 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
14808 redefinition of FONT_WIDTH.
14809
14810 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
14811 (w32_cache_char_metrics): Use FONT_WIDTH.
14812
14813 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
14814
148152008-02-01 Jason Rumney <jasonr@gnu.org>
14816
14817 * w32font.c (w32font_open): Make lfHeight negative.
14818
14819 * w32fns.c (x_default_font_parameter): Use new style font name.
14820 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
14821
148222008-02-01 Jason Rumney <jasonr@gnu.org>
14823
14824 * w32font.c (QCsubranges): New symbol.
14825 (w32font_open, w32font_has_char): Get subranges from subproperty
14826 of extra.
14827 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
14828 (syms_of_w32font): Define :subranges symbol.
14829
14830 * font.c (font_put_extra): Expose externally.
14831
14832 * font.h (font_put_extra): Move declaration from font.c.
14833
14834 * font.c (Ffont_get): Use font driver to determine otf capability.
14835 (adjust_anchor): Check if driver defines anchor_point before using.
14836
14837 * w32font.c (w32font_open): Handle size, height and pixel_size better.
14838 (w32font_draw): Use options.
14839 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
14840 Fix detection of truetype fonts.
14841 (registry_to_w32_charset): Handle charsets other than iso8859-1
14842 expressed as lisp symbols.
14843 (w32_registry): Express charset as lisp symbol.
14844 (fill_in_logfont): Reverse pixel and point height logic.
14845 Don't set width here. Set quality to default.
14846
14847 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
14848 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
14849
14850 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
14851 Remove redundant loop and allocation.
14852
14853 * makefile.w32-in (font.o, w32font.o): New objects.
14854 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
14855 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
14856
14857 * xdisp.c (fill_composite_glyph_string): Make the first arg to
14858 STORE_XCHARB a valid l-value.
14859
14860 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
14861 calculations for non-Truetype fonts.
14862 (x_draw_glyph_string): Sync with xterm.c.
14863 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
14864 Remove redundant code.
14865 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
14866
14867 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
14868 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
14869
14870 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
14871 (x_to_w32_charset, w32_to_x_charset): Expose externally.
14872
14873 * w32font.c: New file for w32 font backend.
14874
148752008-02-01 Kenichi Handa <handa@m17n.org>
14876
14877 * term.c: Don't include "buffer.h" twice.
14878
148792008-02-01 Kenichi Handa <handa@m17n.org>
14880
14881 * character.c (Funibyte_string): New function.
14882 (syms_of_character): Defsubr it.
14883
148842008-02-01 Jason Rumney <jasonr@gnu.org>
14885
14886 * w32term.c [USE_FONT_BACKEND]:
14887 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
14888 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
14889 (x_draw_glyph_string, x_draw_glyph_string_foreground)
14890 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
14891 (x_free_frame_resources): Sync with xterm.c.
14892
148932008-02-01 Andreas Schwab <schwab@suse.de>
14894
14895 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
14896 char-table size.
14897
148982008-02-01 Kenichi Handa <handa@m17n.org>
14899
14900 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
14901
149022008-02-01 Kenichi Handa <handa@m17n.org>
14903
14904 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
14905 font_otf_gpos, add font_drive_otf.
14906
14907 * fontset.c (fontset_find_font): Pay attention to font size
14908 specified for a font.
14909 (reorder_font_vector): Check contents of font_def.
14910
14911 * font.c (struct otf_list): Delete it.
14912 (otf_list): Make it a lisp variable.
14913 (otf_open): Use lispy otf_list.
14914 (generate_otf_features): Rename from parse_gsub_gpos_spec.
14915 (check_otf_features): New function.
14916 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
14917 New functions.
14918 (font_drive_otf): New function merging font_otf_gsub and
14919 font_otf_gpos.
14920 (font_open_for_lface): New arg spec. Change argument order.
14921 (font_load_for_face): Adjust for the change of font_open_for_lface.
14922 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
14923 Ffont_otf_gpos.
14924 (syms_of_font): Staticpro otf_list. Delete defsubr of
14925 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
14926
14927 * xfaces.c (set_font_frame_param): Adjust for the change of
14928 font_open_for_lface.
14929
14930 * font.h (font_open_for_lface): Adjust prototype.
14931 (struct font_driver): Delete members otf_gsub and otf_gpos, add
14932 member otf_drive.
14933 (font_otf_gsub, font_otf_gpos): Delete externs.
14934 (font_drive_otf): Extern it.
14935
149362008-02-01 Kenichi Handa <handa@m17n.org>
14937
14938 * font.c (font_at): If the window W is not on a window system,
14939 return Qnil.
14940
14941 * coding.c (produce_chars, encode_coding): Don't call
14942 insert_from_gap if no characters to produce.
14943
149442008-02-01 Kenichi Handa <handa@m17n.org>
14945
14946 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
14947 Fclear_face_cache.
14948
14949 * xfaces.c (face_for_font): Check also face->font==font->font.font.
14950
149512008-02-01 Miles Bader <miles@gnu.org>
14952
14953 * emacs.c (main): Change default value of `enable_font_backend' to 1.
14954 Parse "--disable-font-backend" option.
14955 (standard_args): Add "--disable-font-backend" option.
14956
149572008-02-01 Kenichi Handa <handa@m17n.org>
14958
14959 * fontset.c (fontset_find_font): New function.
14960 (fontset_font): Use fontset_find_font.
14961 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
14962 Register the specified font for all Latin characters.
14963 (new_fontset_from_font): Register the specified font for all Latin
14964 characters.
14965 (dump_fontset): For a realized fontset, include the base fontset
14966 name in the returned vector.
14967
149682008-02-01 Kenichi Handa <handa@m17n.org>
14969
14970 * character.h (CHAR_STRING): Cast C to unsigned on calling
14971 char_string.
14972
14973 * character.c (char_string): Type of arg C changed to unsigned.
14974 Signal an error if C is an invalid character code.
14975
14976 * editfns.c (general_insert_function, Fchar_to_string):
14977 Use CHARACTERP, not INTEGERP.
14978
149792008-02-01 Kenichi Handa <handa@m17n.org>
14980
14981 * character.h (MIN_MULTIBYTE_LEADING_CODE)
14982 (MAX_MULTIBYTE_LEADING_CODE): New macros.
14983
14984 * regex.c (analyse_first): Fix for multibyte characters in "case
14985 charset:" and "case categoryspec:".
14986
149872008-02-01 Andreas Schwab <schwab@suse.de>
14988
14989 * Makefile.in (LIBES): Move standard libraries to the end.
14990
149912008-02-01 Kenichi Handa <handa@m17n.org>
14992
14993 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
14994 nonzero, don't shrink the buffer nextb.
14995
14996 * buffer.h (struct buffer_text): New member inhibit_shrinking.
14997
14998 * coding.c (coding_alloc_by_making_gap): New arg offset.
14999 (alloc_destination): Call coding_alloc_by_making_gap with the arg
15000 offset.
15001 (decode_coding_iso_2022): Update coding->safe_charsets.
15002 (decode_coding_gap): Temporarily set
15003 current_buffer->text->inhibit_shrinking to 1.
15004
150052008-02-01 Kenichi Handa <handa@m17n.org>
15006
15007 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
15008 indexing into elements of s->cmp and s->char2b.
15009
150102008-02-01 Juanma Barranquero <lekktu@gmail.com>
15011
15012 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
15013
150142008-02-01 Kenichi Handa <handa@m17n.org>
15015
15016 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
15017 target_multibyte instead of multibyte.
15018 (re_match_2_internal): Call bcmp_translate with target_multibyte.
15019 (bcmp_translate): Change the argument name from multibyte to
15020 target_multibyte.
15021
150222008-02-01 Kenichi Handa <handa@m17n.org>
15023
15024 These changes are to compile a regexp into a pattern that can be
15025 used both for multibyte and unibyte targets.
15026
15027 * Makefile.in (search.o): Depend on charset.h.
15028
15029 * character.c (multibyte_char_to_unibyte_safe): New function.
15030
15031 * search.c: Include "charset.h".
15032 (compile_pattern_1): Delete argument multibyte. Don't set
15033 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
15034 (compile_pattern): Don't compare cp->buf.target_multibyte.
15035 Compare cp->buf.charset_unibyte.
15036 (compile_pattern): Set cp->buf.target_multibyte.
15037
15038 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
15039
15040 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
15041
15042 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
15043 multibyte. Change callers.
15044 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
15045 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
15046 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
15047 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
15048 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
15049 (regex_compile): Make the compiled pattern usable both for
15050 multibyte and unibyte targets.
15051 (analyse_first): Make the fastmap usable both for multibyte and
15052 unibyte targets.
15053 (TRANSLATE_VIA_MULTIBYTE): Delete.
15054 (re_match_2_internal): Pay attention to the case that the
15055 multibyteness of bufp and target may be different.
15056
150572008-02-01 Kenichi Handa <handa@m17n.org>
15058
15059 * xdisp.c (x_produce_glyphs): When a font is not found, make the
15060 empty box occupy at least one column width.
15061
150622008-02-01 Miles Bader <miles@gnu.org>
15063
15064 * Makefile.in: Remove redundant HAVE_XFT clause.
15065
150662008-02-01 Kenichi Handa <handa@m17n.org>
15067
15068 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
15069
150702008-02-01 Kenichi Handa <handa@m17n.org>
15071
15072 * fontset.c (Finternal_char_font): Fix for the case of POSITION
15073 being nil.
15074
150752008-02-01 Kenichi Handa <handa@m17n.org>
15076
15077 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
15078
150792008-02-01 Kenichi Handa <handa@m17n.org>
15080
15081 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
15082
150832008-02-01 Kenichi Handa <handa@m17n.org>
15084
15085 * search.c (simple_search): Fix previous change.
15086
150872008-02-01 Kenichi Handa <handa@m17n.org>
15088
15089 * xftfont.c (ftfont_font_format): Extern declaration.
15090
15091 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
15092
15093 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
15094 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
15095
15096 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
15097 (ftfont_font_format): Fix previous change.
15098
15099 * font.h (Ffont_xlfd_name): EXFUN it.
15100
15101 * font.c (font_parse_xlfd): Fix the array size of `f'.
15102 (register_font_driver): Use EQ to compare driver->type.
15103
15104 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
15105 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
15106 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
15107
151082008-02-01 Kenichi Handa <handa@m17n.org>
15109
15110 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
15111 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
15112
151132008-02-01 Kenichi Handa <handa@m17n.org>
15114
15115 * xfont.c (xfont_open): Set font->format.
15116
15117 * xftfont.c (xftfont_open): Set font->format.
15118
15119 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
15120 (ftfont_list): Include FC_FONTFORMAT in FcObject.
15121 (ftfont_open): Set font->format.
15122 (ftfont_font_format): New function.
15123
15124 * font.h (struct font): New member format.
15125
15126 * font.c (Qopentype): New variable.
15127 (syms_of_font): Defsym it.
15128 (Fquery_font): Change the format of the last element of the return
15129 value.
15130
151312008-02-01 Kenichi Handa <handa@m17n.org>
15132
15133 * xfns.c (xic_create_xfontset): Try the default fontset name as a
15134 last resort.
15135
151362008-02-01 Kenichi Handa <handa@m17n.org>
15137
15138 * coding.c (detect_coding_charset): Fix detection of multi-byte
15139 charset.
15140
151412008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
15142
15143 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
15144
151452008-02-01 Kenichi Handa <handa@m17n.org>
15146
15147 * xdisp.c (get_next_display_element): Set it->face_id for the
15148 first component of a composition.
15149 (x_produce_glyphs): Check if the font is changed or not for composition.
15150
151512008-02-01 Kenichi Handa <handa@m17n.org>
15152
15153 * fontset.c (Qlatin): New variable.
15154 (syms_of_fontset): Define it as a lisp symbol.
15155 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
15156
151572008-02-01 Kenichi Handa <handa@m17n.org>
15158
15159 * font.c (font_unparse_fcname): Pay attention to the case that
15160 some of font property is a null string.
15161
151622008-02-01 Kenichi Handa <handa@m17n.org>
15163
15164 * term.c: Include "composite.h".
15165 (encode_terminal_code): Output all components of composition.
15166 Check the size of encode_terminal_src.
15167 (produce_glyphs): For composition, call produce_composite_glyph.
15168 (append_composite_glyph, produce_composite_glyph): New functions.
15169
15170 * xdisp.c (x_produce_glyphs): In handling composition, if a font
15171 is not found, get font_info from the current ascii face.
15172
151732008-02-01 Kenichi Handa <handa@m17n.org>
15174
15175 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
15176 buffer-file-name to Qnil before calling insert_from_buffer.
15177
15178 * font.c (font_unparse_fcname): Pay attention to the case that
15179 foundry is a null string.
15180
151812008-02-01 Kenichi Handa <handa@m17n.org>
15182
15183 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
15184
15185 * font.c (Qunicode_sip): New variable.
15186 (syms_of_font): Declare it as a Lisp symbol.
15187
15188 * font.h (Qunicode_sip): Extern it.
15189
151902008-02-01 Kenichi Handa <handa@m17n.org>
15191
15192 * composite.c (get_composition_id): Pay attention to TAB component.
15193
15194 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
15195 TAB. Adjust for the change of s->char2b which always points to
15196 the first element of allocated memory.
15197
15198 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
15199
15200 * xdisp.c (handle_composition_prop): Set it->c to the first
15201 non-TAB component.
15202 (fill_composite_glyph_string): Change argument.
15203 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
15204 (x_produce_glyphs): Fix handling of left/right padding.
15205
152062008-02-01 Kenichi Handa <handa@m17n.org>
15207
15208 * coding.c (detect_coding_system): Fix for handling off
15209 inhibit_iso_escape_detection. Fix for the case that no coding
15210 system is defined for a specific coding category.
15211
152122008-02-01 Kenichi Handa <handa@m17n.org>
15213
15214 * font.c (font_matching_entity): Delete unused local var.
15215
15216 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
15217 opening a font.
15218
15219 * fileio.c (Finsert_file_contents): On recovering a file, assume
15220 Unix-like eol.
15221 (choose_write_coding_system): On auto-saving a file, force
15222 Unix-like eol.
15223
15224 * coding.c (setup_coding_system): Fix setting of
15225 coding->common_flags based on eol_type.
15226 (coding_inherit_eol_type): If PARENT is not nil, be sure to
15227 inherit from it.
15228
152292008-02-01 Kenichi Handa <handa@m17n.org>
15230
15231 * alloc.c (NSTATICS): Increas to 0x600.
15232
152332008-02-01 Kenichi Handa <handa@m17n.org>
15234
15235 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
15236 (ftfont_list): Don't check :name property.
15237 (ftfont_match): New function.
15238 (ftfont_pattern_entity): If the pattern doesn't contain
15239 FC_SPACING, don't assume FC_MONO.
15240
15241 * font.h (struct font_driver): New member `match'.
15242 (font_update_drivers): Adjust prototype.
15243
15244 * font.c (font_parse_fcname, font_parse_name): Don't change :name
15245 property of FONT.
15246 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
15247 them unconditionally.
15248 (font_matching_entity): New function.
15249 (font_open_by_name): Try font_matching_entity if exact match is
15250 not found.
15251 (font_update_drivers): Delete the arg FONT. Return a list of
15252 actually used backends. Don't free faces, font caches here.
15253 Don't store data in frame parameters. Don't call x_set_font.
15254 (Ffont_spec): Store :name property as is.
15255 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
15256 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
15257 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
15258 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
15259 Call font->driver->otf_gsub instead of font_otf_gsub.
15260
15261 * frame.c (x_set_font_backend): Do more works that were done in
15262 font_update_drivers before.
15263
15264 * xfont.c (xfont_match): New function.
15265 (xfont_driver): Set xfont_driver.match to xfont_match.
15266 (xfont_draw): Set font in GC if necessary.
15267
15268 * ftxfont.c (ftxfont_match): New function.
15269 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
15270
15271 * xftfont.c (xftfont_match): New function.
15272 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
15273
152742008-02-01 Kenichi Handa <handa@m17n.org>
15275
15276 * font.h (struct font): New member scalable.
15277 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
15278 (font_otf_gsub): Adjust prototype.
15279
15280 * font.c (font_otf_capability): Fix handling of the default langsys.
15281 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
15282 Check the contents of SPEC.
15283 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
15284 (check_gstring): New function.
15285 (REPLACEMENT_CHARACTER): New macro.
15286 (font_otf_gsub): New arg alternate_subst. Be sure to set all
15287 glyph codes of GSTRING.
15288 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
15289 (font_prepare_composition): Set cmp->glyph_len.
15290 (font_open_entity): Set font->scalable.
15291 (Ffont_get): Handle :otf property.
15292 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
15293 functions.
15294 (Fquery_font): Use font->font.full_name.
15295 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
15296 Sfont_otf_alternates.
15297
15298 * ftfont.c (ftfont_open): Set font->font.full_name and
15299 font->font.name properly. Fix calculation of font->font.height
15300 and font->min_width.
15301
15302 * ftxfont.c (ftxfont_create_gcs): New function.
15303 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
15304 (ftxfont_draw_backgrond): Fix filling region.
15305 (ftxfont_default_fid): New function.
15306 (ftxfont_open): Set xfont->fid to the return value of
15307 ftxfont_default_fid.
15308 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
15309 (ftxfont_done_face): Free only GCs that are created by
15310 ftxfont_create_gcs.
15311 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
15312
15313 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
15314 Clip to src->width, etc (not src->clip_XXX).
15315
15316 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
15317 FontBackend frame parameter.
15318
153192008-02-01 Kenichi Handa <handa@m17n.org>
15320
15321 * font.h (struct font_driver_list): New member `on'.
15322 (Fclear_font_cache): EXFUN it.
15323 (font_update_drivers): Extern it.
15324
15325 * font.c (font_unparse_fcname): Fix typo (swidth->width).
15326 (font_list_entities): Check driver_list->on.
15327 (register_font_driver): Initalize `on' member to 0.
15328 (font_update_drivers): New function.
15329 (Fclear_font_cache): Check driver_list->on.
15330
15331 * frame.h (Qfont_backend): Extern it.
15332 (x_set_font_backend): Extern it.
15333
15334 * frame.c (Qfont_backend): New variable.
15335 (frame_parms): New element for font-backend.
15336 (x_set_font_backend): New function.
15337
15338 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
15339 FontBackend frame parameter.
15340 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
15341 x_set_font_backend.
15342
15343 * xfont.c (xfont_list): Don't try listing by :name property if the
15344 name is not for XLFD.
15345
153462008-02-01 Kenichi Handa <handa@m17n.org>
15347
15348 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
15349 (LGLYPH_SET_TO): New macros.
15350 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
15351 element of G is vector or not.
15352 (font_at): Extern it.
15353
15354 * font.c: Include window.h.
15355 (font_lispy_object): New function.
15356 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
15357 end of valid glyph.
15358 (font_close_object): Fix getting (struct font *).
15359 (font_at): New function.
15360 (Ffont_get): If FONT is a font-object, get entity from it.
15361 (Ffont_make_gstring): Initialize elements of glyphs with nil.
15362 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
15363 range check.
15364 (Ffont_at): New function.
15365 (syms_of_font): Defsubr Sfont_at.
15366
15367 * xdisp.c (it_props): Move the entry for Qauto_composed to just
15368 before the entry for Qcomposition.
15369 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
15370 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
15371 the font in gstring.
15372 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
15373 LGLYPH_FORM (g) to detect the end of valid glyph.
15374 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
15375 we are composing with gstring.
15376
15377 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
15378 Check if adjustment is vector or not.
15379
15380 * Makefile.in (font.o): Make it depends on window.h.
15381
153822008-02-01 Kenichi Handa <handa@m17n.org>
15383
15384 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
15385 adjustment is vector or not.
15386
153872008-02-01 Miles Bader <miles@gnu.org>
15388
15389 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
15390
153912008-02-01 Kenichi Handa <handa@m17n.org>
15392
15393 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
15394 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
15395 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
15396
15397 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
15398 (DEVICE_DELTA): Fix typo.
15399 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
15400 LGLYPH format.
15401
15402 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
15403 the change of LGLYPH format.
15404
154052008-02-01 Kenichi Handa <handa@m17n.org>
15406
15407 * ftfont.c (ftfont_list): Fix typo.
15408 (ftfont_build_basic_charsets): Don't include letters with diacritics.
15409
154102008-02-01 Jan Djärv <jan.h.d@swipnet.se>
15411
15412 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
15413
15414 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
15415 xftface_info is non-NULL.
15416
154172008-02-01 Jan Djärv <jan.h.d@swipnet.se>
15418
15419 * ftfont.c (ftfont_list): Move misplaced #endif.
15420
154212008-02-01 Kenichi Handa <handa@m17n.org>
15422
15423 * ftfont.c (ftfont_list): Pay attention to the case that
15424 FC_CAPABILITY is not defined.
15425
154262008-02-01 Kenichi Handa <handa@m17n.org>
15427
15428 * xftfont.c (xftfont_open): Set charset related members to -1.
15429
15430 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
15431 QCname.
15432 (ftfont_open): Set charset related members to -1.
15433
15434 * fontset.c (Votf_script_alist): New variable.
15435 (syms_of_fontset): Initialize it.
15436 (fontset_font): Delete unused variable.
15437
15438 * fontset.h (Votf_script_alist): Extern it.
15439
15440 * font.c (font_find_for_lface): Optimize code.
15441
15442 * font.h (font_close_object, font_merge_old_spec): Extern them.
15443
154442008-02-01 Kenichi Handa <handa@m17n.org>
15445
15446 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
15447 (syms_of_font): Initialize them.
15448 (font_pixel_size): Allow float value in dpi.
15449 (font_prop_validate_type): Delete.
15450 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
15451 Change caller.
15452 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
15453 (font_prop_validate_extra): Delete.
15454 (font_prop_validate_spacing): New function.
15455 (font_property_table): Add elements for all known properties.
15456 (get_font_prop_index): Rename from check_font_prop_name. New
15457 argument FROM. Change caller.
15458 (font_prop_validate): Validate all known properties.
15459 (font_put_extra): Delete argument force. Change caller.
15460 (font_expand_wildcards): Make it static. Fix the way of shrinking
15461 the possible range.
15462 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
15463 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
15464 Change caller.
15465 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
15466 (font_parse_fcname): Delete argument merge. Fix parsing of point
15467 size. Don't validate properties values here. Change caller.
15468 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
15469 (font_open_by_name): Delete unused variable.
15470 (Ffont_spec): Likewise. Validate property values.
15471 (Ffont_match_p): New function.
15472
15473 * font.h (QCscalable): Extern it.
15474 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
15475
15476 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
15477
15478 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
15479 (xfont_list_pattern): New function.
15480 (xfont_list): Use xfont_list_pattern.
15481
154822008-02-01 Kenichi Handa <handa@m17n.org>
15483
15484 * font.h (Flist_fonts): EXFUN it.
15485
154862008-02-01 Jason Rumney <jasonr@gnu.org>
15487
15488 * w32term.c (w32_initialize): Add back smoothing_type and
15489 smoothing_enabled definitions.
15490
154912008-02-01 Kenichi Handa <handa@m17n.org>
15492
15493 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
15494 s->face->font on determining underline position.
15495
154962008-02-01 Kenichi Handa <handa@m17n.org>
15497
15498 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
15499 (font_has_char): Accept font-object too.
15500 (font_find_for_lface): Try at first with a size specified in face.
15501
155022008-02-01 Kenichi Handa <handa@m17n.org>
15503
15504 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
15505 font_open_by_name.
15506
155072008-02-01 Kenichi Handa <handa@m17n.org>
15508
15509 * font.h (QCspacing, QCdpi): Extern them.
15510 (enum font_spacing): New enum.
15511 (FONT_PIXEL_SIZE_QUANTUM): New macro.
15512
15513 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
15514 (QCspacing, QCdpi): New variables.
15515 (syms_of_font): Initialize them.
15516 (font_pixel_size): New function.
15517 (font_put_extra): New function.
15518 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
15519 in FONT_EXTRA.
15520 (font_parse_fcname): Handle enumerated values (e.g. bold).
15521 Fix handling font size. Add QCname property that contains only
15522 unknown properties.
15523 (font_score): Change argument. Change caller. Pay attention to
15524 FONT_PIXEL_SIZE_QUANTUM.
15525 (font_sort_entites, font_list_entities, font_find_for_lface)
15526 (font_open_for_lface, font_open_by_name): Fix handling of font size.
15527 (Ffont_spec): Add QCname property that contains only unknown properties.
15528
15529 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
15530 include weight in listing pattern, instead check weight of each
15531 listed font. Don't include scalable in pattern. Pay attention to
15532 FONT_PIXEL_SIZE_QUANTUM.
15533
155342008-02-01 Kenichi Handa <handa@m17n.org>
15535
15536 * font.c (font_parse_fcname): Fix parsing of point-size.
15537 (font_unparse_fcname): Produce symbolic names for style properties.
15538 (font_list_entities): Handle float size correctly.
15539 (font_open_by_name): Prefer `normal' property values if the name
15540 doesn't specify them.
15541
15542 * fontset.c (Finternal_char_font): Use font_get_name, not
15543 Ffont_xlfd_name.
15544
15545 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
15546 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
15547 pattern. Don't force scalable.
15548
15549 * xftfont.c (xftfont_open): For generating a name, start from
15550 96-byte buffer.
15551
155522008-02-01 Jan Djärv <jan.h.d@swipnet.se>
15553
15554 * frame.h (x_new_fontset2): Fix prototype.
15555
155562008-02-01 Kenichi Handa <handa@m17n.org>
15557
15558 * font.h (struct font_driver): Delete member parse_name.
15559 (font_match_p, font_get_spec, font_parse_fcname)
15560 (font_unparse_fcname): Extern them.
15561 (font_get_name): Adjust prototype.
15562
15563 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
15564 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
15565 (font_expand_wildcards): Fix handling ENCODING field. Avoid
15566 unnecessary checks for weight, slant, and swidth.
15567 (font_parse_fcname): New function.
15568 (font_unparse_fcname): New function.
15569 (font_parse_name): New function.
15570 (font_match_p): New function.
15571 (font_get_name): Change return value to Lisp string.
15572 (font_get_spec): New function.
15573 (Qunspecified, Qignore_defface): Don't extern them.
15574 (font_find_for_lface): Assume that LFACE is fully specified.
15575 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
15576 object, use it for FACE.
15577 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
15578 driver->parse_name.
15579 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
15580
15581 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
15582 prototype.
15583
15584 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
15585 argument F. Don't call Fnew_fontset. Instead, directly call
15586 make_fontset.
15587
15588 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
15589
15590 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
15591 of x_new_fontset2.
15592
15593 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
15594 (Qsans__serif): New variables.
15595 (ftfont_generic_family_list): New variable.
15596 (syms_of_ftfont): Initialize the above variables.
15597 (ftfont_pattern_entity): Delete argument NAME.
15598 (ftfont_list_generic_family): New function.
15599 (ftfont_parse_name): Delete this function.
15600 (ftfont_list): Try generic family only when FcFontList found no font.
15601 (ftfont_list_family): Fix args to FcObjectSetBuild.
15602
15603 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
15604 object in attrs[LFACE_FONT_INDEX].
15605 (set_lface_from_font_name): Cancel all changes for font-backend.
15606 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
15607 function.
15608 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
15609 font object in QCfont attribute.
15610 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
15611 (realize_default_face) [USE_FONT_BACKEND]: Call
15612 set_lface_from_font_and_fontset.
15613
15614 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
15615 "fixed", and signal error here if no suitable font was found.
15616
15617 * xfont.c (xfont_parse_name): Delete this function.
15618
15619 * xftfont.c (xftfont_open): Change coding style of error
15620 handling. Generate fontconfig's fontname pattern.
15621
15622 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
15623 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
15624
15625 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
15626 Both args FONTSET and FONT_OBJECT must be existing ones.
15627
156282008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15629
15630 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
15631
156322008-02-01 Kenichi Handa <handa@m17n.org>
15633
15634 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
15635
15636 * font.h (struct font): Fix typo.
15637
15638 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
15639 XLFD_XXX_INDEX.
15640 (enum xlfd_field_mask): New enum.
15641 (intern_font_field): Changed argument. Change caller. If digits
15642 are followed by non-digits, return a symbol.
15643 (font_expand_wildcards): New function.
15644 (font_parse_xlfd): Fix wildcard handling.
15645 (Ffont_spec): If :name is specified, reflect the info in the other
15646 properties.
15647
15648 * ftfont.c (ftfont_pattern_entity): Fix typo.
15649 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
15650 locale.
15651
156522008-02-01 Kenichi Handa <handa@m17n.org>
15653
15654 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
15655
15656 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
15657 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
15658 registry doesn't specify encoding part.
15659 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
15660 (font_open_by_name): At first try parsing the name.
15661 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
15662 as Lisp symbols.
15663
15664 * fontset.c (reorder_font_vector): Pay attention to the case that
15665 the 3rd element of font_def is nil.
15666 (fontset_font): For the default fontset, append one more fontset
15667 elements for a script-based font specification. Don't add script
15668 attribute on finding a font.
15669 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
15670 font name.
15671 (fontset_ascii_font): If a font can't be opened, return nil.
15672
15673 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
15674 (ftfont_pattern_entity): New function.
15675 (ftfont_get_cache): Assume that freetype_font_cache is already
15676 initialized.
15677 (ftfont_list): Handle the case that a file is specified in font
15678 name. Use ftfont_pattern_entity to generate entities.
15679 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
15680 (syms_of_ftfont): Initialize freetype_font_cache.
15681
15682 * xftfont.c (xftfont_open): Make the font name fontconfig's
15683 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
15684 (xftfont_close): Free font->font.name if not NULL.
15685
15686 * xfont.c (xfont_list): If script is specified for a font, return
15687 null_vector.
15688 (xfont_list_family): Declare argument type.
15689
15690 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
15691 name, set LFACE_FONT (lface) to nil.
15692
15693 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
15694 return Qnil.
15695
156962008-02-01 Kenichi Handa <handa@m17n.org>
15697
15698 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
15699 (standard_args): Add "-enable-font-backend".
15700
157012008-02-01 Kenichi Handa <handa@m17n.org>
15702
15703 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
15704 (struct xftdraw_list, xftdraw_list): Delete them.
15705 (register_xftdraw, check_xftdraw): Delete them.
15706 (xftfont_prepare_face): Don't call register_xftdraw.
15707 (xftfont_done_face): Don't call check_xftdraw.
15708 (xftfont_draw): Get background color only when with_background is
15709 nonzero.
15710
15711 * xfont.c (xfont_encode_char): Fix calculation of char2b.
15712
157132008-02-01 Kenichi Handa <handa@m17n.org>
15714
15715 These changes are for the new font handling codes.
15716
15717 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
15718 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
15719 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
15720 (FONTSRC, FONTOBJ): New variables.
15721 (obj): Add $(FONTOBJ).
15722 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
15723 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
15724 @LIBOTF_LIBS@.
15725 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
15726 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
15727
15728 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
15729
15730 * character.h (Vscript_representative_chars): Extern it.
15731
15732 * character.c (Vscript_representative_chars): New variable.
15733 (syms_of_character): Declare it as a Lisp variable.
15734
15735 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
15736 enable_font_backend is nonzero, accept the composition method
15737 COMPOSITION_WITH_GLYPH_STRING.
15738
15739 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
15740 enumeration COMPOSITION_WITH_GLYPH_STRING.
15741
15742 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
15743 members clip_x, clip_y, clip_width, and clip_height.
15744 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
15745
15746 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
15747 --enable-font-backend. Call syms_of_font.
15748
15749 * fns.c (assoc_no_quit): New function.
15750
15751 * fontset.h (FONT_INFO_FROM_FACE): New macro.
15752 (face_for_font, new_fontset_from_font)
15753 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
15754
15755 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
15756 (fontset_font, fontset_ascii, face_for_char)
15757 (make_fontset_for_ascii_face, Ffont_info)
15758 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
15759 is nonzero, use font-backend mechanism.
15760 (find_font_encoding): Make it non-static.
15761 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
15762 New functions.
15763
15764 * frame.h (struct frame): New members resx and resy.
15765 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
15766 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
15767
15768 * frame.c [USE_FONT_BACKEND]: Include "font.h".
15769 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
15770
15771 * lisp.h (assoc_no_quit): Extern it.
15772
15773 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
15774 Through out the file, use FONT_INFO_FROM_FACE instead of
15775 FONT_INFO_FROM_ID, use get_per_char_metric instead of
15776 rif->per_char_metric.
15777 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
15778 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
15779 (get_glyph_face_and_encoding, fill_composite_glyph_string)
15780 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
15781 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
15782 nonzero, use font-backend mechanism.
15783 (get_per_char_metric): New function.
15784
15785 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
15786 (set_lface_from_font_name)
15787 (set_font_frame_param, free_realized_face)
15788 (prepare_face_for_display, clear_face_gcs)
15789 (Finternal_set_font_selection_order, realize_x_face)
15790 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
15791 font-backend mechanism.
15792 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
15793 (load_face_font) [USE_FONT_BACKEND]: Abort.
15794 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
15795 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
15796
15797 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
15798 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
15799 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
15800 nonzero, register all available font drivers. Call
15801 x_default_font_parameter for deciding a font.
15802 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
15803
15804 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
15805 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
15806 (x_set_glyph_string_clipping_exactly)
15807 (x_compute_glyph_string_overhangs)
15808 (x_draw_glyph_string_foreground)
15809 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
15810 (x_free_frame_resources) [USE_FONT_BACKEND]: If
15811 enable_font_backend is nonzero, use font-backend mechanism.
15812 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
15813
158142008-02-01 Kenichi Handa <handa@m17n.org>
15815
15816 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
15817 system_eol_type.
15818 (syms_of_coding): Initialize system_eol_type.
15819
15820 * process.c (Fset_process_coding_system): Inherit system's eol
15821 format if necessary.
15822
158232008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15824
15825 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
15826
158272008-02-01 Kenichi Handa <handa@m17n.org>
15828
15829 * coding.c (decode_eol): Pay attention to buffer relocation in
15830 del_range_2.
15831 (decode_coding): Call decode_eol before restoring undo_list.
15832
158332008-02-01 Kenichi Handa <handa@m17n.org>
15834
15835 * charset.c (Fdefine_charset_internal): Fix setting of
15836 emacs_mule_bytes.
15837
158382008-02-01 Kenichi Handa <handa@m17n.org>
15839
15840 * keyboard.c (read_char): Check if C is a character or not before
15841 looking up Vkeyboard_translate_table.
15842
158432008-02-01 Kenichi Handa <handa@m17n.org>
15844
15845 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
15846 condition to terminate the loop.
15847
158482008-02-01 Kenichi Handa <handa@m17n.org>
15849
15850 * coding.c (produce_composition): Compare charbuf[i] instead of
15851 args[i] against 0.
15852 (Fterminal_coding_system): Use EQ to compare Lisp objects.
15853
158542008-02-01 Kenichi Handa <handa@m17n.org>
15855
15856 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
15857 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
15858 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
15859 detect_coding.
15860 (emacs_mule_char): Handle old style (Emacs 20) component character
15861 of a composition.
15862 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
15863 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
15864 composition rule.
15865 (decode_coding_emacs_mule): Handle invalid bytes correctly.
15866
158672008-02-01 Kenichi Handa <handa@m17n.org>
15868
15869 * coding.c (encode_coding_ccl): Allocate destination dynamically
15870 when necessary.
15871
158722008-02-01 Kenichi Handa <handa@m17n.org>
15873
15874 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
15875 the loop. When quitted, show a proper error message.
15876
158772008-02-01 Kenichi Handa <handa@m17n.org>
15878
15879 * xterm.c (x_set_glyph_string_clipping_exactly): Set
15880 src->clip_head and src->clip_tail temporarily instead of src->hl.
15881
15882 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
15883 character sequence.
15884 (Fccl_execute_on_string): Use ASET, not XSET.
15885
158862008-02-01 Kenichi Handa <handa@m17n.org>
15887
15888 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
15889
158902008-02-01 Kenichi Handa <handa@m17n.org>
15891
15892 * coding.c (decode_coding): Fix the condition of terminating the
15893 decoding loop.
15894
158952008-02-01 Kenichi Handa <handa@m17n.org>
15896
15897 * data.c (Faset): On setting a character bigger than 255 in a
15898 unibyte string, signal an error instead of make the string multibyte.
15899
159002008-02-01 Kenichi Handa <handa@m17n.org>
15901
15902 * charset.c (map_charset_chars): Fix for ascii-compatible charset
15903 made by a mapping table.
15904
159052008-02-01 Kenichi Handa <handa@m17n.org>
15906
15907 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
15908 not.
15909 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
15910 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
15911
15912 * xterm.c (x_draw_composite_glyph_string_foreground): Check
15913 s->face is NULL or not.
15914
159152008-02-01 Kenichi Handa <handa@m17n.org>
15916
15917 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
15918 (x_draw_glyph_string): Fix drawing of right_overhang and
15919 left_overhang around/on cursor.
15920
15921 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
15922
159232008-02-01 Kenichi Handa <handa@m17n.org>
15924
15925 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
15926
159272008-02-01 Kenichi Handa <handa@m17n.org>
15928
15929 * coding.c (Fdefine_coding_system_internal)
15930 (Fdefine_coding_system_alias): Avoid a duplicated element in
15931 Vcoding_system_alist.
15932
159332008-02-01 Kenichi Handa <handa@m17n.org>
15934
15935 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
15936
15937 * coding.c (Qcoding_system_define_form): New variable.
15938 (syms_of_coding): Intern and staticpro it.
15939 (Fcoding_system_p): Check Qcoding_system_define_form.
15940 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
15941
15942 * coding.h (CODING_SYSTEM_P): If ID is not available, call
15943 Fcoding_system_p.
15944 (CHECK_CODING_SYSTEM): If ID is not available, call
15945 Fcheck_coding_system.
15946 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
15947 Try also Fcheck_coding_system.
15948
159492008-02-01 Kenichi Handa <handa@m17n.org>
15950
15951 * coding.c (code_conversion_restore): GCPRO arg.
15952
159532008-02-01 Kenichi Handa <handa@m17n.org>
15954
15955 * character.c (lisp_string_width): Check multibyteness of STRING.
15956
159572008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15958
15959 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
15960 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
15961 (decode_mac_font_name): Use decode_coding_c_string instead of
15962 decode_coding.
15963 (x_load_font): Initialize fontp->fontset to -1. Set
15964 fontp->encoding_type.
15965
159662008-02-01 Kenichi Handa <handa@m17n.org>
15967
15968 * search.c (search_buffer): Give up BM search on case-fold-search
15969 if one of a target character has a case-equivalence of different
15970 byte length even if that target charcter is an ASCII.
15971 (simple_search): Fix calculation of byte length of matched text.
15972 (boyer_moore): Fix handling of case-equivalent multibyte characters.
15973
159742008-02-01 Kenichi Handa <handa@m17n.org>
15975
15976 * coding.c (decode_coding): Fix handling of invalid bytes.
15977
159782008-02-01 Kenichi Handa <handa@m17n.org>
15979
15980 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
15981 Unicode characters.
15982
159832008-02-01 Kenichi Handa <handa@m17n.org>
15984
15985 * coding.c (encode_coding_object): If a pre-write-conversion
15986 function makes a new buffer, kill it.
15987
159882008-02-01 Kenichi Handa <handa@m17n.org>
15989
15990 * coding.c (QCascii_compatible_p): New variable.
15991 (syms_of_coding): Initialize it.
15992 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
15993 calling string_char.
15994 (record_conversion_result): Add `default:' case.
15995 (coding_charset_list): Delete unused variable `coding_type'.
15996 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
15997 property in the plist of the coding system.
15998 (Fcoding_system_put): Check QCascii_compatible_p.
15999
160002008-02-01 Miles Bader <miles@gnu.org>
16001
16002 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
16003 removed calculation of frame `f', as it's now used.
16004
160052008-02-01 Kenichi Handa <handa@m17n.org>
16006
16007 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
16008 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
16009 (UNIDATA): New variable.
16010 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
16011 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
16012 $(RUN_TEMACS) unconditionally.
16013
160142008-02-01 Kenichi Handa <handa@m17n.org>
16015
16016 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
16017 (admindir): New variable.
16018 ($(lispsource)international/charprop.el): New target.
16019
160202008-02-01 Miles Bader <miles@gnu.org>
16021
16022 * character.c (chars-in-region): Remove obsolete function.
16023 (syms_of_character): Remove its initialization.
16024
160252008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
16026
16027 * w32select.c (validate_coding_system)
16028 (setup_windows_coding_system): New functions.
16029 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
16030 setup_windows_coding_system.
16031 (setup_config, Fw32_get_clipboard_data): Use
16032 validate_coding_system.
16033 (Fx_selection_exists): Move call to setup_config to a place
16034 where signals are allowed.
16035
16036 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
16037 (Fcheck_coding_system): Add declarations.
16038
160392008-02-01 Kenichi Handa <handa@m17n.org>
16040
16041 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
16042
160432008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16044
16045 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
16046 string as the second argument for x_new_fontset.
16047
160482008-02-01 Kenichi Handa <handa@m17n.org>
16049
16050 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
16051 (encode_coding_object): Use safe_call instead of call2.
16052
160532008-02-01 Kenichi Handa <handa@m17n.org>
16054
16055 * fontset.c (Fset_fontset_font): Check family element of a given vector.
16056
16057 * Makefile.in (lisp): Include charprop.el.
16058
160592008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16060
16061 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
16062 Not sure if it's unnecessary.
16063
160642008-02-01 Steven Tamm <steventamm@mac.com>
16065
16066 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
16067 some possibly unnecessary fontset checking code that crashed
16068 when creating a new frame.
16069
160702008-02-01 Kenichi Handa <handa@m17n.org>
16071
16072 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
16073 lookup_face.
16074
16075 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
16076
16077 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
16078
160792008-02-01 Kenichi Handa <handa@m17n.org>
16080
16081 * coding.c: Cancel the change done in HEAD on 2008-02-01.
16082 (coding_charset_list): New function.
16083
16084 * coding.h (coding_charset_list): Extern it.
16085
160862008-02-01 Kenichi Handa <handa@m17n.org>
16087
16088 * fontset.c (Fset_fontset_font): Call find_font_encoding with
16089 concatenation of family and registry.
16090
160912008-02-01 Kenichi Handa <handa@m17n.org>
16092
16093 * character.h (BYTE8_STRING): Fix typo.
16094
16095 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
16096 string to multibyte (sync to HEAD).
16097
16098 * casefiddle.c (casify_region): Handle changes in byte-length
16099 using replace_range_2 (sync to HEAD).
16100
161012008-02-01 Andreas Schwab <schwab@suse.de>
16102
16103 * chartab.c (map_char_table): GCPRO table and arg.
16104
161052008-02-01 Kenichi Handa <handa@m17n.org>
16106
16107 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
16108 already at limit.
16109
161102008-02-01 Kenichi Handa <handa@m17n.org>
16111
16112 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
16113 instead of fast_c_string_match_ignore_case.
16114 (find_font_encoding): Change argument to Lisp_Object. Use
16115 fast_string_match_ignore_case instead of
16116 fast_c_string_match_ignore_case. Change caller.
16117
161182008-02-01 Kenichi Handa <handa@m17n.org>
16119
16120 * xdisp.c (get_next_display_element): In unibyte case, decide to
16121 display in octal form by checking a character by
16122 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
16123
16124 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
16125
16126 * character.c (unibyte_has_multibyte_table): New variable.
16127
16128 * character.h (unibyte_has_multibyte_table): Extern it.
16129 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
16130
161312008-02-01 Kenichi Handa <handa@m17n.org>
16132
16133 * coding.c (encode_coding_iso_2022): Fix handling of charset
16134 annotation.
16135
161362008-02-01 Kenichi Handa <handa@m17n.org>
16137
16138 * coding.c (setup_coding_system): If coding_system is nil, use
16139 Qundecided.
16140 (Fterminal_coding_system): Return nil if terminal coding system is
16141 `undecided'.
16142 (syms_of_coding): Define coding-system `undecided' here. Setup
16143 terminal_coding as `undecided'.
16144
161452008-02-01 Kenichi Handa <handa@m17n.org>
16146
16147 * xdisp.c (message_dolog, set_message_1): Call
16148 unibyte_char_to_multibyte with arg type int.
16149
16150 * lread.c (read1): Fix reading of a char-table.
16151
16152 * print.c (print_object): Include sub char-table in circularities
16153 detection.
16154
161552008-02-01 Kenichi Handa <handa@m17n.org>
16156
16157 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
16158 Append the found sequences in car of ARGS instead of prepending.
16159
161602008-02-01 Kenichi Handa <handa@m17n.org>
16161
16162 * fileio.c (report_file_error): Make a unibyte string from
16163 strerror (errorno).
16164 (Fsubstitute_in_file_name): Fix the arg to
16165 unibyte_char_to_multibyte. It is evaluated twice.
16166
161672008-02-01 Kenichi Handa <handa@m17n.org>
16168
16169 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
16170
161712008-02-01 Kenichi Handa <handa@m17n.org>
16172
16173 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
16174 BOM is not found.
16175 (detect_coding, detect_coding_system): Optimization for ISO-2022
16176 when no 8-bit data is found.
16177
161782008-02-01 Jason Rumney <jasonr@gnu.org>
16179
16180 * w32fns.c (x_to_w32_font): Update to use new coding struct.
16181
161822008-02-01 Kenichi Handa <handa@m17n.org>
16183
16184 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
16185 CHARS.
16186
161872008-02-01 Steven Tamm <steventamm@mac.com>
16188
16189 * macterm.c (mac_encode_char): Add charset argument and update
16190 to use encoding_type.
16191 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
16192 switch to pure fontset.
16193 (decode_mac_font_name): Temporarily remove decoding.
16194 (x_font_name_to_mac_font_name): Temporarily remove encoding.
16195 (x_load_font): Temporarily remove encoding.
16196
161972008-02-01 Kenichi Handa <handa@m17n.org>
16198
16199 * xfaces.c (Fface_font): If frame is not on a window system,
16200 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
16201 refer to face->font.
16202 (split_font_name_into_vector, build_font_name_from_vector)
16203 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
16204 when HAVE_WINDOW_SYSTEM is defined.
16205
162062008-02-01 Kenichi Handa <handa@m17n.org>
16207
16208 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
16209 (x_produce_glyphs): Fix setting of members of cmp in case
16210 cmp->glyph_len is zero.
16211
16212 * fontset.c (Fset_fontset_font): Fix docstring.
16213 (Ffontset_info): Make it backward compatible. New arg ALL.
16214
162152008-02-01 Kim F. Storm <storm@cua.dk>
16216
16217 * process.c (read_process_output): Grow decoding_buf when needed;
16218 this could cause a crash in allocate_string and compact_small_strings.
16219
162202008-02-01 Kenichi Handa <handa@m17n.org>
16221
16222 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
16223
162242008-02-01 Kenichi Handa <handa@m17n.org>
16225
16226 * coding.c (setup_coding_system): Set coding->common_flags
16227 correctly for raw-text.
16228 (consume_chars): On encoding unibyte text by raw-text, don't check
16229 multibyte form.
16230 (encode_coding): On encoding by raw-text, never use translation tables.
16231
16232 * fileio.c (e_write): Short cut for the case of no encoding.
16233
162342008-02-01 Kenichi Handa <handa@m17n.org>
16235
16236 * coding.c (detect_coding, detect_coding_system): Delete unused
16237 variables.
16238
162392008-02-01 Kenichi Handa <handa@m17n.org>
16240
16241 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
16242 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
16243
162442008-02-01 Kenichi Handa <handa@m17n.org>
16245
16246 * coding.c (Ffind_coding_systems_region_internal): Include
16247 raw-text and no-conversion in the result.
16248
162492008-02-01 Kenichi Handa <handa@m17n.org>
16250
16251 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
16252 (load_font_get_repertory): Delete unnecessary check of ENCODING of
16253 FONT_DEF.
16254 (font_def_arg, add_arg, from_arg, to_arg): New args.
16255 (set_fontset_font): Change argument.
16256 (Fset_fontset_font): Fix for the case that TARGET is a script
16257 name and charset name.
16258 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
16259
162602008-02-01 Kenichi Handa <handa@m17n.org>
16261
16262 * fontset.c (fontset_font): Rename from fontset_face. Change return
16263 value.
16264 (face_suitable_for_char_p, face_for_char): Adjust for the change
16265 of fontset_font.
16266 (make_fontset_for_ascii_face): Fix setting of the fontset element
16267 for ASCII.
16268 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
16269 to get a font name.
16270 (Ffontset_info): Adjust for the change of fontset_font.
16271
16272 * coding.c (emacs_mule_char): Check invalid code more rigidly.
16273
16274 * character.h (LEADING_CODE_LATIN_1_MIN)
16275 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
16276
162772008-02-01 Kenichi Handa <handa@m17n.org>
16278
16279 * editfns.c (check_translation): New function.
16280 (Ftranslate_region_internal): Handle M:N mapping.
16281
162822008-02-01 Kenichi Handa <handa@m17n.org>
16283
16284 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
16285
162862008-02-01 Kenichi Handa <handa@m17n.org>
16287
16288 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
16289 goto invalid_code.
16290 (decode_coding_iso_2022): Fix handling of invalid designation.
16291
16292 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
16293 after calling code_conversion_save.
16294
162952008-02-01 Kenichi Handa <handa@m17n.org>
16296
16297 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
16298
16299 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
16300
16301 * fontset.c: Include "intervals.h".
16302 (fontset_face): Fix comparing of Lisp_Objects.
16303 (free_face_fontset, new_fontset_from_font_name): Fix
16304 Lisp_Object/int mixup.
16305
16306 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
16307
16308 * coding.c: Add many prototypes for static functions.
16309 (get_translation_table): Allow max_lookup to be NULL.
16310 (decode_coding, Ffind_coding_systems_region_internal)
16311 (Funencodable_char_position, Fcheck_coding_systems_region): Call
16312 get_translation_table with max_lookup NULL.
16313
163142008-02-01 Kenichi Handa <handa@m17n.org>
16315
16316 * coding.c (get_translation_table): Declare it as Lisp_Object.
16317 (LOOKUP_TRANSLATION_TABLE): New macro.
16318 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
16319 instead of CHAR_TABLE_REF.
16320
163212008-02-01 Kenichi Handa <handa@m17n.org>
16322
16323 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
16324 annotation data format.
16325 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
16326 Change arguments FROM and TO to single argument NCHARS. Change caller.
16327 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
16328 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
16329 (decode_coding_ccl, decode_coding_charset): Pay attention to
16330 coding->charbuf_used.
16331 (get_translation): New function.
16332 (produce_chars): New arguments translation_table and last_block.
16333 Translate characters here. Return number of carryover chars.
16334 Change caller.
16335 (produce_composition): New argument pos. Change caller.
16336 Adjust for the change of annotation data format.
16337 (produce_charset, produce_annotation): Likewise.
16338 (decode_coding, encode_coding): Don't call translate_chars.
16339 (consume_chars): New arg translation_table. Change caller.
16340 (translate_chars): Delete.
16341 (syms_of_coding): Make translation-table's number of extra slots 2.
16342
163432008-02-01 Kenichi Handa <handa@m17n.org>
16344
16345 * search.c (simple_search): Fix setting this_pos_byte in backward
16346 search.
16347
16348 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
16349 byte sequence.
16350 (detect_coding_ccl): Fix setting of the variable valids.
16351
163522008-02-01 Kenichi Handa <handa@m17n.org>
16353
16354 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
16355
16356 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
16357
16358 * editfns.c (Ftranslate_region_internal): Rename from
16359 Ftranslate_region. Accept a char-table in TABLE.
16360 (syms_of_editfns): Defsubr Stranslate_region_internal.
16361
16362 * xfaces.c (set_lface_from_font_name): If a font is specified for
16363 a frame, generate a fontset from the font.
16364 (build_scalable_font_name): If the scalable font is requested for
16365 a specific size, don't change that size.
16366 (try_font_list): Try a scalable font also in the case that a
16367 pattern string is specified.
16368
163692008-02-01 Kenichi Handa <handa@m17n.org>
16370
16371 * xfaces.c (Fface_font): New optional arg CHARACTER.
16372
163732008-02-01 Kenichi Handa <handa@m17n.org>
16374
16375 * charset.h (CHARSET_OFFSET): New macro.
16376
163772008-02-01 Kenichi Handa <handa@m17n.org>
16378
16379 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
16380
16381 * fontset.c (fontset_face): Handle the case that repertory is a
16382 char-table.
16383 (find_font_encoding): Return nil for unknown encoding.
16384 (Fset_fontset_font): Ignore a font of unknown encoding.
16385
163862008-02-01 Kenichi Handa <handa@m17n.org>
16387
16388 * keymap.c (describe_vector): Handle default value of a char table.
16389
16390 * fontset.c (fontset_face): Handle fallback fonts correctly.
16391 (Ffontset_info): Return infomation about fallback fonts.
16392
163932008-02-01 Kenichi Handa <handa@m17n.org>
16394
16395 * fontset.c (FONTSET_DEFAULT): New macro.
16396 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
16397 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
16398 the case that it is nil.
16399 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
16400 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
16401
16402 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
16403 subset or superset.
16404
164052008-02-01 Kenichi Handa <handa@m17n.org>
16406
16407 * emacs.c (main): Call init_charset after syms_of_XXX.
16408
16409 * charset.c (Vcharset_map_directory): Delete.
16410 (Vcharset_map_path): New variable.
16411 (load_charset_map_from_file): Use Vcharset_map_path instead.
16412 (init_charset): Initialize Vcharset_map_path.
16413 (syms_of_charset): Delete declaration of "charset-map-directory",
16414 add declaration of "charset-map-path".
16415
164162008-02-01 Kenichi Handa <handa@m17n.org>
16417
16418 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
16419 ASCII only string.
16420
16421 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
16422
16423 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
16424 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
16425
164262008-02-01 Kenichi Handa <handa@m17n.org>
16427
16428 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
16429
16430 * coding.c (QCmnemonic, QCdefalut_char)
16431 (QCdecode_translation_table, QCencode_translation_table)
16432 (QCpost_read_conversion, QCpre_write_conversion): New variables.
16433 (get_translation_table): Return a list of translation tables if
16434 necessary.
16435 (decode_coding): Call get_translation_table with ENCODEP 0.
16436 (char_encodable_p): If translation_table is non-nil, always call
16437 translate_char.
16438 (Fdefine_coding_system_internal): Accept list of translation
16439 tables as :encode-translation-table and :decode-translation-table.
16440 (Fcoding_system_put): New function.
16441 (syms_of_coding): Declare new symbols. Defsubr
16442 Scoding_system_put.
16443 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
16444 typically JISX0212.
16445
16446 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
16447 when the charset is superset type.
16448
16449 * character.c (translate_char): Accept list of translation tables.
16450
164512008-02-01 Kenichi Handa <handa@m17n.org>
16452
16453 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
16454 (CODING_ATTR_TRANS_TBL): New macro.
16455
16456 * coding.c (get_translation_table): New function.
16457 (translate_chars): Fix the bug of skipping annotation data.
16458 (decode_coding, encode_coding): Utilize get_translation_table.
16459 (char_encodable_p, Funencodable_char_position): Translate char if
16460 necessary.
16461 (Ffind_coding_systems_region_internal)
16462 (Fcheck_coding_systems_region): Setup translation table for encode
16463 in a coding system attribute vector in advance.
16464 (Fdefine_coding_system_internal): Allow a symbol as translation
16465 table. For shift-jis type coding system, allow 4th charset.
16466
164672008-02-01 Kenichi Handa <handa@m17n.org>
16468
16469 * coding.c (decode_coding_sjis): Check the first byte rigidly.
16470
16471 * xdisp.c (get_next_display_element): Pass -1 as POS to
16472 FACE_FOR_CHAR if displaying a C-string.
16473
164742008-02-01 Kenichi Handa <handa@m17n.org>
16475
16476 * composite.c (get_composition_id): Handle xoff and yoff in a
16477 composition rule.
16478
16479 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
16480 (struct composition): New member lbearing and rbearing.
16481
16482 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
16483 (x_get_glyph_overhangs): Handle a composition glyph.
16484 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
16485
16486 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
16487 composition glyph.
16488
164892008-02-01 Kenichi Handa <handa@m17n.org>
16490
16491 * print.c: Include charset.h.
16492 (Vprint_charset_text_property): New variable.
16493 (Qdefault): Extern it.
16494 (PRINT_STRING_NON_CHARSET_FOUND)
16495 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
16496 (print_check_string_result): New variable.
16497 (print_check_string_charset_prop): New function.
16498 (print_prune_charset_plist): New variable.
16499 (print_prune_string_charset): New function.
16500 (print_object): Call print_prune_string_charset if
16501 Vprint_charset_text_property is not t.
16502 (print_interval): Print nothing if interval->plist is nil.
16503 (syms_of_print): Declare Vprint_charset_text_property as a lisp
16504 variable. Init and staticpro print_prune_charset_plist.
16505
165062008-02-01 Kenichi Handa <handa@m17n.org>
16507
16508 * fontset.c (new_fontset_from_font_name): Use the specified font
16509 for all characters in the new fontset.
16510
16511 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
16512 OBJECT args.
16513
16514 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
16515 OBJECT args for composition too.
16516
16517 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
16518 OBJECT args.
16519
165202008-02-01 Kenichi Handa <handa@m17n.org>
16521
16522 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
16523
16524 * fontset.c (reorder_font_vector): Adjust for the change of
16525 FONT_DEF format.
16526 (fontset_face): New arg id. Change caller.
16527 (face_for_char): New args pos and object.
16528 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
16529 (fs_query_fontset): Check NAME by Fassoc too.
16530 (Fset_fontset_font): Allow non-XLFD font name.
16531 (Ffontset_info): Adjust for the change of FONT_DEF format.
16532
16533 * fontset.h (face_for_char): Adjust prototype.
16534
16535 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
16536 (append_space, extend_face_to_end_of_line)
16537 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
16538 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
16539
16540 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
16541 POS and OBJECT args.
16542
16543 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
16544 POS and OBJECT args.
16545
165462008-02-01 Jason Rumney <jasonr@gnu.org>
16547
16548 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
16549 of GlobalAlloc'ed memory.
16550
165512008-02-01 Kenichi Handa <handa@m17n.org>
16552
16553 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
16554
16555 * charset.h (charset_table_used): Delete extern.
16556
16557 * charset.c (charset_table_used): Make it static.
16558 (map_charset_chars): Fix args to c_function with.
16559
16560 * chartab.c (map_sub_char_table_for_charset): Fix args to
16561 c_function with.
16562
16563 * coding.h (enum coding_result_code): Delete
16564 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
16565
16566 * coding.c (Qinsufficient_source, Qinconsistent_eol)
16567 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
16568 (Vlast_code_conversion_error): New variables.
16569 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
16570 (ONE_MORE_BYTE): Record error if any instead of signaling an
16571 error. If non-ASCII multibyte char is found, return the negative
16572 value of the code. All callers changed to check it.
16573 (ONE_MORE_BYTE_NO_CHECK): Likewise.
16574 (record_conversion_result): New function. Change all codes setting
16575 coding->result to call this function.
16576 (detect_coding_utf_8, decode_coding_utf_8)
16577 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
16578 Don't use the local variable incomplete.
16579 (emacs_mule_char): Change the second arg to `const'.
16580 (decode_coding): Fix of flushing out unprocessed data.
16581 (make_conversion_work_buffer): Fix making of a work buffer.
16582 (decode_coding_object): Return coding->dst_object.
16583
16584 * fontset.c (set_fontset_font): Fix args.
16585
16586 * lisp.h (CHARACTERBITS): Define as 22.
16587
16588 * process.c (send_process): Be sure to set coding->src_multibyte.
16589
16590 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
16591
165922008-02-01 Kenichi Handa <handa@m17n.org>
16593
16594 * xdisp.c (handle_auto_composed_prop): Give limit to
16595 Fnext_single_char_property_change.
16596
165972008-02-01 Kenichi Handa <handa@m17n.org>
16598
16599 * composite.c (syms_of_composite): Don't make the composition hash
16600 table weak.
16601
16602 * fontset.c (Fset_fontset_font): Fix docstring.
16603
16604 * lisp.h (detect_coding_system): Adjust prototype.
16605
16606 * fileio.c (kill_workbuf_unwind): Delete this function.
16607 (Finsert_file_contents): Adjust the call of detect_coding_system.
16608 Get conversion_buffer by code_conversion_save. Use the macro
16609 CODING_MAY_REQUIRE_DECODING. After decoding, update
16610 coding_system.
16611
16612 * coding.h (make_conversion_work_buffer): Delete extern.
16613 (code_conversion_save): Extern it.
16614
16615 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
16616 (CODING_GET_INFO): Delete argument eol_type. Change callers.
16617 (decode_coding_utf_8): Don't do eol converion.
16618 (detect_coding_utf_16): Check coding->src_chars, not
16619 coding->src_bytes. Add heuristics for those that have no signature.
16620 (decode_coding_emacs_mule, decode_coding_iso_2022)
16621 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
16622 Don't do eol converion.
16623 (adjust_coding_eol_type): Return a new coding system.
16624 (detect_coding): Don't detect eol. Fix for utf-16 detection.
16625 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
16626 each change.
16627 (decode_coding): Pay attention to undo_list. Do eol conversion for
16628 all types of coding-systems (if necessary).
16629 (Vcode_conversion_work_buf_list): Delete it.
16630 (Vcode_conversion_reused_workbuf): Rename from
16631 Vcode_conversion_reused_work_buf.
16632 (Vcode_conversion_workbuf_name): New variable.
16633 (reused_workbuf_in_use): New variable.
16634 (make_conversion_work_buffer): Delete the arg DEPTH.
16635 (code_conversion_restore): Change argument to cons.
16636 (code_conversion_save): Delete the argument BUFFER. Change callers.
16637 (detect_coding_system): New argument src_chars. Change callers.
16638 Fix for utf-16 detection.
16639 (init_coding_once): Don't use ISO_carriage_return.
16640 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
16641 reused_workbuf_in_use.
16642
166432008-02-01 Kenichi Handa <handa@m17n.org>
16644
16645 * keymap.c (store_in_keymap): Pay attention to the case that idx
16646 is a cons specifying a character range.
16647
166482008-02-01 Kenichi Handa <handa@m17n.org>
16649
16650 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
16651 HANDLED_RECOMPUTE_PROPS.
16652
16653 * coding.c (Fdefine_coding_system_internal): Fix checking of
16654 ascii compatibility.
16655
166562008-02-01 Kenichi Handa <handa@m17n.org>
16657
16658 * charset.c (find_charsets_in_text): Delete unused locale variable.
16659 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
16660
16661 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
16662 Resync charset_list to Vemacs_mule_charset_list.
16663
16664 * keymap.c (store_in_keymap): Pay attention to the case that idx
16665 is a cons specifying a character range.
16666
166672008-02-01 Kenichi Handa <handa@m17n.org>
16668
16669 * composite.c (update_compositions): Bind inhibit-read-only, etc
16670 to t before calling remove-list-of-text-properties.
16671
16672 * print.c (print_object): Always print ASCII chars as is.
16673
166742008-02-01 Kenichi Handa <handa@m17n.org>
16675
16676 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
16677
16678 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
16679 is a char table.
16680
166812008-02-01 Kenichi Handa <handa@m17n.org>
16682
16683 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
16684
166852008-02-01 Kenichi Handa <handa@m17n.org>
16686
16687 * xfaces.c (set_lface_from_font_name): Fix for the case that
16688 FONTNAME is not fontset name.
16689
166902008-02-01 Kenichi Handa <handa@m17n.org>
16691
16692 * fns.c (base64_encode_1): Fix previous change.
16693
166942008-02-01 Kenichi Handa <handa@m17n.org>
16695
16696 * fontset.c (set_fontset_font): New function.
16697 (Fset_fontset_font): If a font is specified for a charset, use
16698 map_charset_chars to store the font spec in a fontset.
16699
167002008-02-01 Kenichi Handa <handa@m17n.org>
16701
16702 * fontset.c (fontset_face): Create a fallback fontset on demand.
16703 (make_fontset): Don't create a fallback fontset here.
16704 (free_face_fontset): Free a fallback fontset (if any) too.
16705 (n_auto_fontsets): Delete this variable.
16706 (auto_fontset_alist): New variable.
16707 (new_fontset_from_font_name): Check auto_fontset_alist.
16708 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
16709 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
16710 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
16711 Defsubr Sfontset_list_all.
16712
167132008-02-01 Kenichi Handa <handa@m17n.org>
16714
16715 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
16716
167172008-02-01 Kenichi Handa <handa@m17n.org>
16718
16719 * fontset.c (Fnew_fontset): Check NAME more rigidly.
16720
167212008-02-01 Kenichi Handa <handa@m17n.org>
16722
16723 * editfns.c (Fgoto_char): Fix docstring.
16724
167252008-02-01 Kenichi Handa <handa@m17n.org>
16726
16727 * insdel.c (insert_from_gap): Adjust intervals correctly.
16728
167292008-02-01 Jason Rumney <jasonr@gnu.org>
16730
16731 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
16732 (pfnGetFontUnicodeRanges): New dynamically loaded function.
16733 (w32_initialize): Try to load it.
16734 (x_get_font_repertory): Use it if available.
16735 (w32_encode_char): Add shortcut for unicode output.
16736
16737 * w32fns.c (w32_load_system_font): Default charset to -1.
16738 (x_to_w32_charset): Match all fonts for unicode.
16739 (w32_to_x_charset): New parameter matching. Don't return partial
16740 or wildcard charsets.
16741 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
16742 (w32_codepage_for_font): Return CP_UNICODE for unicode.
16743 (w32_to_x_font): Match charset to real charset.
16744 (enum_font_cb2): Always list unicode versions.
16745
16746 * makefile.w32-in (temacs): Increase EMHEAP.
16747
167482008-02-01 Jason Rumney <jasonr@gnu.org>
16749
16750 * w32term.c (w32_encode_char): New charset parameter.
16751 font_info.encoding becomes encoding_type.
16752 (x_get_font_repertory): New function. Warning: stub only!
16753 (x_new_font): Return quickly if font already set.
16754 (x_new_fontset): fontsetname parameter is Lisp_Object.
16755 Use new fs_query_fontset. Try new_fontset_from_font_name.
16756 Use fontset_name for return value.
16757
16758 * w32term.h: Declare x_get_font_repertory.
16759
16760 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
16761 place of find_charset_in_text. Use encode_coding_object in place
16762 of encode_coding.
16763 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
16764 decode_coding.
16765
16766 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
16767 of x_new_fontset.
16768 (w32_load_system_font): Initialize charset as unicode.
16769 font_info.encoding becomes encoding_type.
16770 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
16771 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
16772 (syms_of_w32fns): Set get_font_repertory_func.
16773
16774 * w32console.c: Include character.h. Use terminal_encode_buffer
16775 from term.c.
16776 (write_glyphs): Use new version of encode_terminal_code. Use
16777 encode_coding_object in place of encode_coding.
16778
16779 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
16780 encoding becomes encoding_type.
16781
16782 * term.c (terminal_encode_buffer): Make externally visible.
16783
16784 * makefile.w32-in: Add character.h dependancies.
16785 (character.o, chartab.o): New targets.
16786
167872008-02-01 Kenichi Handa <handa@m17n.org>
16788
16789 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
16790 CODING_ID_EOL_TYPE.
16791
167922008-02-01 Andreas Schwab <schwab@suse.de>
16793
16794 * coding.c (produce_chars): Revert last change.
16795
167962008-02-01 Kenichi Handa <handa@m17n.org>
16797
16798 * charset.h (charset_unicode): Extern it.
16799
16800 * charset.c (string_xstring_p): Check by (C >= 0x100).
16801 (find_charsets_in_text): Change format of the arc CHARSETS. New
16802 arg MULTIBYTE.
16803 (Ffind_charset_region, Ffind_charset_string): Adjust for the
16804 change of find_charsets_in_text.
16805 (Fsplit_char): Fix doc. Never return unknown.
16806
16807 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
16808
16809 * coding.c (Fdefine_coding_system_alias): Update
16810 Vcoding_system_list.
16811
16812 * fontset.c (load_font_get_repertory): Pay attention to the case
16813 that ENCODING of a font is specified by a char-table.
16814
16815 * xterm.c (x_get_font_repertory): Handle the case that the
16816 encoding of font is other than Unicode.
16817
168182008-02-01 Kenichi Handa <handa@m17n.org>
16819
16820 * term.c (encode_terminal_code): Don't handle glyph-table. Check
16821 if a character is encodable by the terminal coding system. If
16822 not, produces proper number of `?'s. Update
16823 terminal_encode_buffer and terminal_encode_buf_size if necessary.
16824 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
16825
168262008-02-01 Kenichi Handa <handa@m17n.org>
16827
16828 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
16829 variables.
16830 (encode_terminal_code): Change argument. Encode multiple
16831 characters at once. Store the result of encoding in
16832 terminal_encode_buffer.
16833 (write_glyphs, insert_glyphs): Adjust for the change of
16834 encode_terminal_code.
16835 (term_init): Initialize terminal_encode_buffer and
16836 terminal_encode_buf_size.
16837
16838 * coding.c (consume_chars): If coding->src_object is nil, don't
16839 check annotation.
16840
168412008-02-01 Kenichi Handa <handa@m17n.org>
16842
16843 * character.c (char_string): Use ASCII_CHAR_P instead of
16844 SINGLE_BYTE_CHAR_P.
16845
168462008-02-01 Kenichi Handa <handa@m17n.org>
16847
16848 * xdisp.c (handle_auto_composed_prop): Check if the last
16849 characters of auto-composed region is newly composed with the
16850 following characters.
16851 (handle_composition_prop): Fix checking of point being inside
16852 composition.
16853
168542008-02-01 Kenichi Handa <handa@m17n.org>
16855
16856 * fns.c (concat): Don't change multibyteness of the result by
16857 concatenating an 8-bit character.
16858
16859 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
16860 multibyteness of the result when newelt is an 8-bit character.
16861
168622008-02-01 Dave Love <fx@gnu.org>
16863
16864 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
16865 EMACS_INT.
16866
16867 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
16868
16869 * xfaces.c (face_numeric_value): Declare dim size_t.
16870 (Finternal_lisp_face_equal_p): Remove unused f.
16871
16872 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
16873 (MATRIX_ROW): Remove unused vars.
16874 (draw_glyphs, x_insert_glyphs, fast_find_position)
16875 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
16876 byte/char counts.
16877
16878 * regex.c (regex_compile): Remove unused var.
16879
16880 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16881
16882 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
16883 (Faccessible_keymaps, where_is_internal): Remove unused vars.
16884
16885 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
16886
16887 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
16888
16889 * fileio.c (Fwrite_region): Remove unused var.
16890
16891 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
16892 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
16893
16894 * composite.c (Fremove_list_of_text_properties): Declare.
16895
16896 * coding.c (inhibit_pre_post_conversion): Remove (unused).
16897 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
16898 (coding_inherit_eol_type): Remove unused attrs.
16899 (detect_coding): Cast arg of detect_eol.
16900
16901 * charset.c (syms_of_charset): Remove unused var p.
16902 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
16903 byte/char counts.
16904
16905 * casetab.c (set_case_table): Remove unused var.
16906
16907 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
16908 unused vars.
16909
169102008-02-01 Dave Love <fx@gnu.org>
16911
16912 * xterm.c (x_bitmap_mask): Declare.
16913
169142008-02-01 Dave Love <fx@gnu.org>
16915
16916 * xterm.c (x_term_init): Fix type error.
16917
16918 * lisp.h: Add Funibyte_char_to_multibyte.
16919
16920 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
16921 (Fset_coding_system_priority): Doc fix.
16922
16923 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
16924
16925 * indent.c (check_composition): Make start and end EMACS_INT.
16926
16927 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
16928
16929 * xdisp.c (handle_composition_prop, check_point_in_composition):
16930 Make buffer positions EMACS_INT.
16931
16932 * composite.c (find_composition, run_composition_function)
16933 (update_compositions, Ffind_composition_internal): Make buffer
16934 positions EMACS_INT.
16935
16936 * composite.h (find_composition, update_compositions): Make
16937 position args EMACS_INT.
16938
16939 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
16940
16941 * intervals.c (get_property_and_range):
16942 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
16943
16944 * unexalpha.c: Don't include varargs.h.
16945
169462008-02-01 Dave Love <fx@gnu.org>
16947
16948 * coding.h (ENCODE_UTF_8): New.
16949
16950 * Makefile.in (gtkutil.o): Depend on coding.h.
16951
16952 * coding.c (Fset_coding_system_priority): Doc fix.
16953
169542008-02-01 Kenichi Handa <handa@m17n.org>
16955
16956 * fileio.c (Finsert_file_contents): Call setup_coding_system in
16957 the case of auto saving.
16958
169592008-02-01 Andreas Schwab <schwab@suse.de>
16960
16961 * chartab.c (map_char_table, map_char_table_for_charset): Protect
16962 `range' from GC.
16963
169642008-02-01 Kenichi Handa <handa@m17n.org>
16965
16966 * coding.c (decode_coding_sjis): Check bytes more rigidly.
16967
169682008-02-01 Kenichi Handa <handa@m17n.org>
16969
16970 * fileio.c (choose_write_coding_system): Return a decided coding system.
16971 (Fwrite_region): Set Vlast_coding_system_used to the return value
16972 of choose_write_coding_system.
16973
169742008-02-01 Kenichi Handa <handa@m17n.org>
16975
16976 * charset.c (Fset_charset_priority): Pay attention to duplicated
16977 arguments.
16978
16979 * coding.c (QCcategory): New variable.
16980 (syms_of_coding): Defsym it. Set all elements of
16981 Vcoding_category_table and their symbol values.
16982 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
16983 coding-category-XXX, and coding-category-list.
16984 (Fdefine_coding_system_internal): Add category in the plist.
16985
169862008-02-01 Kenichi Handa <handa@m17n.org>
16987
16988 * callproc.c (Fcall_process): Handle carryover correctly.
16989
16990 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
16991 (raw_text_coding_system): Check NILP (coding_system).
16992 (coding_inherit_eol_type): Check NILP (coding_system) and
16993 NILP (parent).
16994 (consume_chars): Fix for the case of raw-text.
16995
16996 * process.c (read_process_output): Handle carryover correctly.
16997
169982008-02-01 Dave Love <fx@gnu.org>
16999
17000 * regex.c (re_search_2): Fix last change.
17001
170022008-02-01 Kenichi Handa <handa@m17n.org>
17003
17004 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
17005 target_multibyte. Even in a unibyte case, return a converted
17006 multibyte char.
17007 (GET_CHAR_AFTER): New macro.
17008 (PATFETCH): Translate via multibyte char.
17009 (HANDLE_UNIBYTE_RANGE): Delete this macro.
17010 (SETUP_MULTIBYTE_RANGE): New macro.
17011 (regex_compile): Setup compiled code so that its multibyteness
17012 matches that of a target. Fix the handling of "[X-YZ]" using
17013 SETUP_MULTIBYTE_RANGE.
17014 (analyse_first) <charset>: For filling fastmap for all multibyte
17015 characters, don't check by BASE_LEADING_CODE_P.
17016 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
17017 the same as RE_MULTIBYTE_P (bufp) now.
17018 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
17019 (TARGET_CHAR_AND_LENGTH): Delete this macro.
17020 (TRANSLATE_VIA_MULTIBYTE): New macro.
17021 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
17022 It is the same as RE_MULTIBYTE_P (bufp) now.
17023 <exactn>: Translate via multibyte.
17024 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
17025 translate it.
17026 <charset, charset_not>: Fetch a character by
17027 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
17028 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
17029 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
17030 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
17031 by GET_CHAR_AFTER.
17032 (bcmp_translate): Likewise.
17033
17034 * search.c (compile_pattern): Check the member target_multibyte,
17035 not the member multibyte of buf.
17036
17037 * lread.c (read1): While reading a string, set force_singlebyte
17038 and force_multibyte correctly.
17039
17040 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
17041 up of unibyte_to_multibyte_table.
17042
170432008-02-01 Kenichi Handa <handa@m17n.org>
17044
17045 * coding.c (setup_coding_system): If coding has
17046 post-read-conversion or pre-write-conversion, set
17047 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
17048 respectively.
17049 (decode_coding_gap): Run post-read-conversion if any.
17050
17051 * fileio.c (Finsert_file_contents): Even if we read into a
17052 unibyte buffer, check if we must decode the result or not.
17053
170542008-02-01 Kenichi Handa <handa@m17n.org>
17055
17056 * coding.c (make_conversion_work_buffer): Change the work buffer
17057 name to the same one as that of Emacs 21.
17058
170592008-02-01 Kenichi Handa <handa@m17n.org>
17060
17061 * coding.h (make_conversion_work_buffer): Adjust prototype.
17062 (code_conversion_restore): Don't extern it.
17063
17064 * coding.c (detected_mask): Delete unused variable.
17065 (decode_coding_iso_2022): Pay attention to the byte sequence of
17066 CTEXT extended segment, and retain those bytes as is.
17067 (decode_coding_ccl): Delete unused variable `valids'.
17068 (setup_coding_system): Delete unused variable `category'.
17069 (consume_chars): Delete unused variable `category'. Make it work
17070 for non-multibyte case.
17071 (make_conversion_work_buffer): Change argument.
17072 (saved_coding): Delete unused variable.
17073 (code_conversion_restore): Don't check saved_coding->destination.
17074 (code_conversion_save): New function.
17075 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
17076 instead of record_unwind_protect.
17077 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
17078 (detect_coding_system): Delete unused variable `mask'.
17079 (Fdefine_coding_system_internal): Delete unused variable id.
17080
17081 * fileio.c (kill_workbuf_unwind): New function.
17082 (Finsert_file_contents): On replacing, call
17083 make_conversion_work_buffer with correct args, and call
17084 record_unwind_protect with the first arg kill_workbuf_unwind.
17085
17086 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
17087
170882008-02-01 Kenichi Handa <handa@m17n.org>
17089
17090 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
17091 (fontset_add): Fix for the case that TO is less than TO1.
17092 (Ffontset_info): Don't use fallback fontset on checking the
17093 default fontset.
17094 (dump_fontset): New function for debugging.
17095
17096 * coding.c (Fdefine_coding_system_internal): Fix for the case that
17097 coding_type is Qcharset.
17098
170992008-02-01 Kenichi Handa <handa@m17n.org>
17100
17101 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
17102 (map_char_table): Don't inherit the value from the parent on
17103 initializing VAL. Adjust for the above change.
17104
171052008-02-01 Kenichi Handa <handa@m17n.org>
17106
17107 * coding.c (Qsignature, Qendian): Delete these variables.
17108 (syms_of_coding): Don't initialize them.
17109 (CATEGORY_MASK_UTF_16_AUTO): New macro.
17110 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
17111 detect_info->found.
17112 (decode_coding_utf_16): Don't detect BOM here.
17113 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
17114 is NOT utf_16_without_bom.
17115 (setup_coding_system): For a coding system of type utf-16, check
17116 if the attribute :endian is Qbig or not (not nil or not), and set
17117 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
17118 (detect_coding): If coding type is utf-16 and BOM detection is
17119 required, detect it.
17120 (Fdefine_coding_system_internal): For a coding system of type
17121 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
17122
171232008-02-01 Kenichi Handa <handa@m17n.org>
17124
17125 * coding.c (coding_set_source): Fix for the case that the current
17126 buffer is different from coding->src_object.
17127 (decode_coding_object): Don't use the conversion work buffer if
17128 DST_OBJECT is a buffer.
17129
171302008-02-01 Dave Love <fx@gnu.org>
17131
17132 * lread.c (read_emacs_mule_char) [len==2]: Index
17133 emacs_mule_charset correctly.
17134
171352008-02-01 Dave Love <fx@gnu.org>
17136
17137 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
17138 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
17139 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
17140 treated specially.)
17141 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
17142 (detected_mask): Remove Big5 bits.
17143
171442008-02-01 Kenichi Handa <handa@m17n.org>
17145
17146 The following changes are to make the font rescaling facility
17147 compatible with Emacs 21.
17148
17149 * xfaces.c (Vface_font_rescale_alist): Rename from
17150 Vface_resizing_fonts.
17151 (struct font_name): Rename member resizing_ratio to rescale_ratio.
17152 (font_rescale_ratio): Rename from font_resizing_ratio.
17153 (split_font_name): Set font->rescale_ratio.
17154 (better_font_p): Pay attention to font->rescale_ratio.
17155 (build_scalable_font_name): Likewise. Change RESX, and RESY
17156 fields.
17157 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
17158
171592008-02-01 Kenichi Handa <handa@m17n.org>
17160
17161 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
17162 (Qutf_16_le): Remove these variables.
17163 (syms_of_coding): Don't DEFSYM them.
17164 (decode_coding_utf_16): Fix handling of BOM.
17165 (encode_coding_utf_16): Fix handling of BOM.
17166
171672008-02-01 Kenichi Handa <handa@m17n.org>
17168
17169 * fileio.c (Finsert_file_contents): On replacing, before decoding
17170 the file into the work buffer, set point of the work buffer to the end.
17171
171722008-02-01 Dave Love <fx@gnu.org>
17173
17174 * coding.c (Fcheck_coding_systems_region): Fix type errors.
17175
171762008-02-01 Dave Love <fx@gnu.org>
17177
17178 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17179 and fix C types.
17180
171812008-02-01 Kenichi Handa <handa@m17n.org>
17182
17183 * xdisp.c (SKIP_GLYPHS): New macro.
17184 (set_cursor_from_row): Pay attention to string display properties.
17185
17186 * category.c (copy_category_entry): Fix for the case that RANGE
17187 is an integer.
17188
17189 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
17190
17191 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
17192
171932008-02-01 Kenichi Handa <handa@m17n.org>
17194
17195 * charset.c (Fcharset_id_internal): New function.
17196 (syms_of_charset): Defsubr it.
17197
17198 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
17199 with the last arg charset_list acquired from coding.
17200 (Fdefine_coding_system_internal): For ccl-based coding system, fix
17201 the attribute coding_attr_ccl_valids.
17202
17203 * coding.h (enum define_coding_ccl_arg_index): Set the first
17204 member coding_arg_ccl_decoder to coding_arg_max.
17205
17206 * ccl.h (ccl_driver): Adjust prototype.
17207
17208 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
17209 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 17210 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
17211 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
17212 last arg Qnil.
17213
172142008-02-01 Kenichi Handa <handa@m17n.org>
17215
17216 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
17217 call encode_char.
17218
17219 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
17220
172212008-02-01 Dave Love <fx@gnu.org>
17222
17223 * composite.c (syms_of_composite): Make composition_hash_table weak.
17224
172252008-02-01 Kenichi Handa <handa@m17n.org>
17226
17227 * dispextern.h (check_face_attributes, generate_ascii_font_name)
17228 (font_name_registry): Don't extern them.
17229 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
17230
17231 * fontset.h (Qfontset): Don't extern it.
17232 (new_fontset_from_font_name): Extern it.
17233
17234 * fontset.c: Give 8 extra slots to fontset objects.
17235 (Qfontset_info): New variable.
17236 (syms_of_fontset): Defsym it.
17237 (FONTSET_FALLBACK): New macro.
17238 (fontset_face): Try also the default fontset.
17239 (make_fontset): Realize a fallback fontset from the default fontset.
17240 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
17241 using split_font_name_into_vector and build_font_name_from_vector.
17242 (Fset_fontset_font): Access the elements of font_spec by enum
17243 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
17244 name by using split_font_name_into_vector.
17245 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
17246 generate a proper font name from the fontset name. Update
17247 Vfontset_alias_alist.
17248 (n_auto_fontsets): New variable.
17249 (new_fontset_from_font_name): New function.
17250 (Ffont_info): Store the information about fonts generated from the
17251 default fontset in the first extra slot of the returned char-table.
17252
17253 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
17254 (font_name_registry): Delete function.
17255 (split_font_name_into_vector): New function.
17256 (build_font_name_from_vector): New function.
17257 (font_list): The argument REGISTRY is now a list of registry names.
17258 (choose_face_font): If we are choosing an ASCII font, and ATTRS
17259 specifies an explicit font name, return the name as is. Make a
17260 list of registy names.
17261
17262 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
17263 of x_new_fontset.
17264 (Fx_create_frame): Don't call x_new_fontset here. Just use
17265 x_list_fonts to check the existence of fonts.
17266
17267 * xterm.h (x_new_fontset): Adjust prototype.
17268
17269 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
17270 string. Use new_fontset_from_font_name to create a fontset from a
17271 font name.
17272
172732008-02-01 Kenichi Handa <handa@m17n.org>
17274
17275 * syntax.c (Vfind_word_boundary_function_table): New name for
17276 Vnext_word_boundary_function_table.
17277 (find-word-boundary-function-table): New name for
17278 next-word-boundary-function-table.
17279
172802008-02-01 Dave Love <fx@gnu.org>
17281
17282 * Makefile.in: Fix some dependencies.
17283
17284 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
17285 set it to nil before returning.
17286
17287 * composite.c (update_compositions): Fix type error.
17288
17289 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
17290
172912008-02-01 Kenichi Handa <handa@m17n.org>
17292
17293 * xterm.c (x_new_font): Optimize for the case that the font is
17294 already set for the frame.
17295
172962008-02-01 Kenichi Handa <handa@m17n.org>
17297
17298 * chartab.c (char_table_ascii): Check if the char table contents
17299 is sub-char-table or not.
17300 (char_table_set, char_table_set_range): Fix argument to
17301 char_table_ascii.
17302
17303 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
17304 (detect_coding_utf_8, detect_coding_utf_16)
17305 (detect_coding_emacs_mule, detect_coding_iso_2022)
17306 (detect_coding_sjis, detect_coding_big5)
17307 (detect_coding_ccl, detect_coding_charset): Change argument MASK
17308 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
17309 sequence is valid in this coding system. Change callers.
17310 (MAX_ANNOTATION_LENGTH): New macro.
17311 (ADD_ANNOTATION_DATA): New macro.
17312 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
17313 ADD_ANNOTATION_DATA. Change the format of annotation data.
17314 (ADD_CHARSET_DATA): New macro.
17315 (emacs_mule_char): New argument ID. Change callers.
17316 (decode_coding_emacs_mule, decode_coding_iso_2022)
17317 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
17318 Produce charset annotation data in coding->charbuf.
17319 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
17320 to charset annotation data in coding->charbuf.
17321 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
17322 coding->common_flags if the coding system is iso-2022 based and
17323 uses designation.
17324 (produce_composition): Adjust for the new annotation data format.
17325 (produce_charset): New function.
17326 (produce_annotation): Handle charset annotation.
17327 (handle_composition_annotation, handle_charset_annotation): New
17328 functions.
17329 (consume_chars): Handle charset annotation. Utilize the above two
17330 functions.
17331 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
17332 buffer, get the deleted text as a string and set
17333 coding->src_object to that string.
17334 (detect_coding, detect_coding_system): Use the new struct
17335 coding_detection_info.
17336
17337 * coding.h (struct coding_detection_info): New structure.
17338 (struct coding_system): Adjust prototype of the member `detector'.
17339 (CODING_ANNOTATE_CHARSET_MASK): New macro.
17340
173412008-02-01 Kenichi Handa <handa@m17n.org>
17342
17343 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
17344
173452008-02-01 Dave Love <fx@gnu.org>
17346
17347 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
17348 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
17349 to new local and nullify apropos_accumulate before returning.
17350 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
17351
173522008-02-01 Kenichi Handa <handa@m17n.org>
17353
17354 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
17355 correctly.
e3eea1fc 17356
aac0c6e3
MR
173572008-02-01 Dave Love <fx@gnu.org>
17358
17359 * fns.c (Flanginfo): Call synchronize_system_time_locale.
17360
173612008-02-01 Kenichi Handa <handa@m17n.org>
17362
17363 The following changes are to make character composition happen
17364 automatically on displaying.
17365
17366 * Makefile.in (lisp, shortlisp): Add composite.elc.
17367
17368 * composite.h (Qauto_composed, Vauto_composition_function)
17369 (Qauto_composition_function): Extern them.
17370
17371 * composite.c (Vcomposition_function_table)
17372 (Qcomposition_function_table): Delete variables.
17373 (Qauto_composed, Vauto_composition_function)
17374 (Qauto_composition_function): New variables.
17375 (run_composition_function): Don't call
17376 compose-chars-after-function.
17377 (update_compositions): Clear `auto-composed' text property.
17378 (compose_chars_in_text): Delete this function.
17379 (syms_of_composite): Staticpro Qauto_composed and
17380 Qauto_composition_function. Declare Vauto_composition_function as
17381 a Lisp variable.
17382
17383 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
17384
17385 * xdisp.c (it_props): Add an entry for Qauto_composed.
17386 (handle_auto_composed_prop): New function.
17387
17388 * xselect.c (selection_data_to_lisp_data): Don't call
17389 compose_chars_in_text.
17390
173912008-02-01 Dave Love <fx@gnu.org>
17392
17393 * keyboard.c (read_char): Modify checking around use of
17394 Vkeyboard_translate_table.
17395
17396 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17397 and fix C types.
17398
173992008-02-01 Kenichi Handa <handa@m17n.org>
17400
17401 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
17402 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
17403 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
17404 the case that the last byte is '\r' correctly.
17405 (decode_coding): Flush out the unprocessed data correctly.
17406 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
17407
174082008-02-01 Dave Love <fx@gnu.org>
17409
17410 * xterm.c (XTread_socket): Fix changes for defined keysyms.
17411 Add XK_ISO... case.
17412 (xaw_scroll_callback): Revert last change.
17413
174142008-02-01 Kenichi Handa <handa@m17n.org>
17415
17416 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
17417
174182008-02-01 Kenichi Handa <handa@m17n.org>
17419
17420 * xfaces.c (Vface_resizing_fonts): New variable.
17421 (struct font_name): New member `resizing_ratio'.
17422 (font_resizing_ratio): New function.
17423 (split_font_name): Set font->resizing_ratio.
17424 (better_font_p): Pay attention to font->resizing_ratio.
17425 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
17426 RESX, and RESY fields.
17427 (try_alternative_families): Try scalable fonts if
17428 Vscalable_fonts_allowed is not Qt.
17429 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
17430
174312008-02-01 Dave Love <fx@gnu.org>
17432
17433 * xterm.c (xaw_scroll_callback): Cast correctly.
17434
174352008-02-01 Dave Love <fx@gnu.org>
17436
17437 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
17438 (lispy_kana_keys): Comment out.
17439 (make_lispy_event) [XK_kana_A]: Comment out.
17440
17441 * xterm.c (xaw_scroll_callback): Cast call_data.
17442 (XTread_socket): Deal with ASCII keysyms.
17443 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
17444
174452008-02-01 Dave Love <fx@gnu.org>
17446
17447 * xterm.c (Vx_keysym_table): New.
17448 (syms_of_xterm): Initialize it.
17449 (XTread_socket): Use it.
17450 From head: Eliminate incorrect optimization that tried to avoid
17451 decoding the output of X*LookupString.
17452 (x_get_font_repertory): Delete charset declaration.
17453
174542008-02-01 Kenichi Handa <handa@m17n.org>
17455
17456 * coding.c (detect_coding_charset): If only ASCII bytes are found,
17457 return 0.
17458 (Fdefine_coding_system_internal): Setup
17459 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
17460
174612008-02-01 Dave Love <fx@gnu.org>
17462
17463 * coding.c (Fcheck_coding_system): Doc fix.
17464
17465 * editfns.c (Finsert_byte): Return a proper value.
17466
174672008-02-01 Kenichi Handa <handa@m17n.org>
17468
17469 * coding.c (decode_coding): Fix args to translate_chars. Pay
17470 attention to Vstandard_translation_table_for_decode.
17471 (encode_coding): Fix args to translate_chars. Pay attention to
17472 Vstandard_translation_table_for_encode.
17473
17474 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
17475 SINGLE_BYTE_CHAR_P.
17476
17477 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
17478 not by SINGLE_BYTE_CHAR_P.
17479
17480 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
17481 SINGLE_BYTE_CHAR_P.
17482
17483 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
17484 SINGLE_BYTE_CHAR_P.
17485
17486 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
17487 by SINGLE_BYTE_CHAR_P.
17488
17489 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
17490 SINGLE_BYTE_CHAR_P.
17491
174922008-02-01 Dave Love <fx@gnu.org>
17493
17494 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
17495
174962008-02-01 Dave Love <fx@gnu.org>
17497
17498 * fns.c (Flanginfo): Fix typo.
17499
17500 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
17501
175022008-02-01 Kenichi Handa <handa@m17n.org>
17503
17504 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
17505 (detect_coding_emacs_mule, detect_coding_iso_2022)
17506 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
17507 incomplete byte sequence. Don't update *mask when correctly detected.
17508 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
17509 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
17510 (detect_coding, detect_coding_system): Adjust for the changes above.
17511
175122008-02-01 Kenichi Handa <handa@m17n.org>
17513
17514 * character.c (char_string): Rename from
17515 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
17516 (string_char): Rename from string_char.
17517
17518 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
17519 if C is greater than MAX_3_BYTE_CHAR.
17520 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
17521 string_char instead of string_char_with_unification.
17522
175232008-02-01 Dave Love <fx@gnu.org>
17524
17525 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
17526
175272008-02-01 Kenichi Handa <handa@m17n.org>
17528
17529 * keymap.c (push_key_description): Pay attention to force_multibyte.
17530
17531 * regex.c (re_search_2): Fix for the case of unibyte buffer.
17532
175332008-02-01 Dave Love <fx@gnu.org>
17534
17535 * charset.c (define_charset_internal): Rename `supprementary'.
17536
17537 * Makefile.in (lisp, shortlisp): Remove latin-N.
17538
175392008-02-01 Dave Love <fx@gnu.org>
17540
17541 * xfns.c (x_window, x_window): Use use_xim.
17542
17543 * xterm.c (use_xim): Initialize.
17544 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
17545 (x_term_init): Maybe set use_xim.
17546
17547 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
17548
175492008-02-01 Kenichi Handa <handa@m17n.org>
17550
17551 * search.c (search_buffer): Fix case-fold-search of multibyte
17552 characters.
17553 (boyer_moore): Rename the last argument to char_high_bits.
17554
175552008-02-01 Kenichi Handa <handa@m17n.org>
17556
17557 * xdisp.c (display_string): Fix for the case of zero width glyph.
17558
17559 * xfns.c (x_set_font): Change the error message of the case that
17560 x_new_fontset returns Qt.
17561
17562 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
17563 (Finternal_set_lisp_face_attribute): Use signal_error for the
17564 error of invalid fontset.
17565
17566 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
17567 fontset, return Qt.
17568
175692008-02-01 Dave Love <fx@gnu.org>
17570
17571 * unexelf.c (unexec): Make .got handling not SGI-specific.
17572
17573 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
17574
17575 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
17576
17577 * keyboard.c (read_key_sequence): Fix type error.
17578
17579 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
17580 type error.
17581
17582 * fontset.c (fontset_add): Return Lisp_Object.
17583
175842008-02-01 Dave Love <fx@gnu.org>
17585
17586 * charset.h (charset_ordered_list_tick): Declare extern.
17587
175882008-02-01 Kenichi Handa <handa@m17n.org>
17589
17590 The following changes (and some of 2008-02-01 changes of mine) are
17591 for handling syntax, category, and case conversion for unibyte
17592 characters by converting them to multibyte on the fly. With these
17593 changes, we don't have to setup syntax and case tables for unibyte
17594 characters in each language environment.
17595
17596 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
17597 multibyte if necessary.
17598
17599 * bytecode.c (Fbyte_code): Likewise.
17600
17601 * character.h (LEADING_CODE_LATIN_1_MIN)
17602 (LEADING_CODE_LATIN_1_MAX): New macros.
17603 (unibyte_to_multibyte_table): Extern it.
17604 (unibyte_char_to_multibyte): New macro.
17605 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
17606 (CHAR_LEADING_CODE): New macro.
17607 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
17608
17609 * character.c (unibyte_to_multibyte_table): New variable.
17610 (unibyte_char_to_multibyte): Move to character.h and define as macro.
17611 (multibyte_char_to_unibyte): If C is an eight-bit character,
17612 convert it to the corresponding byte value.
17613
17614 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
17615 not 1, signals an error. Update the elements of
17616 unibyte_to_multibyte_table.
17617 (init_charset_once): Initialize unibyte_to_multibyte_table.
17618 (syms_of_charset): Define the charset `iso-8859-1'.
17619
17620 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
17621 as is without converting it to unibyte. In a unibyte buffer,
17622 convert C to multibyte before checking the syntax.
17623
17624 * lisp.h (unibyte_char_to_multibyte): Delete extern.
17625
17626 * minibuf.c (Fminibuffer_complete_word): Use the macro
17627 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
17628
17629 * regex.h (struct re_pattern_buffer): New member target_multibyte.
17630
17631 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
17632 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
17633 that is zero, convert an eight-bit char to multibyte.
17634 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
17635 non-emacs case.
17636 (PATFETCH): Convert an eight-bit char to multibyte.
17637 (HANDLE_UNIBYTE_RANGE): New macro.
17638 (regex_compile): Setup the compiled pattern for multibyte chars
17639 even if the given regex string is unibyte. Use PATFETCH_RAW
17640 instead of PATFETCH in many places. To handle `charset'
17641 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
17642 only for ASCII chars.
17643 (analyse_first) <exactn>: Simplify because the compiled pattern
17644 is multibyte.
17645 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
17646 <charset>: Use CHAR_LEADING_CODE to get leading codes.
17647 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
17648 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
17649 multibyte always 1.
17650 (re_search_2): In emacs, set the locale variable multibyte to 1,
17651 otherwise to 0. New local variable target_multibyte. Check it
17652 to decide the multibyteness of STR1 and STR2. If
17653 target_multibyte is zero, convert unibyte chars to multibyte
17654 before translating and checking fastmap.
17655 (TARGET_CHAR_AND_LENGTH): New macro.
17656 (re_match_2_internal): In emacs, set the locale variable multibyte
17657 to 1, otherwise to 0. New local variable target_multibyte. Check
17658 it to decide the multibyteness of STR1 and STR2. Use
17659 TARGET_CHAR_AND_LENGTH to fetch a character from D.
17660 <charset, charset_not>: If multibyte is nonzero, check fastmap
17661 only for ASCII chars. Call bcmp_translate with
17662 target_multibyte, not with multibyte.
17663 <begline>: Declare the local variable C as `unsigned'.
17664 (bcmp_translate): Change the last arg name to target_multibyte.
17665
17666 * search.c (compile_pattern_1): Don't adjust the multibyteness of
17667 the regexp pattern and the matching target. Set cp->buf.multibyte
17668 to the multibyteness of the regexp pattern. Set
17669 cp->but.target_multibyte to the multibyteness of the matching target.
17670 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
17671 FETCH_STRING_CHAR_ADVANCE.
17672 (Freplace_match): Convert unibyte chars to multibyte.
17673
17674 * syntax.c (char_quoted, back_comment, scan_words)
17675 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
17676 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
17677 unibyte chars to multibyte.
17678 (skip_chars): Delete the arg syntaxp, and move the code for
17679 handling syntaxes to skip_syntaxes. Change callers.
17680 Fix the case that the multibyteness of STRING and the current
17681 buffer doesn't match.
17682 (skip_syntaxes): New function.
17683 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
17684 SINGLE_BYTE_CHAR_P.
17685
176862008-02-01 Kenichi Handa <handa@m17n.org>
17687
17688 * xfaces.c (QCfontset): New variable.
17689 (LFACE_FONTSET): New macro.
17690 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
17691 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
17692 (Finternal_set_lisp_face_attribute)
17693 (Finternal_get_lisp_face_attribute): Handle QCfontset.
17694 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
17695 check also LFACE_FONTSET_INDEX.
17696 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
17697 attrs[LFACE_FONT_INDEX].
17698 (syms_of_xfaces): Intern and staticpro QCfontset.
17699
17700 * dispextern.h (enum lface_attribute_index): New member
17701 LFACE_FONTSET_INDEX.
17702
17703 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
17704
177052008-02-01 Kenichi Handa <handa@m17n.org>
17706
17707 * coding.c (coding_set_destination): Fix coding->destination for
17708 the case converting a region.
17709 (encode_coding_utf_8): Encode eight-bit chars as single byte.
17710 (encode_coding_object): Fix coding->dst_pos and
17711 coding->dst_pos_byte for the case converting a region.
17712
17713 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
17714
17715 * character.h (BYTE8_STRING): New macro.
17716
17717 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
17718
177192008-02-01 Kenichi Handa <handa@m17n.org>
17720
17721 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
17722 characters by octal form.
17723
17724 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
17725
17726 * buffer.h (_fetch_multibyte_char_len): Delete extern.
17727 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
17728 _fetch_multibyte_char_len.
17729 (FETCH_CHAR_AS_MULTIBYTE): New macro.
17730
17731 * casetab.c (set_canon, set_identity, shuffle): Simplify.
17732
17733 * casefiddle.c (casify_object): Simplify. Handle the case that
17734 the case conversion change the byte length.
17735 (casify_region): Likewise.
17736
17737 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
17738
17739 * character.c (_fetch_multibyte_char_len): Delete this variable.
17740 (syms_of_character): Setup Vprintable_chars.
17741
17742 * editfns.c (Fchar_equal): Fix for the unibyte case.
17743 (Finsert_byte): New function.
17744 (syms_of_editfns): Defsubr it.
17745
17746 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
17747 of direct code 0x3ffff.
17748
17749 * search.c (Freplace_match): Fix for the unibyte case.
17750
177512008-02-01 Kenichi Handa <handa@m17n.org>
17752
17753 * lread.c (safe_to_load_p): Fix the logic.
17754
17755 * syntax.c (scan_words): Don't treat characters belonging to
17756 different scripts as constituting a word.
17757
17758 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
17759
17760 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
17761
17762 * emacs.c (main): In the case of --unibyte, instead of aborting on
17763 finding non-empty buffer, make it unibyte.
17764
177652008-02-01 Kenichi Handa <handa@m17n.org>
17766
17767 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
17768 to create a fontset.
17769
177702008-02-01 Dave Love <fx@gnu.org>
17771
17772 * character.c (Funibyte_char_to_multibyte): Doc fix.
17773
17774 * xfns.c [HAVE_STDLIB_H]: Fix last change.
17775
177762008-02-01 Kenichi Handa <handa@m17n.org>
17777
17778 * fontset.c (fontset_add): Make the type `int'.
17779 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
17780
17781 * character.c (unibyte_char_to_multibyte)
17782 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
17783 charset_unibyte, not charset_primary.
17784
17785 * charset.h (charset_unibyte): Extern it instead of charset_primary.
17786
17787 * charset.c (charset_unibyte): Rename from charset_primary.
17788 (Funibyte_charset): Rename from Fprimary_charset.
17789 (Fset_unibyte_charset): Rename from Fset_primary_charset.
17790 (syms_of_charset): Adjust for the above changes.
17791
17792 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
17793 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
17794 it->multibyte_p is zero.
17795
17796 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
17797 Delete extern.
17798
177992008-02-01 Kenichi Handa <handa@m17n.org>
17800
17801 * coding.c (Fdefine_coding_system_internal): Fix category setting
17802 for a coding system of type iso-2022.
17803
178042008-02-01 Kenichi Handa <handa@m17n.org>
17805
17806 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
17807
178082008-02-01 Kenichi Handa <handa@m17n.org>
17809
17810 * syntax.c (Vnext_word_boundary_function_table): New variable.
17811 (next-word-boundary-function-table): Declare it as a Lisp variable
17812 in syms_of_syntax.
17813 (scan_words): Call functions in Vnext_word_boundary_function_table
17814 if any.
17815
17816 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
17817
17818 * fontset.c (fs_load_font): If fontp->charset is not negative,
17819 return fontp without setting its members.
17820
178212008-02-01 Dave Love <fx@gnu.org>
17822
17823 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
17824
17825 * m/sparc.h (HAVE_ALLOCA): Delete.
17826
17827 * s/irix6-5.h: Don't include strings.h.
17828 (bcopy, bzero, bcmp): Don't undef.
17829
17830 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
17831
17832 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
17833 (TIOCSIGSEND): Don't test IRIX6.
17834 (bcopy, bzero, bcmp): Define conditionally.
17835
178362008-02-01 Kenichi Handa <handa@m17n.org>
17837
17838 * buffer.c (Qas, Qmake, Qto): New variables.
17839 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
17840 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
17841
17842 * callproc.c (Fcall_process): Don't call insert_1_both directly if
17843 we are inserting a process output into a multibyte buffer.
17844
17845 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
17846 multibyte_char_to_unibyte.
17847
17848 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
17849 by the primary charset, make it eight-bit char.
17850 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
17851
17852 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
17853 (charset_8_bit__control, charset_8_bit_graphic)
17854 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
17855 (define_charset_internal): New function.
17856 (syms_of_charset): Call define_charset_internal for pre-defined
17857 charsets.
17858
17859 * charset.h (charset_8_bit): Extern it.
17860
17861 * coding.c (make_conversion_work_buffer): Adjust for the change
17862 of Fset_buffer_multibyte.
17863 (encode_coding_raw_text): Increment p0 in the loop.
17864
17865 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
17866
17867 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
17868 for the change of Fset_buffer_multibyte.
17869
17870 * fns.c (Fstring_to_multibyte): New function.
17871 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
17872
178732008-02-01 Dave Love <fx@gnu.org>
17874
17875 * xfns.c (x_put_x_image): Declare args.
17876
17877 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
17878 (try_font_list): Declare an arg.
17879
17880 * xdisp.c (message2_nolog, set_message): Declare an arg.
17881
17882 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
17883
17884 * syntax.c (scan_sexps_forward): Declare an arg.
17885
17886 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
17887 Declare an arg.
17888
17889 * lisp.h (Fnew_fontset): Declare.
17890
17891 * keymap.c (push_key_description): Call CHARACTERP correctly.
17892
17893 * fontset.c (fontset_add): Declare args. Call make_number correctly.
17894 (face_for_char): Delete unused vars.
17895 (Fset_fontset_font): Doc fix. Delete unused vars.
17896
17897 * doc.c (Fsubstitute_command_keys): Delete unused vars.
17898
17899 * composite.c (update_compositions): Declare arg.
17900
17901 * cm.c (calccost, cmgoto): Declare args.
17902
17903 * charset.c: Remove `emacs' conditional. Doc fixes.
17904 (map_char_table_for_charset): Declare.
17905
17906 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
17907
17908 * ccl.c: Remove `emacs' conditional.
17909
179102008-02-01 Kenichi Handa <handa@m17n.org>
17911
17912 The following changes are to allow specifying multiple font
17913 patterns for a character range (specified by script or charset).
17914
17915 * Makefile.in (abbrev.o): Depend on syntax.h.
17916 (xfaces.o): Depend on charset.h.
17917
17918 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
17919 SINGLE_BYTE_CHAR_P.
17920
17921 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
17922
17923 * character.h (Vchar_script_table): Extern it.
17924
17925 * character.c (Vscript_alist): Delete.
17926 (Vchar_script_table, Qchar_script_table): New variable.
17927 (syms_of_character): Declare Vchar_script_table as a lisp variable
17928 and initialize it.
17929
17930 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
17931 have property char-table-extra-slots, make no extra slot.
17932
17933 * dispextern.h (struct face): Delete member `charset'.
17934 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
17935 SINGLE_BYTE_CHAR_P.
17936 (choose_face_font, lookup_non_ascii_face, font_name_registry):
17937 Add prototypes.
17938 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
17939 (generate_ascii_font_name): Rename from generate_ascii_font.
17940
17941 * fontset.h (get_font_repertory_func): New prototype.
17942 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
17943 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
17944
17945 * fontset.c (Qprepend, Qappend): New variables.
17946 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
17947 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
17948 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
17949 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
17950 (fontset_ref_and_range, fontset_add, reorder_font_vector)
17951 (load_font_get_repertory): New functions.
17952 (fontset_set): Delete.
17953 (fontset_face): New arg FACE. Return face ID, not face.
17954 Complete re-write to handle new fontset structure. Change caller.
17955 (free_face_fontset): Use ASET istead of AREF (X) = Y.
17956 (face_for_char): Don't call lookup_face.
17957 (make_fontset_for_ascii_face): New arg FACE.
17958 (fs_load_font): New arg CHARSET_ID. Don't check
17959 Vfont_encoding_alist here.
17960 (find_font_encoding): New function.
17961 (list_fontsets): Use STRINGP, not ! NILP.
17962 (accumulate_script_ranges): New function.
17963 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
17964 re-written to handle new fontset structure.
17965 (Ffontset_font): Return a copy of element.
17966 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
17967 docstring of font-encoding-alist.
17968
17969 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
17970 (Fset_fotset_font): Fix arguments to 5.
17971
17972 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
17973
17974 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
17975 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
17976 (highlight_trailing_whitespace): Adjust for the change of
17977 lookup_named_face.
17978
17979 * xfaces.c: Include charset.h.
17980 (load_face_font): Delete argument C. Change caller.
17981 (generate_ascii_font_name): Rename from generate_ascii_font.
17982 (font_name_registry): New function.
17983 (cache_face): Store ascii faces before non-ascii faces in buckets.
17984 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
17985 Lookup only ascii faces.
17986 (lookup_non_ascii_face): New function.
17987 (lookup_named_face): Delete argument C. Change caller.
17988 (lookup_derived_face): Delete argument C. Change caller.
17989 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
17990 a string, just call font_list with it.
17991 (choose_face_font): Delete arguments FACE and C. New arg
17992 FONT_SPEC. Change caller.
17993 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
17994 Change caller.
17995 (realize_non_ascii_face): New function.
17996 (realize_x_face): Call load_face_font here.
17997 (realize_tty_face): Delete argument C. Change caller.
17998 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
17999 get a face ID.
18000 (dump_realized_face): Don't print charset of FACE.
18001
18002 * xfns.c (x_set_font): Always call x_new_fontset and
18003 store_frame_parameter.
18004 (Fx_create_frame): Call x_new_fontset, not x_new_font.
18005 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
18006
18007 * xterm.h (x_get_font_repertory): Extern it.
18008
18009 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18010 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18011 it->multibyte_p is zero.
18012 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18013 (x_new_fontset): If FONTSETNAME doesn't match any existing
18014 fontsets, create a new one.
18015 (x_get_font_repertory): New function.
18016
180172008-02-01 Kenichi Handa <handa@m17n.org>
18018
18019 * coding.c (Ffind_coding_systems_region_internal): Detect an
18020 ASCII only string correctly.
18021
18022 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
18023 version is 0.
18024
180252008-02-01 Kenichi Handa <handa@m17n.org>
18026
18027 * lread.c: Include "coding.h".
18028 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
18029 (load_each_byte, unread_char): New variables.
18030 (readchar_backlog): Delete.
18031 (readchar): Return a character unless load_each_byte is nonzero.
18032 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
18033 cons. If unread_char is not -1, simply return it.
18034 (unreadchar): Handle the case that readcharfun is
18035 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
18036 (read_multibyte): Delete.
18037 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
18038 (read_emacs_mule_char): New functions.
18039 (Fload): Even if the file doesn't have the extension ".elc", if
18040 safe_to_load_p returns a positive version number, assume that the
18041 file contains bytecompiled code. If the version is less than 22,
18042 load the file while decoding multibyte sequences by emacs-mule.
18043 (readevalloop): Don't use readchar_backlog.
18044 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
18045 (Fread_from_string): Pay attention to the case that STREAM is a cons.
18046 (read_escape): Delete the arg BYTEREP.
18047 (read1): Set load_each_byte to 1 temporarily while handling
18048 #@NUMBER. Don't call read_multibyte.
18049 (read_vector): Call Fread with a cons. If readcharfun is
18050 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
18051 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
18052 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
18053 and Qload_force_doc_strings.
18054
180552008-02-01 Kenichi Handa <handa@m17n.org>
18056
18057 * xdisp.c (face_before_or_after_it_pos): Call
18058 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
18059
180602008-02-01 Kenichi Handa <handa@m17n.org>
18061
18062 * character.h (TRAILING_CODE_P): New macro.
18063 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
18064 (string_char_with_unification): Fix prototype.
18065 (Vscript_alist): Extern it.
18066
18067 * character.c (Vscript_alist): New variable.
18068 (string_char_with_unification, str_as_unibyte)
18069 (string_escape_byte8): Add `const' to local variables.
18070 (syms_of_character): Declare script-alist as a Lisp variable.
18071
18072 * charset.h (Vcharset_ordered_list): Extern it.
18073 (charset_ordered_list_tick): Extern it.
18074 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
18075 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
18076 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
18077 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
18078 (Funify_charset): Adjust for the change of Funify_charset.
18079
18080 * charset.c (charset_ordered_list_tick): New variable.
18081 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
18082 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
18083 deunify intead of unify a charset.
18084 (string_xstring_p): Add `const' to local variables.
18085 (find_charsets_in_text): Add `const' to arguments and local variables.
18086 (encode_char): Adjust for the change of Funify_charset. Fix
18087 detecting of invalid code.
18088 (Fset_charset_priority): Increment charset_ordered_list_tick.
18089 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
18090 and TO_CODE.
18091
18092 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
18093 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
18094 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
18095 (decode_coding_ccl, consume_chars)
18096 (Ffind_coding_systems_region_internal)
18097 (Fcheck_coding_systems_region): Add `const' to local variables.
18098
18099 * print.c (print_object): Use octal form for printing the
18100 contents of a bool vector.
18101
181022008-02-01 Dave Love <fx@gnu.org>
18103
18104 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
18105 <version == 20>: Refuse to load.
18106
181072008-02-01 Dave Love <fx@gnu.org>
18108
18109 * fns.c: Move coding.h.
18110 (Qcodeset, Qdays, Qmonths): New.
18111 (concat): Use CHARACTERP instead of INTEGERP.
18112 (Flocale_codeset): Delete.
18113 (Flanginfo): New function.
18114 (syms_of_fns): Change accordingly.
18115
18116 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
18117
181182008-02-01 Dave Love <fx@gnu.org>
18119
18120 * casetab.c (init_casetab_once, init_casetab_once): Fix
18121 CHAR_TABLE_SET call.
18122
18123 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
18124
18125 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
18126
18127 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
18128 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
18129 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
18130
18131 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
18132
18133 * coding.c (ENCODE_DESIGNATION, decode_eol)
18134 (make_conversion_work_buffer, code_conversion_restore)
18135 (Fdefine_coding_system_internal): Convert Lisp types.
18136 (code_conversion_restore): Use EQ, not ==.
18137 (Fencode_coding_string): Fix code_convert_string call.
18138
18139 * coding.h (code_convert_region): Fix prototype.
18140
18141 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
18142
18143 * fontset.c (fontset_ref, fontset_set, fs_load_font)
18144 (Ffontset_info): Convert Lisp types.
18145
18146 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
18147
18148 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
18149
18150 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
18151
18152 * chartab.c: Include "...h", not <...h> in some cases.
18153
18154 * callproc.c (Fcall_process): Remove unused variables.
18155
181562008-02-01 Dave Love <fx@gnu.org>
18157
18158 * coding.c (Fset_coding_system_priority): Allow null arg list.
18159
181602008-02-01 Dave Love <fx@gnu.org>
18161
18162 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
18163 (Fself_insert_and_exit): Use CHARACTERP.
18164
18165 * callproc.c (Fcall_process): Remove unused vars.
18166
18167 * xterm.c (XTread_socket): Add extra dead keysyms.
18168
18169 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
18170
18171 * dispextern.h: Remove prototypes for redraw_frame,
18172 redraw_garbaged_frames.
18173
18174 * cmds.c (Fself_insert_command): Use CHARACTERP.
18175
18176 * chartab.c (make_sub_char_table): Remove unused var.
18177 (Fset_char_table_default, Fmap_char_table): Doc fix.
18178
18179 * keymap.c (access_keymap): Remove generic char code.
18180 (push_key_description): Use CHARACTERP.
18181
181822008-02-01 Dave Love <fx@gnu.org>
18183
18184 * charset.c: Doc fixes.
18185 (Funify_charset): Extra checking.
18186
181872008-02-01 Dave Love <fx@gnu.org>
18188
18189 * lread.c: Remove some unused variables.
18190 (safe_to_load_p): If safe, return the magic number version byte.
18191 (Fload): Maybe use load-with-code-conversion.
18192
181932008-02-01 Kenichi Handa <handa@m17n.org>
18194
18195 * category.c (Fmodify_category_entry): Don't modify the contents
18196 of category_set for characters out of the range. Avoid
18197 unnecessary modification.
18198
18199 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
18200 Vchar_unify_table. The default value of the table is now nil.
18201
18202 * character.c (syms_of_character): Setup Vchar_width_table for
18203 eight-bit-control and raw-byte chars.
18204
18205 * charset.h (enum define_charset_arg_index): Delete
18206 charset_arg_parents and add charset_arg_subset and
18207 charset_arg_superset.
18208 (enum charset_attr_index): Delete charset_parents and add
18209 charset_subset and charset_superset.
18210 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
18211 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
18212 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
18213 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
18214 (CHARSET_SUPERSET): New macros.
18215 (charset_work): Extern it.
18216 (ENCODE_CHAR): Use charset_work.
18217 (CHAR_CHARSET_P): Adjust for the change of encoder format.
18218 (map_charset_chars): Extern it.
18219
18220 * charset.c (load_charset_map): Set the default value of encoder
18221 and deunifier char-tables to nil.
18222 (map_charset_chars): Change argument. Change callers. Use
18223 map_char_table_for_charset instead of map_char_table.
18224 (Fmap_charset_chars): New optional args from_code and to_code.
18225 (Fdefine_charset_internal): Adjust for the change of
18226 `define-charset' (:parents -> :subset or :superset).
18227 (charset_work): New variable.
18228 (encode_char, syms_of_charset): Adjust for the change of
18229 Fdefine_charset_internal.
18230 (Ffind_charset_string): Setup the vector `charsets' correctly.
18231
18232 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
18233 the previous change.
18234 (char_table_ref_and_range): Adjust for the above change.
18235 (map_sub_char_table_for_charset): New function.
18236 (map_char_table_for_charset): New function.
18237
18238 * keymap.c (describe_vector): Handle a char-table directly here.
18239 (describe_char_table): Delete.
18240
18241 * lisp.h (map_charset_chars): Delete.
18242
182432008-02-01 Dave Love <fx@gnu.org>
18244
18245 * fns.c (count_combining): Comment out (unused).
18246 (Flocale_codeset): New.
18247 (syms_of_fns): Defsubr it.
18248
18249 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
18250 (size_t): Remove.
18251
182522008-02-01 Dave Love <fx@gnu.org>
18253
18254 * Makefile.in (chartab.o): Depend on charset.h.
18255
182562008-02-01 Kenichi Handa <handa@m17n.org>
18257
18258 * character.c (syms_of_character): Set the default value of
18259 Vprintable_chars to Qnil.
18260
182612008-02-01 Dave Love <fx@gnu.org>
18262
18263 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
18264
182652008-02-01 Kenichi Handa <handa@m17n.org>
18266
18267 * charset.c (load_charset_map): Handle the case that from < to
18268 correctly.
18269
18270 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
18271 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
18272 Pay attention to raw-8-bit chars.
18273
182742008-02-01 Kenichi Handa <handa@m17n.org>
18275
18276 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
18277 It is not bytecompiled now.
18278
18279 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
18280 (charset_jisx0208): New variables.
18281 (Fdefine_charset_internal): Setup them if appropriate.
18282 (init_charset_once): Initialize them to -1.
18283
18284 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
18285 (charset_jisx0208): Extern them.
18286
18287 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
18288 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
18289 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
18290 (setup_iso_safe_charsets): Fix arguments to Fassq.
18291 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
18292 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
18293 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
18294 (encode_coding_iso_2022): Change the 1st arg to
18295 ENCODE_ISO_CHARACTER to a variable.
18296
182972008-02-01 Kenichi Handa <handa@m17n.org>
18298
18299 * charset.h (enum define_charset_arg_index): New enums
18300 charset_arg_min_code and charset_arg_max_code.
18301 (struct charset): New member char_index_offset.
18302
18303 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
18304 Take charset->char_index_offset into account.
18305 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
18306 args[charset_arg_max_code]. Setup charset.char_index_offset.
18307 (syms_of_charset): Fix args to Fdefine_charset_internal.
18308
183092008-02-01 Dave Love <fx@gnu.org>
18310
18311 * coding.c (decode_coding_utf_8): Reject overlong sequences.
18312
183132008-02-01 Dave Love <fx@gnu.org>
18314
18315 * coding.c: Doc fixes.
18316 (Fcoding_system_aliases): Fix return value.
18317 (Qmac): Remove (duplicated) definition.
18318
183192008-02-01 Dave Love <fx@gnu.org>
18320
362654a6
JB
18321 * charset.c (Fcharset_priority_list, Fset_charset_priority):
18322 New functions.
aac0c6e3
MR
18323
18324 * character.c (Fstring): Doc fix.
18325
18326 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
18327
362654a6 18328 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
18329 (font-encoding-alist): Doc fix.
18330
183312008-02-01 Dave Love <fx@gnu.org>
18332
18333 * term.c (costs_set): Declare static, non-initialized for pcc.
18334 (encode_terminal_code): Remove unused var.
18335
18336 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
18337 for K&R.
18338
18339 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
18340
18341 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
18342 (suffixes): Move out of make_subsidiaries for K&R.
18343
18344 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
18345
18346 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
18347
183482008-02-01 Dave Love <fx@gnu.org>
18349
18350 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
18351
18352 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
18353
183542008-02-01 Yong Lu <lyongu@asia-infonet.com>
18355
18356 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
18357
18358 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
18359
183602008-02-01 Kenichi Handa <handa@m17n.org>
18361
18362 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
18363 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
18364
183652008-02-01 Kenichi Handa <handa@m17n.org>
18366
18367 * coding.c (decode_coding_charset): Adjust for the change of
18368 Fdefine_coding_system_internal.
18369 (Fdefine_coding_system_internal): For a coding system of
18370 `charset' type, store a list of charset IDs in
18371 `charset_attr_charset_valids' element of coding attributes.
18372
183732008-02-01 Kenichi Handa <handa@m17n.org>
18374
18375 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
18376 (emacs_mule_char): New arg src. Delete arg `composition'. Change
18377 caller. Handle 2-byte and 3-byte charsets correctly.
18378 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
18379 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
18380 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
18381 (DECODE_EMACS_MULE_21_COMPOSITION): Call
18382 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
18383 sequence.
18384 (decode_coding_emacs_mule): Handle composition correctly. Rewind
18385 `src' and `consumed_chars' correctly before calling emacs_mule_char.
18386 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
18387 and alt&rule composition.
18388 (decode_coding_iso_2022): Handle composition correctly.
18389 (init_coding_once): Setup emacs_mule_bytes for private charsets.
18390
18391 * charset.c (Fdefine_charset_internal): Fix bug for the case of
18392 re-defining a charset. If the charset has :emacs-mule-id, setup
18393 emacs_mule_bytes.
18394 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
18395
183962008-02-01 Kenichi Handa <handa@m17n.org>
18397
18398 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
18399 (encode_coding_big5, encode_coding_charset): If coding requires safe
18400 encoding, produce a character specified by
18401 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
18402
184032008-02-01 Dave Love <fx@gnu.org>
18404
18405 * xterm.c (XSetIMValues): Declare.
18406
18407 * process.c: Conditionally include sys/wait.h, pty.h.
18408
18409 * print.c (print_object): Fix print format for 64-bit systems.
18410
18411 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
18412
18413 * buffer.c (emacs_strerror): Declare.
18414
18415 * fontset.c (Fclear_face_cache): Declare.
18416 (accumulate_font_info): Comment-out (unused).
18417 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
18418 variables.
18419
18420 * character.h (string_escape_byte8): Declare.
18421
18422 * charset.c (load_charset_map, load_charset_map_from_file): Remove
18423 unused vars.
18424 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
18425 (Fmap_charset_chars): Doc fix.
18426
18427 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
18428 (Fset_coding_system_priority, Fset_coding_system_priority)
18429 (Fdefine_coding_system_internal): Doc fix.
18430
184312008-02-01 Dave Love <fx@gnu.org>
18432
18433 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
18434
184352008-02-01 Kenichi Handa <handa@m17n.org>
18436
18437 * character.c (string_escape_byte8): Make multibyte string with
18438 correct size.
18439
18440 * charset.c (Fmake_char): Delete unnecessary code.
18441
184422008-02-01 Kenichi Handa <handa@m17n.org>
18443
18444 * xfns.c (x_encode_text): Allocate coding.destination here, and
18445 call encode_coding_object with dst_object Qnil.
18446
18447 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
18448 multibyte form correctly.
18449
18450 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
18451 against Vfont_encoding_alist.
18452
18453 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
18454 handling of charset list.
18455 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
18456 (decode_coding_object): Move point to coding->dst_pos before
18457 calling post-read-conversion function.
18458 (encode_coding_object): Give correct arguments to
18459 pre-write-conversion. Ignore the return value of
18460 pre-write-conversion function. Pay attention to the case that
18461 pre-write-conversion changes the current buffer. If dst_object is
18462 Qt, even if coding->src_bytes is zero, allocate at least one byte
18463 to coding->destination.
18464
18465 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
18466
18467 * charset.c (Fmake_char): Make it more backward compatible.
18468 (Fmap_charset_chars): Fix docstring.
18469
184702008-02-01 Dave Love <fx@gnu.org>
18471
18472 * coding.c: Doc fixes.
18473 (Fdefine_coding_system_alias): Use names, not symbols, in
18474 coding-system-alist.
18475
184762008-02-01 Kenichi Handa <handa@m17n.org>
18477
18478 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
18479 of calling free_realized_face.
18480
184812008-02-01 Yong Lu <lyongu@asia-infonet.com>
18482
18483 * charset.c (read_hex): Don't treat SPC as a comment starter.
18484 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
18485 (Fdecode_char): Fix typo.
18486
184872008-02-01 Kenichi Handa <handa@m17n.org>
18488
18489 * charset.h (struct charset): New member `code_space_mask'.
18490
18491 * coding.c (coding_set_source): Delete the local variable beg_byte.
18492 (encode_coding_charset, Fdefine_coding_system_internal):
18493 Delete the local variable charset.
18494 (Fdefine_coding_system_internal): Setup
18495 attrs[coding_attr_charset_valids] correctly.
18496
18497 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
18498 member to check if CODE is valid or not.
18499 (Fdefine_charset_internal): Initialize `code_space_mask' member.
18500 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
18501 is within the range of charset->min_code and carset->max_code.
18502
185032008-02-01 Dave Love <fx@gnu.org>
18504
18505 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
18506
18507 * dispextern.h (generate_ascii_font): Fix return type.
18508
18509 * xfaces.c (generate_ascii_font): Fix arg declaration.
18510
18511 * coding.c (coding_inherit_eol_type)
18512 (Fset_terminal_coding_system_internal)
18513 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
18514
185152008-02-01 Kenichi Handa <handa@m17n.org>
18516
18517 * coding.c (decode_coding_charset, encode_coding_charset): Handle
18518 multiple charsets correctly.
18519
185202008-02-01 Kenichi Handa <handa@m17n.org>
18521
18522 * search.c (boyer_moore): Fix handling of multibyte character
18523 translation.
18524
18525 * xdisp.c (display_mode_element): When the variable `elt' is
18526 changed, update `this' and `lisp_string'.
18527
185282008-02-01 Kenichi Handa <handa@m17n.org>
18529
18530 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
18531
18532 * callproc.c (Fcall_process): Be sure to give the current buffer
18533 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
18534
18535 * charset.c (struct charset_map_entries): New struct.
18536 (load_charset_map): Rename from parse_charset_map. New args
18537 entries and n_entries. Change caller.
18538 (load_charset_map_from_file): Rename from load_charset_map.
18539 Change caller. New arg control_flag. Call load_charset_map at
18540 the tail.
18541 (load_charset_map_from_vector): New function.
18542 (Fdefine_charset_internal): Setup charset.compact_codes_p.
18543 (encode_char): If the charset is compact, change a character index
18544 to a code point.
18545
18546 * coding.c (coding_alloc_by_making_gap): Check the case that the
18547 source and destination are the same correctly.
18548 (decode_coding_raw_text): Set coding->consumed_char and
18549 coding->consumed to 0.
18550 (produce_chars): If coding->chars_at_source is nonzero, update
18551 coding->consumed_char and coding->consumed before calling
18552 alloc_destination.
18553 (Fdefine_coding_system_alias): Register ALIAS in
18554 Vcoding_system_alist.
18555 (syms_of_coding): Define `no-conversion' coding system at the tail.
18556
18557 * fileio.c (Finsert_file_contents): Set coding_system instead of
18558 val. If the current buffer is multibyte, always call
18559 decode_coding_gap.
18560
18561 * xfaces.c (try_font_list): Give higher priority to fontset's
18562 family than face's family.
18563
185642008-02-01 Kenichi Handa <handa@m17n.org>
18565
18566 * callproc.c (Fcall_process): Be sure to give the current buffer
18567 to decode_coding_c_string.
18568
18569 * xfaces.c (try_font_list): Give a family specified in a fontset
18570 higher priority than a family specified in a face.
18571
185722008-02-01 Kenichi Handa <handa@m17n.org>
18573
18574 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
18575 Fix arguments to insert_from_buffer.
18576
18577 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
18578
185792008-02-01 Kenichi Handa <handa@m17n.org>
18580
18581 * coding.c (produce_chars): Set the variable `multibytep' correctly.
18582 (decode_coding_gap): Set coding->dst_multibyte correctly.
18583
185842008-02-01 Kenichi Handa <handa@m17n.org>
18585
18586 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
18587 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
18588 (encode_coding_utf_16): Substitute coding->default_char for
18589 non-Unicode characters.
18590 (decode_coding): Don't call record_insert here.
18591 (setup_coding_system): Initialize `surrogate' of
18592 coding->spec.utf_16 to 0.
18593 (EMIT_ONE_BYTE): Fix for multibyte case.
18594
18595 * insdel.c (insert_from_gap): Call record_insert.
18596
185972008-02-01 Kenichi Handa <handa@m17n.org>
18598
18599 * casefiddle.c (casify_region): Fix multibyte case.
18600
18601 * character.c (c_string_width): Add return type `int'.
18602 (char_string_with_unification): Delete arg ADVANCED.
18603
18604 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
18605 (CHAR_STRING): Adjust for the change of char_string_with_unification.
18606 (CHAR_STRING_ADVANCE): Make it do-while statement.
18607
18608 * chartab.c (sub_char_table_set_range): Optimize for the case
18609 DEPTH == 3. Add workaround code for a GCC optimization bug.
18610
18611 * charset.c (parse_charset_map): Remove an unused variable.
18612
18613 * coding.c: Delete unused variables.
18614
18615 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
18616 earlier. If inserted is zero and the coding system doesn't
18617 require flushing, don't call decode_coding_gap.
18618
18619 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
18620
186212008-02-01 Kenichi Handa <handa@m17n.org>
18622
18623 The following changes are for using Unicode as an internal
18624 character model, and use UTF-8 format for buffer/string
18625 representation.
18626
18627 * .gdbinit (xchartable): Adjust for the change of char table structure.
18628 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
18629
18630 * Makefile.in (obj): Add character.o and chartab.o.
18631 (lisp, shortlisp): Remove utf-8.elc.
18632 (*.o): For many files, change dependency on charset.h to
18633 character.h, and add dependency on character.h.
18634 (character.o, chartab.o): New targets.
18635
18636 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
18637 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
18638 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
18639 of "charset.h".
18640
18641 * dired.c, filelock.c: Include "character.h".
18642
18643 * alloc.c: Include "character.h" instead of "charset.h".
18644 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
18645 (syms_of_alloc): Remove defsubr for Smake_char_table.
18646
18647 * buffer.c: Include "character.h" instead of "charset.h", don't
18648 include "coding.h".
18649 (Fset_buffer_multibyte): Adjust for UTF-8.
18650
18651 * buffer.h: EXFUN Fbuffer_live_p.
18652
18653 * callproc.c: Include "character.h" instead of "charset.h".
18654 (Fcall_process): Big change for the new code-conversion APIs.
18655
18656 * casetab.c: Include "character.h" instead of "charset.h".
18657 (set_canon, set_identity, shuffle): Adjust for the new
18658 map_char_table spec.
18659 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
18660 accessing the char table structure.
18661
18662 * chartab.c: New file that implements char table.
18663
18664 * category.c: Include "character.h".
18665 (copy_category_entry): New function.
18666 (copy_category_table): Call map_char_table and copy_category_entry.
18667 (Fmake_category_table): Initialize all top-level slots.
18668 (char_category_set): New function.
18669 (modify_lower_category_set): Delete.
18670 (Fmodify_category_entry): Call char_table_ref_and_range.
18671
18672 * category.h (CATEGORY_SET): Just call char_category_set.
18673
18674 * ccl.c: Include "character.h".
18675 (Qccl, Qcclp): New variables.
18676 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
18677 it's less than 256.
18678 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
18679 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
18680 and DST type.
18681 (ccl_driver): Change types of argument, adjust code accordingly.
18682 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
18683 ccl_driver.
18684 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
18685
18686 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
18687 New members src_multibyte, dst_multibyte, consumed, and produced.
18688 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
18689 (CODING_SPEC_CCL_PROGRAM): New macro.
18690 (ccl_driver): Update prototype.
18691 (Qccl, Qcclp, Fccl_program_p): Extern them.
18692 (CHECK_CCL_PROGRAM): New macro.
18693
18694 * character.c, character.h, chartab.c: New files.
18695
18696 * charset.c: Mostly re-written. Move character and multibyte sequence
18697 handling codes to character.c.
18698
18699 * charset.h: Mostly re-written. Move character and multibyte sequence
18700 handling codes to character.h.
18701
18702 * coding.c, coding.h: Mostly re-written.
18703
18704 * composite.c: Include "character.h" instead of "charset.h".
18705 (CHAR_WIDTH): Move to character.h.
18706 (HASH_KEY, HASH_VALUE): Delete.
18707
18708 * composite.h (enum composition_method): Change order of enumeration
18709 symbols.
18710
18711 * data.c: Include "character.h" instead of "charset.h".
18712 (Faref): Call CHAR_TABLE_REF for a char table.
18713 (Faset): Call CHAR_TABLE_SET for a char table.
18714
18715 * dispextern.h (free_realized_face, check_face_attribytes)
18716 (generate_ascii_font): Extern them.
18717 (free_realized_multibyte_face): Delete extern.
18718
18719 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
18720 table structure.
18721
18722 * editfns.c: Include "character.h" instead of "charset.h".
18723 (Fchar_to_string): Always call CHAR_STRING.
18724
18725 * emacs.c (main): Call init_charset_once, init_charset,
18726 syms_of_chartab, and syms_of_character.
18727
18728 * fileio.c: Include "character.h" instead of "charset.h".
18729 (Finsert_file_contents): Big change for the new code-conversion API.
18730 (choose_write_coding_system, Fwrite_region): Likewise.
18731 (build_annotations_2): Delete.
18732 (e_write): Big change for the new code-conversion API.
18733
18734 * fns.c: Include "character.h" instead of "charset.h".
18735 (copy_sub_char_table): Move to chartab.c.
18736 (Fcopy_sequence): Call copy_char_table for a char table.
18737 (concat): Delete codes calling count_multibyte.
18738 (string_char_to_byte, string_byte_to_char): Adjust for the new
18739 multibyte form.
18740 (internal_equal): Adjust for the change of char table structure.
18741 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
18742 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
18743 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
18744 (char_table_translate, optimize_sub_char_table)
18745 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
18746 chartab.c.
18747 (char_table_ref_and_index): Delete.
18748 (HASH_KEY, HASH_VALUE): Move to lisp.h.
18749 (Fmd5): Call preferred_coding_system instead of accessing
18750 Vcoding_category_list. Adjust for the new code-conversion API.
18751 (syms_of_fns): Move defsubr for char table related functions to
18752 chartab.c.
18753
18754 * fontset.c: Mostly re-written.
18755
18756 * fontset.h (struct font_info): Change type of the member encoding_type.
18757 (enum FONT_SPEC_INDEX): New enum.
18758 (fontset_font_pattern, fs_load_font): Update prototype.
18759 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
18760
18761 * indent.c: Include "character.h" instead of "charset.h".
18762 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
18763
18764 * insdel.c: Include "character.h" instead of "charset.h".
18765 (copy_text): Don't refer to Vnonascii_translation_table.
18766 (insert_from_gap): New function.
18767
18768 * keyboard.c: Include "character.h" instead of "charset.h".
18769 (command_loop_1): Never call direct_output_forward_char before
18770 a non-ASCII character.
18771 (read_char): If Vkeyboard_translate_table is a char table, always
18772 translate a character.
18773
18774 * keymap.c: Include "character.h".
18775 (store_in_keymap): Handle the case that IDX is a cons.
18776 (Fdefine_key): Handle the case that KEY is a cons and the car part
18777 is also a cons (range).
18778 (push_key_description): Adjust for the new character code.
18779 (describe_vector): Call describe_char_table for a char table.
18780 (describe_char_table): New function.
18781
18782 * keymap.h (describe_char_table): Extern it.
18783
18784 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
18785 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
18786 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
18787 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
18788 Delete.
18789 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
18790 structure.
18791 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
18792 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
18793 (CHARTAB_SIZE_BITS_3): New macros.
18794 (chartab_size): Extern it.
18795 (struct Lisp_Char_Table): Re-design.
18796 (struct Lisp_Sub_Char_Table): New structure.
18797 (HASH_KEY, HASH_VALUE): Move from fns.c.
18798 (CHARACTERBITS): Define as 22.
18799 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
18800 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
18801 (GC_SUB_CHAR_TABLE_P): New macro.
18802 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
18803 (code_convert_string_norecord): Deleted extern.
18804 (init_character_once, syms_of_character, init_charset)
18805 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
18806
18807 * lread.c: Include "character.h".
18808 (read_multibyte): New arg NBYTES.
18809 (read_escape): Change the meaning of returned *BYTEREP.
18810 (to_multibyte): Delete.
18811 (read1): Adjust the handling of char table and string.
18812
18813 * print.c: Include "character.h" instead of "charset.h".
18814 (print_string): Convert 8-bit raw bytes to octal form by
18815 string_escape_byte8.
18816 (print_object): Adjust for the new multibyte form. Print 8-bit
18817 raw bytes always in octal form. Handle sub char table correctly.
18818
18819 * process.c: Include "character.h" instead of "charset.h".
18820 (read_process_output, send_process): Adjust for the new
18821 code-conversion API.
18822
18823 * puresize.h (BASE_PURESIZE): Increase.
18824
18825 * regex.c: Include "character.h" instead of "charset.h".
18826 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
18827 (regex_compile): Accept a range whose starting and ending
18828 character have different leading bytes.
18829 (analyse_first): Adjust for the above change.
18830
18831 * search.c: Include "character.h" instead of "charset.h".
18832 (search_buffer, boyer_moore): Adjust for the new multibyte form.
18833 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
18834
18835 * syntax.c: Include "character.h" instead of "charset.h".
18836 (syntax_parent_lookup): Delete.
18837 (Fmodify_syntax_entry): Accept a cons as CHAR.
18838 (skip_chars): Adjust for the new multibyte form.
18839 (init_syntax_once): Call char_table_set_range instead of directly
18840 accessing the structure of a char table.
18841
18842 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
18843 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
18844 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
18845 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
18846
18847 * term.c: Include "buffer.h" and "character.h".
18848 (encode_terminal_code, write_glyphs): Adjust for the new
18849 code-conversion API.
18850 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
18851
18852 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
18853
18854 * xdisp.c: Include "character.h".
18855 (get_next_display_element): Adjust for the new multibyte form.
18856 (disp_char_vector): Adjust for the new char table structure.
18857 (decode_mode_spec_coding): Adjust for the new structure of
18858 coding system.
18859 (decode_mode_spec): Adjust for the new code-conversion API.
18860
18861 * xfaces.c: Include "character.h" instead of "charset.h".
18862 (load_face_font): Adjust for the change of choose_face_font and
18863 FS_LOAD_FONT.
18864 (generate_ascii_font): New function.
18865 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
18866 (set_font_frame_param): Adjust for the change of choose_face_font.
18867 (free_realized_face): Make it public.
18868 (free_realized_faces_for_fontset): Rename from
18869 free_realized_multibyte_face. Free also faces realized for ASCII.
18870 (choose_face_font): Change arguments. Adjust for the change of
18871 fontset_font_pattern and FS_LOAD_FONT.
18872
18873 * xfns.c: Include "character.h".
18874 (x_encode_text): Adjust for the new code-conversion API.
18875
18876 * xselect.c: Don't include "charset.h".
18877 (selection_data_to_lisp_data): Adjust for the new code conversion API.
18878
18879 * xterm.c: Include "character.h".
18880 (x_encode_char): New argument CHARSET. Change caller.
18881 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
18882 Call ENCODE_CHAR instead of SPLIT_CHAR.
18883 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
18884 CHAR_WIDTH instead of CHARSET_WIDTH.
18885 (XTread_socket): Adjust for the new code-conversion API.
18886 (x_new_font): Adjust for the change of FS_LOAD_FONT.
18887 (x_load_font): Adjust for the change of struct font.
18888
188892008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
18890
18891 * xfaces.c (face_at_buffer_position): Remove unused vars.
18892
188932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
18894
18895 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
18896 Fix overflow checking.
18897
188982008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
18899
18900 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
18901 Cancel previous change.
18902
189032008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
18904
18905 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
18906 ccl->eight_bit_control. Fix check for buffer overflow.
18907 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
18908 (ccl_driver): Initialize extra_bytes to 0.
18909
189102008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
18911
18912 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
18913 return it ORed with ctrl_modifier.
18914
189152008-01-29 Miles Bader <miles@gnu.org>
18916
18917 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
18918
189192008-01-28 Jason Rumney <jasonr@gnu.org>
18920
18921 * w32.c (stat): Don't double check for networked drive.
18922
189232008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
18924
18925 * window.c (run_window_configuration_change_hook): New function.
18926 Code extracted from set_window_buffer. Set the selected frame.
18927 (set_window_buffer): Use it.
18928 * window.h (run_window_configuration_change_hook): Declare.
18929 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
18930
18931 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
18932
189332008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
18934
18935 * Makefile.in: Remove references to unused macros.
18936
189372008-01-26 Eli Zaretskii <eliz@gnu.org>
18938
18939 * w32.c (g_b_init_get_sid_sub_authority)
18940 (g_b_init_get_sid_sub_authority_count): New static variables.
18941 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
18942 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
18943 (init_user_info): Use them to retrieve uid and gid.
18944 Use 500/513, the Windows defaults, as Administrator's uid/gid.
18945 (fstat): Use pw_uid and pw_gid from the_passwd structure for
18946 st_uid and st_gid of the file.
18947
189482008-01-26 Jason Rumney <jasonr@gnu.org>
18949
18950 * w32.c (logon_network_drive): New function.
18951 (stat): Use it.
18952
189532008-01-26 Chong Yidong <cyd@stupidchicken.com>
18954
18955 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
18956 invisible text covered with an ellipsis.
18957
189582008-01-25 Richard Stallman <rms@gnu.org>
18959
18960 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
18961 jump back to beginning. Move some other initializations after that.
18962 (Qwindow_text_change_functions, Vwindow_text_change_functions):
18963 New variables.
18964 (syms_of_xdisp): Init them.
18965
18966 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
18967
18968 * buffer.c (reset_buffer_local_variables):
18969 Implement `permanent-local-hook'.
18970 (Qpermanent_local_hook): New variable.
18971 (syms_of_buffer): Init and staticpro it.
18972
189732008-01-25 Michael Albinus <michael.albinus@gmx.de>
18974
18975 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
18976
189772008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
18978
18979 * fns.c (Fclrhash): Return TABLE.
18980
189812008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18982
18983 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
18984 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
18985 is set even without positional changes.
18986 (x_scroll_bar_clear): Set bar->redraw_needed_p.
18987
18988 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
18989
189902008-01-23 Jason Rumney <jasonr@gnu.org>
18991
18992 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
18993
18994 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
18995 the unicode range available in MULE by locale-coding-system.
18996 Improve dbcs lead byte detection. Set event timestamp and modifiers
18997 earlier.
18998
189992008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19000
19001 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
19002 [MAC_OSX] (init_mac_osx_environment): Initialize it.
19003 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
19004 when used on child processes.
19005
190062008-01-21 Michael Albinus <michael.albinus@gmx.de>
19007
19008 * dbusbind.c (Fdbus_method_return_internal): Rename from
19009 Fdbus_method_return.
19010 (Fdbus_unregister_object): Move to dbus.el.
19011 (Fdbus_call_method, Fdbus_method_return_internal)
19012 (Fdbus_send_signal): Improve debug messages.
19013
190142008-01-20 Martin Rudalics <rudalics@gmx.at>
19015
19016 * undo.c (undo_inhibit_record_point): New variable.
19017 (syms_of_undo): Initialize it.
19018 (record_point): Don't record point when undo_inhibit_record_point
19019 is set.
19020
190212008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
19022
19023 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
19024
19025 * xdisp.c (Qauto_hscroll_mode): New var.
19026 (syms_of_xdisp): Initialize it.
19027 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
19028 window's buffer.
19029 (hscroll_windows): Don't check automatic_hscrolling_p here.
19030
19031 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
19032 vscroll if we're setting window-buffer to the value it already has.
19033
190342008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
19035
19036 * m/intel386.h: Remove references to XENIX.
19037
190382008-01-17 Andreas Schwab <schwab@suse.de>
19039
19040 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
19041 instead of HAVE_X86_64_LIB64_DIR.
19042 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
19043
190442008-01-17 Glenn Morris <rgm@gnu.org>
19045
19046 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
19047 to HAVE_X86_64_LIB64_DIR.
19048
190492008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
19050
19051 * s/irix3-3.h:
19052 * s/irix4-0.h:
19053 * s/386-ix.h:
19054 * s/domain.h:
19055 * s/hpux9-x11r4.h:
19056 * s/hpux9shxr4.h: Remove files for systems no longer supported.
19057
19058 * sysdep.c: Remove code containing references to symbols defined
19059 by unsupported systems.
19060
190612008-01-16 Glenn Morris <rgm@gnu.org>
19062
19063 * coding.c (select-safe-coding-system-function): Doc fix.
19064
190652008-01-15 Glenn Morris <rgm@gnu.org>
19066
19067 * config.in: Revert 2008-01-13 change: this is a generated file.
19068
190692008-01-13 Tom Tromey <tromey@redhat.com>
19070
19071 * lisp.h: Fix typo.
19072
190732008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19074
19075 * m/sequent-ptx.h:
19076 * m/sequent.h:
19077 * s/ptx.h:
19078 * s/ptx4-2.h:
19079 * s/ptx4.h: Remove files for systems no longer supported.
19080
19081 * callproc.c (Fcall_process): Fix previous change.
19082
190832008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19084
19085 * unexsunos4.c: Remove file, system not supported anymore.
19086
19087 * m/mips.h:
19088 * m/intel386.h:
19089 * callproc.c:
19090 * config.in:
19091 * ecrt0.c:
19092 * emacs.c:
19093 * fileio.c:
19094 * frame.c:
19095 * getpagesize.h:
19096 * keyboard.c:
19097 * lread.c:
19098 * process.c:
19099 * puresize.h:
19100 * sysdep.c:
19101 * systty.h:
19102 * syswait.h:
19103 * unexec.c:
19104 * xdisp.c:
19105 * alloc.c: Remove code containing references to symbols defined by
19106 unsupported systems.
19107
191082008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
19109
19110 * coding.c (detect_coding_mask): Fix previous change.
19111
191122008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
19113
19114 * coding.c (detect_coding_iso2022): New arg
19115 latin_extra_code_state. Allow Latin extra codes only
19116 when *latin_extra_code_state is nonzero.
19117 (detect_coding_mask): If there is a NULL byte, detect the encoding
19118 as UTF-16 or binary. If Latin extra codes exist, detect the
19119 encoding as ISO-2022 only when there's no other proper encoding is
19120 found.
19121
191222008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19123
19124 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
19125 #ifdef MAC_OS.
19126
191272008-01-08 Richard Stallman <rms@gnu.org>
19128
19129 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
19130
191312008-01-06 Nick Roberts <nickrob@snap.net.nz>
19132
19133 * keyboard.c (parse_menu_item): Don't enclose key bindings on
19134 menu bar in parentheses.
19135
191362008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
19137
19138 * m/7300.h:
19139 * m/acorn.h:
19140 * m/alliant-2800.h:
19141 * m/alliant.h:
19142 * m/alliant1.h:
19143 * m/alliant4.h:
19144 * m/altos.h:
19145 * m/amdahl.h:
19146 * m/apollo.h:
19147 * m/att3b.h:
19148 * m/aviion-intel.h:
19149 * m/aviion.h:
19150 * m/celerity.h:
19151 * m/clipper.h:
19152 * m/cnvrgnt.h:
19153 * m/convex.h:
19154 * m/cydra5.h:
19155 * m/delta88k.h:
19156 * m/dpx2.h:
19157 * m/dual.h:
19158 * m/elxsi.h:
19159 * m/f301.h:
19160 * m/gould-np1.h:
19161 * m/gould.h:
19162 * m/i860.h:
19163 * m/ibmps2-aix.h:
19164 * m/ibmrt-aix.h:
19165 * m/ibmrt.h:
19166 * m/irist.h:
19167 * m/is386.h:
19168 * m/isi-ov.h:
19169 * m/mega68.h:
19170 * m/mg1.h:
19171 * m/news-r6.h:
19172 * m/news-risc.h:
19173 * m/news.h:
19174 * m/nh3000.h:
19175 * m/nh4000.h:
19176 * m/ns16000.h:
19177 * m/ns32000.h:
19178 * m/nu.h:
19179 * m/orion.h:
19180 * m/orion105.h:
19181 * m/paragon.h:
19182 * m/pfa50.h:
19183 * m/plexus.h:
19184 * m/pyramid.h:
19185 * m/pyrmips.h:
19186 * m/sh3el.h:
19187 * m/sps7.h:
19188 * m/sr2k.h:
19189 * m/stride.h:
19190 * m/sun1.h:
19191 * m/sun2.h:
19192 * m/sun3-68881.h:
19193 * m/sun3-fpa.h:
19194 * m/sun3-soft.h:
19195 * m/sun3.h:
19196 * m/sun386.h:
19197 * m/symmetry.h:
19198 * m/tad68k.h:
19199 * m/tahoe.h:
19200 * m/targon31.h:
19201 * m/tek4300.h:
19202 * m/tekxd88.h:
19203 * m/tower32.h:
19204 * m/tower32v3.h:
19205 * m/ustation.h:
19206 * m/wicat.h:
19207 * m/xps100.h:
19208 * s/cxux.h:
19209 * s/cxux7.h:
19210 * s/dgux.h:
19211 * s/dgux4.h:
19212 * s/dgux5-4-3.h:
19213 * s/dgux5-4r2.h:
19214 * s/esix.h:
19215 * s/esix5r4.h:
19216 * s/hiuxmpp.h:
19217 * s/hiuxwe2.h:
19218 * s/iris3-5.h:
19219 * s/iris3-6.h:
19220 * s/isc2-2.h:
19221 * s/isc3-0.h:
19222 * s/isc4-0.h:
19223 * s/isc4-1.h:
19224 * s/newsos5.h:
19225 * s/newsos6.h:
19226 * s/osf1.h:
19227 * s/osf5-0.h:
19228 * s/riscix1-1.h:
19229 * s/riscix12.h:
19230 * s/sco4.h:
19231 * s/sco5.h:
19232 * s/sunos4-0.h:
19233 * s/sunos4-1.h:
19234 * s/sunos413.h:
19235 * s/sunos4shr.h:
19236 * s/umax.h:
19237 * s/unipl5-2.h:
19238 * s/xenix.h:
19239 * cxux-crt0.s:
19240 * unexapollo.c:
19241 * unexconvex.c:
19242 * unexenix.c:
19243 * unexsni.c: Remove files for systems no longer supported.
19244
19245 * m/intel386.h: Remove references to unsupported systems.
19246
19247 * w32.c (get_emacs_configuration): Remove reference to i860.
19248
19249 * sysdep.c: Remove dead code.
19250
192512008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
19252
19253 * s/rtu.h:
19254 * m/masscomp.h: Remove files. Platform is obsolete.
19255
192562008-01-04 Michael Albinus <michael.albinus@gmx.de>
19257
19258 * dbusbind.c (Fdbus_method_return): New function.
19259 (xd_read_message): Add the serial number to the event.
19260 (Fdbus_register_method): Activate the function.
19261
192622008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
19263
19264 * keyboard.c (read_key_sequence): Fix typo.
19265
192662008-01-03 Michael Albinus <michael.albinus@gmx.de>
19267
19268 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
19269 (xd_signature, xd_append_arg): Handle element type detection for
19270 empty arrays.
19271 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
19272 SDATA () calls; this must be solved more general.
19273 (Fdbus_register_signal): Use SBYTES instead of strlen.
19274
192752008-01-03 Magnus Henoch <magnus@zemdatav>
19276
19277 * dbusbind.c (xd_append_arg): Use unsigned char instead of
19278 unsigned int for byte values (necessary for big-endian platform).
19279 (Fdbus_call_method): Handle the case of no returned arguments.
19280
192812007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
19282
19283 * dbusbind.c (xd_read_message): Use non-static input_event struct.
19284
192852007-12-31 Magnus Henoch <mange@freemail.hu>
19286
19287 * dbusbind.c (xd_signature): Signature of variant is just "v".
19288
192892007-12-30 Michael Albinus <michael.albinus@gmx.de>
19290
19291 * dbusbind.c: Fix several errors and compiler warnings.
19292 Reported by Tom Tromey <tromey@redhat.com>.
19293 (XD_ERROR, XD_DEBUG_MESSAGE)
19294 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
19295 (xd_append_arg): Part for basic D-Bus types rewritten.
19296 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
19297 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
19298 appropriate.
19299 (xd_read_message): Return Qnil. Don't signal an error; it is not
19300 useful during event reading.
19301 (Fdbus_register_signal): Signal an error if the check for
19302 FUNCTIONP fails.
19303 (Fdbus_register_method): New function. The implementation is not
19304 complete, the call of the function signals an error therefore.
19305 (Fdbus_unregister_object): New function, renamed from
19306 Fdbus_unregister_signal. The initial check signals an error, if
19307 the object is not well formed.
19308
193092007-12-30 Richard Stallman <rms@gnu.org>
19310
19311 * textprop.c (get_char_property_and_overlay):
19312 Signal error if POSITION is out of range in a buffer.
19313
193142007-12-29 Martin Rudalics <rudalics@gmx.at>
19315
19316 * w32fns.c (Fx_create_frame): Make copy of frame parameters
19317 because the original parameters are in pure storage now.
19318
193192007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19320
19321 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
19322
193232007-12-22 Eli Zaretskii <eliz@gnu.org>
19324
19325 * callint.c (syms_of_callint) <command-history>: Add reference to
19326 history-length in the doc string.
19327
193282007-12-17 Jason Rumney <jasonr@gnu.org>
19329
19330 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
19331 before passing as wParam.
19332
193332007-12-22 Michael Albinus <michael.albinus@gmx.de>
19334
19335 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
19336 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
19337 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
19338 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
19339 as number.
19340 (Fdbus_call_method): Fix docstring.
19341
193422007-12-21 Michael Albinus <michael.albinus@gmx.de>
19343
19344 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
19345 New macros.
19346 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
19347 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
19348 Simplify.
19349 (xd_signature): New function.
19350 (xd_append_arg): Compute also signatures. Major rewrite.
19351 (xd_retrieve_arg): Make debug messages friendly.
19352 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
19353 Check for signatures of arguments.
19354
193552007-12-19 Michael Albinus <michael.albinus@gmx.de>
19356
19357 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
19358 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
19359 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
19360 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
19361 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
19362 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
19363 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
19364 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
19365 (xd_retrieve_value): Remove. Functionality included in ...
19366 (xd_append_arg): New function.
19367 (Fdbus_call_method, Fdbus_send_signal): Apply it.
19368
193692007-12-16 Michael Albinus <michael.albinus@gmx.de>
19370
19371 * dbusbind.c (top): Include <stdio.h>.
19372 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
19373 dbus_message_new_method_call and dbus_message_new_signal.
19374 (Fdbus_register_signal): Rename unique_name to uname.
19375 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
19376 non-existing unique name. Fix typos in matching rule. Return an
19377 object which is useful in Fdbus_unregister_signal.
19378 (Fdbus_unregister_signal): Reimplementation, in order to remove
19379 only the corresponding entry.
19380 (Vdbus_registered_functions_table): Change the order of entries.
19381 Apply these changes in xd_read_message and Fdbus_register_signal.
19382
193832007-12-16 Andreas Schwab <schwab@suse.de>
19384
19385 * fileio.c (Finsert_file_contents): Fix overflow check to not
19386 depend on undefined integer overflow.
19387
193882007-12-14 Jason Rumney <jasonr@gnu.org>
19389
19390 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
19391 for characters above 127.
19392
193932007-12-13 Jason Rumney <jasonr@gnu.org>
19394
19395 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
19396 before dereferencing array.
19397 (lookup_vk_code): Remove zero comparison.
19398
193992007-12-14 Michael Albinus <michael.albinus@gmx.de>
19400
19401 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
19402 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
19403 Use `unsigned int' instead of `uint'.
19404 (xd_read_message, Fdbus_register_signal): Split expressions into
19405 multiple lines before operators "&&" and "||", according to the
19406 GNU Coding Standards.
19407
194082007-12-14 Eli Zaretskii <eliz@gnu.org>
19409
19410 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
19411
194122007-12-12 Juri Linkov <juri@jurta.org>
19413
19414 * buffer.c (Frename_buffer): In interactive spec replace
19415 `read-buffer' with `read-string' that uses `buffer-name-history'
19416 as history, and the current buffer's name as default.
19417
194182007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
19419
19420 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
19421 manipulating the backtrace manually.
19422 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
19423 (struct backtrace, backtrace_list): Remove.
19424 (command_loop_1): Remove dead var `no_direct'.
19425
19426 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
19427 preserve non-built-in buffer-local variables.
19428 (Fkill_all_local_variables): Don't re-create&re-set permanent
19429 buffer-local variables.
19430
194312007-12-09 Juri Linkov <juri@jurta.org>
19432
19433 * buffer.c (Frename_buffer): Change interactive spec from "s" to
19434 Lisp code that uses `read-buffer' with current buffer as default.
19435
194362007-12-08 Michael Albinus <michael.albinus@gmx.de>
19437
19438 * dbusbind.c (xd_read_message): Generate an event for every
19439 registered handler. There might be several handlers registered
19440 for the same signal.
19441 (Fdbus_register_signal): Don't overwrite a registration for the
19442 same signal. Add a new registration if handlers are different.
19443 (Vdbus_registered_functions_table): Rework doc string.
19444
194452007-12-07 Michael Albinus <michael.albinus@gmx.de>
19446
19447 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
19448 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
19449 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
19450 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
19451 Unify argument lists.
19452 (xd_read_message, Fdbus_register_signal): Reorder and extend event
19453 arguments and hash table keys. Use unique name for service.
19454 (Fdbus_unregister_signal): Remove checks.
19455 (Vdbus_registered_functions_table): Fix doc string.
19456
194572007-12-05 Magnus Henoch <mange@freemail.hu>
19458
19459 * process.c (make_process): Initialize pty_flag to 0.
19460
194612007-12-05 Jason Rumney <jasonr@gnu.org>
19462
19463 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
19464 specified XBMs.
19465
194662007-12-05 Richard Stallman <rms@gnu.org>
19467
19468 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
19469
194702007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19471
19472 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
19473 New variable.
19474 (mac_try_close_socket) [MAC_OSX]: New function.
19475 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
19476 Update cfsockets_for_select. Replace invalid CFRunLoop source.
19477
19478 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
19479 Use mac_try_close_socket.
19480
194812007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19482
19483 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
19484 reloc_base.
19485 (copy_dysymtab): Compute relocation base here.
19486 (rebase_reloc_address) [__ppc64__]: New function.
19487 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
19488 changed.
19489
194902007-12-05 Jason Rumney <jasonr@gnu.org>
19491
19492 * w32proc.c (sys_spawnve): Quote args with wildcards.
19493
194942007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19495
19496 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
19497 __objc_* sections.
19498 (unrelocate) [_LP64]: Set relocation base to address of data segment.
19499
195002007-12-05 Michael Albinus <michael.albinus@gmx.de>
19501
19502 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
19503 Move check for Vdbus_registered_functions_table to
19504 xd_read_queued_messages.
19505 (xd_read_queued_messages): Protect xd_read_message calls by
19506 internal_condition_case_1.
19507
195082007-12-04 Michael Albinus <michael.albinus@gmx.de>
19509
19510 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
19511 Qdbus_system_bus and Qdbus_session_bus, respectively.
19512 (Vdbus_intern_symbols): Remove.
19513 (Vdbus_registered_functions_table): New hash table.
19514 (XD_SYMBOL_INTERN_SYMBOL): Remove.
19515 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
19516 Rewrite in order to manage registered functions by hash table
19517 Vdbus_registered_functions_table.
19518
195192007-12-03 Jan Djärv <jan.h.d@swipnet.se>
19520
19521 * xterm.c: Update URL to Window Manager Specification in comment.
19522
195232007-12-02 Michael Albinus <michael.albinus@gmx.de>
19524
19525 * config.in (HAVE_DBUS): Add.
19526
19527 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
19528 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
19529 (obj): Add $(DBUS_OBJ).
19530 (LIBES): Add $(DBUS_LIBS).
19531 (dbusbind.o): New target.
19532
19533 * dbusbind.c: New file.
19534
19535 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
19536
19537 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
19538 (Qdbus_event): New Lisp symbol.
19539 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
19540 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 19541 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
19542
19543 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
19544
195452007-12-01 Richard Stallman <rms@gnu.org>
19546
19547 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
19548
195492007-11-30 Jason Rumney <jasonr@gnu.org>
19550
19551 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
19552 (w32con_reset_terminal_modes): Clear screen buffer.
19553 (w32_face_attributes): Don't use color indexes that are out of range.
19554 Only reverse the default colors.
19555
19556 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
19557 WINDOWSNT.
19558
19559 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
19560
195612007-11-29 Jason Rumney <jasonr@gnu.org>
19562
19563 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
19564 (w32_face_attributes): Use Vtty_defined_color_alist to determine
19565 if the terminal colors are initialized.
19566 (unspecified_fg, unspecified_bg): Remove unused declarations.
19567
195682007-11-29 Andreas Schwab <schwab@suse.de>
19569
19570 * keyboard.c (apply_modifiers): Fix typo.
19571
195722007-11-29 Richard Stallman <rms@gnu.org>
19573
19574 * keymap.c (Fcurrent_local_map): Doc fix.
19575
195762007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
19577
19578 * s/gnu-kfreebsd.h: New file.
19579
195802007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
19581
19582 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
19583 Don't cast redundantly.
19584
19585 * keyboard.c (KEY_TO_CHAR): New macro.
19586 (parse_modifiers, apply_modifiers): Accept integer arguments.
19587 (read_key_sequence): Use them to unify the "shift->unshift" mapping
19588 for chars and symbol keys.
19589 After doing such remapping, apply function-key-map again.
19590
195912007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
19592
19593 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
19594 compiled anymore.
19595
195962007-11-26 Andreas Schwab <schwab@suse.de>
19597
19598 * process.c (list_processes_1): Fix indentation level of the
19599 command column.
19600
196012007-11-23 Andreas Schwab <schwab@suse.de>
19602
19603 * editfns.c (Fformat): Handle %c specially since it requires the
19604 argument to be of type int.
19605
196062007-11-23 Markus Triska <markus.triska@gmx.at>
19607
19608 * emacs.c (main): Call init_editfns before init_process, since
19609 init_process sets Vprocess_connection_type depending on OS release.
19610
196112007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
19612
19613 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
19614 (find_symbol_value): Use do_symval_forwarding.
19615
19616 * data.c (set_internal): Set the value in the `cons-cell' (for
19617 Buffer_Local_values) not only for frame-local variables.
19618
196192007-11-22 Andreas Schwab <schwab@suse.de>
19620
19621 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
19622 values to sprintf.
19623 * keymap.c (Fsingle_key_description): Likewise.
19624 * print.c (print_object): Likewise.
19625
196262007-11-22 Jan Djärv <jan.h.d@swipnet.se>
19627
19628 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
19629 file for image is nil.
19630
196312007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
19632
19633 * term.c: Include stdarg.h.
19634 (fatal): Implement using varargs.
19635 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
19636
196372007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
19638
19639 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
19640 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
19641 Update call to buffer_slot_type_mismatch.
19642 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
19643 (buffer_slot_type_mismatch): Update.
19644 * buffer.c (buffer_local_types): Remove.
19645 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
19646 (defvar_per_buffer): Set the type in the buffer_objfwd.
19647
196482007-11-21 Jason Rumney <jasonr@gnu.org>
19649
19650 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
19651 CreateFileMapping returns NULL on failure.
19652
196532007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
19654
19655 * search.c (Fset_match_data): Remove the `evaporate' feature.
19656 (unwind_set_match_data): Don't use the `evaporate' feature.
19657
196582007-11-21 Jason Rumney <jasonr@gnu.org>
19659
19660 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
19661
19662 * w32console.c (w32con_write_glyphs): Remove unused variables.
19663
196642007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
19665
19666 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
19667
19668 * s/darwin.h (MULTI_KBOARD): Remove.
19669
19670 * macfns.c (x_create_tip_frame, Fx_create_frame)
19671 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
19672
196732007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
19674
19675 * buffer.c (Fbuffer_local_value): Remove redundant test.
19676 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
19677 than in `current-buffer' to match the comment.
19678 Do the swap using swap_in_global_binding.
19679
19680 * data.c (store_symval_forwarding, set_internal):
19681 * eval.c (specbind): Remove dead code.
19682
19683 * coding.c (detect_coding, Fupdate_coding_systems_internal):
19684 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
19685 Since we do not want to see internal Lisp_*fwd objects here.
19686
196872007-11-18 Jan Djärv <jan.h.d@swipnet.se>
19688
19689 * sysdep.c (init_system_name): Use getaddrinfo if available.
19690
19691 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
19692 (x_scroll_bar_note_movement): start, end, with, height in struct
19693 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
19694
196952007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
19696
19697 * puresize.h (BASE_PURESIZE): Increase to 1190000.
19698
196992007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
19700
19701 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
19702 This undoes Richard's change of 14-Oct-2002.
19703
19704 * alloc.c (allocate_other_vector):
19705 * lisp.h (allocate_other_vector): Remove.
19706
19707 * window.c (struct save_window_data): Move non-lisp data to the end
19708 and make it `int' rather than Lisp_Object.
19709 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
19710 Done wrap/unwrap integer values.
19711 (Fset_window_configuration, compare_window_configurations):
19712 Update use of fields to their new types.
19713
19714 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
19715 Turn integer fields into `int'. Merge x_window_low and x_window_high.
19716 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
19717 (SET_SCROLL_BAR_X_WINDOW): Remove.
19718 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
19719 Access the new x_window field directly.
19720 * xterm.c (x_scroll_bar_create): Use a pseudovector.
19721 Don't wrap/unwrap integers into Lisp_Objects.
19722 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
19723 (x_scroll_bar_report_motion):
19724 Don't wrap/unwrap integers into Lisp_Objects.
19725 (x_term_init): Use SDATA.
19726 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
19727 (x_scroll_bar_set_handle, x_scroll_bar_remove)
19728 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
19729 (x_scroll_bar_report_motion, x_scroll_bar_clear):
19730 * xfns.c (x_set_background_color):
19731 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
19732 Access the new x_window field directly.
19733
19734 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
19735 (allocate_pseudovector): Make non-static.
19736
19737 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
19738 (allocate_pseudovector): Declare.
19739 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
19740
197412007-11-15 Andreas Schwab <schwab@suse.de>
19742
19743 * editfns.c (Fformat): Correctly format EMACS_INT values.
19744 Also take precision into account when formatting an integer.
19745
19746 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
19747
197482007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
19749
19750 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
19751 (syms_of_keyboard): Defsubr it.
19752
19753 * data.c (swap_in_global_binding): Fix longstanding bug where
19754 store_symval_forwarding was not called with the right second argument,
19755 thus causing objfwd-ing from being dropped.
19756
197572007-11-14 Juanma Barranquero <lekktu@gmail.com>
19758
19759 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
19760 (Fx_display_pixel_height, Fx_display_planes)
19761 (Fx_display_color_cells, Fx_server_max_request_size)
19762 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
19763 (Fx_display_visual_class, Fx_display_save_under):
19764 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
19765 (Fx_display_pixel_height, Fx_display_planes)
19766 (Fx_display_color_cells, Fx_server_max_request_size)
19767 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
19768 (Fx_display_mm_height, Fx_display_mm_width)
19769 (Fx_display_backing_store, Fx_display_visual_class)
19770 (Fw32_select_font, Fx_display_save_under):
19771 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
19772 (Fx_display_pixel_height, Fx_display_planes)
19773 (Fx_display_color_cells, Fx_server_max_request_size)
19774 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
19775 (Fx_display_save_under): Fix typos in docstrings.
19776
197772007-11-14 Juanma Barranquero <lekktu@gmail.com>
19778
19779 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
19780 corresponding to deleted entries; they are an implementation detail.
19781 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
19782 Remove variables.
19783 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
19784 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
19785 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
19786 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
19787 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
19788 (Fw32_define_rgb_color, Fw32_load_color_file)
19789 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
19790 Fix typos in docstrings.
19791 (Fx_server_version): Reflow docstring.
19792 (Fw32_shell_execute): Doc fixes.
19793
197942007-11-13 Juanma Barranquero <lekktu@gmail.com>
19795
19796 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
19797 if w32_parse_hot_key returned nil.
19798
197992007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
19800
19801 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
19802
198032007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 19804
aac0c6e3
MR
19805 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
19806
19807 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
19808
19809 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
19810 Remove W32_SCROLL_BAR_CLICK_EVENT.
19811
19812 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
19813 Add MULTIMEDIA_KEY_EVENT.
19814
19815 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
19816 (lispy_multimedia_keys) [WINDOWSNT]: New array.
19817 (make_lispy_event) [WINDOWSNT]: Use it to translate
19818 MULTIMEDIA_KEY_EVENT.
19819
19820 * w32term.h (WM_APPCOMMAND): Define if not already.
19821 (GET_APPCOMMAND_LPARAM): Likewise.
19822
19823 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
19824 WM_APPCOMMAND.
19825
19826 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
19827 (syms_of_w32fns): Export and initialize it.
19828 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
19829
198302007-11-09 Chong Yidong <cyd@stupidchicken.com>
19831
19832 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
19833 twice.
19834
19835 * xdisp.c (handle_face_prop): Fix last change.
19836
198372007-11-09 Richard Stallman <rms@gnu.org>
19838
19839 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
19840 not just for after-strings and before-strings.
19841 Call face_for_overlay_string and pass the overlay to it.
19842 (handle_display_prop): Determine whether property came from an overlay.
19843 Pass OVERLAY arg to handle_single_display_spec.
19844 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
19845 (load_overlay_strings): Fill in it->string_overlays.
19846 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
19847
19848 * xfaces.c (face_for_overlay_string): Function renamed from
19849 face_at_buffer_position_no_overlays, and add arg OVERLAY.
19850
19851 * dispextern.h (struct it): New elt string_overlays.
19852 New elt from_overlay, also in stack.
19853 Rearrange a few elements.
19854 (face_for_overlay_string): Decl renamed from
19855 face_at_buffer_position_no_overlays, and add argument.
19856
198572007-11-09 Richard Stallman <rms@gnu.org>
19858
19859 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
19860 to get the base face for an overlay string.
19861
19862 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
19863
19864 * xfaces.c (face_at_buffer_position_no_overlays): New function.
19865
19866 * xdisp.c (handle_stop): Move some code out of loop.
19867
198682007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19869
19870 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
19871 Fix conversion from Lisp object to ATSUFontID.
19872
198732007-11-09 Jason Rumney <jasonr@gnu.org>
19874
19875 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
19876
198772007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19878
19879 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
19880 Don't assume regions are aligned to page boundary.
19881 (print_load_command_name): Add LC_UUID if defined.
19882
198832007-11-09 Richard Stallman <rms@gnu.org>
19884
19885 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
19886
198872007-11-07 Jason Rumney <jasonr@gnu.org>
19888
19889 * s/windows95.h: Remove.
19890
198912007-11-06 Jan Djärv <jan.h.d@swipnet.se>
19892
19893 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
19894 abort with a message on unhandled store_type values.
19895
198962007-11-01 Jan Djärv <jan.h.d@swipnet.se>
19897
19898 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
19899 Remove HAVE_X11R5 and HAVE_X11R4.
19900
199012007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
19902
19903 * Makefile.in: Remove references to sunfns.c and sunfns.o.
19904
199052007-11-01 Johan Bockgård <bojohan@gnu.org>
19906
19907 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
19908 Don't set s->stippled_p here, since it has already been set by
19909 x_set_glyph_string_gc from x_draw_glyph_string.
19910
199112007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
19912
19913 * sunfns.c: Remove file.
19914
19915 * m/sun386.h:
19916 * m/sun2.h:
19917 * m/sparc.h: Remove Sun windows code.
19918
199192007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
19920
19921 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
19922 (init_keyboard): Set current_kboard's window-system to nil.
19923 (tty_read_avail_input): Typo.
19924 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
19925
199262007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
19927
19928 * s/usg5-4.h:
19929 * s/usg5-3.h:
19930 * s/ptx.h:
19931 * m/is386.h:
19932 * m/ibmps2-aix.h:
19933 * Makefile.in: Remove all mentions of X10.
19934
19935 * dispnew.c (syms_of_display): Don't mention version 10.
19936
199372007-10-28 Juanma Barranquero <lekktu@gmail.com>
19938
19939 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
19940 ($(BLD)/abbrev.$(O)): Remove.
19941
199422007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
19943
19944 Rewrite abbrev.c in Elisp.
19945 * image.c (Qcount): Don't declare as extern.
19946 (syms_of_image): Initialize and staticpro `Qcount'.
19947 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
19948 * emacs.c (main): Don't call syms_of_abbrev.
19949 * Makefile.in (obj): Remove abbrev.o.
19950 (abbrev.o): Remove.
19951 * abbrev.c: Remove.
19952
199532007-10-26 Martin Rudalics <rudalics@gmx.at>
19954
19955 * window.c (window_min_size_2): Don't count header-line.
19956
199572007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
19958
19959 * frame.h (struct frame): Move all bit fields after the first bit
19960 field to take advantage of the available space. Group all the
19961 chars together to reduce wasted space due to padding.
19962
199632007-10-26 Juanma Barranquero <lekktu@gmail.com>
19964
19965 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
19966
19967 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
19968 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
19969 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
19970 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
19971 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
19972 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
19973 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
19974 (last_marked, mark_object_loop_halt): Make static.
19975
19976 * frame.c (syms_of_frame) <delete-frame-functions>:
19977 Fix typo in docstring.
19978
199792007-10-25 Juanma Barranquero <lekktu@gmail.com>
19980
19981 * w32.c (init_environment): Fix tiny memory leak.
19982 (w32_get_resource): Remove unused variable `ok'.
19983
199842007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
19985
19986 Make `window-system' into a keyboard-local variable (rather than
19987 frame-local as done originally by multi-tty).
19988
19989 * keyboard.h (struct kboard): Add Vwindow_system.
19990 * keyboard.c (init_kboard): Set a default for Vwindow_system.
19991 (mark_kboards): Mark Vwindow_system.
19992
19993 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
19994 (init_display): Don't set the obsolete `window-system' frame-param.
19995
19996 * xterm.c (x_term_init):
19997 * w32term.c (w32_create_terminal):
19998 * term.c (init_tty): Set Vwindow_system.
19999 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
20000 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
20001
20002 * xfns.c (Fx_create_frame, x_create_tip_frame):
20003 * w32fns.c (Fx_create_frame, x_create_tip_frame):
20004 * macfns.c (Fx_create_frame):
20005 Don't set the obsolete `window-system' frame-param.
20006
20007 * frame.h (Qwindow_system): Remove.
20008 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
20009 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
20010
200112007-10-24 Richard Stallman <rms@gnu.org>
20012
20013 * frame.c (x_figure_window_size): For fullscreen case,
20014 set USPosition | PPosition without clobbering rest of window_prompting.
20015
20016 * keyboard.c (Fcurrent_idle_time): Doc fix.
20017
20018 * print.c (Fwith_output_to_temp_buffer): Doc fix.
20019
200202007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
20021
20022 * process.c (unwind_request_sigio): Only define if __ultrix__.
20023
20024 * callproc.c (child_setup): Remove spurious *.
20025
20026 * lisp.h (Fget_text_property): Declare.
20027 (have_menus_p): Declare it here rather than in sys-dep header files.
20028 * macterm.h (have_menus_p):
20029 * msdos.h (have_menus_p):
20030 * xterm.h (have_menus_p): Remove.
20031
20032 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
20033 (Fmake_variable_frame_local): Just check the variable's const-ness
20034 rather than checking nil or t.
20035
200362007-10-22 Jason Rumney <jasonr@gnu.org>
20037
20038 * w32fns.c: Include math.h.
20039 (w32_abort): Declaration moved to nt/config.nt.
20040
20041 * s/ms-w32.h (HAVE_STDLIB_H): Define.
20042 (abort): Redefinition moved to nt/config.nt.
20043
20044 * m/windowsnt.h: Remove.
20045
200462007-10-22 Juanma Barranquero <lekktu@gmail.com>
20047
20048 * emacs.c (Fdump_emacs): Fix typo in message.
20049 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
20050 <installation-directory>: Reflow docstring.
20051
200522007-10-22 Juri Linkov <juri@jurta.org>
20053
20054 * minibuf.c: Allow minibuffer default to be a list of default values.
20055 With empty input use the first element of this list as returned default.
20056 (string_to_object)
20057 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
20058 (read_minibuf): If defalt is cons, set histstring to its car.
20059 (Fread_string): If default_value is cons, set val to its car.
20060 (Fread_buffer): If def is cons, use its car.
20061 (Fcompleting_read): If defalt is cons, set val to its car.
20062
200632007-10-21 Michael Albinus <michael.albinus@gmx.de>
20064
20065 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
20066
200672007-10-20 Juanma Barranquero <lekktu@gmail.com>
20068
20069 * doc.c (Fdocumentation): Check for advice in all cases.
20070
200712007-10-19 Chong Yidong <cyd@stupidchicken.com>
20072
20073 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
20074
200752007-10-19 Richard Stallman <rms@gnu.org>
20076
20077 * doc.c (Fdocumentation): Check for and handle an advised function.
20078
200792007-10-19 Juanma Barranquero <lekktu@gmail.com>
20080
20081 * process.c (Fset_process_filter): Doc fix.
20082
200832007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
20084
20085 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
20086 which caused key-translation-map to applied repeatedly (thus breaking
20087 double-mode).
20088
200892007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20090
20091 * xselect.c (x_own_selection, x_handle_selection_clear)
20092 (x_clear_frame_selections):
20093 * w32menu.c (list_of_panes, list_of_items):
20094 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
20095 * textprop.c (validate_plist, interval_has_all_properties)
20096 (interval_has_some_properties, interval_has_some_properties_list)
20097 (add_properties, text_property_list):
20098 * process.c (Fget_buffer_process, list_processes_1, status_notify):
20099 * minibuf.c (Fassoc_string):
20100 * macselect.c (x_own_selection, x_clear_frame_selections)
20101 (Fx_disown_selection_internal):
20102 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
20103 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
20104
201052007-10-17 Chong Yidong <cyd@stupidchicken.com>
20106
20107 * process.c: Link to libs for calling res_init() if available.
20108 (Fmake_network_process): Call res_init() before getaddrinfo or
20109 gethostbyname, if possible.
20110
201112007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20112
20113 * lread.c (read1): Set pvectype for char_tables.
20114
20115 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
20116 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
20117 Add type checks.
20118 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
20119
20120 * alloc.c (free_misc): Use XMISCTYPE.
20121 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
20122
201232007-10-17 Glenn Morris <rgm@gnu.org>
20124
20125 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
20126 (syms_of_minibuf): Add Qcompletion_ignore_case.
20127 * dired.c (Qcompletion_ignore_case): Change to external.
20128 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
20129 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
20130 (Fread_file_name): Use it rather than intern'ing.
20131
20132 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
20133 (Fread_coding_system): Ignore case of user input.
20134
201352007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20136
20137 * xdisp.c (handle_display_prop): Ignore display specs after
20138 replacing one when string text is being replaced.
20139 (handle_single_display_spec): Pretend as if characters with display
20140 property haven't been consumed only when buffer text is being replaced.
20141
201422007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
20143
20144 * xfns.c (Fx_create_frame, Fx_display_list):
20145 * window.c (window_fixed_size_p, enlarge_window)
20146 (shrink_window_lowest_first):
20147 * macterm.c (init_font_name_table):
20148 * macfns.c (Fx_create_frame, Fx_display_list):
20149 * lread.c (close_load_descs):
20150 * keyboard.c (read_char_x_menu_prompt):
20151 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
20152 * coding.c (code_convert_region_unwind): Test the type of an object
20153 rather than just !NILP before extracting data from it.
20154
20155 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
20156
20157 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
20158 (XMISCANY): New macro.
20159 (XMISCTYPE): Use it.
20160 (struct Lisp_Misc_Any): New type.
20161 (union Lisp_Misc): Use it.
20162 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
20163 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
20164 (find_symbol_value, set_internal, default_value, Fset_default)
20165 (Fmake_variable_buffer_local, Fmake_local_variable)
20166 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
20167 (Flocal_variable_if_set_p, Fvariable_binding_locus):
20168 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
20169 * alloc.c (allocate_buffer): Set the size and tag.
20170 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
20171 Use XMISCANY.
20172 (die): Follow the GNU convention for error messages.
20173 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
20174 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
20175 tag any more.
20176 (set_buffer_internal_1):
20177 * frame.c (store_frame_param):
20178 * eval.c (specbind):
20179 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
20180
20181 * doc.c (Fsnarf_documentation): Simplify.
20182
201832007-10-14 Juanma Barranquero <lekktu@gmail.com>
20184
20185 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
20186 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
20187
201882007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
20189
20190 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
20191
201922007-10-14 Juanma Barranquero <lekktu@gmail.com>
20193
20194 * eval.c (do_autoload): Don't save autoloads.
20195
20196 * data.c (Ffset): Save autoload of the function being set.
20197
201982007-10-07 John Paul Wallington <jpw@pobox.com>
20199
20200 * xfns.c (x_create_tip_frame): Set the `display-type' frame
20201 parameter before setting up faces.
20202
202032007-10-13 Eli Zaretskii <eliz@gnu.org>
20204
20205 * ccl.c (Fregister_code_conversion_map):
20206 * keyboard.c (append_tool_bar_item): Reformat last change.
20207
20208 * lisp.h (eabs): Rename from `abs'. All callers changed.
20209
202102007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
20211
20212 * buffer.c (add_overlay_mod_hooklist):
20213 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
20214 * fontset.c (make_fontset):
20215 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
20216 (append_tool_bar_item):
20217 * macmenu.c (grow_menu_items):
20218 * w32menu.c (grow_menu_items):
20219 * xmenu.c (grow_menu_items): Use larger_vector.
20220
202212007-10-13 Eli Zaretskii <eliz@gnu.org>
20222
20223 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
20224 selected frame'' on MSDOS).
20225
202262007-10-12 Martin Rudalics <rudalics@gmx.at>
20227
20228 * frame.c (Qexplicit_name): New variable.
20229 (x_report_frame_params): Report it in parameter alist.
20230 (syms_of_frame): Intern and staticpro it.
20231
202322007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
20233
20234 * macfns.c (x_create_tip_frame): Set terminal for frame.
20235
202362007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
20237
20238 * frame.c (Qenvironment): Remove.
20239 (syms_of_frame) <Qenvironment>: Don't initialize.
20240 (Fdelete_frame): Don't treat the `environment' param specially.
20241 * frame.h (Qenvironment): Don't declare.
20242 * callproc.c (set_initial_environment): Don't set unused frame param.
20243
20244 * frame.c (Fframe_with_environment): Remove.
20245 (syms_of_frame) <Sframe_with_environment>: Don't declare.
20246
20247 * lisp.h (Fframe_with_environment): Don't declare.
20248
202492007-10-10 Juanma Barranquero <lekktu@gmail.com>
20250
20251 * indent.c (indent_tabs_mode, last_known_column)
20252 (last_known_column_modified): Make static.
20253 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
20254
202552007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
20256
20257 * puresize.h (BASE_PURESIZE): Increase to 1170000.
20258
202592007-10-09 Jason Rumney <jasonr@gnu.org>
20260
20261 * w32term.c (x_set_window_size): Disable code that attempts to tell
20262 Lisp code about a size change before it actually happens.
20263
202642007-10-09 Richard Stallman <rms@gnu.org>
20265
20266 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
20267 return HANDLED_RETURN.
20268
202692007-10-08 Martin Rudalics <rudalics@gmx.at>
20270
20271 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
20272 when there's an unread command event.
20273
20274 * frame.c (focus_follows_mouse): Move here from frame.el to allow
20275 window autoselection act appropriately when leaving selected frame.
20276 (syms_of_frame): Initialize focus_follows_mouse.
20277 * frame.h (focus_follows_mouse): Extern it.
20278 * macterm.c (XTread_socket): When focus_follows_mouse is nil
20279 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
20280 * msdos.c (dos_rawgetc): Likewise.
20281 * w32term.c (w32_read_socket): Likewise.
20282 * xterm.c (handle_one_xevent): Likewise.
20283 * xdisp.c (syms_of_xdisp): In doc-string of
20284 mouse-autoselect-window mention focus-follows-mouse.
20285
202862007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20287
20288 * macterm.c (mac_load_query_font): Fix missing return value.
20289 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
20290 Add BLOCK_INPUT.
20291
202922007-10-08 Richard Stallman <rms@gnu.org>
20293
20294 * xdisp.c (get_window_cursor_type): Implement documented behavior
20295 for cursor-in-non-selected-windows = t.
20296
202972007-10-08 Jason Rumney <jasonr@gnu.org>
20298
20299 * w32.c (w32_get_resource): Always close registry keys.
20300
203012007-10-08 Jason Rumney <jasonr@gnu.org>
20302
20303 * makefile.w32-in (LIBS): Add COMCTL32.
20304
20305 * w32fns.c (globals_of_w32fns): Init common controls.
20306
203072007-10-08 Richard Stallman <rms@gnu.org>
20308
20309 * image.c (our_memory_buffer): Rename from omfib_buffer.
20310
203112007-10-08 Richard Stallman <rms@gnu.org>
20312
20313 * buffer.c (Foverlays_at): Doc fix.
20314
203152007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
20316
20317 * fns.c (Fplist_put): Preserve uneven tail data.
20318
203192007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
20320
20321 * termhooks.h (enum event_kind): Remove trailing comma.
20322
20323 * frame.h (enum): Remove trailing comma.
20324
203252007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
20326
20327 * w32proc.c (delete_child): Don't terminate threads of zombies.
20328
203292007-10-08 Martin Rudalics <rudalics@gmx.at>
20330
20331 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
20332
20333 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
20334 last-repeatable-command.
20335 (init_kboard): Initialize Vlast_repeatable_command.
20336 (command_loop_1): Set it to real_this_command unless that was
20337 bound to an input event.
20338 (mark_kboards): Mark it.
20339
203402007-10-08 Richard Stallman <rms@gnu.org>
20341
20342 * eval.c (condition-case): Doc fix.
20343
203442007-10-08 Masatake YAMATO <jet@gyve.org>
20345
20346 * xfaces.c (tty_supports_face_attributes_p): Fix code
20347 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
20348 was copied and not edited.
20349
203502007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
20351
20352 Add new `input-decode-map' keymap and use it for terminal
20353 escape sequences.
20354 * keyboard.h (struct kboard): Add Vinput_decode_map.
20355 Remove Vlocal_key_translation_map.
20356 * keyboard.c (read_key_sequence): Add support for input-decode-map.
20357 (init_kboard): Init input-decode-map.
20358 Replace local-key-translation-map back with key-translation-map.
20359 (syms_of_keyboard): Declare input-decode-map.
20360 Remove local-key-translation-map. Update docstrings.
20361 (mark_kboards): Mark Vinput_decode_map.
20362 Don't mark Vlocal_key_translation_map.
20363 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
20364 Replace local-key-translation-map back with key-translation-map.
20365 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
20366 Bind in input-decode-map rather than function-key-map.
20367
20368 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
20369 This was made redundant by the previous introduction of XSETPVECTYPE.
20370
203712007-10-09 Richard Stallman <rms@gnu.org>
20372
20373 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
20374
203752007-09-29 Richard Stallman <rms@gnu.org>
20376
20377 * eval.c (internal_condition_case_2, internal_condition_case_1)
20378 (internal_condition_case): Reenable abort if x_catching_errors ()
20379 to see if that really happens and why.
20380
203812007-10-06 Andreas Schwab <schwab@suse.de>
20382
20383 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
20384
203852007-10-04 Juanma Barranquero <lekktu@gmail.com>
20386
20387 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
20388
203892007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
20390
20391 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
20392
203932007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
20394
20395 * window.h (struct window):
20396 * window.c (struct save_window_data, struct saved_window):
20397 * termhooks.h (struct terminal):
20398 * process.h (struct Lisp_Process):
20399 * frame.h (struct frame):
20400 * buffer.h (struct buffer):
20401 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
20402 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
20403 The size field of (pseudo)vectors is now unsigned.
20404 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
20405
20406 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
20407 Turn `count' into an integer.
20408
20409 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
20410 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
20411 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
20412 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
20413 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
20414
20415 * alloc.c (allocate_pseudovector): New fun.
20416 (ALLOCATE_PSEUDOVECTOR): New macro.
20417 (allocate_window, allocate_terminal, allocate_frame)
20418 (allocate_process): Use it.
20419 (mark_vectorlike): New function.
20420 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
20421 (mark_terminals): Use it.
20422 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
20423 (Fmake_byte_code): Use XSETPVECTYPE.
20424
20425 * frame.c (Fframe_parameters): Minor simplification.
20426
20427 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
20428
20429 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
20430
20431 * buffer.c (Fget_buffer_create, init_buffer_once):
20432 * lread.c (defsubr):
20433 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
20434
20435 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
20436 defined differently in the m/*.h files.
20437 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
20438 (XSETPVECTYPE): New macro.
20439 (XSETPSEUDOVECTOR): Use it.
20440
20441 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
20442 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
20443
20444 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
20445 * lread.c (defvar_per_buffer):
20446 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
20447
20448 * window.c (candidate_window_p): Only consider as visible frames that
20449 are on the same terminal.
20450
20451 * m/ibms390x.h (MARKBIT): Remove unused macro.
20452
204532007-10-01 Juanma Barranquero <lekktu@gmail.com>
20454
20455 * lread.c (Fload): Fix typo in docstring.
20456
204572007-10-01 Michaël Cadilhac <michael@cadilhac.name>
20458
20459 * floatfns.c (Fexpt): Manually check for overflows, so that a power
20460 of a non-zero value can't yield zero.
20461
204622007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
20463
20464 * term.c (term_clear_mouse_face, term_mouse_highlight)
20465 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
20466
20467 * print.c (safe_debug_print): Use XHASH.
20468
20469 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
20470 Lisp elements such as tags.
20471 (XHASH): New macro.
20472 (EQ): Use it.
20473 (SREF, SSET, STRING_COPYIN): Use SDATA.
20474 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
20475
20476 * alloc.c (mark_terminal): Remove left-over declaration.
20477 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
20478 (allocate_vectorlike): Remove type argument. Adjust callers.
20479 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
20480 Only handle the one remaining MEM_TYPE_VECTORLIKE.
20481
20482 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
20483 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
20484 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
20485 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
20486 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
20487 Use them.
20488
20489 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
20490 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
20491 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
20492
204932007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
20494
20495 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
20496 loaded by default.
20497
204982007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
20499
20500 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
20501 on this tty.
20502 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
20503
20504 * term.c (mouse_face_window): Rename from Qmouse_face_window.
20505 Update all users.
20506 (handle_one_term_event): Use Gpm_DrawPointer.
20507 (Fgpm_mouse_start): Rename from Fterm_open_connection.
20508 Signal errors instead of returning nil. Always return nil.
20509 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
20510 Make it a noop if gpm-mouse was not activated.
20511 (syms_of_term): Update names.
20512
205132007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
20514
20515 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
20516 (init_sys_modes): Check that gpm_tty is the current tty.
20517
20518 * alloc.c (allocate_terminal): Set the vector size to only count the
20519 lisp fields. Initialize those to nil.
20520 (mark_object): Don't treat terminals specially.
20521 (mark_terminal): Remove.
20522 (mark_terminals): Use mark_object instead.
20523
20524 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
20525 the GC to the beginning.
20526
20527 * indent.h:
20528 * indent.c: Use EMACS_INT for ints coming from Elisp data.
20529
20530 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
20531
205322007-09-25 Jason Rumney <jasonr@gnu.org>
20533
20534 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
20535
20536 * w32console.c (create_w32cons_output): Remove.
20537
20538 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
20539
20540 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
20541 (reset_sys_modes): Use reset_terminal_modes_hook.
20542
205432007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
20544
20545 * eval.c (do_autoload): Don't output any message.
20546
205472007-09-24 Juri Linkov <juri@jurta.org>
20548
20549 * emacs.c (standard_args): Change priority of "--no-splash"
20550 from 40 to 3. Add "--no-desktop" with the same priority.
20551
205522007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
20553
20554 * alloc.c (gc_sweep): Check cons cell mark bits word by word
20555 and optimize the case where they are all 1.
20556
205572007-09-23 Johannes Weiner <hannes@saeurebad.de>
20558
20559 * lisp.h (abs): Define if not defined.
20560 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
20561 Don't define `abs', since it's defined in lisp.h.
20562
205632007-09-22 Eli Zaretskii <eliz@gnu.org>
20564
20565 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
20566 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
20567 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
20568 (init_tty): Use DEV_TTY instead of "/dev/tty".
20569 [WINDOWSNT]: No need to protect from NAME arg being null.
20570
205712007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
20572
20573 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
20574 up the tty state.
20575
205762007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
20577
20578 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
20579 (gpm_tty): Change its type.
20580 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
20581 (gpm_tty): Change its type and initialize it.
20582 (Fterm_open_connection): Check the frame is indeed a tty.
20583 Use the new gpm_tty.
20584 (Fterm_close_connection): Use the new gpm_tty.
20585 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
20586 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
20587
205882007-09-21 Juanma Barranquero <lekktu@gmail.com>
20589
20590 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
20591 underline_color, to draw strike-through.
20592
205932007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
20594
20595 * lisp.h (allocate_terminal): Declare.
20596
20597 * window.c (candidate_window_p): Consider frames that are being placed
20598 by the user as somewhere between visible and iconified.
20599 (window_loop): Prefer windows on the current frame.
20600 (Fselect_window): Move the use of select-frame to the beginning so we
20601 can just delegate all the work (it'll call us back anyway).
20602
20603 * frame.c (Qdisplay_environment_variable):
20604 * frame.h (Qdisplay_environment_variable): Delete.
20605
20606 * .gdbinit (xbacktrace): Print the arg's address rather than the value
20607 of the first arg, since that value may be a union.
20608
20609 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
20610 parameter rather than Qdisplay_environment_variable. If all else
20611 fails, look for DISPLAY in initial-environment.
20612
206132007-09-21 Glenn Morris <rgm@gnu.org>
20614
20615 * Makefile.in (emacstool): Remove target.
20616 (lisp, shortlisp): Remove termdev.elc.
20617
206182007-09-21 Markus Triska <markus.triska@gmx.at>
20619
20620 * xterm.c (x_delete_display): Compile session management conditionally.
20621
206222007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
20623
20624 * callproc.c (getenv_internal_1): New function.
20625 (getenv_internal): Use it.
20626 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
20627
20628 * terminal.c (get_terminal): Don't accept ints to represent terminals.
20629 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
20630 (Fset_terminal_parameter): Work with dead terminals as well.
20631 (Fmodify_terminal_parameters): Remove.
20632
20633 * terminal.c (get_terminal): Handle terminals.
20634 Make sure the terminal returned is live.
20635 (create_terminal): Use allocate_terminal.
20636 (mark_terminals): Move to alloc.c.
20637 (delete_terminal): Use terminal->name as liveness status.
20638 NULL out fields after freeing their contents.
20639 Don't deallocate the object.
20640 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
20641 rather than an int.
20642 (Fterminal_live_p): Accept non-integer arguments.
20643 (Fterminal_list): Return terminal objects rather than an ints.
20644
20645 * alloc.c (enum mem_type): New member for `terminal' objects.
20646 (allocate_terminal): New function.
20647 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
20648 Handle terminals.
20649 (mark_terminal): New fun.
20650 (mark_terminals): Move from terminal.c.
20651
20652 * term.c (get_tty_terminal): Don't treat output_initial specially.
20653 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
20654 (delete_tty): Use terminal->name as liveness status.
20655
20656 * termhooks.h (struct terminal): Make it into a pseudovector.
20657 Remove `deleted' replaced by checking `name's nullness.
20658
20659 * print.c (print_object): Handle terminals.
20660
20661 * lisp.h (enum pvec_type): New `terminal' pseudovector.
20662 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
20663
20664 * frame.c (make_terminal_frame):
20665 * keyboard.c (tty_read_avail_input):
20666 * w32term.c (x_delete_terminal):
20667 * xfns.c (Fx_create_frame, x_create_tip_frame):
20668 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
20669
206702007-09-20 Glenn Morris <rgm@gnu.org>
20671
20672 * process.c (Fmake_network_process): Doc fix.
20673
206742007-09-19 Jason Rumney <jasonr@gnu.org>
20675
20676 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
20677
206782007-09-19 Michaël Cadilhac <michael@cadilhac.name>
20679
20680 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
20681 Fix a C warning regarding variable constness.
20682
20683 * xterm.c (handle_one_xevent): Fix a C warning.
20684
206852007-09-18 Jason Rumney <jasonr@gnu.org>
20686
20687 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
20688
206892007-09-17 Jan Djärv <jan.h.d@swipnet.se>
20690
20691 * gtkutil.c (gdpy_def): New variable.
20692 (xg_initialize): Initialize gdpy_def.
20693 (xg_display_close): If no other display exists, set gdpy_def to a
20694 new connection.
20695
206962007-09-16 Jan Djärv <jan.h.d@swipnet.se>
20697
20698 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
20699 when we have no file name for the icon.
20700 (xg_tool_bar_expose_callback): Remove.
20701 (xg_create_tool_bar): Don't connect expose signal to
20702 xg_tool_bar_expose_callback.
20703 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
20704
207052007-09-16 Andreas Schwab <schwab@suse.de>
20706
20707 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
20708 values instead of zapping them.
20709
207102007-09-14 Glenn Morris <rgm@gnu.org>
20711
20712 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
20713 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
20714 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
20715 scope and rename to omfib_buffer for clarity.
20716 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
20717
207182007-09-14 Kenichi Handa <handa@m17n.org>
20719
20720 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
20721
207222007-09-13 Jason Rumney <jasonr@gnu.org>
20723
20724 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
20725
20726 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
20727
20728 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
20729 (mac_term_init): Call here instead, passing rif.
20730
207312007-09-13 Glenn Morris <rgm@gnu.org>
20732
20733 * s/hpux.h: No longer define `static' as nothing.
20734
207352007-09-13 Johan Bockgård <bojohan@gnu.org>
20736
20737 * callint.c (Fcall_interactively): Remove unused var `fun'.
20738
207392007-09-12 Romain Francoise <romain@orebokech.com>
20740
20741 * window.c (prefer_window_split_horizontally, display_buffer):
20742 Revert 2007-09-08 change.
20743
207442007-09-12 Glenn Morris <rgm@gnu.org>
20745
20746 * alloca.c: Remove file.
20747 * Makefile.in (alloca): Do not undef.
20748 (allocaobj, alloca.o): Remove.
20749 (otherobj): Remove allocaobj.
20750 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
20751 * regex.c (C_ALLOCA): Remove all references and code that was only
20752 used when this was defined.
20753 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
20754 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
20755 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
20756
20757 * Makefile.in (SOURCES, unlock, relock): Delete.
20758
20759 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
20760 (menu_grab_callback): All uses changed.
20761
20762 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
20763 (x_reply_selection_request): All uses changed.
20764
207652007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
20766
20767 * lread.c (load_warn_old_style_backquotes): Change message to look
20768 better when it appears in the middle of byte-compiler messages.
20769
207702007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
20771
20772 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
20773
20774 * xterm.c (x_create_terminal): Add comment.
20775
20776 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
20777
207782007-09-10 Richard Stallman <rms@gnu.org>
20779
20780 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
20781
207822007-09-10 Michaël Cadilhac <michael@cadilhac.name>
20783
20784 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
20785 (DEFUN): Document `intspec', use it instead of `prompt'.
20786
20787 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
20788
20789 * data.c (Finteractive_form): If the interactive specification starts
20790 with a `(', use it as a Lisp form.
20791
20792 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
20793 name and file modes.
20794
20795 * callint.c (Fcall_interactively): Comment fixes.
20796
207972007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
20798
20799 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
20800 and compiled functions.
20801
208022007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
20803
20804 * window.c (prefer_window_split_horizontally): New variable.
20805 (display_buffer): Consider splitting window horizontally depending
20806 on prefer_window_split_horizontally.
20807
208082007-09-08 Eli Zaretskii <eliz@gnu.org>
20809
20810 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
20811
208122007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
20813
20814 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
20815
20816 * frame.c (x_set_frame_parameters): Check number is positive before
20817 using XFASTINT.
20818
20819 * window.c (freeze_window_start): Don't presume selected_window holds
20820 a window object.
20821 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
20822
208232007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
20824
20825 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
20826
208272007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
20828
20829 * window.c (Vsplit_window_preferred_function): New var.
20830 (Fdisplay_buffer): Use it.
20831 (syms_of_window): Export, and initialize it.
20832
208332007-09-06 Pixel <pixel@mandriva.com> (tiny change)
20834
20835 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
20836
208372007-09-06 Glenn Morris <rgm@gnu.org>
20838
20839 * gtkutil.c (menu_grab_callback) <cnt>:
20840 * xselect.c (x_reply_selection_request) <cnt>: Move static
20841 variable to file scope.
20842
208432007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
20844
20845 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
20846 consistent values of selected_frame and selected_window.
20847
208482007-09-04 Jason Rumney <jasonr@gnu.org>
20849
20850 * w32console.c (initialize_w32_display): Zero unused hooks.
20851
208522007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
20853
20854 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
20855 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
20856
208572007-09-04 Jason Rumney <jasonr@gnu.org>
20858
20859 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
20860 in w32console.c. Set up input. Remove XXX comments that have been
20861 confirmed as correct.
20862
20863 * s/ms-w32.h (MULTI_KBOARD): Define.
20864
20865 * w32console.c (one_and_only_w32cons): Remove.
20866 (initialize_w32_display): Take terminal argument.
20867
20868 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
20869 initialize_w32_display.
20870 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
20871
20872 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
20873
20874 * keyboard.c (discard_mouse_events): Discard it.
20875 (make_lispy_event): Translate it to a lisp event.
20876 (lispy_wheel_names): Add wheel-left and right events.
20877 (syms_of_keyboard): Enlarge wheel_syms.
20878
20879 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
20880 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
20881
20882 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
20883
20884 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
20885 from WM_MOUSEHWHEEL.
20886 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
20887
20888 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
20889 terminal.
20890
20891 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
20892 keyboard for the terminal.
20893
208942007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
20895
20896 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
20897 (Vresume_tty_hook): Rename from Vresume_tty_functions.
20898 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
20899 and resume-tty-function to resume-tty-hook.
20900 (Fsuspend_tty, Fresume_tty): Use new names.
20901
209022007-09-02 Jan Djärv <jan.h.d@swipnet.se>
20903
20904 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
20905 if it starts with "n:".
20906
209072007-08-31 Jan Djärv <jan.h.d@swipnet.se>
20908
20909 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
20910
209112007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
20912
20913 * frame.h:
20914 * frame.c (Qterm_environment_variable): Remove.
20915 (syms_of_frame): Don't init and staticpro it.
20916
20917 * callproc.c (getenv_internal): Remove special case for $TERM.
20918
20919 * callproc.c (Vinitial_environment): New variable.
20920 (set_initial_environment): Initialize it.
20921 (syms_of_callproc): Declare it.
20922 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
20923 TERM under which a process runs is never related to the TERM in which
20924 Emacs is running.
20925
209262007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
20927
20928 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
20929 * s/darwin.h: ... do it here.
20930
209312007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
20932
20933 * lisp.h (set_initial_environment): Rename from set_global_environment.
20934
20935 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
20936 removed by mistake on the multi-tty branch.
20937
20938 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
20939 (Fmodify_frame_parameters): Return a value.
20940
20941 * image.c (png_load): Comment-out var only used in commented-out code.
20942
20943 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
20944 before passing it to mark_object.
20945
20946 * xfaces.c (internal_resolve_face_name): Return a value.
20947 (internal_resolve_face_name, resolve_face_name_error): Comment out.
20948
20949 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
20950 (x_icon): Comment-out var only used in commented-out code.
20951
209522007-08-29 Romain Francoise <romain@orebokech.com>
20953
20954 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
20955 QUIT hasn't been provided.
20956
209572007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
20958
20959 * callproc.c (child_setup, getenv_internal): Use the
20960 display-environment-variable and term-environment-variable frame params.
20961 (set_initial_environment): Initialise Vprocess_environment.
20962
20963 * config.in: Disable multi-keyboard support on a mac.
20964
20965 * frame.c (Qterm_environment_variable)
20966 (Qdisplay_environment_variable): New variables.
20967 (syms_of_frame): Intern and staticpro them.
20968 (Fmake_terminal_frame): Disable output method test.
20969
20970 * frame.h: Declare them here.
20971
20972 * macfns.c (x_set_mouse_color): Get rif from the frame.
20973 (x_set_tool_bar_lines): Don't use updating_frame.
20974 (mac_window): Add 2 new parameters for consistency with other systems.
20975 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
20976 frame parameters following what is done in X11 and w32. Don't use
20977 FRAME_MAC_DISPLAY_INFO.
20978 (Fx_open_connection, start_hourglass): Remove window-system check.
20979 (x_create_tip_frame): Get the keyboard from the terminal.
20980
20981 * macmenu.c: Reorder includes.
20982 (Fx_popup_menu): Use terminal specific mouse_position_hook.
20983
20984 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
20985 terminal parameter.
20986 (x_clear_frame): Add a frame parameter.
20987 (note_mouse_movement): Get rif from the frame.
20988 (mac_term_init): Initialize the terminal.
20989 (mac_initialize): Make static and move terminal initialization ...
20990 (mac_create_terminal): ... to this new function.
20991
20992 * macterm.h (struct mac_display_info): Add terminal.
20993 (mac_initialize): Delete declaration.
20994
20995 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
20996
20997 * sysdep.c: Comment out text after #endif.
20998
20999 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
21000 is defined. Better initialize ttys in windows. Use terminal
21001 specific mouse_position_hook.
21002
21003 * termhooks.h (union display_info): Add mac_display_info.
21004
21005 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
21006 Set the default minibuffer frame, window_system and the rest of the
21007 frame parameters following what is done in X11.
21008
21009 * w32term.c (w32_initialize): Make static.
21010
21011 * xselect.c (x_handle_selection_clear): Only access
21012 terminal->kboard when MULTI_KBOARD is defined.
21013
21014 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
21015 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
21016
210172007-08-29 Jason Rumney <jasonr@gnu.org>
21018
21019 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
21020 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
21021
21022 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
21023 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
21024
21025 * keyboard.c (restore_kboard_configuration): Only define when
21026 MULTI_KBOARD defined.
21027
21028 * makefile.w32-in: Update dependancies from Makefile.in.
21029 (OBJ1): Add terminal.$(O)
21030
21031 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
21032 Don't define function body.
21033 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
21034
21035 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
21036
21037 * w32.c (request_sigio, unrequest_sigio): Remove.
21038
21039 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
21040 (w32con_clear_frame, w32con_clear_end_of_line)
21041 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
21042 (w32con_delete_glyphs, w32con_set_terminal_window)
21043 (scroll_line, w32_sys_ring_bell): Add frame arg.
21044 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
21045 Add terminal arg.
21046 (PICK_FRAME): Remove.
21047 (w32con_write_glyphs): Use frame specific terminal coding.
21048 (one_and_only_w32cons): New global variable.
21049 (initialize_w32_display): Use it for storing hooks.
21050 (create_w32cons_output): New function.
21051
21052 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
21053 arg a frame.
21054
21055 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
21056 Set window_system.
21057 (x_set_tool_bar_lines): Don't use updating_frame.
21058 (Fx_create_frame): Set terminal and ref count.
21059 (Fx_open_connection): Remove window-system check.
21060
21061 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
21062
21063 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
21064 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
21065 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
21066 Add frame arg.
21067 (x_delete_terminal, w32_create_terminal): New functions.
21068 (w32_term_init): Create a terminal.
21069 (w32_initialize): Move terminal specific initialization to
21070 w32_create_terminal.
21071
21072 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
21073 (w32_clear_rect, w32_clear_area): Use background from frame.
21074 (w32_display_info): Add terminal.
21075 (w32_sys_ring_bell, x_delete_display): Declare here.
21076
21077 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
21078
21079 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
21080
210812007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
21082
21083 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
21084 Fix get_named_tty calls for the controlling tty.
21085
210862007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
21087
194d44e7 21088 * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
aac0c6e3
MR
21089
210902007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
21091
21092 * term.c (tty_insert_glyphs): Add missing first parameter.
21093
210942007-08-29 Károly Lőrentey <karoly@lorentey.hu>
21095
21096 * buffer.c (Fbuffer_list, Fbury_buffer):
21097 Take frame->buried_buffer_list into account.
21098
21099 * cm.c (current_tty): New variable, for cmputc().
21100 (cmputc): Use it.
21101 (cmcheckmagic): Add tty parameter, look up terminal streams there.
21102 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
21103 (cmgoto): Add tty parameter. Pass it on to calccost().
21104 Use emacs_tputs() instead of tputs().
21105
21106 * cm.h (emacs_tputs): New macro to set current_tty, and then call
21107 tputs().
21108 (current_tty): New variable, for cmputc().
21109 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
21110
21111 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
21112 (internal_condition_case, internal_condition_case_1)
21113 (internal_condition_case_2): Don't abort when x_catching_errors.
21114
21115 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
21116 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
21117 prevent crashes caused by bogus longjmps in read_char.
21118
21119 * keymap.h (Fset_keymap_parent): Add EXFUN.
21120
21121 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
21122 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
21123 Remove redundant definition.
21124
21125 * macfns.c (x_set_mouse_color, x_make_gc):
21126 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21127
21128 * w32term.c (x_free_frame_resources):
21129 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21130 (w32_initialize): Use the accessor macros for terminal characteristics.
21131
21132 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
21133 Use the accessor macros for terminal characteristics.
21134 * msdos.c (internal_terminal_init): Use the accessor macros for
21135 terminal characteristics.
21136 (ScreenVisualBell, internal_terminal_init):
21137 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21138
21139 * termopts.h (no_redraw_on_reenter): Declare.
21140
21141 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
21142 (mark_terminals, mark_ttys): Declare.
21143 (Fgarbage_collect): Call them.
21144 (mark_object): Mark buried_buffer_list.
21145
21146 * prefix-args.c: Include stdlib.h for exit.
21147
21148 * syssignal.h: Add comment.
21149
21150 * indent.c: Include stdio.h.
21151
21152 * window.h (Vinitial_window_system): Declare.
21153 (Vwindow_system): Delete declaration.
21154
21155 * fontset.c (Finternal_char_font): Use FRAME_RIF.
21156
21157 * image.c (lookup_image): Don't initialize `c' until the xasserts
21158 have been run.
21159
21160 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
21161 FRAME_FOREGROUND_PIXEL.
21162
21163 * print.c (print_preprocess): Don't lose print_depth levels while
21164 iterating.
21165
21166 * widget.c (update_from_various_frame_slots):
21167 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21168
21169 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
21170 frames.
21171 (window_internal_height): Remove bogus make_number call.
21172 (init_window_once): Call make_terminal_frame with two zero parameters.
21173
21174 * fileio.c (Fread_file_name): Update comment.
21175
21176 * callint.c (Fcall_interactively):
21177 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
21178 Make sure it is correctly unwound.
21179
21180 * xsmfns.c (x_session_close): New function.
21181
21182 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
21183 Delete declarations.
21184
21185 * xterm.h: Remove declaration for x_fully_uncatch_errors.
21186 (x_output): Remove background_pixel and foreground_pixel fields.
21187 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
21188 (x_delete_device, x_session_close): Declare.
21189
21190 * lread.c: Include setjmp.h. Update declaration of `read_char'.
21191 (read_filtered_event): Call `read_char' with a local
21192 `wrong_kboard_jmpbuf'.
21193
21194 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
21195 Don't call single_kboard_state. Use FRAME_RIF.
21196
21197 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
21198 systems.
21199
21200 * lisp.h (set_process_environment): Rename to `set_global_environment'.
21201 (Fframe_with_environment, Fset_input_meta_mode)
21202 (Fset_quit_char): EXFUN.
21203 (x_create_device, tty_output, terminal, tty_display_info): Declare.
21204 (init_sys_modes, reset_sys_modes): Update prototypes.
21205 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
21206
21207 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
21208 Vlocal_key_translation_map, and Vkeyboard_translate_table.
21209 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
21210 Delete declarations.
21211 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
21212 (temporarily_switch_to_single_kboard, tty_read_avail_input):
21213 New declarations.
21214
21215 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
21216 already does that during init_display(). Call syms_of_keymap
21217 before syms_of_keyboard. Call `syms_of_terminal'.
21218 Call set_initial_environment, not set_process_environment.
21219 (shut_down_emacs): Call reset_all_sys_modes() instead of
21220 reset_sys_modes().
21221
21222 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
21223 (internal_resolve_face_name, resolve_face_name_error): New functions.
21224 (resolve_face_name): Protect against loops and errors thrown by Fget.
21225 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
21226 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
21227
21228 * scroll.c: Replace CURTTY() with local variables throughout the
21229 file (where applicable).
21230 (calculate_scrolling, calculate_direct_scrolling)
21231 (scrolling_1, scroll_cost): Use the accessor macros for terminal
21232 characteristics.
21233
21234 * keymap.c (Vfunction_key_map): Remove.
21235 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
21236 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
21237 (Vkey_translation_map): Remove.
21238 (syms_of_keymap): Remove DEFVAR for key-translation-map.
21239 (Fdescribe_buffer_bindings)
21240 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
21241 Update for terminal-local key-translation-map.
21242
21243 * Makefile.in (callproc.o): Update dependencies.
21244 (lisp, shortlisp): Add termdev.elc.
21245 (obj): Add terminal.o.
21246 (terminal.o): Add dependencies.
21247 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
21248 (data.o, fns.o): Add termhooks.h dependency.
21249 (SOME_MACHINE_LISP): Add dnd.elc.
21250 (minibuf.o): Fix typo.
21251 Update dependencies.
21252
21253 * data.c (do_symval_forwarding, store_symval_forwarding)
21254 (find_symbol_value): Use the selected frame's keyboard, not
21255 current_kboard.
21256
21257 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
21258 Vwindow_system.
21259
21260 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
21261 Fmenu_bar_open.
21262 (syms_of_xmenu): Update defsubr.
21263 (mouse_position_for_popup, Fx_popup_menu)
21264 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
21265 (set_frame_menubar, free_frame_menubar)
b97439ce 21266 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
21267 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
21268 an X frame.
21269
21270 * xselect.c (x_own_selection): Abort if not an X frame.
21271 (some_frame_on_display): Check if it is an X frame.
21272 (x_handle_selection_clear): Deal with MULTI_KBOARD.
21273
21274 * coding.c: Include frame.h and termhooks.h.
21275 (terminal_coding, keyboard_coding): Delete.
21276 (Fset_terminal_coding_system_internal)
21277 (Fset_keyboard_coding_system_internal)
21278 (Fkeyboard_coding_system)
21279 (Fterminal_coding_system): Add a terminal parameter.
21280 Get terminal_coding from the terminal.
21281 (init_coding_once): Don't call setup_coding_system here.
21282
21283 * dispextern.h (set_scroll_region, turn_off_insert)
21284 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
21285 (tty_clear_end_of_line, tty_setup_colors)
21286 (delete_tty, updating_frame)
21287 (produce_special_glyphs, produce_glyphs, write_glyphs)
21288 (insert_glyphs): Remove.
21289 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
21290 (tty_turn_off_highlight, get_tty_size): Add declaration.
21291 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
21292
21293 * frame.h (enum output_method): Add output_initial.
21294 (struct x_output): Delete.
21295 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
21296 Access foreground_pixel and background_pixel directly from the frame.
21297 (tty_display): Delete.
21298 (struct frame): Add buried_buffer_list, foreground_pixel,
21299 background_pixel and terminal. Delete kboard.
21300 (union output_data): Add tty.
21301 (FRAME_KBOARD): Get the kboard from the terminal.
21302 (FRAME_INITIAL_P): New macro.
21303 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
21304 (Qterm_environment_variable, Qdisplay_environment_variable)
21305 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
21306 New declarations.
21307
21308 * termchar.h (tty_output, tty_display_info): New structures.
21309 (tty_list): Declare.
21310 (FRAME_TTY, CURTTY): New macros.
21311 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
21312 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
21313 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
21314 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
21315
21316 * callproc.c: Include frame.h and termhooks.h, for terminal
21317 parameters.
21318 (add_env): New function.
21319 (child_setup): Use it.
21320 (child_setup, getenv_internal): Handle the new Vprocess_environment.
21321 (getenv_internal): Fix get_terminal_param call.
21322 (Fgetenv_internal, egetenv): Update doc.
21323 (syms_of_callproc): Initialize Vprocess_environment to nil.
21324 Register and initialize them. Remove obsolete defvars. Update doc
21325 strings.
21326 (child_setup): Handle Vlocal_environment_variables.
21327 (getenv_internal): Add terminal parameter.
21328 Handle Vlocal_environment_variables.
21329 (Fgetenv_internal): Add terminal parameter.
21330 (child_setup, getenv_internal, Fgetenv_internal): Store the local
21331 environment in a frame (not terminal) parameter. Update doc strings.
21332 (set_initial_environment): Rename from set_global_environment.
21333 Store Emacs environment in initial frame parameter.
21334
21335 * xdisp.c (redisplay_internal): Update references to
21336 `previous_terminal_frame'.
21337 (display_mode_line, Fformat_mode_line): Replace calls to
21338 `push_frame_kboard' with `push_kboard'.
21339 (get_glyph_string_clip_rects): Add extra parentheses and
21340 braces to prevent compiler warnings.
21341 (calc_pixel_width_or_height): Add xassert to check that the
21342 frame is alive. Don't call `lookup_image' on a termcap frame.
21343 (message2_nolog, message3_nolog, redisplay_internal)
21344 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
21345 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
21346 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
21347 (Fx_display_pixel_width, Fx_display_pixel_height)
21348 (Fx_display_planes, Fx_display_color_cells)
21349 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
21350 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
21351 (Fx_display_backing_store, Fx_display_visual_class)
21352 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
21353 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
21354
21355 * xfns.c (x_set_foreground_color x_set_background_color)
21356 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
21357 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21358 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
21359 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
21360 terminal that is being deleted.
21361 (Fx_create_frame): Use `store_frame_param' to set `window-system'
21362 frame parameter, and make sure it overrides any user-supplied setting.
21363 (Fx_close_connection, Fx_synchronize): Unify argument names with
21364 the rest of the DEFUNs.
21365
21366 * dispnew.c (Fsend_string_to_terminal): Update call to
21367 `get_tty_terminal'.
21368 (Fredraw_frame, Fsend_string_to_terminal)
21369 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
21370 FRAME_TERMCAP_P and FRAME_TTY.
21371 (window_change_signal): Don't believe width/height values that are
21372 impossibly small.
21373 (Vinitial_window_system): Rename from Vwindow_system.
21374 (termscript, Wcm, rif): Delete.
21375
21376 * termhooks.h (struct terminal): New struct containing the
21377 previously global text display hooks and new members NAME,
21378 DELETED and PARAM_ALIST.
21379 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
21380 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
21381 (FRAME_RIF): New macros.
21382 (get_terminal_param, get_device): New declarations.
21383 (termscript): Delete declaration.
21384
21385 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
21386 (XTflash, x_free_frame_resources, x_scroll_bar_create)
21387 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
21388 FRAME_FOREGROUND_PIXEL.
21389 (x_fully_uncatch_errors): Disable definition.
21390 (x_scroll_bar_expose): Fix reference to foreground pixel.
21391 (XTread_socket): Disable loop on all X displays.
21392 (x_delete_terminal): Don't set terminal->deleted and let
21393 delete_terminal delete the frames on the terminal.
21394 (x_delete_display): Doc update to reflect changes in
21395 delete_terminal.
21396 (x_display_info) <terminal>: Move member earlier in the struct.
21397 (deleting_tty): Remove old variable.
21398 (Fsuspend_tty): Call clear_tty_hooks.
21399 (Fresume_tty, init_tty): Call set_tty_hooks.
21400 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
21401 errors on X frames.
21402 (x_catch_errors_unwind): Abort if x_error_message is NULL.
21403 (handle_one_xevent): Initialize `f' to NULL.
21404 (x_delete_terminal, x_create_terminal): New functions.
21405 (XTset_terminal_modes, XTreset_terminal_modes)
21406 (XTread_socket, x_connection_closed, x_term_init)
21407 (x_term_init, x_delete_display): Add terminal parameter.
21408 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
21409 X connections.
21410
21411 * frame.c: Include termchar.h.
21412 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
21413 (Qwindow_system, Qenvironment, Qterm_environment_variable)
21414 (Qdisplay_environment_variable): New vars.
21415 (Fframep): Deal with output_initial.
21416 (Fframe-live-p): Doc fix.
21417 (Fwindow-system): New function.
21418 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
21419 (make_terminal_frame): Don't create frames on a terminal that is
21420 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21421 (store_frame_param): Check for found_for_frame before calling XFRAME.
21422 (Fmake_terminal_frame): Handle NULL tty names correctly.
21423 (syms_of_frame): Enhance doc string of `default-frame-alist'.
21424 (Fdelete_frame): Remove unused variable `count'. Don't allow other
21425 frames to refer to a deleted frame in their 'environment parameter.
21426 (Fframe_with_environment): New function.
21427 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
21428 (get_future_frame_param): New function.
21429 (Fmake_terminal_frame): Use it.
21430 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
21431
21432 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
21433 * sysdep.c (reset_sys_modes): Update for renames.
21434
21435 * keyboard.c (tty_read_avail_input): New function.
21436 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
21437 (syms_of_keyboard): Defsubr them.
21438 (Fset_input_meta_mode, Fset_quit_char): New functions.
21439 (Fset_input_mode): Split to above functions.
21440 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
21441 parameter. Use it in call to `read_char'.
21442 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
21443 Set wrong_kboard_jmpbuf correctly in recursive calls.
21444 Use current_kboard to access Vkeyboard_translate_table.
21445 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
21446 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
21447 Update longjmp invocations. Remember the original current_kboard,
21448 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
21449 changes it. Comment out unnecessary calls to
21450 `record_single_kboard_state' and `any_kboard_state'.
21451 Update recursive calls.
21452 (wrong_kboard_jmpbuf): Remove global variable.
21453 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
21454 Handle deleted interrupted_kboards correctly; that is a legal
21455 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
21456 and read_char calls. Abort if interrupted_kboard died in read_char.
21457 (any_kboard_state, single_kboard_state)
21458 (push_frame_kboard): Remove function.
21459 (pop_kboard): Switch out of single_kboard mode if the kboard has
21460 been deleted. Remove unused variable. Help debugging by not
21461 changing current_kboard unnecessarily. Set current_kboard to the
21462 kboard of the selected frame when the stored kboard object has
21463 been deleted before pop_kboard.
21464 (temporarily_switch_to_single_kboard): Change first parameter to a
21465 frame pointer. Throw an error when caller wants to change kboards
21466 while in single_kboard mode. Don't push_kboard if we weren't in
21467 single kboard state. Don't pop_kboard if we popped into any
21468 kboard state.
21469 (restore_kboard_configuration): Abort if pop_kboard changed the
21470 kboard in single_kboard mode. Call pop_kboard only after setting
21471 up single_kboard mode.
21472 (Frecursive_edit): Switch to single_kboard mode only in nested
21473 command loops.
21474 (cmd_error, command_loop, command_loop_1, timer_check):
21475 Comment out unnecessary call to `any_kboard_state' and
21476 `record_single_kboard_state'.
21477 (delete_kboard): Exit single_kboard mode if we have just deleted
21478 that kboard. Use FRAME_KBOARD.
21479 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
21480 `fatal_error_signal'.
21481 (record_single_kboard_state): Don't push_kboard if we weren't in
21482 single kboard state. Don't pop_kboard if we popped into any
21483 kboard state.
21484 (push_frame_kboard): Rename to push_kboard.
21485 (kbd_buffer_get_event): Use FRAME_TERMINAL.
21486 (read_avail_input): Read input from all terminals.
21487 (mark_kboards): Also mark Vkeyboard_translate_table.
21488 (kbd_buffer_store_event_hold): Simplify condition.
21489 (read_key_sequence): Reinitialize fkey and keytran at each replay.
21490 (Vkeyboard_translate_table): Move to struct kboard.
21491 (init_kboard): Initialize Vkeyboard_translate_table.
21492 (syms_of_keyboard): Use DEFVAR_KBOARD to define
21493 Vkeyboard_translate_table. Update doc strings. Update docs of
21494 local-function-key-map and function-key-map.
21495
21496 * terminal.c: New file.
21497
21498 * term.c: Include errno.h.
21499 (Vring_bell_function, device_list, initial_device)
21500 (next_device_id, ring_bell, update_begin, update_end)
21501 (set_terminal_window, cursor_to, raw_cursor_to)
21502 (clear_to_end, clear_frame, clear_end_of_line)
21503 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
21504 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
21505 (syms_of_term): Move their initialization to terminal.c.
21506 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
21507 (Ftty_display_color_cells)
21508 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
21509 (clear_tty_hooks, set_tty_hooks)
21510 (init_tty, maybe_fatal): New functions.
21511 (Ftty_type): Return nil if terminal is not on a tty instead of
21512 throwing an error. Doc update.
21513 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
21514 Doc update. Initialize new subrs and variables.
21515 (delete_tty): Use terminal->deleted.
21516 (tty_set_terminal_modes): Rename from set_terminal_modes.
21517 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
21518 (set_scroll_region): Rename to `tty_set_scroll_region'.
21519 (turn_on_insert): Rename to `tty_turn_on_insert'.
21520 (turn_off_insert): Rename to `tty_turn_off_insert'.
21521 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
21522 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
21523 (toggle_highligh): Rename to `tty_toggle_highlight'.
21524 (background_highlight): Rename to `tty_background_highlight'.
21525 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
21526 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
21527 (tty_set_scroll_region, tty_background_highlight)
21528 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
21529 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
21530 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
21531 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
21532 Add static modifier.
21533 (tty_reset_terminal_modes, tty_set_terminal_window)
21534 (tty_set_scroll_region, tty_background_highlight)
21535 (tty_highlight_if_desired, tty_cursor_to)
21536 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
21537 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
21538 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
21539 renames.
21540
215412007-08-28 Jan Djärv <jan.h.d@swipnet.se>
21542
21543 * keyboard.c: Qrtl is new.
21544 (parse_tool_bar_item): Handle :rtl keyword.
21545 (syms_of_keyboard): Intern :rtl keyword.
21546
21547 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
21548
21549 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
21550 so no Lisp code is executed.
21551 (file_for_image, find_rtl_image): New functions.
21552 (xg_get_image_for_pixmap): Use file_for_image.
21553 (update_frame_tool_bar): If direction is RTL, use RTL image if
21554 defined. Use Gtk stock images if defined.
21555
215562007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21557
21558 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
21559 for nonexistent or zero-width glyph in composition glyph.
21560
215612007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
21562
21563 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
21564
21565 * xdisp.c (Finvisible_p): New function.
21566 (syms_of_xdisp): defsubr it.
21567
215682007-08-24 Juanma Barranquero <lekktu@gmail.com>
21569
21570 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
21571 Doc fixes.
21572
215732007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21574
21575 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
21576
215772007-08-24 Martin Rudalics <rudalics@gmx.at>
21578
21579 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
21580 whether decoding has modified buffer contents.
21581
215822007-08-24 Jason Rumney <jasonr@gnu.org>
21583
21584 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
21585 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
21586 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
21587 (init_svg_functions) [HAVE_NTGUI]: New function.
21588 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
21589 (svg_load_image): Use them.
21590 (svg_load_image) [HAVE_NTGUI]: Implement background.
21591
215922007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21593
21594 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
21595 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
21596 (LIBX): Remove @RSVG_LIBS@.
21597 (LIBES): Add $(RSVG_LIBS).
21598
21599 * image.c (svg_load_image): Blend with specified background if exists.
21600 Use IMAGE_BACKGROUND. Add Mac OS Support.
21601
21602 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
21603 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
21604 Remove macros.
21605 [MAC_OSX] (socket_callback): Do nothing.
21606 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
21607 ReceiveNextEvent.
21608 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
21609 socket_callback.
21610 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
21611
216122007-08-22 Glenn Morris <rgm@gnu.org>
21613
21614 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
21615
216162007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
21617
21618 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
21619
21620 * image.c: Add support for SVG images. Some additional comments
21621 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
21622 (svg_image_p): New function to test for SVG image.
21623 (svg_load): New function to load SVG image.
21624 (svg_load_image): New function, helper for svg_load.
21625 (Qsvg): New Lisp_object.
21626 (svg_keyword_index): New enum.
21627 (svg_format): New static `image_keyword' struct.
21628 (svg_type): New static `image_type' struct.
21629 (librsvg/rsvg.h): Include it.
21630
216312007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
21632
21633 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
21634
216352007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
21636
21637 * lread.c (Qold_style_backquotes): New var.
21638 (syms_of_lread): Init and staticpro it.
21639 (load_warn_old_style_backquotes): New fun.
21640 (Fload): Use them to warn about old style backquotes.
21641 (end_of_file_error, Fload): Remove unused vars.
21642
21643 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
21644
21645 * lread.c (Vold_style_backquotes): New var.
21646 (syms_of_lread): Init and export it to Elisp.
21647 (read1): Set it when we find an old-style (back)quote.
21648
216492007-08-22 Jason Rumney <jasonr@gnu.org>
21650
21651 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
21652
216532007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
21654
21655 * puresize.h (BASE_PURESIZE): Increase to 1140000.
21656
216572007-08-19 Richard Stallman <rms@gnu.org>
21658
21659 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
21660
216612007-08-19 Andreas Schwab <schwab@suse.de>
21662
21663 * alloc.c (pure): Round PURESIZE up.
21664
216652007-08-17 Jan Djärv <jan.h.d@swipnet.se>
21666
21667 * xterm.c (handle_one_xevent): Remove check that mouse click is in
21668 active frame.
21669
216702007-08-16 Richard Stallman <rms@gnu.org>
21671
21672 * eval.c (Fcommandp): Add parens to clarify.
21673
21674 * minibuf.c (Fall_completions): Use enum for type of table.
21675
21676 * emacs.c (USAGE2): Improve text.
21677
216782007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
21679
21680 * term.c (tty_default_color_capabilities): Declare static
21681 variables in file scope, to avoid HPUX compiler problem.
21682
216832007-08-13 Jan Djärv <jan.h.d@swipnet.se>
21684
21685 * gtkutil.c (update_frame_tool_bar): Use -1 as index
21686 to gtk_toolbar_insert.
21687
216882007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
21689
21690 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
21691
21692 * insdel.c (reset_var_on_error): New fun.
21693 (signal_before_change, signal_after_change):
21694 Use it to reset (after|before)-change-functions to nil in case of error.
21695 Bind inhibit-modification-hooks to t.
21696 Don't bind (after|before)-change-functions to nil while they run.
21697
216982007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21699
21700 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
21701 filling pixmap with stippled background.
21702
217032007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21704
21705 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
21706 Don't use invisible frame as parent window for repositioning.
21707
217082007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
21709
21710 * print.c (new_backquote_output): Rename from old_backquote_output.
21711 (print): Inverse its logic (according to its name) so as to match the
21712 behavior of new_backquote_flag in lread.c.
21713
217142007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21715
21716 * gmalloc.c (posix_memalign): New function.
21717
21718 * macterm.c (frame_highlight, frame_unhighlight): Don't call
21719 ActivateControl/DeactivateControl here.
21720 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
21721 frame-notice-user-settings is non-nil.
21722 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
21723 for kEventParamFMFontStyle.
21724 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
21725 mac_pass_command_to_system and mac_pass_control_to_system here.
21726 (XTread_socket): Call ActivateControl/DeactivateControl here.
21727 (XTread_socket) [TARGET_API_MAC_CARBON]:
21728 Check mac_pass_command_to_system and mac_pass_control_to_system here.
21729 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
21730 for window repositioning.
21731
217322007-08-08 Glenn Morris <rgm@gnu.org>
21733
21734 * Replace `iff' in doc-strings and comments.
21735
217362007-08-07 Chong Yidong <cyd@stupidchicken.com>
21737
21738 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
21739
217402007-08-07 Martin Rudalics <rudalics@gmx.at>
21741
21742 * fileio.c (Finsert_file_contents): Run format-decode and
21743 after_insert_file_functions on entire buffer when REPLACE is
21744 non-nil and inhibit modification_hooks and point_motion_hooks.
21745 For consistency, run after_insert_file_functions iff something
21746 got inserted. Move signal_after_change and update_compositions
21747 after code running after_insert_file_functions. Make sure that
21748 undo_list doesn't record intermediate steps of the decoding process.
21749
217502007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21751
21752 * emacs.c (main)
21753 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
21754 Call malloc_enable_thread on interactive startup.
21755
21756 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
21757 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
21758 [USE_PTHREAD]: Conditionalize with it.
21759 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
21760 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
21761 New functions.
21762
217632007-08-06 Chong Yidong <cyd@stupidchicken.com>
21764
21765 * xdisp.c (redisplay_window): When restoring original buffer
21766 position, make sure it is still valid.
21767
21768 * image.c (png_load): Ignore png-supplied background color.
21769
217702007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21771
21772 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
21773 Use kCFAbsoluteTimeIntervalSince1970.
21774
21775 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
21776 New variable.
21777 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
21778 event loop should be quit.
21779 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
21780 Quit dialog event loop if quit_dialog_event_loop is set.
21781
21782 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
21783 (Selection): New typedef. Use instead of ScrapRef.
21784 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
21785 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
21786 (mac_clear_selection): Rename from clear_scrap.
21787 (get_flavor_type_from_symbol): New argument SEL and subsume function of
21788 scrap_has_target_type. All uses changed.
21789 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
21790 (mac_selection_has_target_p): New functions.
21791 (mac_put_selection_value): Rename from put_scrap_string.
21792 (mac_get_selection_value): Rename from get_scrap_string.
21793 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
21794 (put_scrap_private_timestamp, scrap_has_target_type)
21795 (get_scrap_private_timestamp): Remove functions.
21796 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
21797 (x_own_selection, x_get_local_selection):
21798 Use mac_valid_selection_value_p.
21799 (x_own_selection): Don't use put_scrap_private_timestamp.
21800 Record OWNERSHIP-INFO into Vselection_alist instead.
21801 (x_get_local_selection): Don't check type if request is local.
21802 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
21803 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
21804
218052007-08-04 Jan Djärv <jan.h.d@swipnet.se>
21806
21807 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
21808 add comment explaining why.
21809
218102007-08-03 Richard Stallman <rms@gnu.org>
21811
21812 * fileio.c (Fvisited_file_modtime): Use make_time.
21813
218142007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
21815
21816 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
21817 build.
21818
218192007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
21820
21821 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
21822
218232007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
21824
21825 * puresize.h (BASE_PURESIZE): Increase to 1130000.
21826
218272007-07-30 Richard Stallman <rms@gnu.org>
21828
21829 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
21830
218312007-07-29 Jan Djärv <jan.h.d@swipnet.se>
21832
21833 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
21834
218352007-07-28 Nick Roberts <nickrob@snap.net.nz>
21836
21837 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
21838 remote default-directory.
21839
21840 * buffer.c (mode-line-format): Update doc string.
21841
218422007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21843
21844 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
21845 scroll bar gap.
21846 (x_scroll_bar_create): Set bar->fringe_extended_p.
21847 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
21848 on frame edge. Check fringe background extension. Don't clear
21849 extended fringe background area.
21850
21851 * w32term.h (struct scroll_bar): New member fringe_extended_p.
21852 (w32_fill_area): Enclose multiple statements with do ... while (0).
21853
21854 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
21855 Extend fringe background to scroll bar gap.
21856 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
21857 Set bar->fringe_extended_p.
21858 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
21859 Put leftmost/rightmost scroll bars on frame edge. Check fringe
21860 background extension. Don't clear extended fringe background area.
21861
21862 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
21863 New member fringe_extended_p.
21864
218652007-07-25 Glenn Morris <rgm@gnu.org>
21866
21867 * Relicense all FSF files to GPLv3 or later.
21868
21869 * COPYING: Switch to GPLv3.
21870
218712007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
21872
21873 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
21874
21875 * data.c (Finteractive_form): Check for the presence of an
21876 `interactive-form' symbol property more thoroughly.
21877
21878 * data.c (Finteractive_form): Use an `interactive-form' property if
21879 present, analogous to the function-documentation property.
21880
218812007-07-24 Jason Rumney <jasonr@gnu.org>
21882
21883 * w32fns.c (x_real_positions): Get real position from OS instead of
21884 calculating it.
21885
218862007-07-23 Jason Rumney <jasonr@gnu.org>
21887
21888 * filelock.c (current_lock_owner): Allow for @ sign in username.
21889
218902007-07-22 Nick Roberts <nickrob@snap.net.nz>
21891
21892 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
21893 remote default-directory.
21894
21895 * buffer.c (mode-line-format): Describe above case in doc string.
21896
218972007-07-20 Eli Zaretskii <eliz@gnu.org>
21898
21899 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
21900 Define if not defined.
21901
219022007-07-18 Jason Rumney <jasonr@gnu.org>
21903
21904 * w32proc.c (w32_executable_type): Handle 64 bit executables.
21905
219062007-07-18 Richard Stallman <rms@gnu.org>
21907
21908 * data.c (Fsetq_default): Doc fix.
21909
21910 * eval.c (Fsetq): Doc fix.
21911
219122007-07-18 Juanma Barranquero <lekktu@gmail.com>
21913
21914 * coding.c (Ffind_operation_coding_system):
21915 * eval.c (For, Fand): Doc fixes.
21916 Reported by Johan Bockgård.
21917
219182007-07-18 Jan Djärv <jan.h.d@swipnet.se>
21919
21920 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
21921
21922 * xterm.h: Declare x_ewmh_activate_frame.
21923
21924 * xterm.c (x_ewmh_activate_frame): New function.
21925 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
21926
219272007-07-17 Martin Rudalics <rudalics@gmx.at>
21928
21929 * window.c (Fdisplay_buffer): If largest or LRU window is the
21930 only window, split it even if it is not eligible for splitting.
21931 This restores the original behavior broken by the 2007-07-15
21932 change.
21933
219342007-07-17 Glenn Morris <rgm@gnu.org>
21935
21936 * abbrev.c (abbrev_check_chars): New function.
21937 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
21938 Call abbrev_check_chars to check abbrev characters are word
21939 constituents. Doc fix.
21940
219412007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
21942
21943 * process.c (Fstart_process, Fmake_network_process)
21944 (read_process_output): Fix up last changes.
21945
219462007-07-16 Eli Zaretskii <eliz@gnu.org>
21947
21948 * makefile.w32-in (clean): Don't delete *~.
21949
219502007-07-16 Andreas Schwab <schwab@suse.de>
21951
21952 * window.c (Fdisplay_buffer): Use NILP.
21953 (Fset_window_scroll_bars): Likewise.
21954
219552007-07-15 Martin Rudalics <rudalics@gmx.at>
21956
21957 * window.c (window_min_size_2): New function.
21958 (window_min_size_1, size_window, Fdisplay_buffer)
21959 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
21960 windows without mode- or header-lines when window-min-height is
21961 too small.
21962 (size_window): Reset nodelete_p after testing it, following an
21963 earlier note by Kim F. Storm.
21964 (display_buffer): Do not set split_height_threshold to twice the
21965 value of window_min_height to avoid changing the value of a
21966 customizable variable. Rather explicitly check whether the
21967 height of the window that shall be splitted is at least as large
21968 as split_height_threshold.
21969 (Fwindow_full_width_p): New defun.
21970 (syms_of_window): Defsubr it.
21971
21972 * window.h: Add EXFUN for Fwindow_full_width_p.
21973
219742007-07-14 Jason Rumney <jasonr@gnu.org>
21975
21976 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
21977
219782007-07-14 Richard Stallman <rms@gnu.org>
21979
21980 * eval.c (maybe_call_debugger): New function.
21981 (find_handler_clause): Use maybe_call_debugger.
21982 Call it when the handler says `debug'.
21983 Eliminate DEBUGGER_VALUE_PTR.
21984 (Fsignal): Eliminate debugger_value.
21985 (Qdebug): New variable.
21986 (syms_of_eval): Initialize it.
21987
219882007-07-14 Juanma Barranquero <lekktu@gmail.com>
21989
21990 * eval.c (Fprogn):
21991 * keyboard.c (Ftrack_mouse):
21992 * print.c (Fwith_output_to_temp_buffer):
21993 * window.c (Fsave_window_excursion): Doc fix.
21994
219952007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
21996
21997 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
21998
219992007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
22000
22001 * process.h (struct Lisp_Process): Turn slots infd, outfd,
22002 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
22003 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
22004 read_output_delay, and read_output_skip from Lisp_Objects to ints.
22005 Remove unused encoding_carryover.
22006 * process.c: Adjust all functions accordingly.
22007
220082007-07-12 Richard Stallman <rms@gnu.org>
22009
22010 * term.c: Include unistd.h only if HAVE_UNISTD_H.
22011
220122007-07-11 Jason Rumney <jasonr@gnu.org>
22013
22014 * makefile.w32-in (LIBS): Include OLE32.
22015
22016 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
22017 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
22018
220192007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
22020
22021 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
22022 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
22023 from a Lisp_Object into a bare pointer.
22024 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
22025 Adjust the code correspondingly.
22026
22027 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
22028
22029 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
22030 (term_show_mouse_face): Remove unused var `j'.
22031 (handle_one_term_event): Remove unused vars `i' and `j'.
22032 Don't cast return value of ttyname since it's not necessary.
22033
220342007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
22035
22036 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
22037 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
22038
22039 * fns.c (map_char_table): Use an array of int for `indices' rather than
22040 an array of Lisp_Objects (which are only ever integers anyway).
22041 (Fmap_char_table): Update caller.
22042 * lisp.h: Update prototype.
22043 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
22044 * fontset.c (Ffontset_info):
22045 * casetab.c (set_case_table): Update callers.
22046
22047 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
22048
22049 * keymap.c (struct accessible_keymaps_data)
22050 (struct where_is_internal_data): New structures.
22051 (accessible_keymaps_1, where_is_internal_1): Use them to change
22052 interface to adhere to the one used by map_keymap.
22053 (Faccessible_keymaps, where_is_internal): Use map_keymap.
22054 (accessible_keymaps_char_table, where_is_internal_2): Remove.
22055
22056 * keymap.h (map_keymap_function_t): More informative prototype.
22057
220582007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
22059
22060 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
22061 (looking_at_1): Don't change search_regs and last_thing_searched
22062 if `inhibit-changing-match-data' is non-nil.
22063 (string_match_1, search_buffer, set_search_regs): Likewise.
22064 (syms_of_search): Add Lisp level definition for
22065 `inhibit-changing-match-data' and set it to nil.
22066 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
22067 start and end of the match, instead of using values in search_regs.
22068
220692007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
22070
22071 * minibuf.c (Fcompleting_read): New value `confirm-only'
22072 for `require-match'.
22073
220742007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
22075
22076 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
22077 part of the 2007-06-27 change to syms_of_fileio.
22078
220792007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22080
22081 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
22082 Check WINDOWP before using XWINDOW. Consolidate return statements.
22083
220842007-06-27 Richard Stallman <rms@gnu.org>
22085
22086 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
22087
220882007-06-27 Juanma Barranquero <lekktu@gmail.com>
22089
22090 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
22091
220922007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22093
22094 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
22095 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
22096 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
22097 (_free_internal, memalign): Use them.
22098 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
22099 Initialize to PTHREAD_MUTEX_INITIALIZER.
22100 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
22101 (morecore_nolock): Rename from morecore. All uses changed.
22102 Use only nolock versions of internal allocation functions.
22103 (_malloc_internal_nolock, _realloc_internal_nolock)
22104 (_free_internal_nolock): New functions created from
22105 _malloc_internal, _realloc_internal, and _free_internal.
22106 (_malloc_internal, _realloc_internal, _free_internal): Use them.
22107 Copy hook value to automatic variable before its use.
22108 (memalign): Copy hook value to automatic variable before its use.
22109
221102007-06-26 Kenichi Handa <handa@m17n.org>
22111
22112 * coding.c (Ffind_operation_coding_system): Docstring improved.
22113 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
22114
221152007-06-25 David Kastrup <dak@gnu.org>
22116
22117 * keymap.c (Fcurrent_active_maps): Add `position' argument.
22118 (Fwhere_is_internal): Adjust call to `current-active-maps' to
22119 cater for additional parameter.
22120
22121 * keymap.h: Adjust number of parameters to `current-active-maps'.
22122
22123 * doc.c (Fsubstitute_command_keys): Adjust call of
22124 `current-active-maps'.
22125
221262007-06-25 David Kastrup <dak@gnu.org>
22127
22128 * callint.c (Fcall_interactively): Make the parsing of interactive
22129 specs somewhat more readable.
22130
221312007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22132
22133 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
22134 to scroll bar gap also when bitmap fills fringe. Draw only foreground
22135 if extended background has already been filled.
22136
221372007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22138
22139 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
22140 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
22141
22142 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
22143 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
22144 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
22145 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
22146 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
22147 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
22148 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
22149 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
22150 Run timers during dialog popup.
22151 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
22152
221532007-06-21 Jason Rumney <jasonr@gnu.org>
22154
22155 * image.c (convert_mono_to_color_image): Swap fore and background.
22156
221572007-06-20 Jason Rumney <jasonr@gnu.org>
22158
22159 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
22160 (w32_free_bdf_font): Unmap memory not handle.
22161
221622007-06-20 Sam Steingold <sds@gnu.org>
22163
22164 * gmalloc.c (__morecore): Fix the declaration to comply with the
22165 definition.
22166
221672007-06-20 Juanma Barranquero <lekktu@gmail.com>
22168
22169 * w32term.c (w32_delete_display): Remove leftover declaration.
22170 (w32_define_cursor, w32_initialize): Make static.
22171
22172 * w32.c (_wsa_errlist): Fix typo in error message.
22173 (init_environment): Ignore any environment variable from the
22174 registry having a null value.
22175
221762007-06-20 Glenn Morris <rgm@gnu.org>
22177
22178 * Makefile.in (LIBGIF): Default to -lgif.
22179
221802007-06-17 Jason Rumney <jasonr@gnu.org>
22181
22182 * w32menu.c (add_menu_item): Don't use multibyte string functions on
22183 unicode strings.
22184
221852007-06-16 Juanma Barranquero <lekktu@gmail.com>
22186
22187 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
22188 Fix typo in docstring.
22189
221902007-06-16 Eli Zaretskii <eliz@gnu.org>
22191
22192 * w32menu.c (add_menu_item): Escape `&' characters in menu items
22193 and their keybindings.
22194
221952007-06-15 Chong Yidong <cyd@stupidchicken.com>
22196
22197 * composite.c (update_compositions): Fix last fix.
22198
221992007-06-14 Jason Rumney <jasonr@gnu.org>
22200
22201 * w32.c (get_process_times_fn): New function pointer.
22202 (globals_of_w32): Intialize it if present in kernel32.dll.
22203 (w32_get_internal_run_time): New function.
22204
22205 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
22206
222072007-06-14 Kenichi Handa <handa@etlken.m17n.org>
22208
22209 * composite.c (update_compositions): Check the validness of
22210 compositions.
22211
222122007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22213
22214 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
22215 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
22216
22217 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
22218 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
22219
22220 * macgui.h (USE_MAC_TOOLBAR): New define.
22221
22222 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
22223 Return immediately unless popup is activated.
22224
22225 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
22226 background to scroll bar gap.
22227 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
22228 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
22229 scroll bars on frame edge. Check fringe background extension.
22230 Don't clear extended fringe background area.
22231 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
22232 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
22233 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
22234 [USE_MAC_TOOLBAR]: New macros.
22235 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
22236 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
22237 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
22238 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
22239 [USE_MAC_TOOLBAR]: New functions.
22240 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
22241 manually if previous repositioning has failed.
22242 (mac_handle_keyboard_event): Use precomputed event kind.
22243 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
22244 as tool bar item click. Handle mouse movement over tool bar items.
22245
22246 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
22247 toolbar_win_gravity.
22248 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
22249 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
22250 Add externs.
22251
22252 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
22253 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
22254
222552007-06-14 Chong Yidong <cyd@stupidchicken.com>
22256
22257 * image.c (search_image_cache): Remove unused variable.
22258
222592007-06-13 Chong Yidong <cyd@stupidchicken.com>
22260
22261 * xfns.c, xmenu.c: Link to xaw3d if available.
22262
222632007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22264
22265 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
22266 frame_foreground and frame_background.
22267
22268 * image.c (lookup_image): Save frame foreground and background colors.
22269 (search_image_cache): Check if saved and current frame colors match.
22270
222712007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
22272
22273 * regex.c (regex_compile): Remove the `regnum' counter.
22274 Use bufp->re_nsub instead. Add support for \(?N:RE\).
22275
222762007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
22277
22278 * term.c: Include intervals.h to declare Fget_text_property.
22279
222802007-06-10 Jason Rumney <jasonr@gnu.org>
22281
22282 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
22283
222842007-06-08 Juanma Barranquero <lekktu@gmail.com>
22285
22286 * callint.c (Fcall_interactively):
22287 * editfns.c (Fdelete_and_extract_region):
22288 * fileio.c (Fread_file_name):
22289 * fns.c (Fmapconcat):
22290 * keyboard.c (cmd_error_internal):
22291 * keymap.c (Fkey_description):
22292 * lread.c (openp):
22293 * minibuf.c (read_minibuf):
22294 * search.c (wordify):
22295 * sunfns.c (sel_read):
22296 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
22297 * xfns.c (x_default_scroll_bar_color_parameter):
22298 * xmenu.c (menu_help_callback):
22299 * xselect.c (Fx_get_atom_name):
22300 * xterm.c (x_term_init): Use empty_unibyte_string.
22301
223022007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
22303
22304 * alloc.c (init_strings): Initialize canonical empty strings.
22305 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
22306 canonical empty string when the requested size is 0.
22307
22308 * emacs.c (empty_unibyte_string): Rename from empty_string.
22309 (empty_multibyte_string): New canonical empty string.
22310 (syms_of_emacs): Don't initialize empty_string.
22311
22312 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
22313 string, if appropriate.
22314 (empty_unibyte_string, empty_multibyte_string): New externs.
22315 (empty_string): Remove extern.
22316
22317 * lread.c (syms_of_lread): Use empty_unibyte_string.
22318
223192007-06-07 Jason Rumney <jasonr@gnu.org>
22320
22321 * s/ms-w32.h: Don't define HAVE_TZNAME.
22322
22323 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
22324
223252007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22326
22327 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
22328
22329 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
22330 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
22331
22332 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
22333 Don't call next handler.
22334 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
22335 Remove argument. Install handler to application.
22336 (set_frame_menubar): Don't change deep_p.
22337 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
22338 FRAME_OUTER_TO_INNER_DIFF_Y.
22339 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
22340 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
22341 [HAVE_DIALOGS]: New macros.
22342 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
22343 Use them.
22344 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
22345
22346 * macselect.c [MAC_OSX] (install_service_handler): Rename from
22347 init_service_handler. All callers changed. Return OSStatus value.
22348
22349 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
22350 All callers changed so as not to call SetPortWindowPort.
22351 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
22352 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
22353 mac_draw_string_common.
22354 (mac_draw_image_string_qd): Likewise.
22355 (mac_draw_string_common): Use them. Add INLINE.
22356 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
22357 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
22358 GetGlobalMouse.
22359 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
22360 and FRAME_OUTER_TO_INNER_DIFF_Y.
22361 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
22362 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
22363 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
22364 repositioning window to mac_handle_window_event.
22365 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
22366 saving window location to mac_handle_window_event
22367 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
22368 (install_menu_target_item_handler): Remove argument in extern.
22369 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
22370 Also accept command events.
22371 (do_keystroke): New function created from XTread_socket.
22372 (init_command_handler): Remove functions.
22373 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
22374 and save window location by kEventWindowShowing and kEventWindowHiding
22375 handlers here. Don't call next handler for window state change and
22376 focus events.
22377 (mac_handle_application_event, mac_handle_keyboard_event)
22378 [TARGET_API_MAC_CARBON]: New functions.
22379 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
22380 kEventWindowShowing and kEventWindowHiding events. Move installation
22381 of mouse, font, text input and menu target item handlers to
22382 install_application_handler.
22383 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
22384 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
22385 New function.
22386 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
22387 Register it.
22388 (XTread_socket) [TARGET_API_MAC_CARBON]:
22389 Consolidate SendEventToEventTarget calls.
22390 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
22391 Move application activation handler to mac_handle_application_event.
22392 Move keyboard handler to mac_handle_keyboard_event.
22393 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
22394 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
22395 init_command_handler. Call install_application_handler.
22396
22397 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
22398 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
22399
224002007-06-07 Glenn Morris <rgm@gnu.org>
22401
22402 * emacs.c (main): Use `emacs-copyright' in --version output.
22403
224042007-06-06 Chong Yidong <cyd@stupidchicken.com>
22405
22406 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
22407
224082007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22409
22410 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
22411
22412 * macgui.h: Replace WindowPtr with WindowRef.
22413
22414 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
22415 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
22416 Replace ControlHandle with ControlRef.
22417 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
22418
22419 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
22420 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
22421 Replace ControlHandle with ControlRef.
22422 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
22423 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
22424
22425 * macterm.h (struct scroll_bar): Rename member control_handle_low
22426 and control_handle_high to control_ref_low and control_ref_high.
22427 All uses changed.
22428 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
22429 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
22430 respectively. All uses changed.
22431 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
22432 (install_window_handler, remove_window_handler): Replace WindowPtr
22433 with WindowRef in externs.
22434
224352007-06-05 Juanma Barranquero <lekktu@gmail.com>
22436
22437 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
22438
224392007-06-03 Nick Roberts <nickrob@snap.net.nz>
22440
22441 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
22442
22443 * frame.c (Fmouse_position, Fmouse_pixel_position):
22444 Condition on HAVE_GPM too.
22445
22446 * term.c (term_mouse_highlight): Remove unused variables.
22447 (Fterm_open_connection): Set gpm_zerobased to 1.
22448 (term_mouse_movement, term_mouse_click, handle_one_term_event):
22449 Use zero based co-ordinates.
22450 (handle_one_term_event): Report a drag as mouse movement too.
22451
22452 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
22453
224542007-06-03 Chong Yidong <cyd@stupidchicken.com>
22455
22456 * image.c (search_image_cache): New function. Require background
22457 color match if background color is unspecified in the image spec.
22458 (uncache_image, lookup_image): Use it.
22459
224602007-06-01 Juanma Barranquero <lekktu@gmail.com>
22461
22462 * window.c (Fshrink_window): Reflow docstring.
22463
224642007-06-02 Chong Yidong <cyd@stupidchicken.com>
22465
22466 * Version 22.1 released.
22467
224682007-06-01 Richard Stallman <rms@gnu.org>
22469
22470 * xfns.c (x_encode_text): Add GCPRO.
22471
224722007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22473
22474 * xfns.c (x_set_name_internal): Save encoded name before
22475 x_encode_text in case string data is relocated.
22476
224772007-05-31 Richard Stallman <rms@gnu.org>
22478
22479 * buffer.c (syms_of_buffer): Doc fix.
22480
224812007-05-30 Nick Roberts <nickrob@snap.net.nz>
22482
22483 * sysdep.c (init_sys_modes): Add rather than replace with
22484 O_NONBLOCK.
22485
22486 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
22487 term_mouse_moveto.
22488
22489 * termhooks.h (term_mouse_moveto): New extern.
22490
22491 * term.c (mouse_face_window): Rename...
22492 (Qmouse_face_window): ...to this.
22493 (term_show_mouse_face, term_clear_mouse_face)
22494 (term_mouse_highlight): Use Qmouse_face_window.
22495 (term_mouse_moveto): New function.
22496 (term_mouse_position): Make it work.
22497 (syms_of_term): Uncomment assignment to mouse_position_hook.
22498 Staticpro Qmouse_face_window.
22499
225002007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22501
22502 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
22503 around current_column call.
22504
225052007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
22506
22507 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
22508 * xdisp.c (next_element_from_buffer):
22509 * window.c (delete_window):
22510 * term.c (term_mouse_highlight):
22511 * msdos.c (getdefdir):
22512 * macterm.c (mac_create_bitmap_from_bitmap_data)
22513 (init_font_name_table):
22514 * fns.c (Fsxhash):
22515 * data.c (Fmake_local_variable):
22516 * ccl.c (ccl_driver): Likewise.
22517
225182007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22519
22520 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
22521 Call mac_wakeup_from_rne on window size change.
22522
225232007-05-25 Chong Yidong <cyd@stupidchicken.com>
22524
22525 * image.c (uncache_image): Fix typo.
22526
225272007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
22528
22529 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
22530
225312007-05-22 Richard Stallman <rms@gnu.org>
22532
22533 * xterm.c (x_connection_closed): Remove NO_RETURN.
22534
225352007-05-22 Martin Rudalics <rudalics@gmx.at>
22536
22537 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
22538
225392007-05-21 Chong Yidong <cyd@stupidchicken.com>
22540
22541 * image.c (uncache_image): New function.
22542 (Fimage_refresh): New function.
22543
225442007-05-20 Jan Djärv <jan.h.d@swipnet.se>
22545
22546 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
22547
225482007-05-20 Nick Roberts <nickrob@snap.net.nz>
22549
22550 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
22551 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
22552
225532007-05-20 Nick Roberts <nickrob@snap.net.nz>
22554
22555 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
22556 conditional on [HAVE_GPM_H].
22557
225582007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
22559
22560 * syntax.c (skip_chars): Update syntax-table only after we checked that
22561 the new location is valid.
22562
225632007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22564
22565 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
22566 mac_get_window_bounds.
22567
225682007-05-20 Nick Roberts <nickrob@snap.net.nz>
22569
22570 * Makefile.in (LIBGPM): Allow it to be set from configure.
22571 If set then link Emacs with it.
22572
22573 * config.in: Regenerate.
22574
22575 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
22576 New externs.
22577
22578 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
22579 Include gpm.h.
22580 (handle_one_term_event, term_gpm): New externs.
22581
22582 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
22583 and allow it to be interrupted by SIGIO.
22584
22585 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
22586 (wait_reading_process_output): Wait on gpm_fd too.
22587 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
22588 (add_gpm_wait_descriptor_called_flag): New variable.
22589 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
22590
22591 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
22592 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
22593 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
22594 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
22595 (make_lispy_event): Add case GPM_CLICK_EVENT.
22596 (read_avail_input): Handle mouse input.
22597
22598 * term.c (write_glyphs_with_face): New function.
22599 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
22600 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
22601 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
22602 (mouse_face_face_id, term_gpm, pos_x, pos_y)
22603 (last_mouse_x, last_mouse_y): New variables.
22604 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
22605 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
22606 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
22607 (Fterm_close_connection): New functions.
22608 (term_init): Initialise mouse_face_window.
22609
226102007-05-19 Chong Yidong <cyd@stupidchicken.com>
22611
22612 * xdisp.c (redisplay_window): If first window line is a
22613 continuation line, recompute the new window start instead of
22614 recentering.
22615
226162007-05-18 Glenn Morris <rgm@gnu.org>
22617
22618 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
22619 Suggested by Alfred M. Szmidt <ams@gnu.org>.
22620
226212007-05-17 Glenn Morris <rgm@gnu.org>
22622
22623 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
22624
226252007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22626
22627 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
22628 dead key repeat and up events.
22629
226302007-05-14 Chong Yidong <cyd@stupidchicken.com>
22631
22632 * image.c (pbm_load): Check image size for monochrome pbm.
22633
226342007-05-13 Chong Yidong <cyd@stupidchicken.com>
22635
22636 * xterm.c (XTread_socket): Revert last change.
22637
226382007-05-12 Chong Yidong <cyd@stupidchicken.com>
22639
22640 * image.c (pbm_load): Correctly check image size for greyscale pbm.
22641
22642 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
22643
226442007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
22645
22646 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
22647 mixup (YAILOM).
22648
226492007-05-07 Andreas Schwab <schwab@suse.de>
22650
22651 * keymap.c (Flookup_key): Fix typo in last change.
22652
226532007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
22654
22655 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
22656 mapping for unibyte strings.
22657
226582007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22659
22660 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
22661 (Fx_popup_dialog) [MAC_OSX]: Likewise.
22662
226632007-04-29 Richard Stallman <rms@gnu.org>
22664
22665 * insdel.c (replace_range): For undo, record insertion first.
22666
226672007-04-29 Andreas Schwab <schwab@suse.de>
22668
22669 * lisp.h (VECSIZE): Use OFFSETOF.
22670
226712007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22672
22673 * xdisp.c (try_window_reusing_current_matrix): Fix number of
22674 disabled lines.
22675
226762007-04-28 Richard Stallman <rms@gnu.org>
22677
22678 * lread.c (read_escape): In a string, \s is always space.
22679
226802007-04-27 Jan Djärv <jan.h.d@swipnet.se>
22681
22682 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
22683
22684 * gtkutil.c (xg_update_menubar, create_menus): Create empty
22685 submenu for menu bar items.
22686
22687See ChangeLog.10 for earlier changes.
22688
22689;; Local Variables:
22690;; coding: utf-8
22691;; add-log-time-zone-rule: t
aac0c6e3
MR
22692;; End:
22693
e3eb1dae 22694 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
aac0c6e3
MR
22695
22696 This file is part of GNU Emacs.
22697
22698 GNU Emacs is free software: you can redistribute it and/or modify
22699 it under the terms of the GNU General Public License as published by
22700 the Free Software Foundation, either version 3 of the License, or
22701 (at your option) any later version.
22702
22703 GNU Emacs is distributed in the hope that it will be useful,
22704 but WITHOUT ANY WARRANTY; without even the implied warranty of
22705 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22706 GNU General Public License for more details.
22707
22708 You should have received a copy of the GNU General Public License
22709 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
22710
22711;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40